@font-face{font-family:'Big Shoulders Display';font-style:normal;font-weight:600 900;font-display:swap;src:url(fonts/bigshoulders-latin.woff2) 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:'Hanken Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/hanken-latin.woff2) 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}

:root{
  --font:'Hanken Grotesk',system-ui,sans-serif;
  --font-display:'Big Shoulders Display','Hanken Grotesk',sans-serif;
  --font-display-alt:var(--font-display);
  --fs-axis:14px; --fs-label:14px; --fs-meta:14px;
  --fs-body:16px; --fs-title:16px; --fs-tab:20px; --fs-section:28px;
  --fs-display:clamp(48px, calc(1rem + 4vw), 72px);
  --fs-num:38px;
  --fs-num-sm:32px;
  --fs-num-kpi:var(--fs-num);
  --fs-wordmark:clamp(88px, 9.6vw, 160px);
  --fw-display:900; --fw-num:800; --fw-title:700; --fw-label:700;
  --fw-ui:500; --fw-value:500; --fw-figure:400; --fw-text:400; --fw-strong:600;
  --fw-col:600;
  --tr-display:.01em; --tr-num:.02em; --tr-label:.14em; --tr-eyebrow:.2em; --tr-text:0;
  --tr-title:.08em;
  --ff-cap:.8;
  --gap-trim:calc(var(--fs-num) * var(--ff-cap) / 2);
  --r-key:12px;
  --ff-light:255 255 255;
  --ff-shade:0 0 0;
  --ff-stage-1:#1B1D21; --ff-stage-2:#0B0C0E;
  --ff-obsidian-hi:#5A5F68; --ff-obsidian:#0B0C0E; --ff-obsidian-lo:#000000;
  --ff-chrome-ink:#D3D8DF; --ff-reserved-ink:#E6E9ED;
  --ff-chrome-grad:linear-gradient(180deg,#FFFFFF 0%,#D9DEE4 38%,#9CA2AC 49%,#32363D 53%,#8E949E 78%,#E9ECEF 100%);
  --ff-plate-fx:drop-shadow(0 1.5px 1px rgb(var(--ff-shade) / .85)) drop-shadow(0 14px 18px rgb(var(--ff-shade) / .55));
}
@media (max-width:1223.98px){ :root{ --fs-num-kpi:var(--fs-num); } }
@media (max-width:639.98px){ :root{ --fs-num:40px; --fs-num-kpi:40px; } }

[data-mode="smoke"][data-mode="smoke"]{
  --stage:var(--ff-stage-1);
  --scrim-a:rgba(11,12,14,.48); --scrim-b:rgba(11,12,14,.54);
  --slab:rgba(21,23,26,.76); --lq-ring-fill:rgba(21,23,26,.70);
  --slab-solid:rgba(21,23,26,.96);
  --tile:rgba(74,79,88,.18); --tile-hover:rgba(74,79,88,.32);
  --tilehi:#E6E9ED; --ink-on-hi:#0B0C0E;
  --lq-hi-a:#FFFFFF; --lq-hi-b:#C9CED5;
  --ink:#F2F4F6; --ink2:#A9AFB8; --ink3:#7C828C;
  --ok:var(--ink); --warn:var(--ink2); --bad:var(--ink2);
  --mark-dim:rgba(169,175,184,.24);
  --ff-bar:rgba(169,175,184,.58);
  --chrome:rgba(21,23,26,.82); --focus-halo:#15171A;
  --grad:0;

  --ff-tip:#262A30;
  --ff-tray:rgb(var(--ff-shade) / .55);
  --ff-well-edge:var(--lq-well-edge, inset -1px -1px 0 rgb(var(--ff-light) / .14));
  --glow-1:#595A5B; --glow-1-at:50% 45%;  --glow-2:#7D7D7D; --glow-2-at:22% 70%;  --glow-3:#111111; --glow-3-at:85% 20%;
}

.ff-scene--walk{ --glow-1:#363736; --glow-1-at:62% 52%;  --glow-2:#616161; --glow-2-at:80% 60%;  --glow-3:#101010; --glow-3-at:20% 20%; }

.ff-scene--stage{
  background:
    radial-gradient(55% 45% at var(--glow-1-at), var(--glow-1), transparent),
    radial-gradient(50% 40% at var(--glow-2-at), var(--glow-2), transparent),
    radial-gradient(60% 45% at var(--glow-3-at), var(--glow-3), transparent),
    radial-gradient(120% 60% at 50% 0, var(--ff-stage-1), var(--ff-stage-2) 70%);
}

.sg-display{ text-transform:uppercase; }
.sg-tabtitle{ font-family:var(--font-display); text-transform:uppercase; }
.sg-tile__title{ font-family:var(--font-display); font-weight:var(--fw-title); letter-spacing:var(--tr-title); text-transform:uppercase; line-height:1.15; }
.sg-eyebrow{ font-family:var(--font-display); font-weight:var(--fw-label); letter-spacing:var(--tr-eyebrow); }
.sg-stats__label{ font-family:var(--font-display); font-weight:var(--fw-label); text-transform:uppercase; }
.sg-table__th{ font-family:var(--font-display); font-weight:var(--fw-label); text-transform:uppercase; }

.sg-num__dec{ color:var(--ink2); }

.sg-num--half .sg-num__int ~ .sg-num__unit{ font-weight:var(--fw-title); letter-spacing:var(--tr-num); }

.sg-chip{ letter-spacing:var(--tr-text); }
.sg-nav__item{ font-size:var(--fs-body); }

.sg-nav__item[aria-disabled="true"]{ opacity:.4; cursor:not-allowed; }
.sg-nav__item[aria-disabled="true"]:hover{ background:var(--nav-item, var(--ctl-bg)); color:var(--ink2); }

.ff-label{ margin:0; font-family:var(--font-display); font-size:var(--fs-label); font-weight:var(--fw-label); line-height:1.2; letter-spacing:var(--tr-eyebrow); text-transform:uppercase; color:var(--ink2); }

.ff-stack{ display:inline-block; margin:0; font-size:var(--stack-fs, 16px); line-height:.84; }
.ff-stack__l1, .ff-stack__l2{ display:table; font-family:var(--font-display); font-weight:var(--fw-display); line-height:.84; text-transform:uppercase; white-space:nowrap; color:var(--ink); }
.ff-stack__l1{ letter-spacing:.045em; }
.ff-stack__l2{ letter-spacing:.02em; margin-top:.04em; font-size:1.024em; }
.ff-stack__kw{ margin-inline:.015em; }

.ff-stack--plate{ filter:var(--ff-plate-fx); }
.ff-chrome{ background-image:var(--ff-chrome-grad); -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent; }
.ff-tagline{ display:table; margin:0; font-family:var(--font-display); font-weight:var(--fw-label); font-size:var(--tag-fs, 14px); line-height:1; letter-spacing:.3em; text-transform:uppercase; color:var(--ink2); white-space:nowrap; }

.ff-hlock{ display:flex; align-items:center; gap:calc(var(--mk, 32px) * .3); }
.ff-hlock--sm{ --mk:32px; --mk-target:32px; }
.ff-mark{ display:block; flex:none; width:var(--mk, 32px); height:var(--mk, 32px); }

.ff-stamp{
  --ff-gloss:.5; --ff-rim-w:1px; --ff-tr:.14em;
  --ff-rim-spec:rgb(var(--ff-light) / .9); --ff-rim-lo:rgb(var(--ff-light) / .2); --ff-rim-ret:rgb(var(--ff-light) / .4);
  position:relative; isolation:isolate; overflow:hidden; flex:none;
  display:inline-flex; align-items:center; justify-content:center;
  height:44px; padding-inline:18px; border-radius:var(--r-key);
  font-family:var(--font-display); font-size:var(--fs-body); font-weight:var(--fw-num); line-height:1;
  letter-spacing:var(--ff-tr); text-transform:uppercase; white-space:nowrap;
  color:var(--ff-stamp-ink); background:var(--ff-stamp-face);
  box-shadow:var(--ff-stamp-edges), var(--ff-stamp-float);
}
.ff-stamp::before{
  content:""; position:absolute; z-index:-1; left:0; right:0; top:0; height:50%; pointer-events:none;
  background:linear-gradient(180deg, rgb(var(--ff-light) / var(--ff-gloss)), rgb(var(--ff-light) / .03));
}
.ff-stamp::after{
  content:""; position:absolute; z-index:-1; inset:0; border-radius:inherit; padding:var(--ff-rim-w); pointer-events:none;
  background:
    radial-gradient(60% 60% at 0 0, var(--ff-rim-spec), transparent),
    radial-gradient(40% 40% at 100% 100%, var(--ff-rim-ret), transparent),
    linear-gradient(var(--ff-rim-lo), var(--ff-rim-lo));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
}
.ff-stamp__text{ margin-right:calc(-1 * var(--ff-tr)); }

.ff-stamp--in{
  --ff-fairway-hi:#66EAA0; --ff-fairway:#1FB46B; --ff-fairway-lo:#0B7440; --ff-on-fairway:#03130A;
  --ff-gloss:.5;
  --ff-stamp-ink:var(--ff-on-fairway);
  --ff-stamp-face:linear-gradient(180deg, var(--ff-fairway-hi), var(--ff-fairway) 50%, var(--ff-fairway-lo));
  --ff-stamp-edges:inset 0 1px 0 rgb(var(--ff-light) / .7), inset 0 -4px 6px -2px rgb(var(--ff-shade) / .28), inset 0 0 10px rgba(102,234,160,.30);
  --ff-stamp-float:3px 10px 20px -8px rgba(31,180,107,.40), 0 0 16px rgba(31,180,107,.25), 1px 3px 6px rgb(var(--ff-shade) / .45);
  --ff-rim-spec:rgb(var(--ff-light) / .95); --ff-rim-lo:rgb(var(--ff-light) / .25); --ff-rim-ret:rgb(var(--ff-light) / .45);
}

.ff-stamp--out{
  --ff-gloss:.3; --ff-rim-w:1.5px;
  --ff-stamp-ink:var(--ff-chrome-ink);
  --ff-stamp-face:linear-gradient(180deg, rgb(var(--ff-light) / .18), rgb(var(--ff-light) / .02));
  --ff-stamp-edges:inset 0 0 0 1.5px rgb(var(--ff-light) / .45), inset 0 0 12px rgb(var(--ff-light) / .10), inset 0 -8px 12px -10px rgb(var(--ff-shade) / .40);
  --ff-stamp-float:3px 10px 20px -10px rgb(var(--ff-shade) / .70);
  --ff-rim-spec:rgb(var(--ff-light) / 1); --ff-rim-lo:rgb(var(--ff-light) / .45); --ff-rim-ret:rgb(var(--ff-light) / .6);
}

.ff-stamp--pen{
  --ff-gloss:.45;
  --ff-stamp-ink:var(--ink);
  --ff-stamp-face:linear-gradient(180deg, var(--ff-obsidian-hi), var(--ff-obsidian) 55%, var(--ff-obsidian-lo));
  --ff-stamp-edges:inset 0 1px 0 rgb(var(--ff-light) / .6), inset 0 0 0 1px rgb(var(--ff-light) / .14), inset 0 -4px 6px -2px rgb(var(--ff-shade) / .5);
  --ff-stamp-float:3px 12px 22px -10px rgb(var(--ff-shade) / .8);
  --ff-rim-spec:rgb(var(--ff-light) / .9); --ff-rim-lo:rgb(var(--ff-light) / .14); --ff-rim-ret:rgb(var(--ff-light) / .35);
}

.ff-stamp--res{
  --ff-stamp-ink:var(--ff-reserved-ink);
  --ff-stamp-face:rgb(var(--ff-shade) / .4);
  --ff-stamp-edges:inset 0 3px 6px rgb(var(--ff-shade) / .5), inset -1px -1px 0 rgb(var(--ff-light) / .14), 0 1px 0 rgb(var(--ff-light) / .3);
  --ff-stamp-float:0 0 transparent;
  outline:1.5px dashed rgb(var(--ff-light) / .55); outline-offset:-4px;
}
.ff-stamp--res::before, .ff-stamp--res::after{ display:none; }

.ff-stamp--landed{ height:52px; font-size:var(--fs-tab); transform:rotate(-3deg); }

.ff-stamp--fill{ width:100%; padding-inline:8px; --ff-tr:.1em; }

.ff-tray{
  margin:0; padding:8px; list-style:none; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:8px;
  border-radius:var(--r-ctl); background:var(--ff-tray);
  box-shadow:inset 0 6px 14px -4px rgb(var(--ff-shade) / .9), var(--ff-well-edge), 0 1px 0 rgb(var(--ff-light) / .06);
}
.ff-tray__item{ display:grid; justify-items:center; gap:8px; min-width:0; padding-top:6px; }
.ff-tray__count{ font-family:var(--font-display); font-size:var(--fs-section); font-weight:var(--fw-num); line-height:1; color:var(--ink); text-box:trim-both cap alphabetic; }
@container (max-width:479.98px){
  .ff-tray{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .ff-stamp--fill{ --ff-tr:.06em; }
}
@container (max-width:259.98px){ .ff-tray{ grid-template-columns:minmax(0,1fr); } }

@container (min-width:480px) and (max-width:659.98px){
  .ff-stamp--fill{ --ff-tr:clamp(0px, ((100cqi - 40px) / 4 - 113.6px) / 15, .1em); }
}

.ff-chip--well{ background:var(--tile2); box-shadow:var(--inset), var(--ff-well-edge); }

.ff-hbar{ position:relative; display:block; flex:none; width:var(--hbar-w, 120px); height:10px; border-radius:var(--r-pill); background:var(--mark-dim); }
.ff-hbar__zero{ position:absolute; top:-4px; bottom:-4px; left:calc(var(--zero, 0) * 100%); width:1px; background:var(--line); }
.ff-hbar__fill{
  position:absolute; top:0; bottom:0; border-radius:var(--r-pill); background:var(--ff-bar);
  left:calc((var(--zero, 0) - var(--len, 0) * (1 - var(--dir, 1)) / 2) * 100%); width:calc(var(--len, 0) * 100%);
}
.ff-hbar__fill--hi{ background:var(--accent); }

@media (forced-colors:active){
  .ff-stamp::before, .ff-stamp::after{ display:none; }
  .ff-stamp{ border:1px solid CanvasText; box-shadow:none; }
  .ff-tray{ border:1px solid GrayText; }
  .ff-chrome{ background:none; color:CanvasText; -webkit-text-fill-color:CanvasText; }
}

[data-mode="frost"][data-mode="frost"]{
  --stage:#E6E9ED;
  --ff-stage-1:#FAFBFC; --ff-stage-2:#E6E9ED;
  --scrim-a:rgba(250,251,252,.18); --scrim-b:rgba(250,251,252,.30);
  --slab-solid:rgba(230,233,237,.96);
  --tilehi:#0B0C0E; --ink-on-hi:#F2F4F6;
  --lq-hi-a:#5A5F68; --lq-hi-a2:#262A30; --lq-hi-b2:#15171A; --lq-hi-b:#0B0C0E;
  --ink:#0B0C0E; --ink2:#4A4F58; --ink3:#5F656E;
  --ok:var(--ink); --warn:var(--ink2); --bad:var(--ink2);
  --mark-dim:rgba(74,79,88,.18);
  --ff-bar:rgba(74,79,88,.66);
  --ff-zero:rgba(11,12,14,.28);
  --ff-tip:#262A30; --ff-tip-ink:#F2F4F6;
  --ff-well-edge:var(--lq-well-edge);
  --ff-cast:30 30 40;
  --ff-graphite:#262A30; --ff-graphite-ch:38 42 48; --ff-platinum:#F2F4F6;
  --ff-chrome-grad:linear-gradient(180deg,#6F7580 0%,#262A30 34%,#0B0C0E 49%,#9CA2AC 53%,#5F656E 74%,#262A30 100%);
  --ff-plate-fx:drop-shadow(0 1.5px 1px rgb(var(--ff-cast) / .30)) drop-shadow(0 14px 18px rgb(var(--ff-cast) / .16));
  --glow-1:#B9BDC4; --glow-1-at:50% 45%;  --glow-2:#CACED2; --glow-2-at:22% 70%;  --glow-3:#D2D7E0; --glow-3-at:85% 20%;
}

[data-mode="frost"] .ff-scene--walk{ --glow-1:#E5EAEE; --glow-1-at:62% 52%;  --glow-2:#E0E2E6; --glow-2-at:80% 60%;  --glow-3:#EBEDF0; --glow-3-at:20% 20%; }

[data-mode="frost"] .ff-tray{
  background:#101113;
  box-shadow:inset 0 6px 14px -4px rgb(0 0 0 / .9), var(--ff-well-edge), 0 1px 0 rgb(255 255 255 / .9);
}
[data-mode="frost"] .ff-hbar__zero{ background:var(--ff-zero); }

@media (min-width:900px){ [data-mode="frost"] .ff-footnote{ color:var(--ink); } }

[data-mode="frost"] .ff-stamp--in:not([data-mode="smoke"] *){
  --ff-stamp-float:3px 10px 18px -8px rgba(31,180,107,.45), 1px 3px 5px rgb(var(--ff-cast) / .22);
}
[data-mode="frost"] .ff-stamp--out:not([data-mode="smoke"] *){
  --ff-gloss:.55;
  --ff-stamp-ink:var(--ff-graphite);
  --ff-stamp-face:linear-gradient(180deg, rgb(255 255 255 / .70), rgb(255 255 255 / .28));
  --ff-stamp-edges:inset 0 0 0 1.5px rgb(var(--ff-graphite-ch) / .60), inset 0 0 12px rgb(255 255 255 / .60), inset 0 -8px 12px -10px rgb(var(--ff-cast) / .30);
  --ff-stamp-float:3px 10px 18px -10px rgb(var(--ff-cast) / .32);
  --ff-rim-spec:rgb(255 255 255 / 1); --ff-rim-ret:rgb(255 255 255 / .55);
  --ff-rim-lo:rgb(var(--ff-graphite-ch) / .60);

}
[data-mode="frost"] .ff-stamp--pen:not([data-mode="smoke"] *){
  --ff-stamp-ink:var(--ff-platinum);
  --ff-stamp-float:3px 12px 20px -11px rgb(var(--ff-cast) / .55), 1px 3px 4px rgb(var(--ff-cast) / .22);
}
[data-mode="frost"] .ff-stamp--res:not([data-mode="smoke"] *){
  --ff-stamp-ink:var(--ff-graphite);
  --ff-stamp-face:rgb(var(--ff-cast) / .08);
  --ff-stamp-edges:inset 0 3px 6px rgb(var(--ff-cast) / .16), inset -1px -1px 0 rgb(255 255 255 / .85), 0 1px 0 rgb(255 255 255 / .9);
  outline-color:rgb(var(--ff-graphite-ch) / .90);
}
