/* tokens/fonts */
/* Outfit — self-hosted (Google Fonts, OFL). Variable weight 400–800. */
@font-face{font-family:"Outfit";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/Outfit-latin-ext.woff2") 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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Outfit";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/Outfit-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;}

/* tokens/colors */
/* Noorderwind — colour tokens (v2 "Fris"). All blues are taken from the logo's wind gradient. */
:root{
/* Brand blues */
--nw-cyan-300:#7FD8F5;
--nw-cyan-500:#12BCEE;
--nw-cyan-600:#0FA8D6;
--nw-blue-500:#208DBC;
--nw-blue-700:#17709F;
--nw-royal-600:#3C68A3;
--nw-steel-700:#355884;
/* Sky tints */
--nw-sky-50:#F0F8FC;
--nw-sky-100:#DDF1FA;
--nw-sky-200:#BDE6F7;
/* Navy + slate neutrals */
--nw-navy-950:#0E1B2C;
--nw-navy-900:#16273D;
--nw-navy-800:#22364F;
--nw-slate-600:#3A4A5E;
--nw-slate-500:#5E6E82;
--nw-slate-300:#A9B6C6;
--nw-line-300:#C8D3DE;
--nw-line-200:#E1E8EF;
--nw-white:#FFFFFF;
/* Feedback */
--nw-red-600:#C2412D;
/* Logo wind gradient — small accents only, never panel fills */
--nw-gradient-wind:linear-gradient(90deg,#355884 0%,#208DBC 45%,#1B9DCD 54%,#16AEDF 68%,#12B8EA 83%,#12BCEE 100%); /* @kind color */
/* Semantic aliases */
--nw-surface-page:var(--nw-white);
--nw-surface-tint:var(--nw-sky-50);
--nw-surface-card:var(--nw-white);
--nw-surface-dark:var(--nw-navy-950);
--nw-surface-dark-raised:var(--nw-navy-900);
--nw-text-strong:var(--nw-navy-950);
--nw-text-body:var(--nw-slate-600);
--nw-text-muted:var(--nw-slate-500);
--nw-text-accent:var(--nw-blue-700);
--nw-text-on-dark:var(--nw-white);
--nw-text-on-dark-muted:var(--nw-slate-300);
--nw-text-accent-on-dark:var(--nw-cyan-300);
--nw-border-subtle:var(--nw-line-200);
--nw-border-strong:var(--nw-line-300);
--nw-border-on-dark:rgba(255,255,255,0.16);
--nw-action-primary:var(--nw-cyan-500);
--nw-action-primary-hover:var(--nw-cyan-600);
--nw-action-on-primary:var(--nw-navy-950);
--nw-focus-ring:var(--nw-cyan-500);
--nw-feedback-error:var(--nw-red-600);
}

/* tokens/typography */
/* Noorderwind — typography tokens. One soft geometric family (Outfit) for everything. */
:root{
--nw-font-sans:"Outfit",ui-rounded,"SF Pro Rounded",system-ui,-apple-system,"Segoe UI",sans-serif;
--nw-font-display:var(--nw-font-sans);
--nw-font-body:var(--nw-font-sans);
--nw-font-weight-regular:400; /* @kind font */
--nw-font-weight-medium:500; /* @kind font */
--nw-font-weight-semibold:600; /* @kind font */
--nw-font-weight-bold:700; /* @kind font */
--nw-font-weight-extrabold:800; /* @kind font */
--nw-font-size-display:96px;
--nw-font-size-h1:64px;
--nw-font-size-h2:44px;
--nw-font-size-h3:28px;
--nw-font-size-h4:21px;
--nw-font-size-lead:21px;
--nw-font-size-body:18px;
--nw-font-size-small:16px;
--nw-font-size-label:14px;
--nw-font-size-caption:13px;
--nw-font-leading-display:0.98; /* @kind font */
--nw-font-leading-heading:1.06; /* @kind font */
--nw-font-leading-title:1.2; /* @kind font */
--nw-font-leading-body:1.6; /* @kind font */
--nw-font-leading-tight:1.3; /* @kind font */
--nw-font-tracking-display:-0.035em; /* @kind font */
--nw-font-tracking-heading:-0.025em; /* @kind font */
--nw-font-tracking-title:-0.01em; /* @kind font */
--nw-font-tracking-label:0.01em; /* @kind font */
}
@media (max-width:900px){:root{--nw-font-size-display:58px;--nw-font-size-h1:44px;--nw-font-size-h2:34px;--nw-font-size-h3:24px;--nw-font-size-h4:19px;--nw-font-size-lead:19px;--nw-font-size-body:17px}}

/* tokens/spacing */
/* Noorderwind — spacing + layout tokens */
:root{
--nw-space-1:4px;
--nw-space-2:8px;
--nw-space-3:12px;
--nw-space-4:16px;
--nw-space-5:24px;
--nw-space-6:32px;
--nw-space-7:48px;
--nw-space-8:64px;
--nw-space-9:96px;
--nw-space-10:128px;
--nw-space-container:1200px;
--nw-space-gutter:32px;
--nw-space-section:112px;
--nw-space-inset:16px;
}
@media (max-width:900px){:root{--nw-space-gutter:20px;--nw-space-section:72px;--nw-space-inset:10px}}

/* tokens/effects */
/* Noorderwind — radius, elevation + motion tokens */
:root{
--nw-radius-xs:8px;
--nw-radius-sm:12px;
--nw-radius-md:16px;
--nw-radius-lg:24px;
--nw-radius-xl:32px;
--nw-radius-pill:999px;
--nw-shadow-xs:0 1px 2px rgba(14,27,44,0.06);
--nw-shadow-sm:0 1px 2px rgba(14,27,44,0.04),0 6px 16px -4px rgba(14,27,44,0.08);
--nw-shadow-md:0 2px 4px rgba(14,27,44,0.04),0 14px 32px -8px rgba(14,27,44,0.14);
--nw-shadow-lg:0 4px 8px rgba(14,27,44,0.05),0 30px 60px -16px rgba(14,27,44,0.24);
--nw-shadow-focus:0 0 0 4px rgba(18,188,238,0.35);
--nw-motion-ease:cubic-bezier(0.22,0.8,0.24,1); /* @kind other */
--nw-motion-fast:140ms; /* @kind other */
--nw-motion-base:220ms; /* @kind other */
--nw-motion-slow:420ms; /* @kind other */
}
@media (max-width:900px){:root{--nw-radius-xl:24px}}

