/* Situationspotenzial — generated from tokens.json */
:root, [data-theme="light"] {
  --surface: #ffffff;
  --surface-sunken: #f3f6f5;
  --surface-raised: #ffffff;
  --line: #dde4e2;
  --line-strong: #7a8885;
  --ink: #14201e;
  --ink-muted: #51605c;
  --primary: #0b6b70;
  --primary-strong: #08575b;
  --primary-soft: #e2f2f1;
  --on-primary: #ffffff;
  --focus: var(--primary);
  --warm: #8a5a00;
  --warm-soft: #fdf3dc;
  --success: #1e7a3c;
  --success-soft: #e4f4e9;
  --info: #1d6fb0;
  --info-soft: #e3f0fa;
  --danger: #b42318;
  --danger-soft: #fbe9e7;
  --format-workshop: #9c7a22;
  --format-supervision: #148a8e;
  --format-coaching: #1f7dc4;
  --format-mediation: #23883f;
  --format-fortbildung: #d23b3a;
  --petal-red: #ef2b2a;
  --petal-ochre: #b38e34;
  --petal-blue: #36b9f5;
  --petal-yellow: #f5be3a;
  --petal-green: #09ce44;
  --petal-cyan: #2bb9bd;
  --scrim: rgba(20, 32, 30, 0.48);
  --shadow-sm: 0 1px 2px rgba(20, 32, 30, 0.06);
  --shadow-md: 0 6px 20px rgba(20, 32, 30, 0.08);
  --shadow-lg: 0 16px 48px rgba(20, 32, 30, 0.16);
}
[data-theme="dark"] {
  color-scheme: dark;
  --surface: #111917;
  --surface-sunken: #0b100f;
  --surface-raised: #18221f;
  --line: #27322f;
  --line-strong: #647571;
  --ink: #e8eeec;
  --ink-muted: #a2b0ac;
  --primary: #5cc6c4;
  --primary-strong: #84d8d6;
  --primary-soft: #12302f;
  --on-primary: #062120;
  --warm: #f2c14e;
  --warm-soft: #33270c;
  --success: #6bd58c;
  --success-soft: #12301c;
  --info: #7dbdf0;
  --info-soft: #102a40;
  --danger: #ff8a7a;
  --danger-soft: #3a1512;
  --format-workshop: #d4b467;
  --format-supervision: #4fcfd3;
  --format-coaching: #5ebbf2;
  --format-mediation: #4fd579;
  --format-fortbildung: #f47474;
  --scrim: rgba(0, 0, 0, 0.64);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 6px 20px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.6);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 72px;
  --space-9: 112px;
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-full: 999px;
  --tap-min: 44px;
  --control-md: 48px;
  --control-sm: 40px;
  --control-lg: 56px;
  --header-height: 64px;
  --container-text: 680px;
  --container-page: 1200px;
  --bp-md: 768px;
  --bp-lg: 1024px;
  --bp-xl: 1280px;
  --z-sticky: 10;
  --z-header: 20;
  --z-overlay: 40;
  --font-display: Cabin, "Gill Sans", "Gill Sans MT", Seravek, "Trebuchet MS", sans-serif;
  --font-sans: "Source Sans 3", "Source Sans Pro", -apple-system, "Segoe UI", system-ui, sans-serif;
  --font-voice: "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;
  --font-mono: "Source Code Pro", ui-monospace, "SF Mono", Menlo, monospace;
}
.display-xl { font-family: var(--font-display); font-size: 64px; line-height: 68px; font-weight: 600; letter-spacing: -0.01em; }
.display { font-family: var(--font-display); font-size: 40px; line-height: 44px; font-weight: 600; letter-spacing: -0.01em; }
.heading-1 { font-family: var(--font-display); font-size: 32px; line-height: 38px; font-weight: 600; }
.heading-2 { font-family: var(--font-display); font-size: 26px; line-height: 32px; font-weight: 600; }
.heading-3 { font-family: var(--font-display); font-size: 20px; line-height: 26px; font-weight: 600; }
.eyebrow { font-family: var(--font-display); font-size: 13px; line-height: 16px; font-weight: 600; letter-spacing: 0.12em; }
.numeral { font-family: var(--font-display); font-size: 28px; line-height: 32px; font-weight: 600; }
.lead { font-family: var(--font-sans); font-size: 19px; line-height: 30px; font-weight: 400; }
.body { font-family: var(--font-sans); font-size: 17px; line-height: 27px; font-weight: 400; }
.body-strong { font-family: var(--font-sans); font-size: 17px; line-height: 27px; font-weight: 600; }
.body-sm { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 400; }
.label { font-family: var(--font-sans); font-size: 16px; line-height: 20px; font-weight: 600; }
.caption { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 400; }
.quote { font-family: var(--font-voice); font-size: 24px; line-height: 34px; font-weight: 400; font-style: italic; }
.quote-sm { font-family: var(--font-voice); font-size: 18px; line-height: 27px; font-weight: 400; font-style: italic; }
.code { font-family: var(--font-mono); font-size: 15px; line-height: 22px; font-weight: 500; letter-spacing: 0.04em; }
@font-face { font-family: "Cabin"; src: url("fonts/Cabin-Variable.3d44a7a7323d.woff2") format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("fonts/SourceSans3-Variable.6e4bd172ce22.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("fonts/SourceSans3-Italic-Variable.b4b0c0233ac0.woff2") format("woff2"); font-weight: 200 900; font-style: italic; font-display: swap; }
@font-face { font-family: "Source Serif 4"; src: url("fonts/SourceSerif4-Italic-Variable.292223348723.woff2") format("woff2"); font-weight: 300 700; font-style: italic; font-display: swap; }
@font-face { font-family: "Source Code Pro"; src: url("fonts/SourceCodePro-Variable.c701418e2f54.woff2") format("woff2"); font-weight: 400 600; font-style: normal; font-display: swap; }
