@keyframes pt-strike{to{transform:rotate(-3deg) scaleX(1)}}#main-body .ph-wrap{max-width:var(--container-max);margin:0 auto;padding:0 20px}#main-body .ph-kick{font-family:ui-monospace,"IBM Plex Mono",SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-text);margin:0}#main-body .ph-h1,#main-body .ph-h2{font-size:var(--h1);font-weight:var(--weight-extrabold);line-height:1.05;letter-spacing:-.025em;text-wrap:balance;margin:14px 0 0;color:var(--text)}#main-body .ph-h1 em{font-style:normal}#main-body .ph-h2{font-size:var(--h2);font-weight:var(--weight-bold);line-height:1.1;letter-spacing:-.02em;margin:10px 0 0}#main-body .ph-h3{font-size:var(--h3);font-weight:var(--weight-semibold);letter-spacing:-.01em;margin:0;color:var(--text)}#main-body .ph-lead{font-size:17px;line-height:1.55;color:var(--muted-text);margin:18px 0 0;max-width:56ch}#main-body .ph-sub{color:var(--muted-text);margin:12px 0 0;max-width:62ch}#main-body .ph-fine{font-size:var(--meta);line-height:1.7;color:var(--muted-text);margin:16px 0 0}#main-body .ph-dl dd a,#main-body .ph-fine a,#main-body .ph-h1 em,#main-body .ph-qa-item p a{color:var(--accent-primcast)}#main-body .ph-go a,#main-body .ph-go-a{color:var(--accent-primcast);font-weight:var(--weight-semibold);text-decoration:none;white-space:nowrap}#main-body .ph-go a:hover,#main-body .ph-go-a:hover{text-decoration:underline}#main-body .ph-sec{padding:var(--section-pad)0;border-top:var(--border-default)}#main-body .ph-cta{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 0}#main-body .ph-btn{display:inline-block;font-size:var(--body-sm);font-weight:var(--weight-semibold);padding:13px 22px;border-radius:var(--border-radius-max);text-decoration:none;border:1px solid var(--border-color);color:var(--text);transition:border-color .2s,transform .15s,background .2s,color .2s}#main-body .ph-btn:hover{border-color:var(--text);color:var(--text);transform:translateY(-1px)}#main-body .ph-btn-primary{background:var(--gradient-pc);border-color:transparent;color:#fff}#main-body .ph-btn-primary:hover{filter:brightness(1.1);border-color:transparent;color:#fff}#main-body .ph-trust{list-style:none;display:flex;gap:16px;flex-wrap:wrap;margin:26px 0 0;padding:0;font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-text)}#main-body .ph-trust li{display:flex;align-items:center;gap:7px}#main-body .ph-trust li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent-primcast)}#main-body .ph-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}#main-body .ph-chip{font-size:var(--body-sm);font-weight:var(--weight-medium);font-family:inherit;padding:10px 16px;border:1px solid var(--border-color);background:0 0;color:var(--muted-text);border-radius:var(--border-radius-max);cursor:pointer;transition:border-color .18s,color .18s,background .18s,transform .12s}#main-body .ph-chip:hover{border-color:var(--main-primcast);color:var(--text);transform:translateY(-1px)}#main-body .ph-chip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--background)}#main-body .pt-hero{position:relative;overflow:hidden;padding:60px 0 64px}#main-body #pt-wave{position:absolute;left:0;right:0;bottom:0;width:100%;height:170px;display:block;opacity:.8;pointer-events:none}#main-body .pt-hero .ph-wrap{position:relative;z-index:2}#main-body .pt-hgrid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;align-items:center}@media (max-width:940px){#main-body .pt-hgrid{grid-template-columns:1fr;gap:30px}}#main-body .ph-lede{font-size:19px}#main-body .pt-meter{border:var(--border-default);background:var(--dark-card);border-radius:var(--border-radius-default);padding:26px;max-width:380px;width:100%;justify-self:end}@media (max-width:940px){#main-body .pt-meter{justify-self:start}}#main-body .pt-meter-lbl{font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-text)}#main-body .pt-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0;border-bottom:var(--border-default);font-variant-numeric:tabular-nums}#main-body .pt-row:last-of-type{border-bottom:0}#main-body .pt-k{color:var(--muted-text);font-size:13.5px}#main-body .pt-v{font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:13.5px;color:var(--text);text-align:right}#main-body .pt-g{color:var(--highlight-green)}#main-body .pt-dead{position:relative;color:var(--muted-text)}#main-body .pt-dead::after{content:"";position:absolute;left:-2%;right:-2%;top:52%;height:2px;background:var(--main-primcast);transform:rotate(-3deg) scaleX(0);transform-origin:left;animation:pt-strike .5s .9s ease forwards}#main-body .pt-note{font-size:12.5px;color:var(--muted-text);margin:14px 0 0;line-height:1.6}#main-body .pt-note strong,#main-body .pt-shape strong,#main-body .pt-tile p strong{color:var(--text)}#main-body .pt-bento{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:26px}@media (max-width:980px){#main-body .pt-bento{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){#main-body .pt-bento{grid-template-columns:1fr}}#main-body .pt-tile{position:relative;border:var(--border-default);background:var(--dark-card);border-radius:var(--border-radius-default);padding:22px;text-decoration:none;display:flex;flex-direction:column;gap:8px;overflow:hidden;transition:border-color .2s,transform .2s}#main-body a.pt-tile:hover{border-color:var(--main-primcast);transform:translateY(-3px)}#main-body .pt-tile p{font-size:var(--body-sm);color:var(--muted-text);margin:0;max-width:48ch}#main-body .pt-arr,#main-body .pt-tk{font-family:ui-monospace,"IBM Plex Mono",monospace;color:var(--accent-primcast)}#main-body .pt-tk{font-size:10px;letter-spacing:.16em;text-transform:uppercase}#main-body .pt-arr{margin-top:auto;padding-top:8px;font-size:12px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}#main-body a.pt-tile:focus-visible .pt-arr,#main-body a.pt-tile:hover .pt-arr{opacity:1;transform:none}#main-body .pt-t2{grid-column:span 2}#main-body .pt-t3{grid-column:span 3}#main-body .pt-t4{grid-column:span 4}@media (max-width:980px){#main-body .pt-t2,#main-body .pt-t3,#main-body .pt-t4{grid-column:span 2}}@media (max-width:560px){#main-body .pt-t2,#main-body .pt-t3,#main-body .pt-t4{grid-column:span 1}}#main-body .pt-out{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:var(--border-default)}#main-body .pt-shape{font-size:var(--body-sm);color:var(--muted-text);max-width:46ch;margin:0}#main-body .pt-ladder{display:flex;gap:8px;align-items:flex-end;margin-top:14px}#main-body .pt-rung{flex:1;display:flex;flex-direction:column;gap:7px}#main-body .pt-rung i{display:block;border-radius:6px 6px 2px 2px;background:color-mix(in srgb,var(--accent-primcast) 18%,transparent);border:1px solid color-mix(in srgb,var(--accent-primcast) 30%,transparent);transition:background .25s,border-color .25s}#main-body a.pt-tile:hover .pt-rung i{background:color-mix(in srgb,var(--accent-primcast) 55%,transparent);border-color:var(--accent-primcast)}#main-body .pt-rung:nth-child(1) i{height:14px}#main-body .pt-rung:nth-child(2) i{height:28px}#main-body .pt-rung:nth-child(3) i{height:46px}#main-body .pt-rung:nth-child(4) i{height:64px}#main-body .pt-rung:nth-child(5) i{height:84px}#main-body .pt-rung b{font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:10.5px;font-weight:var(--weight-regular);color:var(--muted-text);text-align:center;letter-spacing:.06em}#main-body .pt-rung:first-child b{color:var(--highlight-green)}#main-body .pt-regions{display:flex;flex-wrap:wrap;margin-top:24px;border:var(--border-default);border-radius:var(--border-radius-sm);overflow:hidden}#main-body .pt-regions a{flex:1 1 130px;padding:13px 10px;text-align:center;text-decoration:none;border-right:var(--border-default);transition:background .2s}#main-body .pt-regions a:last-child{border-right:0}@media (max-width:720px){#main-body .pt-regions a{border-bottom:var(--border-default)}}#main-body .pt-regions a:hover{background:color-mix(in srgb,var(--main-primcast) 8%,transparent)}#main-body .pt-regions b{display:block;font-size:13.5px;font-weight:var(--weight-semibold);color:var(--text)}#main-body .pt-regions span{display:block;font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-text);margin-top:4px}#main-body .ph-index{list-style:none;margin:22px 0 0;padding:0;border-top:var(--border-default)}#main-body .ph-index a{display:grid;grid-template-columns:minmax(0,auto) minmax(20px,1fr) minmax(0,auto);gap:10px;align-items:baseline;padding:12px 0;border-bottom:var(--border-default);text-decoration:none;color:var(--text);transition:background .15s,padding-left .2s}#main-body .ph-index a:hover{background:color-mix(in srgb,var(--main-primcast) 7%,transparent);padding-left:8px}#main-body .ph-index-name{font-size:17px;font-weight:var(--weight-medium)}#main-body .ph-index-dots{border-bottom:1px dotted var(--border-color);transform:translateY(-4px)}#main-body .ph-index-path{font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:12px;color:var(--muted-text);white-space:nowrap}#main-body .ph-index-why{grid-column:1/-1;font-size:var(--body-sm);color:var(--muted-text);max-height:0;overflow:hidden;opacity:0;transition:max-height .28s ease,opacity .28s ease,margin-top .28s ease}#main-body .ph-index a:focus-visible .ph-index-why,#main-body .ph-index a:hover .ph-index-why{max-height:4em;opacity:1;margin-top:6px}#main-body .ph-facts{padding:var(--section-pad)0;border-top:var(--border-default)}#main-body .ph-qa{display:grid;grid-template-columns:1fr 1fr;gap:22px 38px;margin-top:26px}@media (max-width:780px){#main-body .ph-qa{grid-template-columns:1fr}}#main-body .ph-qa-item p{color:var(--muted-text);font-size:var(--body-sm);margin:8px 0 0;max-width:58ch}#main-body .ph-dl{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:34px 0 0;border-top:var(--border-default)}@media (max-width:860px){#main-body .ph-dl{grid-template-columns:1fr 1fr}}@media (max-width:520px){#main-body .ph-dl{grid-template-columns:1fr}}#main-body .ph-dl>div{display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px;padding:10px 16px 10px 0;border-bottom:var(--border-default)}#main-body .ph-dl dt{font-family:ui-monospace,"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-text);padding-top:4px}#main-body .ph-dl dd{margin:0;font-size:var(--body-sm);color:var(--text)}#main-body .ph-elsewhere{margin-top:34px}#main-body .ph-soc{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0}#main-body .ph-soc a{display:inline-block;font-size:var(--meta);padding:8px 14px;border:var(--border-default);border-radius:var(--border-radius-max);color:var(--muted-text);text-decoration:none;transition:border-color .2s,color .2s}#main-body .ph-soc a:hover{border-color:var(--main-primcast);color:var(--text)}@media (prefers-reduced-motion:reduce){#main-body .pt-dead::after{animation:none;transform:rotate(-3deg) scaleX(1)}#main-body #pt-wave{display:none}#main-body .ph-btn,#main-body .ph-chip,#main-body .ph-index-why,#main-body .pt-arr,#main-body .pt-tile{transition:none}}