

@font-face{font-family:FS;src:url(/assets/fonts/fstext.woff2)format('woff2');
  font-weight:400 700;font-display:swap}
@font-face{font-family:FS;src:url(/assets/fonts/fstexti.woff2)format('woff2');
  font-weight:400 600;font-style:italic;font-display:swap}

@font-face{font-family:FSN;src:url(/assets/fonts/fsnarr.woff2)format('woff2');
  font-weight:500 700;font-display:swap}

*,*::before,*::after{box-sizing:border-box}
html{font-size:100%;-webkit-text-size-adjust:100%}
body{margin:0;background:#f4f5f8;color:#1b1d26;
  font-family:FS,'Helvetica Neue',Arial,sans-serif;font-size:1.08rem;
  line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased}

.gl-body table,.gl-body td,.gl-body th,.gl-fig__n,.gl-ax,.gl-fn,
.gl-val,.gl-card__k,.gl-meta,.gl-rec dd{
  font-variant-numeric:lining-nums tabular-nums}
img,svg{max-width:100%}

.gl-body a{color:inherit;text-decoration:none;
  box-shadow:inset 0 -2px 0 #3a4396;padding-bottom:.08em}
.gl-body a:hover{border-bottom-width:2px;background:#e7e9f1}
a{color:#3a4396}
.gl-skip{position:absolute;left:-9999px}
.gl-skip:focus{left:1rem;top:1rem;position:fixed;background:#3a4396;
  color:#f4f5f8;padding:.6rem 1rem;z-index:40}
:focus-visible{outline:3px solid #3a4396;outline-offset:2px}

.gl-wrap{max-width:68rem;margin:0 auto;padding:0 1.5rem}


.gl-doc{max-width:40rem;margin:0 auto;position:relative}
@media(min-width:62rem){.gl-doc{margin-left:13rem;max-width:40rem}}
.gl-doc>*{min-width:0}


.gl-rail{font-size:.72rem;line-height:1.5;color:#555a6b;
  letter-spacing:.05em;text-transform:uppercase;font-weight:600;
  margin:0 0 1.1rem;display:flex;gap:.9rem;flex-wrap:wrap}
@media(min-width:62rem){.gl-rail{
  position:absolute;left:-13rem;top:.35rem;width:11.5rem;
  display:block;text-align:right;margin:0}
  .gl-rail span{display:block}
}

.gl-gauge{display:none}
@media(min-width:62rem){.gl-gauge{
  display:block;position:absolute;left:-15.4rem;top:7rem;
  width:1.6rem;height:16rem}
}

.gl-body{font-size:1.08rem}
.gl-body p{margin:0 0 1.1rem}
.gl-body h2{font-weight:700;font-size:1.32rem;line-height:1.24;
  margin:2.5rem 0 .7rem;color:#1b1d26}
.gl-body h2::before{content:"";display:block;width:2.6rem;
  border-top:3px solid #3a4396;margin-bottom:.6rem}

.gl-body p>strong:first-child{color:#3a4396;font-weight:700}
.gl-body h3{font-weight:600;font-size:1.05rem;margin:1.8rem 0 .5rem;
  color:#555a6b}
.gl-body ul,.gl-body ol{margin:0 0 1.2rem;padding-left:0;
  list-style:none}
.gl-body li{margin:.4rem 0;position:relative;padding-left:1.5rem}

.gl-body ul>li::before{content:"";position:absolute;left:0;
  top:.72em;width:.85rem;border-top:2px solid #3a4396}

.gl-body .gl-key>li{padding-left:0}
.gl-body .gl-key>li::before{content:none}
.gl-body ol{counter-reset:gl}
.gl-body ol>li{counter-increment:gl;padding-left:2.1rem}
.gl-body ol>li::before{content:counter(gl);position:absolute;left:0;
  top:0;width:1.5rem;text-align:right;color:#3a4396;font-weight:700;
  font-size:.86rem;font-variant-numeric:lining-nums tabular-nums}

.gl-body blockquote{margin:1.7rem 0;padding:.9rem 1.2rem 0;
  border-top:2px solid #d9dce6;font-style:italic;font-size:1.04rem;
  color:#555a6b}
.gl-body blockquote p:last-child{margin:0}
.gl-body table{border-collapse:collapse;width:100%;margin:1.4rem 0;
  font-size:.96rem}
.gl-body th,.gl-body td{padding:.45rem .9rem .45rem 0;
  border-bottom:1px solid #d9dce6;text-align:left;vertical-align:top}

.gl-body th{font-weight:600;font-size:.7rem;letter-spacing:.08em;
  text-transform:uppercase;color:#555a6b}
.gl-body code{font-family:FS;font-size:.92em;background:#e7e9f1;
  padding:0 .2em}
.gl-body pre{background:#e7e9f1;padding:1rem;overflow-x:auto;
  font-size:.86rem;margin:1.4rem 0}

.gl-panel{background:#1d1f2b;color:#f4f5f8;
  margin:2.1rem 0;padding:1.4rem 1.4rem 1.2rem;min-width:0}
@media(min-width:62rem){.gl-panel{
  width:calc(100% + 9rem);margin-left:-4.5rem;max-width:none}}
.gl-panel--bare{background:transparent;color:#1b1d26;padding:0;
  width:100%;margin-left:0}
.gl-panel__t{font-weight:600;font-size:1rem;margin:0 0 .9rem;
  letter-spacing:.06em;text-transform:uppercase}
.gl-scroll{overflow-x:auto;position:relative}

.gl-scroll>svg{min-width:38rem}
@media(min-width:62rem){
  .gl-scroll--fit{overflow-x:visible}
  .gl-scroll--fit>svg{min-width:0;width:100%}
}
@media(max-width:62rem){
  .gl-scroll::after{content:"scroll \2192";display:block;
    text-align:right;font-size:.7rem;letter-spacing:.09em;
    text-transform:uppercase;opacity:.6;margin-top:.3rem;
    position:sticky;right:0}
}


.gl-ax{font-weight:600;font-size:11px;letter-spacing:.07em;
  text-transform:uppercase}

.gl-gauge text{font-family:FSN,FS,sans-serif;font-weight:600;
  font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.gl-fn{font-weight:400;font-size:12px}
.gl-val{font-weight:700;font-size:15px}
.gl-key{list-style:none;margin:.9rem 0 0;padding:0;display:flex;
  flex-wrap:wrap;gap:.45rem 1.4rem;font-size:.88rem}
.gl-key li{display:flex;align-items:center;gap:.45rem}
.gl-sw{width:1rem;height:1rem;flex:none}
.gl-note,.gl-ref{margin:.75rem 0 0;font-size:.88rem;opacity:.86}
.gl-cap{margin:.8rem 0 0;font-size:.9rem;font-style:italic;opacity:.86}
.gl-src{margin:.7rem 0 0;font-size:.76rem;letter-spacing:.01em;
  opacity:.72}

.gl-nav{border-bottom:1px solid #d9dce6;background:#fafbfd}
.gl-nav__i{display:flex;align-items:baseline;gap:1.3rem;flex-wrap:wrap;
  padding:.85rem 1.5rem;max-width:68rem;margin:0 auto}
.gl-nav__h{font-weight:700;font-size:1.02rem;text-decoration:none;
  color:#1b1d26}


.gl-nav__s{font-size:.72rem;line-height:1.35;color:#555a6b;
  max-width:19rem}
.gl-nav__s b{display:block;color:#1b1d26;font-weight:600}
.gl-nav nav{display:flex;gap:1rem;flex-wrap:wrap;margin-left:auto}
.gl-nav nav a{font-weight:600;font-size:.7rem;letter-spacing:.08em;
  text-transform:uppercase;text-decoration:none;color:#555a6b;
  padding:.2rem 0;border-bottom:2px solid transparent}
.gl-nav nav a:hover{color:#1b1d26}
.gl-nav nav a[aria-current]{color:#3a4396;
  border-bottom-color:#3a4396}


.gl-head{background:#242845;color:#f4f5f8;
  padding:3rem 0 3.2rem;border-bottom:3px solid #c3c8ea}
.gl-head h1{font-weight:700;margin:.3rem 0 .7rem;
  font-size:clamp(1.95rem,4.4vw,2.9rem);line-height:1.12;
  max-width:26ch}
.gl-head p{max-width:38rem;margin:0;opacity:.93}
.gl-eb{font-weight:600;font-size:.7rem;letter-spacing:.11em;
  text-transform:uppercase;color:#c3c8ea;margin:0}

.gl-hero{padding:2.8rem 0 2.2rem;border-bottom:1px solid #d9dce6}
.gl-hero__g{display:grid;gap:2rem;grid-template-columns:1fr}
.gl-hero__g>*{min-width:0}
@media(min-width:62rem){.gl-hero__g{grid-template-columns:5fr 6fr;
  align-items:center}}
.gl-hero h1{font-weight:700;margin:.3rem 0 .8rem;
  font-size:clamp(2rem,4.7vw,3rem);line-height:1.1}
.gl-hero__l{font-size:1.12rem;max-width:32rem}
.gl-go{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.3rem}
.gl-go a{font-weight:600;font-size:.72rem;letter-spacing:.07em;
  text-transform:uppercase;text-decoration:none;padding:.72rem 1.1rem;
  border:1.5px solid #1b1d26;color:#1b1d26}
.gl-go a:first-child{background:#1b1d26;color:#f4f5f8}

.gl-fig{display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);
  padding:2.2rem 0}
.gl-fig>*{min-width:0}
@media(min-width:52rem){.gl-fig{grid-template-columns:repeat(4,1fr)}}
.gl-fig__i{border-top:2px solid #1b1d26;padding-top:.65rem}
.gl-fig__n{font-weight:700;font-size:2.2rem;line-height:1;
  color:#3a4396;margin:0}
.gl-fig__c{margin:.4rem 0 0;font-size:.92rem;color:#555a6b}

.gl-sec{padding:2.6rem 0;border-top:1px solid #d9dce6}

.gl-sec>.gl-wrap>h2,.gl-wrap.gl-sec>h2{font-weight:700;font-size:clamp(1.45rem,3.1vw,2rem);
  line-height:1.18;margin:0 0 .5rem}
.gl-cards{display:grid;gap:1.2rem;grid-template-columns:1fr;
  margin-top:1.6rem}
.gl-cards>*{min-width:0}
@media(min-width:44rem){.gl-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:66rem){.gl-cards{grid-template-columns:repeat(3,1fr)}}
.gl-card{background:#fafbfd;border:1px solid #d9dce6;
  padding:1.2rem 1.25rem 1.3rem;display:flex;flex-direction:column;
  gap:.45rem}
.gl-card:hover{border-color:#3a4396}
.gl-card a{text-decoration:none;color:inherit}
.gl-card h3{font-weight:700;font-size:1.08rem;margin:0;line-height:1.28}
.gl-card p{margin:0;font-size:.94rem;color:#555a6b}
.gl-card__k{margin-top:auto;padding-top:.65rem;
  border-top:1px solid #d9dce6;font-weight:600;font-size:.68rem;
  letter-spacing:.08em;text-transform:uppercase;color:#3a4396}
.gl-mk{width:1.35rem;height:1.35rem;color:#3a4396}

.gl-crumb,.gl-meta{font-weight:600;font-size:.69rem;letter-spacing:.08em;
  text-transform:uppercase;color:#555a6b}
.gl-crumb a{color:#555a6b}
.gl-meta{color:#3a4396}

.gl-rec{margin:2.4rem 0 0;border-top:1px solid #d9dce6;
  padding-top:1.2rem}
.gl-rec h2{font-weight:700;font-size:1.05rem;margin:0 0 .7rem;
  letter-spacing:.06em;text-transform:uppercase;color:#3a4396}
.gl-rec ul{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.gl-rec a{text-decoration:none}
.gl-rec dt{font-weight:600;font-size:.68rem;letter-spacing:.08em;
  text-transform:uppercase;color:#555a6b}
.gl-rec dd{margin:0 0 .55rem}
.gl-seq{display:flex;justify-content:space-between;gap:1rem;
  margin-top:1.8rem;border-top:1px solid #d9dce6;padding-top:.9rem;
  font-size:.94rem}

.gl-foot{background:#2e3142;color:#f4f5f8;margin-top:3.2rem;
  padding:2.4rem 0 1.9rem}
.gl-foot a{color:#c3c8ea}
.gl-foot__g{display:grid;gap:1.7rem;grid-template-columns:1fr}
@media(min-width:44rem){.gl-foot__g{grid-template-columns:repeat(3,1fr)}}
.gl-foot h2{font-weight:700;font-size:.94rem;margin:0 0 .55rem}
.gl-foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.38rem;
  font-size:.94rem}
.gl-foot__n{margin:1.9rem 0 0;font-size:.86rem;opacity:.8;
  max-width:46rem}

.gl-on{font-weight:400;font-size:.8rem;color:#555a6b}
.gl-foot .gl-on{color:#b6bace}
.gl-lab{font-weight:600;font-size:.69rem;letter-spacing:.09em;
  text-transform:uppercase;color:#555a6b;margin:0}


.jf-reference{margin:1.15rem 0;padding:.95rem 1.05rem;background:#eef0fb;color:#1b1d26;border-left:4px solid #3a4396}.jf-reference a{color:#273287;text-decoration-thickness:2px}.jf-guides{padding:3.4rem 0;background:#e9ebf6;color:#1b1d26;border-block:1px solid #c8cce0}.jf-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.jf-guide-card{padding:1.25rem;background:#fff;color:#1b1d26;border:1px solid #bbc0d8}.jf-guide-card>p{margin:0;color:#565d79;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.jf-guide-card h3{margin:.55rem 0}.jf-guide-card h3 a{color:#20265f}.jf-guide-card--notebook{border-radius:18px}.jf-guide-card--grid{box-shadow:6px 6px 0 #6972b3}.jf-guide-card--catalog{border-left:9px solid #222957}.gl-foot__index summary{color:#f4f5f8;cursor:pointer;font-weight:700}.jf-head{padding:4rem 0 3rem;border-bottom:1px solid #bbc0d8}.jf-head h1{font-size:clamp(2.25rem,7vw,4.8rem);line-height:1.04;max-width:22ch}.jf-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.jf-dek{max-width:58rem;font-size:1.15rem;line-height:1.65}.jf-answer{max-width:58rem;padding:1rem 1.2rem;background:#fff;color:#1b1d26;border:1px solid #bbc0d8}.jf-head--notebook{background:#eceefa;color:#1b1d26}.jf-head--grid{background:#222957;color:#f4f5f8}.jf-head--grid .jf-eyebrow,.jf-head--grid .jf-dek{color:#dce0f4}.jf-head--catalog{background:repeating-linear-gradient(135deg,#e1e4f4 0 72px,#f5f6fb 72px 144px);color:#1b1d26}.jf-listicle{padding-top:2.3rem}.jf-method{padding:1.45rem 1.6rem;margin-bottom:2.3rem;background:#fff;color:#1b1d26;border:1px solid #bbc0d8}.jf-table-wrap{overflow-x:auto;margin-bottom:2.8rem}.jf-compare{width:100%;border-collapse:collapse;background:#fff;color:#1b1d26}.jf-compare th,.jf-compare td{padding:.82rem;border:1px solid #bbc0d8;text-align:left;vertical-align:top}.jf-compare th{background:#222957;color:#f4f5f8}.jf-compare a{color:#273287}.jf-tools{display:grid;gap:1.25rem}.jf-tools--notebook{grid-template-columns:repeat(2,minmax(0,1fr))}.jf-tools--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jf-tools--catalog{grid-template-columns:1fr}.jf-tool{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.45rem;background:#fff;color:#1b1d26;border:1px solid #bbc0d8}.jf-tool--notebook{border-radius:18px;border-top:5px solid #3a4396}.jf-tool--grid{box-shadow:5px 5px 0 #c7cae1}.jf-tool--catalog{border-left:10px solid #222957;background:linear-gradient(90deg,#eceefa,#fff 34%)}.jf-rank{font-size:1.55rem;font-weight:700;color:#3a4396}.jf-best{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#565d79}.jf-official a{display:inline-block;padding:.58rem .85rem;background:#273287;color:#fff;border-radius:999px;text-decoration:none}.jf-pilot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:3rem 0}.jf-pilot>h2{grid-column:1/-1}.jf-pilot>div{padding:1.2rem;background:#e9ebf6;color:#1b1d26}.jf-check{padding:1.55rem 1.8rem;margin:3rem 0;background:#222957;color:#f4f5f8}.jf-faq{margin:3rem 0}.jf-faq details{padding:1rem;margin:.75rem 0;background:#fff;color:#1b1d26;border:1px solid #bbc0d8}.jf-faq summary{cursor:pointer;font-weight:700}@media(max-width:900px){.jf-guide-grid,.jf-tools--notebook,.jf-tools--grid,.jf-pilot{grid-template-columns:1fr}.jf-head{padding:3rem 0 2.25rem}.jf-reference{padding:.85rem}}
