:root{--pfs-ink:#1d2530;--pfs-muted:#4a5666;--pfs-line:#d3dce6;--pfs-accent:#1f4e8c;--pfs-panel:#ffffff;
  --pfs-head-bg:#ffffff;--pfs-mark:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040%2040%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2220%22%20fill%3D%22%231d2b53%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2216.1%22%20fill%3D%22none%22%20stroke%3D%22%23d4ac58%22%20stroke-width%3D%222.2%22%2F%3E%3Cpolygon%20points%3D%2228.48%2C11.52%2023%2C20%2028.48%2C28.48%2020%2C23%2011.52%2C28.48%2017%2C20%2011.52%2C11.52%2020%2C17%22%20fill%3D%22%23d4ac58%22%2F%3E%3Cpolygon%20points%3D%2220%2C1.2%2022.83%2C17.17%2038.8%2C20%2022.83%2C22.83%2020%2C38.8%2017.17%2C22.83%201.2%2C20%2017.17%2C17.17%22%20fill%3D%22%23faf4e6%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%221.8%22%20fill%3D%22%23d4ac58%22%2F%3E%3C%2Fsvg%3E") center/100% no-repeat}
@media (prefers-color-scheme:dark){:root{--pfs-ink:#e8eef5;--pfs-muted:#a2b0c0;--pfs-line:#2a343f;--pfs-accent:#9dbfe8;
  --pfs-panel:#171e27;--pfs-head-bg:#171e27;--pfs-mark:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040%2040%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2220%22%20fill%3D%22%231d2b53%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2216.1%22%20fill%3D%22none%22%20stroke%3D%22%23d4ac58%22%20stroke-width%3D%222.2%22%2F%3E%3Cpolygon%20points%3D%2228.48%2C11.52%2023%2C20%2028.48%2C28.48%2020%2C23%2011.52%2C28.48%2017%2C20%2011.52%2C11.52%2020%2C17%22%20fill%3D%22%23d4ac58%22%2F%3E%3Cpolygon%20points%3D%2220%2C1.2%2022.83%2C17.17%2038.8%2C20%2022.83%2C22.83%2020%2C38.8%2017.17%2C22.83%201.2%2C20%2017.17%2C17.17%22%20fill%3D%22%23faf4e6%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%221.8%22%20fill%3D%22%23d4ac58%22%2F%3E%3C%2Fsvg%3E") center/100% no-repeat}}

[data-pfs-head]{display:block;position:static;float:none;width:auto;max-width:none;height:auto;margin:0;padding:0;
  border:0;border-bottom:1px solid var(--pfs-line,rgba(128,128,128,.34));box-shadow:none;border-radius:0;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:15px;font-weight:400;line-height:1.4;
  letter-spacing:normal;text-transform:none;text-align:left;
  color:var(--pfs-ink,inherit);background:var(--pfs-head-bg,rgba(128,128,128,.07))}
[data-pfs-head] *{box-sizing:border-box}
[data-pfs-head] a{color:inherit;text-decoration:none;background:none;border-radius:0;padding:0;margin:0}
[data-pfs-head] a:hover,[data-pfs-head] a:focus-visible{text-decoration:underline;text-underline-offset:3px}
[data-pfs-head] :focus-visible{outline:2px solid currentColor;outline-offset:2px}
.pfs-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;max-width:1120px;margin:0 auto;padding:10px 16px}
[data-pfs-head] .pfs-brand{display:inline-flex;align-items:center;gap:9px;font-weight:750;letter-spacing:-.01em;white-space:nowrap}
.pfs-mark{display:inline-block;width:22px;height:22px;border-radius:50%;flex:none;background:var(--pfs-mark,currentColor)}
.pfs-nav{display:flex;flex-wrap:wrap;gap:4px 16px;flex:1 1 auto;min-width:0}
[data-pfs-head] .pfs-nav a{display:inline-block;padding:4px 0;font-weight:600;color:var(--pfs-muted,inherit);
  border-bottom:2px solid transparent}
[data-pfs-head] .pfs-nav a[aria-current="page"]{color:var(--pfs-ink,inherit);border-bottom-color:var(--pfs-accent,currentColor)}
.pfs-search{position:relative;display:flex;margin:0;padding:0;border:0;flex:0 1 236px;min-width:0}
.pfs-search input{flex:1 1 auto;min-width:0;width:100%;font:inherit;font-size:14px;padding:7px 12px 7px 34px;margin:0;border-radius:999px;
  border:1px solid var(--pfs-line,rgba(128,128,128,.5));background:var(--pfs-panel,transparent);color:inherit;
  transition:border-color .15s ease,box-shadow .15s ease}
.pfs-search input:focus{outline:none;border-color:var(--pfs-accent,currentColor);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--pfs-accent,currentColor) 22%,transparent)}
.pfs-search button{position:absolute;left:3px;top:50%;transform:translateY(-50%);width:28px;height:28px;padding:0;margin:0;
  border:0;border-radius:999px;background:none;color:var(--pfs-muted,inherit);cursor:pointer}
