


@font-face {
  font-family: "Albert Sans"; font-weight: 300 800; font-display: swap;
  src: url(/static/fonts/albert-sans-latin.woff2?v=c2fb6fda415c) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Albert Sans"; font-weight: 300 800; font-display: swap;
  src: url(/static/fonts/albert-sans-latin-ext.woff2?v=78b26c5d5d82) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, 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: "JetBrains Mono"; font-weight: 500 700; font-display: swap;
  src: url(/static/fonts/jetbrains-mono-latin.woff2?v=83c005d49d8a) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "JetBrains Mono"; font-weight: 500 700; font-display: swap;
  src: url(/static/fonts/jetbrains-mono-latin-ext.woff2?v=db5ff4db83e5) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, 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: "Albert Sans Fallback"; font-weight: 300 650; src: local("Arial"), local("ArialMT");
  size-adjust: 102.83%; ascent-override: 92.39%; descent-override: 24.31%; line-gap-override: 0%;
}
@font-face {
  font-family: "Albert Sans Fallback"; font-weight: 651 900; src: local("Arial Bold"), local("Arial-BoldMT");
  size-adjust: 97.96%; ascent-override: 96.98%; descent-override: 25.52%; line-gap-override: 0%;
}
@font-face {
  font-family: "JetBrains Mono Fallback"; src: local("Courier New"), local("CourierNewPSMT");
  size-adjust: 100%; ascent-override: 102%; descent-override: 30%; line-gap-override: 0%;
}


*, ::before, ::after { box-sizing: border-box; margin: 0; padding: 0; }
html {
  -webkit-text-size-adjust: 100%; text-size-adjust: 100%;
  scroll-padding-top: calc(var(--nav-h) + 16px);
  -webkit-tap-highlight-color: transparent;
}
body {
  min-height: 100dvh;
  font: 400 16px/1.6 var(--font);
  color: var(--ink2);
  background: var(--paper);
  overflow-x: clip;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  font-synthesis-weight: none;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: 0; cursor: pointer; }
img, svg, canvas, video { display: block; max-width: 100%; }
img { height: auto; }
ul[class], ol[class] { list-style: none; }
b, strong { color: var(--ink); font-weight: 700; }
h1, h2, h3, h4 { font-weight: var(--display-wght); color: var(--ink); text-wrap: balance; }
p, li, dd { text-wrap: pretty; }
table { border-collapse: collapse; }
[hidden] { display: none !important; }
::selection { background: var(--hl); color: var(--ink); }


:focus-visible { outline: 2px solid var(--g-deep); outline-offset: 0; box-shadow: 0 0 0 6px rgba(18, 183, 106, .25); }
:focus:not(:focus-visible) { outline: none; }
main:focus { outline: none; }

.vh {
  position: absolute !important; width: 1px; height: 1px; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap;
}


.h-xl, .h-lg, .h-md, .h-sm { font-weight: var(--display-wght); color: var(--ink); text-wrap: balance; }
.h-xl { font-size: var(--fs-xl); line-height: .98; letter-spacing: -.048em; }
.h-lg { font-size: var(--fs-lg); line-height: 1.02; letter-spacing: -.04em; }
.h-md { font-size: var(--fs-md); line-height: 1.15; letter-spacing: -.025em; }
.lead { font-size: var(--fs-lead); line-height: 1.65; color: var(--ink2); max-width: 560px; }
.lead b { font-weight: 600; }
.grad { background: var(--grad-go); -webkit-background-clip: text; background-clip: text; color: transparent; font-style: normal; }
.mono, .data { font-family: var(--mono); font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.data { font-weight: 600; }
.micro { font: 600 11px/1.3 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.prov { font: 500 11px/1.45 var(--mono); color: var(--ink2); letter-spacing: 0; }
.amount { font-weight: 800; font-size: 46px; letter-spacing: -2px; line-height: 1; color: var(--ink); font-variant-numeric: tabular-nums; }
.numeral {
  font-weight: 800; font-size: var(--fs-numeral); line-height: .8; letter-spacing: -.05em;
  color: transparent; -webkit-text-stroke: 1.5px var(--forest);
}
.up { color: var(--g-deep); }
.dn { color: var(--short-ink); }


.label {
  display: inline-flex; align-items: center; gap: 12px;
  font: 600 12px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--forest);
}
.label i { font-style: normal; color: var(--g-deep); }
.label::after { content: ""; width: 42px; height: 1px; background: currentColor; opacity: .35; transform-origin: left; }
.label--bare::after { display: none; }


.wrap { width: 100%; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gutter); }
.sec { position: relative; padding-block: var(--sec-pad); }
.sec--white { background: var(--white); }
.sec--seam { border-top: var(--seam); }
.stack > * + * { margin-top: var(--stack, 16px); }
.row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }



