.ps-hero{border-bottom:1px solid var(--hair);position:relative;overflow:hidden}.ps-hero:before{content:"";z-index:0;pointer-events:none;background-image:var(--grain);opacity:.12;background-size:160px 160px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 50%,#0000);mask:linear-gradient(#000 0 50%,#0000)}.ps-hero .frame{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:64px;padding:96px 32px;display:grid}.ps-hero h1{font:var(--h1-weight) clamp(48px, 6vw, 84px)/.98 var(--display);letter-spacing:var(--h1-track);color:var(--ink);margin:0}.ps-hero h1>span{display:block}.ps-soft{color:color-mix(in srgb, var(--ink) 48%, var(--page))}.ps-lead{max-width:30em;color:var(--soft);margin:28px 0 0;font-size:19px;line-height:1.55}.ps-pair{margin-top:34px}.ps-short ul{border-top:1px dashed var(--rail);margin:0;padding:0;list-style:none}.ps-short li{border-bottom:1px dashed var(--rail)}.ps-short a{color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 20px;padding:13px 4px 13px 2px;text-decoration:none;display:grid}.ps-short b{font:600 16.5px/1.35 var(--sans);letter-spacing:-.01em;grid-column:1;align-items:center;gap:10px;display:flex}.ps-short small{font:500 12px/1.4 var(--mono);color:var(--soft);grid-column:1}.ps-short svg{width:18px;height:18px;color:var(--soft);grid-area:1/2/span 2;transition:transform .25s,color .2s}.ps-short a:hover svg,.ps-short a:focus-visible svg{color:var(--magenta);transform:translateY(3px)}.ps-short a:focus-visible{outline:2px solid var(--magenta-press);outline-offset:2px;border-radius:4px}.ps-early{background:var(--shade1);font:500 11px/1 var(--mono);color:var(--magenta-press);border-radius:999px;padding:4px 8px;font-style:normal}.ps-sec{border-bottom:1px solid var(--hair);scroll-margin-top:54px;position:relative}.ps-sec .frame.ruled{padding:112px 32px}.ps-label{font:600 12.5px/1.4 var(--mono);color:var(--magenta-press);align-items:center;gap:10px;margin:0 0 16px;display:flex}.ps-sec h2,.ps-band h2{max-width:14em;font:var(--h1-weight) 48px/1.06 var(--display);letter-spacing:var(--h1-track);color:var(--ink);text-wrap:balance;margin:0}.ps-copy>p:not(.ps-label),.ps-half>p:not(.ps-label),.ps-head>p:not(.ps-label){max-width:32em;color:var(--body);margin:20px 0 26px;font-size:18px;line-height:1.6}.ps-ticks{margin-bottom:28px}.ps-note{border-left:2px solid var(--shade2);max-width:34em;color:var(--soft);margin:-6px 0 26px;padding-left:14px;font-size:14.5px;line-height:1.55}.ps-sec .rl-more,.ps-band .rl-more{color:var(--ink);-webkit-text-decoration-color:var(--magenta);text-decoration-color:var(--magenta);font-size:15px}.ps-sec .rl-more:focus-visible,.ps-band .rl-more:focus-visible{outline:2px solid var(--magenta-press);outline-offset:4px;border-radius:3px}.ps-block{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:80px;display:grid}.ps-block.ps-flip{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.ps-block.ps-flip .ps-art{order:-1}.ps-copy p a,.ps-head p a,.ps-half p a,.ps-note a,.ps-fine a{color:var(--ink);-webkit-text-decoration:underline 2px var(--magenta);text-decoration:underline 2px var(--magenta);text-underline-offset:4px;transition:text-underline-offset .2s,text-decoration-color .2s}.ps-copy p a:hover,.ps-head p a:hover,.ps-half p a:hover,.ps-note a:hover,.ps-fine a:hover{text-underline-offset:2px;-webkit-text-decoration-color:var(--magenta-press);text-decoration-color:var(--magenta-press)}.ps-copy p a:focus-visible,.ps-head p a:focus-visible,.ps-half p a:focus-visible,.ps-note a:focus-visible,.ps-fine a:focus-visible{outline:2px solid var(--magenta-press);outline-offset:3px;border-radius:3px}.ps-art{-webkit-user-select:none;user-select:none;min-width:0;margin:0}.ps-win{border:1px solid var(--hair);box-shadow:0 30px 60px -36px color-mix(in srgb, var(--ink) 45%, transparent);background:#fff;border-radius:16px;overflow:hidden}.ps-bar{border-bottom:1px solid var(--hair);height:44px;font:500 12px/1 var(--mono);color:var(--soft);align-items:center;gap:14px;padding:0 16px;display:flex}.ps-bar em{background:var(--shade1);color:var(--magenta-press);white-space:nowrap;border-radius:999px;margin-left:auto;padding:5px 9px;font-style:normal}.ps-rows{margin:0;padding:6px 0;list-style:none}.ps-rows li{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 18px;padding:12px 20px;display:grid}.ps-rows li+li{border-top:1px dashed var(--hair)}.ps-rows code{overflow-wrap:anywhere;min-width:0;font:500 13px/1.45 var(--mono);color:var(--ink)}.ps-rows small{font:500 11.5px/1.4 var(--mono);color:var(--soft);grid-column:1/-1}.ps-st{font:600 11.5px/1 var(--mono);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;display:inline-flex}.ps-st:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.ps-st.ok{color:#23784f;background:#e3f3ea}.ps-st.ro{color:var(--body);background:#f1edf4}.ps-st.no{background:var(--shade1);color:var(--magenta-press)}.ps-st.no:before{border-radius:1px}.ps-cap{border-top:1px solid var(--hair);font:500 12px/1.45 var(--mono);color:var(--soft);background:#fbf9fc;margin:0;padding:12px 20px}.ps-band{border-bottom:1px solid var(--hair);--blush:#fbe3ef;--blush-edge:#f5c9df;--blush-rail:#e8b3cf;background:linear-gradient(var(--blush), var(--blush)) center / min(var(--page-w), 100%) 100% no-repeat, linear-gradient(color-mix(in srgb, var(--blush-edge) 55%, transparent) .5px, transparent .5px) 0 0 / 6px 6px, linear-gradient(90deg, color-mix(in srgb, var(--blush-edge) 55%, transparent) .5px, transparent .5px) 0 0 / 6px 6px, var(--blush);scroll-margin-top:54px;position:relative}.ps-band .frame.ruled{border-color:var(--blush-rail);padding:112px 32px}.ps-copy>p.ps-small{max-width:30em;color:var(--soft);margin:26px 0 0;font-size:14.5px;line-height:1.55}.ps-copy>p.ps-note{color:var(--soft);margin:-6px 0 26px;font-size:14.5px;line-height:1.55}.ps-sand,.ps-map{max-width:580px;margin-inline:auto}.ps-sand{padding:24px 26px 26px}.ps-cap2{font:600 12px/1.4 var(--mono);color:var(--soft);margin:0 0 14px}.ps-inside{border:1.5px dashed var(--magenta);background:#fdf6fa;border-radius:12px;margin:0 0 26px;padding:24px 20px 20px;position:relative}.ps-tag{background:var(--magenta);font:600 11px/1.3 var(--mono);color:var(--on-accent);border-radius:999px;padding:3px 9px;position:absolute;top:-11px;left:16px}.ps-inside ul,.ps-outside{gap:12px;margin:0;padding:0;list-style:none;display:grid}.ps-inside li,.ps-outside li{color:var(--ink);grid-template-columns:18px minmax(0,1fr);gap:12px;font-size:15.5px;line-height:1.4;display:grid}.ps-inside svg,.ps-outside svg{width:18px;height:18px;margin-top:1px}.ps-inside svg{color:var(--magenta)}.ps-outside{padding:0 22px}.ps-outside li{color:var(--soft)}.ps-outside svg{color:var(--rail)}.ps-map{padding:26px 28px 0}.ps-root{font:700 17px/1.3 var(--sans);letter-spacing:-.01em;color:var(--ink);align-items:center;gap:12px;margin:0;display:flex}.ps-root i{background:var(--ink);width:14px;height:14px;box-shadow:0 0 0 4px var(--shade1);border-radius:50%;flex:none}.ps-tree{margin:0 0 0 6px;padding:6px 0 24px;list-style:none}.ps-tree li{padding:16px 0 0 32px;position:relative}.ps-tree li:before{content:"";border-left:2px solid var(--ink);position:absolute;top:0;bottom:0;left:0}.ps-tree li:last-child:before{height:28px;bottom:auto}.ps-tree li:after{content:"";border-top:2px solid var(--ink);width:22px;position:absolute;top:27px;left:0}.ps-tree b{font:600 16.5px/1.35 var(--sans);letter-spacing:-.01em;color:var(--ink);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.ps-tree p{color:var(--body);margin:4px 0 0;font-size:15px;line-height:1.5}.ps-ways{grid-template-columns:auto minmax(0,1fr);gap:8px 14px;margin-top:10px;display:grid}.ps-ways span{font:600 11.5px/1.9 var(--mono);color:var(--magenta-press)}.ps-ways p{margin:0}.ps-tree .ps-never:before,.ps-tree .ps-never:after{border-color:var(--rail);border-top-style:dashed;border-left-style:dashed}.ps-never b{color:var(--soft)}.ps-never em{background:var(--shade1);font:600 11px/1.3 var(--mono);color:var(--magenta-press);border-radius:999px;padding:3px 8px;font-style:normal}.ps-never p{color:var(--soft)}.ps-map .ps-cap{font:400 13.5px/1.5 var(--sans);margin:0 -28px;padding:14px 28px 16px}.ps-fields .ps-rows li{grid-template-columns:150px minmax(0,1fr)}.ps-fields .ps-rows code{color:var(--magenta-press)}.ps-fields .ps-rows span{color:var(--body);font-size:14px;line-height:1.45}.ps-log .ps-rows li{grid-template-columns:minmax(0,1fr) auto}.ps-log .ps-rows code:before{content:"$ ";color:var(--rail)}.ps-keys .ps-rows li{grid-template-columns:minmax(0,1fr) auto auto}.ps-keys .ps-rows b{font:600 14.5px/1.35 var(--sans);color:var(--ink)}.ps-keys .ps-rows code{color:var(--soft);letter-spacing:.04em}.ps-btns{gap:6px;display:flex}.ps-btns span{border:1px solid var(--hair);height:28px;font:600 12.5px/1 var(--sans);color:var(--body);border-radius:8px;align-items:center;padding:0 11px;display:inline-flex}.ps-sub{border-top:1px solid var(--hair);font:600 11.5px/1.4 var(--mono);color:var(--soft);margin:0;padding:12px 20px 4px}.ps-audit{gap:6px;margin:0;padding:4px 20px 16px;list-style:none;display:grid}.ps-audit li{font:500 12.5px/1.45 var(--mono);color:var(--body);grid-template-columns:auto minmax(0,1fr);gap:12px;display:grid}.ps-audit li i{color:var(--magenta-press);font-style:normal}.ps-twin .frame.ruled{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0 32px;display:grid}.ps-half{flex-direction:column;min-width:0;padding:104px 56px 112px 0;scroll-margin-top:54px;display:flex}.ps-half+.ps-half{border-left:1px solid var(--hair);padding:104px 0 112px 56px}.ps-half h2{max-width:13em;font:var(--h1-weight) 40px/1.06 var(--display);letter-spacing:var(--h1-track);color:var(--ink);text-wrap:balance;margin:0}.ps-half .ps-art{margin-top:auto}.ps-half>.ps-art+.rl-more{align-self:flex-start;margin-top:26px}.ps-half .ps-ticks{margin-bottom:32px}.ps-chat{border:1px solid var(--hair);background:#fbf9fc;border-radius:16px;gap:10px;padding:22px;display:grid}.ps-you,.ps-rq{border-radius:14px;max-width:86%;margin:0;padding:11px 14px;font-size:15px;line-height:1.45}.ps-you{background:var(--ink);color:#fff;border-bottom-right-radius:4px;justify-self:end}.ps-rq{border:1px solid var(--hair);color:var(--body);background:#fff;border-bottom-left-radius:4px}.ps-go{border:1px solid var(--hair);height:32px;font:600 13px/1 var(--sans);color:var(--ink);background:#fff;border-radius:9px;justify-self:start;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.ps-go svg{width:13px;height:13px;color:var(--magenta)}.ps-chat{position:relative}.ps-dots{border:1px solid var(--hair);background:#fff;border-radius:14px 14px 14px 4px;gap:4px;margin:0;padding:13px 14px;display:none;position:absolute}.ps-dots i{background:var(--rail);border-radius:50%;width:6px;height:6px;animation:.9s ease-in-out infinite ps-type}.ps-dots i:nth-child(2){animation-delay:.15s}.ps-dots i:nth-child(3){animation-delay:.3s}@keyframes ps-type{0%,60%,to{opacity:.5;transform:none}30%{opacity:1;transform:translateY(-3px)}}.ps-chat.ps-play>:not(.ps-dots):not(.in){opacity:0}.ps-chat.ps-play>.in,.ps-chat.ps-play .ps-dots.on{animation:.4s cubic-bezier(.22,1,.36,1) both ps-pop}.ps-chat.ps-play .ps-dots.on{display:flex}@keyframes ps-pop{0%{opacity:0;transform:translateY(8px)}}.ps-split{border:1px solid var(--hair);background:#fff;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.ps-split>div{padding:18px 20px 20px}.ps-split>div+div{border-left:1px solid var(--hair);background:#fbf9fc}.ps-split p{font:600 11.5px/1.4 var(--mono);color:var(--soft);margin:0 0 12px}.ps-split ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.ps-split li{color:var(--ink);grid-template-columns:16px minmax(0,1fr);gap:10px;font-size:14.5px;line-height:1.4;display:grid}.ps-split svg{width:16px;height:16px;color:var(--magenta);margin-top:1px}.ps-split .ps-x svg{color:var(--soft)}.ps-limits .frame.ruled{padding:104px 32px}.ps-narrow{max-width:760px;margin:0 auto}.ps-narrow h2{max-width:none}.ps-narrow>p:not(.ps-label){color:var(--body);margin:20px 0 28px;font-size:18px;line-height:1.6}.ps-list{border-top:1px dashed var(--rail);margin:0 0 32px;padding:0;list-style:none}.ps-list li{border-bottom:1px dashed var(--rail);grid-template-columns:200px minmax(0,1fr);gap:8px 28px;padding:16px 0;display:grid}.ps-list b{font:600 15.5px/1.45 var(--sans);color:var(--ink)}.ps-list span{color:var(--body);font-size:15.5px;line-height:1.55}.ps-close h2{scroll-margin-top:80px}.ps-next{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ps-next a{color:#fbe3ef;border:1px solid #f5c9df38;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;transition:background-color .2s,border-color .2s;display:flex}.ps-next a:hover{background:#f5c9df14;border-color:#f5c9df73}.ps-next a:focus-visible{outline-offset:2px;background:#f5c9df14;border-color:#f5c9df73;outline:2px solid #f56aa8}.ps-next svg{color:#f56aa8;flex:none;width:18px;height:18px}.ps-next span{gap:2px;min-width:0;display:grid}.ps-next b{font:600 15.5px/1.3 var(--sans);overflow-wrap:anywhere}.ps-next small{font:500 11.5px/1.35 var(--mono);color:#fbe3ef8f}@media (max-width:1100px){.ps-block,.ps-block.ps-flip{gap:56px}}@media (max-width:980px){.ps-hero .frame{grid-template-columns:minmax(0,1fr);gap:40px;padding:56px 16px}.ps-lead{font-size:17px}.ps-sec .frame.ruled,.ps-band .frame.ruled,.ps-limits .frame.ruled{padding:72px 16px}.ps-sec h2,.ps-band h2,.ps-half h2{font-size:34px}.ps-block,.ps-block.ps-flip{grid-template-columns:minmax(0,1fr);gap:40px}.ps-block.ps-flip .ps-art{order:0}.ps-twin .frame.ruled{grid-template-columns:minmax(0,1fr);padding:0 16px}.ps-half,.ps-half+.ps-half{border-left:0;padding:72px 0}.ps-half+.ps-half{border-top:1px solid var(--hair)}.ps-sand,.ps-map{max-width:none}.ps-list li{grid-template-columns:minmax(0,1fr)}}@media (max-width:600px){.ps-hero h1{font-size:46px}.ps-short b{font-size:16px}.ps-chat{padding:16px}.ps-rows li{padding:11px 14px}.ps-fields .ps-rows li{grid-template-columns:minmax(0,1fr);gap:2px}.ps-log .ps-rows li{grid-template-columns:minmax(0,1fr);justify-items:start;gap:8px}.ps-keys .ps-rows li{grid-template-columns:minmax(0,1fr) auto}.ps-keys .ps-btns{grid-column:1/-1}.ps-cap,.ps-sub,.ps-audit{padding-left:14px;padding-right:14px}.ps-audit li{grid-template-columns:minmax(0,1fr);gap:0}.ps-split{grid-template-columns:minmax(0,1fr)}.ps-sand{padding:20px 18px 22px}.ps-inside{padding:22px 16px 16px}.ps-outside{padding:0 16px}.ps-map{padding:22px 18px 0}.ps-map .ps-cap{margin:0 -18px;padding:12px 18px 14px}.ps-tree li{padding-left:26px}.ps-tree li:after{width:17px}.ps-ways{grid-template-columns:minmax(0,1fr);gap:2px}.ps-ways p+span{margin-top:6px}.ps-split>div+div{border-left:0;border-top:1px solid var(--hair)}}@media (prefers-reduced-motion:reduce){.ps-short svg,.ps-next a,.ps-copy p a,.ps-head p a,.ps-half p a,.ps-note a{transition:none}}.ps-short a{position:relative}.ps-short a:before{content:"";background:var(--magenta);border-radius:2px;width:2px;transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;top:22%;bottom:22%;left:0;transform:scaleY(0)}.ps-short a>:not(svg){transition:transform .3s cubic-bezier(.22,1,.36,1),color .2s}.ps-short a>:not(svg):not(b){transition-delay:30ms}.ps-short svg{box-sizing:content-box;border:1px solid var(--rail);width:16px;height:16px;color:var(--ink);border-radius:50%;padding:7px;transition:background-color .25s,border-color .25s,color .25s;transform:none}.ps-short svg path{stroke-width:2px}.ps-short a:hover:before,.ps-short a:focus-visible:before{transform:scaleY(1)}.ps-short a:hover>:not(svg),.ps-short a:focus-visible>:not(svg){transform:translate(14px)}.ps-short a:hover b,.ps-short a:focus-visible b{color:var(--magenta-press)}.ps-short a:hover svg,.ps-short a:focus-visible svg{border-color:var(--magenta);background:var(--magenta);color:var(--on-accent);transform:none}.ps-short a:hover svg path,.ps-short a:focus-visible svg path{animation:.5s cubic-bezier(.22,1,.36,1) ps-short-slip}@keyframes ps-short-slip{0%{opacity:1;transform:none}42%{opacity:0;transform:translateY(9px)}43%{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ps-short a:before,.ps-short a>:not(svg),.ps-short svg{transition:none}.ps-short a:hover>:not(svg),.ps-short a:focus-visible>:not(svg){transform:none}.ps-short a:hover svg path,.ps-short a:focus-visible svg path{animation:none}}