.pfs-search button::before{content:"";position:absolute;inset:6px;background:currentColor;
  -webkit-mask:var(--pfs-glass) center/contain no-repeat;mask:var(--pfs-glass) center/contain no-repeat}
.pfs-search{--pfs-glass:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21'/%3E%3C/svg%3E")}
[data-pfs-head] .pfs-searchlink{display:none;font-weight:600}
[data-pfs-head] .pfs-searchlink.pfs-always{display:inline-block}
.pfs-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pfs-crumbs{display:block;max-width:1120px;margin:0 auto;padding:0 16px 9px;font-size:13px;color:var(--pfs-muted,inherit);
  overflow-wrap:anywhere}
[data-pfs-head] .pfs-crumbs a{text-decoration:underline;text-underline-offset:2px}
.pfs-sep{margin:0 7px}
@media (max-width:600px){
  /* One line on a phone: the current page's title (often a sentence) is cut with an ellipsis instead of wrapping to three lines. */
  .pfs-crumbs{display:flex;flex-wrap:nowrap;align-items:baseline;overflow:hidden;white-space:nowrap}
  .pfs-crumbs>a,.pfs-crumbs>.pfs-sep{flex:0 0 auto}
  .pfs-crumbs>[aria-current]{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis}
}
@media (max-width:1080px){
  .pfs-search{display:none}
  [data-pfs-head] .pfs-searchlink{display:inline-block}
}
@property --pfs-fade{syntax:'<length>';inherits:false;initial-value:28px}
@keyframes pfs-fade-out{to{--pfs-fade:0px}}
@media (max-width:720px){
  .pfs-bar{gap:6px 14px;padding:9px 16px}
  [data-pfs-head] .pfs-brand{flex:1 1 auto}
  .pfs-search{display:none}
  [data-pfs-head] .pfs-searchlink{display:inline-block}
  .pfs-nav{order:3;flex-basis:100%;gap:2px 18px;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;
    scrollbar-width:none;margin-right:-16px;padding-right:28px;
    --pfs-fade:28px;
    -webkit-mask-image:linear-gradient(90deg,black calc(100% - var(--pfs-fade)),transparent);
            mask-image:linear-gradient(90deg,black calc(100% - var(--pfs-fade)),transparent)}
  @supports (animation-timeline:scroll()){
    .pfs-nav{animation:pfs-fade-out linear both;animation-timeline:scroll(self inline);animation-range:calc(100% - 40px) 100%}
  }
  .pfs-nav::-webkit-scrollbar{display:none}
  [data-pfs-head] .pfs-nav a{flex:none;white-space:nowrap}
}
@media print{[data-pfs-head]{display:none !important}}

footer:has(.pfs-foot){position:relative;max-width:none;color-scheme:dark;margin-top:64px;padding:40px 0 34px;border-top:0;
  color:#c3cddb;--ink:#eef2f8;--muted:#c3cddb;--soft:#a9b5c6;--accent:#a8c7f0;--line:rgba(148,170,210,.24);
  --panel:rgba(20,28,48,.72);--pfs-accent:#a8c7f0;
  background:radial-gradient(420px 160px at 30% 0%,rgba(47,99,163,.16),transparent 70%),
    radial-gradient(460px 170px at 72% 0%,rgba(58,110,165,.18),transparent 70%),#0b1626;
  box-shadow:0 0 0 100vmax #0b1626;clip-path:inset(0 -100vmax -100vmax)}
footer:has(.pfs-foot)>:not(.pfs-foot){max-width:84ch}
footer:has(.pfs-foot) h2,footer:has(.pfs-foot) strong{color:#eef2f8}
.pfs-foot{margin:18px 0 0;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px;line-height:1.9}
.pfs-foot a,.pfs-support a{color:var(--pfs-accent)}
.pfs-support{margin:18px 0 0;font-size:14px;line-height:1.6}
footer .pfs-foot{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 24px;
  margin-top:26px;padding-top:22px;border-top:1px solid rgba(148,170,210,.24);line-height:1.6}
footer .pfs-foot>span{display:none}
footer .pfs-foot+*{margin-top:16px}
footer .pfs-foot a{text-decoration:none}
footer .pfs-foot a:hover,footer .pfs-foot a:focus-visible{text-decoration:underline;text-underline-offset:3px}

html{overflow-x:clip}
.pf-hero{position:relative;isolation:isolate;max-width:none;margin:0 0 30px;
  padding:clamp(22px,4.4vw,46px) 0 clamp(24px,4vw,40px);color:#eef2f8;
  --ink:#eef2f8;--muted:#c3cddb;--soft:#a9b5c6;--accent:#a8c7f0;--accent-ink:#07121a;
  --line:rgba(148,170,210,.3);--panel:rgba(20,28,48,.72);--bg:rgba(10,16,32,.6);--code:rgba(148,170,210,.16)}
.pf-hero::before,.pf-hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;
  top:calc(-1 * var(--pf-hero-pull,26px));bottom:0;left:50%;width:100vw;margin-left:-50vw}
.pf-hero::before{background:
    radial-gradient(640px 300px at 8% 0%,rgba(47,99,163,.30),transparent 70%),
    radial-gradient(760px 340px at 92% 0%,rgba(58,110,165,.34),transparent 70%),
    radial-gradient(700px 300px at 55% 135%,rgba(91,119,153,.24),transparent 70%),
    #0b1626;
  border-bottom:1px solid #1e2c42}
.pf-hero::after{background-image:linear-gradient(rgba(140,170,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(140,170,255,.07) 1px,transparent 1px);background-size:44px 44px;
  -webkit-mask-image:radial-gradient(ellipse 70% 90% at 50% 0%,#000 30%,transparent 80%);
          mask-image:radial-gradient(ellipse 70% 90% at 50% 0%,#000 30%,transparent 80%)}
.pf-hero h1{color:#fff;letter-spacing:-.035em;text-wrap:balance}
.pf-hero .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:.78rem;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;margin:0 0 10px}
.pf-hero .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--pf-cat,var(--accent)) 45%,#a8c7f0);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--pf-cat,var(--accent)) 30%,transparent)}
.pf-hero .lede,.pf-hero .dek{color:var(--muted);text-wrap:pretty;max-width:68ch}
.pf-hero a{color:var(--accent)}
.pf-hero .starting{background:var(--panel);border-left-color:var(--accent);color:var(--ink)}
.pf-hero .count{color:var(--soft)}
.count-exceptions{margin:8px 0 0;font-size:.85rem;color:var(--soft);max-width:80ch}
.count-exceptions summary{cursor:pointer;width:fit-content;font-weight:650;color:var(--accent);list-style:none;
  display:inline-flex;align-items:center;gap:7px}
.count-exceptions summary::-webkit-details-marker{display:none}
.count-exceptions summary::before{content:"";width:6px;height:6px;border:solid currentColor;border-width:0 2px 2px 0;
  transform:rotate(-45deg);transition:transform .15s ease}
.count-exceptions[open] summary::before{transform:rotate(45deg)}
.count-exceptions p{margin:8px 0 0;padding:10px 14px;border:1px solid var(--line);border-radius:10px;
  background:var(--panel);line-height:1.6}
@media (max-width:600px){.pf-hero{padding-top:18px}}
