@import url("https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Anonymous+Pro:wght@400&display=swap");

/* Generated from brand-dna.json. Stable public API; do not edit directly. */
:root {
  --brand-signal: #77CDCF;
  --brand-accent: #A75FE3;
  --brand-success: #49CA59;
  --brand-warning: #EDB335;
  --brand-error: #D2284A;
  --brand-paper: #E9F3F0;
  --brand-ink: #0A2431;
  --brand-border: rgba(10, 36, 49, 0.12);
  --brand-font-heading: "Inter", system-ui, sans-serif;
  --brand-font-body: "Inter", system-ui, sans-serif;
  --brand-font-utility: "Anonymous Pro", ui-monospace, monospace;
  --brand-heading-weight: 700;
  --brand-body-weight: 400;
  --brand-utility-weight: 400;
  --brand-border-width: 1px;
  --brand-radius: 2rem;
  --brand-button-radius: 999px;
  --brand-shadow-sm: 0.28px 16.31px 11.58px -5.79px rgba(0, 0, 0, 0.18);
  --brand-shadow-md: 0.54px 31px 22px -11px rgba(0, 0, 0, 0.18);
  --brand-shadow-lg: 1.03px 58.89px 41.8px -20.9px rgba(0, 0, 0, 0.18);
  --brand-space-1: .25rem;
  --brand-space-2: .5rem;
  --brand-space-3: .75rem;
  --brand-space-4: 1rem;
  --brand-space-6: 1.5rem;
  --brand-space-8: 2rem;
  --brand-space-12: 3rem;
  --brand-space-16: 4rem;
  color-scheme: light;
}

.bd-page { margin: 0; background: var(--brand-paper); color: var(--brand-ink); font: var(--brand-body-weight) 1rem/1.6 var(--brand-font-body); -webkit-font-smoothing: antialiased; }
.bd-page *, .bd-page *::before, .bd-page *::after { box-sizing: border-box; }
.bd-shell { width: min(100% - 2rem, 75rem); margin-inline: auto; }
.bd-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--brand-space-6); }
.bd-stack { display: flex; flex-direction: column; gap: var(--brand-space-6); }
.bd-cluster { display: flex; flex-wrap: wrap; align-items: center; gap: var(--brand-space-3); }
.bd-display, .bd-title, .bd-heading { margin: 0; font-family: var(--brand-font-heading); font-weight: var(--brand-heading-weight); text-wrap: balance; }
.bd-display { font-size: clamp(3rem, 8vw, 7.5rem); line-height: .92; letter-spacing: -.05em; }
.bd-title { font-size: clamp(2.25rem, 5vw, 4.5rem); line-height: 1; letter-spacing: -.035em; }
.bd-heading { font-size: clamp(1.5rem, 3vw, 2.25rem); line-height: 1.1; letter-spacing: -.02em; }
.bd-body { max-width: 68ch; margin: 0; }
.bd-label, .bd-meta { font-family: var(--brand-font-utility); font-weight: var(--brand-utility-weight); }
.bd-label { font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; }
.bd-meta { font-size: .8125rem; }
.bd-card { padding: var(--brand-space-6); border: var(--brand-border-width) solid var(--brand-border); border-radius: var(--brand-radius); }
.bd-band { padding-block: var(--brand-space-12); background: var(--brand-ink); color: var(--brand-paper); }
.bd-button { display: inline-flex; min-height: 2.75rem; align-items: center; justify-content: center; padding: .7rem 1rem; border: var(--brand-border-width) solid var(--brand-ink); border-radius: var(--brand-button-radius); background: var(--brand-ink); color: var(--brand-paper); font: 600 .875rem/1 var(--brand-font-body); text-decoration: none; }
.bd-stat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: var(--brand-space-6); }
.bd-stat { display: grid; gap: var(--brand-space-2); align-content: start; }
.bd-stat > strong { font: var(--brand-heading-weight) clamp(2rem, 5vw, 4rem)/1 var(--brand-font-heading); font-variant-numeric: tabular-nums; }
.bd-table-wrap { width: 100%; overflow-x: auto; }
.bd-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.bd-table th, .bd-table td { padding: .75rem; border-bottom: var(--brand-border-width) solid var(--brand-border); text-align: left; vertical-align: top; }
.bd-table th { font-family: var(--brand-font-utility); font-size: .75rem; letter-spacing: .04em; text-transform: uppercase; }
.bd-skip-link { position: fixed; z-index: 100; top: .5rem; left: .5rem; padding: .6rem .8rem; background: var(--brand-ink); color: var(--brand-paper); transform: translateY(-200%); }
.bd-skip-link:focus { transform: translateY(0); }
.bd-page :focus-visible { outline: 3px solid var(--brand-accent); outline-offset: 3px; }

@media (max-width: 48rem) {
  .bd-shell { width: min(100% - 1.25rem, 75rem); }
  .bd-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--brand-space-4); }
  .bd-card { padding: var(--brand-space-4); }
}

@media (prefers-reduced-motion: reduce) {
  .bd-page *, .bd-page *::before, .bd-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