.halftone {
  position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle, var(--ht-ink) var(--ht-dot), transparent calc(var(--ht-dot) + .1px)) 0 0 / var(--ht-pitch) var(--ht-pitch);
  -webkit-mask-image: linear-gradient(118deg, #000 0%, rgba(0, 0, 0, .3) 36%, transparent 62%);
  mask-image: linear-gradient(118deg, #000 0%, rgba(0, 0, 0, .3) 36%, transparent 62%);
}

.wash { position: absolute; pointer-events: none; border-radius: 50%; }
.wash--lime { background: radial-gradient(closest-side, rgba(163, 230, 53, .26), transparent); }
.wash--g { background: radial-gradient(closest-side, rgba(18, 183, 106, .14), transparent); }

.card {
  background: var(--card); border: 1px solid var(--line-card); border-radius: var(--r-card);
  box-shadow: var(--shadow-card);
}
.card--cream { background: var(--grad-card); border-color: var(--line); }
.glass {
  position: relative; overflow: clip; background: var(--glass);
  border: 1px solid #fff; border-radius: var(--r-card);
  box-shadow: inset 0 1px 0 #fff, var(--shadow-glass);
}

.glass__refract { position: absolute; inset: 0; pointer-events: none; opacity: .35; transform: translate(6px, 6px) scale(1.035); }
.glass > :not(.glass__refract) { position: relative; }


.orb {
  position: relative; display: inline-block; flex: none; width: 10px; height: 10px; border-radius: 50%;
  background: var(--orb-fill); box-shadow: var(--orb-shadow);
  transition: background var(--t-tint), box-shadow var(--t-tint);
}
.orb::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: rgba(18, 183, 106, .5); opacity: 0; pointer-events: none; }
.orb--lime { background: radial-gradient(circle at 34% 30%, var(--sun-hi), var(--lime) 60%, var(--sun-deep)); box-shadow: 0 6px 18px rgba(124, 181, 24, .45); }
:root[data-feed="stale"] :is(.orb[data-live], h1 .stop .orb) { background: var(--forest); box-shadow: none; }
:root[data-paused] :is(.orb[data-live], h1 .stop .orb) { background: var(--ink); box-shadow: none; }


.stop { display: inline; white-space: nowrap; }
.stop .orb { width: .16em; height: .16em; margin-left: .05em; vertical-align: baseline; box-shadow: 0 .06em .18em rgba(18, 183, 106, .42); }
.final .stop .orb {
  background: radial-gradient(circle at 34% 30%, #fff, #e8fff3 60%, #b9f3d4); box-shadow: 0 .06em .2em rgba(3, 60, 34, .35);
}


@media (scripting: enabled) {
  
  .rv:not(.in), .rise:not(.in) .w > span { opacity: 0; translate: 0 16px; animation: rv-failsafe 0s 4s forwards; }
  .rise:not(.in) .w > span { translate: 0 .4em; }
  :root.rv-ready :is(.rv, .rise .w > span) { animation: none; }
  .label.rv:not(.in)::after { transform: scaleX(0); }
}
@keyframes rv-failsafe { to { opacity: 1; translate: none; } }
.rv { transition: opacity var(--t-reveal) var(--ease-out), translate var(--t-reveal) var(--ease-out); }
.rv-group > .rv:nth-child(2) { transition-delay: 60ms; } .rv-group > .rv:nth-child(3) { transition-delay: 120ms; }
.rv-group > .rv:nth-child(4) { transition-delay: 180ms; } .rv-group > .rv:nth-child(5) { transition-delay: 240ms; }
.rv-group > .rv:nth-child(n+6) { transition-delay: 300ms; }
.label::after { transition: transform 700ms var(--ease-out) 200ms; }


.w { display: inline-block; vertical-align: top; overflow: clip; padding-bottom: .14em; margin-bottom: -.14em; }
.w > span { display: inline-block; transition: translate 700ms var(--ease-out), opacity 500ms var(--ease-out); }
.rise .w:nth-child(2) > span { transition-delay: 40ms; } .rise .w:nth-child(3) > span { transition-delay: 80ms; }
.rise .w:nth-child(4) > span { transition-delay: 120ms; } .rise .w:nth-child(5) > span { transition-delay: 160ms; }
.rise .w:nth-child(6) > span { transition-delay: 200ms; } .rise .w:nth-child(7) > span { transition-delay: 240ms; }
.rise .w:nth-child(8) > span { transition-delay: 280ms; } .rise .w:nth-child(n+9) > span { transition-delay: 320ms; }


:root[data-paused] :is(.ambient, .ambient *) { animation-play-state: paused !important; }


@media (prefers-reduced-motion: no-preference) {
  @view-transition { navigation: auto; }
  html { scroll-behavior: smooth; }
}
::view-transition-old(root) { animation: vt-out 160ms var(--ease-turn) both; }
::view-transition-new(root) { animation: vt-in 280ms var(--ease-out) 40ms both; }
@keyframes vt-out { to { opacity: 0; translate: 0 -8px; } }
@keyframes vt-in { from { opacity: 0; translate: 0 12px; } }
.nav__in { view-transition-name: site-nav; }
::view-transition-group(site-nav) { animation: none; }
::view-transition-old(site-nav) { display: none; }
::view-transition-new(site-nav) { animation: none; }
h1 .stop .orb { view-transition-name: brand-orb; }
::view-transition-group(brand-orb) { animation-duration: 320ms; animation-timing-function: var(--ease-turn); }
::view-transition-image-pair(brand-orb) { animation: orb-lift 320ms var(--ease-turn); }
@keyframes orb-lift { 50% { translate: 0 -72px; scale: 1.35; } }


@media (prefers-reduced-motion: reduce) {
  .rv, .w > span, .label::after { transition: none !important; }
  .rv:not(.in), .rise:not(.in) .w > span { opacity: 1; translate: none; animation: none; }
  .label.rv:not(.in)::after { transform: none; }
  .ambient, .ambient * { animation: none !important; }
}

@media print {
  .topbar, .nav, .sheet, .foot__news, .foot__status, .skip { display: none !important; }
  body { background: #fff; }
}
