@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../../fonts/landing/archivo-normal-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: Archivo;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../../fonts/landing/archivo-normal-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0300-0301,U+0303,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;
}
:root {
  color-scheme: light;
  --landing-background: #f6faf7;
  --landing-surface: #fbfefc;
  --landing-border: #dae1dc;
  --landing-ink: #1c2b23;
  --landing-muted: #5a675f;
  --landing-accent: #0c5032;
  --landing-tint: #eaf1ec;
  --landing-radius: .3rem;
  --landing-radius-sm: .2rem;
  --landing-surface-shadow: 0 0 0 1px rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .06), 0 2px 4px rgb(0 0 0 / .04);
  --landing-card-green: #07583d;
  --landing-card-teal: #0f6f75;
  --landing-card-blue: #4d5f91;
  --landing-card-ochre: #8a6200;
  --coral: #3e7857;
  --violet: #0c5032;
  --landing-font: Archivo, 'Segoe UI', sans-serif;
  --landing-icon-filter: brightness(0) saturate(100%) invert(23%) sepia(27%) saturate(1189%) hue-rotate(105deg) brightness(89%) contrast(96%);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body { margin: 0; background: var(--landing-background); color: var(--landing-ink); font: 16px/1.6 var(--landing-font); -webkit-font-smoothing: antialiased; }
h1,h2,h3,p,figure { margin: 0; }
h1,h2,h3 { text-wrap: balance; }
p,figcaption { text-wrap: pretty; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
a:focus-visible,button:focus-visible,[tabindex]:focus-visible { outline: 2px solid var(--landing-accent); outline-offset: 4px; }
::selection { background: #c8dece; }
.landing-skip-link { position: fixed; top: 10px; left: 10px; z-index: 100; padding: 12px; background: var(--landing-accent); color: white; transform: translateY(-200%); }
.landing-skip-link:focus { transform: none; }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } *,*::before,*::after { animation: none!important; transition: none!important; } }
