@charset "UTF-8";

@font-face{font-family:Archivo;src:url(/assets/fonts/archivo.woff2) format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,
    U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:Archivo;src:url(/assets/fonts/archivo-ext.woff2) format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,
    U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Plex Data';src:url(/assets/fonts/plex-data.woff2) format('woff2');
  font-weight:500;font-style:normal;font-display:swap;
  unicode-range:U+0020-007E,U+00B0,U+00B7,U+20AC,U+2013}

:root{
   
  --ink:#0B1F2A;           
  --ink-2:#3A4A57;         
  --ink-3:#61707D;         
  --paper:#F4F6F8;         
  --card:#FFFFFF;
  --rule:#DCE3E8;          
  --rule-2:#EDF1F4;
  --link:#0B5FA5;          
  --link-hi:#0A4E88;
  --signal:#E8A317;        
  --signal-soft:#FDF3E0;
  --confirm:#157F5F;       
  --confirm-soft:#E7F3EE;
  --deny:#A4291B;          
  --deny-soft:#FBEDEB;
  --on-dark:#EAF0F4;       
  --on-dark-2:#8FA3B0;

  --sans:Archivo,system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Plex Data',ui-monospace,'SF Mono',Menlo,monospace;

  --t-display:clamp(2.125rem,1.35rem + 3.3vw,3.75rem);
  --t-h2:clamp(1.5rem,1.2rem + 1.35vw,2.25rem);
  --t-h3:clamp(1.1875rem,1.1rem + .45vw,1.5rem);
  --t-h4:clamp(1.0625rem,1.02rem + .2vw,1.1875rem);
  --t-body:1.0625rem;
  --t-small:.875rem;
  --t-tiny:.8125rem;

  --s-1:.25rem; --s-2:.5rem;  --s-3:.75rem; --s-4:1rem;
  --s-5:1.5rem; --s-6:2rem;   --s-7:3rem;   --s-8:4rem;  --s-9:6rem;

  --wrap:73.75rem;                        
  --gut:clamp(1rem,4vw,2rem);
  --measure:38rem;                        

  --r-1:6px; --r-2:10px; --r-3:16px;
  --sh-1:0 1px 2px rgba(11,31,42,.06),0 2px 8px rgba(11,31,42,.05);
  --sh-2:0 2px 4px rgba(11,31,42,.05),0 12px 32px rgba(11,31,42,.10);
  --sh-dark:0 20px 48px rgba(11,31,42,.28);

  --dur:.18s;
}
@media (prefers-reduced-motion:reduce){
  :root{--dur:.001s}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important}
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--card);color:var(--ink-2);
  font:400 var(--t-body)/1.65 var(--sans);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  font-variant-numeric:tabular-nums}
img,svg,video{max-width:100%;height:auto;display:block}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6,p,ul,ol,dl,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}

h1,h2,h3,h4{color:var(--ink);font-weight:800;letter-spacing:-.02em;line-height:1.12;
  text-wrap:balance}
h1{font-size:var(--t-display);font-weight:800;letter-spacing:-.03em;line-height:1.04}
h2{font-size:var(--t-h2)}
h3{font-size:var(--t-h3);font-weight:700}
h4{font-size:var(--t-h4);font-weight:700;letter-spacing:-.01em}
p{text-wrap:pretty}
strong,b{font-weight:700;color:var(--ink)}
a{color:var(--link);text-decoration:underline;text-underline-offset:.15em;
  text-decoration-thickness:.06em;transition:color var(--dur)}
a:hover{color:var(--link-hi)}
:focus-visible{outline:2px solid var(--link);outline-offset:2px;border-radius:2px}
mark{background:var(--signal-soft);color:var(--ink);padding:0 .2em}
code,kbd,samp{font-family:var(--mono);font-size:.9em}
::selection{background:var(--ink);color:#fff}

.data,.num{font-family:var(--mono);font-weight:500;font-variant-numeric:tabular-nums;
  letter-spacing:-.01em}

.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.prose{max-width:var(--measure)}
.stack>*+*{margin-top:var(--s-4)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip-path:inset(50%);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--gut);top:-4rem;z-index:100;background:var(--ink);
  color:#fff;padding:.75rem 1.25rem;border-radius:0 0 var(--r-1) var(--r-1);
  text-decoration:none;transition:top var(--dur)}
.skip:focus{top:0;color:#fff}

.hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);
  backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--rule)}
.hd__in{display:flex;align-items:center;gap:var(--s-5);min-height:4.25rem}
.hd__logo{display:flex;flex-direction:column;text-decoration:none;line-height:1.05;
  margin-right:auto;padding-block:.5rem}
.hd__logo b{font-size:1.25rem;font-weight:800;color:var(--ink);letter-spacing:-.025em}
.hd__logo span{font-size:var(--t-tiny);color:var(--ink-3);font-weight:500;letter-spacing:.01em}
.hd__nav{display:none;gap:var(--s-1)}
.hd__nav a{color:var(--ink-2);text-decoration:none;font-size:var(--t-small);font-weight:600;
  padding:.5rem .7rem;border-radius:var(--r-1);white-space:nowrap;
  transition:background var(--dur),color var(--dur)}
.hd__nav a:hover{background:var(--paper);color:var(--ink)}
.hd__nav a[aria-current=page]{color:var(--ink);background:var(--paper)}
.hd__cta{display:none;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;
  font-size:var(--t-small);padding:.6rem 1.1rem;border-radius:var(--r-1);white-space:nowrap;
  transition:background var(--dur)}
.hd__cta:hover{background:#16323F;color:#fff}
.hd__burger{display:grid;place-items:center;width:2.75rem;height:2.75rem;margin-right:-.5rem;
  background:none;border:1px solid var(--rule);border-radius:var(--r-1);cursor:pointer}
.hd__burger span{display:block;width:1.1rem;height:2px;background:var(--ink);border-radius:2px;
  position:relative;transition:transform var(--dur),background var(--dur)}
.hd__burger span::before,.hd__burger span::after{content:'';position:absolute;left:0;
  width:1.1rem;height:2px;background:var(--ink);border-radius:2px;transition:transform var(--dur)}
.hd__burger span::before{top:-6px}.hd__burger span::after{top:6px}
.hd__burger[aria-expanded=true] span{background:transparent}
.hd__burger[aria-expanded=true] span::before{transform:translateY(6px) rotate(45deg)}
.hd__burger[aria-expanded=true] span::after{transform:translateY(-6px) rotate(-45deg)}
@media (min-width:60rem){
  .hd__nav{display:flex}
  .hd__cta{display:inline-block}
  .hd__burger{display:none}
}

.mnav{display:none;border-bottom:1px solid var(--rule);background:var(--card)}
.mnav[data-open]{display:block}
.mnav ul{padding:var(--s-2) 0 var(--s-4)}
.mnav a{display:block;padding:.85rem var(--gut);color:var(--ink);text-decoration:none;
  font-weight:600;border-bottom:1px solid var(--rule-2)}
.mnav a[aria-current=page]{color:var(--link)}
@media (min-width:60rem){.mnav{display:none!important}}

.ft{margin-top:var(--s-9);border-top:1px solid var(--rule);background:var(--paper);
  padding-block:var(--s-7) var(--s-5)}
.ft__cols{display:grid;gap:var(--s-6);grid-template-columns:1fr}
.ft h2{font-size:var(--t-tiny);text-transform:uppercase;letter-spacing:.09em;
  color:var(--ink-3);font-weight:700;margin-bottom:var(--s-3)}
.ft p{font-size:var(--t-small);color:var(--ink-3);max-width:34rem}
.ft li+li{margin-top:var(--s-2)}
.ft li a{font-size:var(--t-small);color:var(--ink-2);text-decoration:none}
.ft li a:hover{color:var(--link);text-decoration:underline}
.ft__bottom{display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-5);align-items:center;
  margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--rule);
  font-size:var(--t-tiny);color:var(--ink-3)}
.ft__bottom ul{display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-4);margin-left:auto}
.ft__bottom a,.ft__bottom .lnk-like{color:var(--ink-3);text-decoration:none}
.ft__bottom a:hover,.ft__bottom .lnk-like:hover{color:var(--link);text-decoration:underline}
@media (min-width:48rem){.ft__cols{grid-template-columns:1.4fr 1fr 1fr}}

.lnk-like{background:none;border:0;padding:0;margin:0;cursor:pointer;font:inherit;
  color:inherit;text-decoration:underline;text-underline-offset:.15em}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.9rem 1.5rem;border:1px solid transparent;border-radius:var(--r-1);
  font-weight:700;font-size:1rem;line-height:1.2;text-decoration:none;cursor:pointer;
  transition:background var(--dur),border-color var(--dur),color var(--dur);
  min-height:3rem}
.btn--primary{background:var(--ink);color:#fff}
.btn--primary:hover{background:#16323F;color:#fff}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--rule)}
.btn--ghost:hover{background:var(--paper);color:var(--ink);border-color:#C8D3DB}
.btn--wide{width:100%}
.btn--sm{padding:.55rem 1rem;min-height:2.5rem;font-size:var(--t-small)}

.totop{position:fixed;right:var(--s-4);bottom:var(--s-4);z-index:40;width:2.75rem;height:2.75rem;
  display:grid;place-items:center;background:var(--card);border:1px solid var(--rule);
  border-radius:50%;box-shadow:var(--sh-1);cursor:pointer;opacity:0;visibility:hidden;
  transition:opacity var(--dur),visibility var(--dur)}
.totop[data-show]{opacity:1;visibility:visible}
.totop::before{content:'';width:.55rem;height:.55rem;border-left:2px solid var(--ink);
  border-top:2px solid var(--ink);transform:translateY(2px) rotate(45deg)}

h1,h2,h3,.hero__intro .lead{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
