/** Shopify CDN: Minification failed

Line 232:49 Expected ":"
Line 302:48 Unexpected "*"

**/
/*
 * mo:mo — Design Token Layer (Single Source of Truth)
 * Aus Style Guide v2. Siehe docs/brand-tokens.md & docs/theme-constraints.md.
 * Sections nutzen NUR diese Variablen/Klassen — keine hartcodierten Hex/px in Sections.
 * Fonts: @font-face folgt in Schritt 2; bis dahin greifen die Fallbacks.
 */

:root {
  /* ============================================================
     1. COLOR PRIMITIVES (Light)
     ============================================================ */
  --color-base-background: #FCF8F4;
  --color-base-exceptional: #FFFFFF;
  --color-base-surface: #FFFFFF;

  --color-gray-25: #FFFFFF;
  --color-gray-50: #F9F9F9;
  --color-gray-100: #EAEAEA;
  --color-gray-200: #D5D5D5;
  --color-gray-300: #BABABA;
  --color-gray-400: #929292;
  --color-gray-500: #767676;
  --color-gray-600: #606060;
  --color-gray-700: #454443;
  --color-gray-800: #2E2D2D;
  --color-gray-900: #171716;
  --color-gray-950: #0C0B0B;

  --color-accent-25: #F5F7FF;
  --color-accent-50: #EBEEFF;
  --color-accent-100: #D6DCFF;
  --color-accent-200: #B3BDFF;
  --color-accent-300: #99AAFF;
  --color-accent-400: #869BFA;
  --color-accent-500: #6380FF;
  --color-accent-600: #657DE0;
  --color-accent-700: #5266C2;
  --color-accent-800: #3F4FA3;
  --color-accent-900: #2C387A;
  --color-accent-950: #050940;

  --color-success-50: #E0F2E0;
  --color-success-100: #C6E4C6;
  --color-success-200: #B3DBB3;
  --color-success-500: #41A642;
  --color-success-700: #276428;
  --color-success-900: #143214;

  --color-error-50: #FEF3F2;
  --color-error-100: #FEE4E2;
  --color-error-200: #FECDCA;
  --color-error-500: #F04438;
  --color-error-700: #B42318;
  --color-error-900: #7A271A;

  --color-warning-50: #FFE7DB;
  --color-warning-100: #FFDBC9;
  --color-warning-200: #FFCFB7;
  --color-warning-500: #FF884C;
  --color-warning-700: #A7562E;
  --color-warning-900: #653117;

  --color-border-low: #E6E8EB;
  --color-border-medium: #D0D5DD;
  --color-border-strong: #B7BABF;

  /* ============================================================
     2. SEMANTIC TOKENS (Alias -> Primitive)
     ============================================================ */
  --surface-default: var(--color-base-surface);
  --surface-inverted: var(--color-gray-950);
  --surface-page: var(--color-base-background);
  --surface-raised: var(--color-gray-25);
  --surface-sunken: var(--color-gray-50);

  --text-default: var(--color-gray-950);
  --text-inverted: var(--color-gray-25);
  --text-muted: var(--color-gray-700);
  --text-subtle: var(--color-gray-500);
  --text-link: var(--color-accent-600);
  --text-link-hover: var(--color-accent-700);
  --text-on-brand: var(--color-base-exceptional);
  --text-on-status: var(--color-base-exceptional);

  --border-default: var(--color-border-medium);
  --border-subtle: var(--color-border-low);
  --border-strong: var(--color-border-strong);
  --border-focus: var(--color-accent-500);

  --brand-primary: var(--color-accent-500);
  --brand-primary-hover: var(--color-accent-600);
  --brand-primary-active: var(--color-accent-700);
  --brand-surface: var(--color-accent-50);
  --brand-surface-hover: var(--color-accent-100);

  --btn-primary-bg: var(--color-accent-500);
  --btn-primary-bg-hover: var(--color-accent-600);
  --btn-primary-bg-active: var(--color-accent-700);
  --btn-primary-text: var(--color-base-exceptional);
  --btn-secondary-bg: var(--color-base-surface);
  --btn-secondary-bg-hover: var(--color-gray-50);
  --btn-secondary-border: var(--color-border-strong);
  --btn-secondary-text: var(--color-gray-950);
  --btn-tertiary-text: var(--color-accent-600);
  --btn-tertiary-text-hover: var(--color-accent-700);
  --btn-disabled-bg: var(--color-gray-100);
  --btn-disabled-text: var(--color-gray-400);

  --status-error-bg: var(--color-error-50);
  --status-error-border: var(--color-error-200);
  --status-error-fg: var(--color-error-700);
  --status-success-bg: var(--color-success-50);
  --status-success-border: var(--color-success-200);
  --status-success-fg: var(--color-success-700);
  --status-warning-bg: var(--color-warning-50);
  --status-warning-border: var(--color-warning-200);
  --status-warning-fg: var(--color-warning-700);

  --icon-default: var(--color-gray-700);
  --icon-muted: var(--color-gray-500);
  --icon-on-brand: var(--color-base-exceptional);
  --icon-on-status: var(--color-base-exceptional);

  --focus-ring: var(--color-accent-500);
  --focus-ring-offset: var(--color-base-background);

  /* ============================================================
     3. SKILL CATEGORY PALETTES (Light only) — 100/200/300/500/900
     ============================================================ */
  --skill-gross-motor-100: #F5D8ED; --skill-gross-motor-200: #E29FDC; --skill-gross-motor-300: #BE68B6; --skill-gross-motor-500: #52184D; --skill-gross-motor-900: #2E0A2B;
  --skill-independence-100: #E9E0F5; --skill-independence-200: #CEAAFF; --skill-independence-300: #7748B3; --skill-independence-500: #56368A; --skill-independence-900: #2C1A4A;
  --skill-sleep-100: #EAECFF; --skill-sleep-200: #BDC2FF; --skill-sleep-300: #3C48C8; --skill-sleep-500: #020D60; --skill-sleep-900: #01062E;
  --skill-fine-motor-100: #FFDFDF; --skill-fine-motor-200: #FF9D9D; --skill-fine-motor-300: #E57179; --skill-fine-motor-500: #A42F37; --skill-fine-motor-900: #5E1A1F;
  --skill-social-100: #FEE1E9; --skill-social-200: #FFB1C6; --skill-social-300: #E34F74; --skill-social-500: #9F2F47; --skill-social-900: #591929;
  --skill-senses-100: #D8F9FF; --skill-senses-200: #93D7E4; --skill-senses-300: #1D7B8C; --skill-senses-500: #1E5660; --skill-senses-900: #0E2E34;
  --skill-language-100: #E0FCF5; --skill-language-200: #93D5C6; --skill-language-300: #24665A; --skill-language-500: #1F4D41; --skill-language-900: #0E2820;
  --skill-reflexes-100: #FFF899; --skill-reflexes-200: #FFE848; --skill-reflexes-300: #D8C01A; --skill-reflexes-500: #7F700C; --skill-reflexes-900: #453C06;
  --skill-cognition-100: #FFCEC5; --skill-cognition-200: #FFA897; --skill-cognition-300: #F2826D; --skill-cognition-500: #DE5E34; --skill-cognition-900: #7A3018;

  /* ============================================================
     4. SPACING (4px base)
     ============================================================ */
  --space-0: 0;
  --space-0-5: 2px;
  --space-1: 4px;
  --space-1-5: 6px;
  --space-2: 8px;
  --space-2-5: 10px;
  --space-3: 12px;
  --space-3-5: 14px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-14: 56px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;
  --space-40: 160px;
  --space-48: 192px;
  --space-64: 256px;

  /* ============================================================
     5. RADIUS
     ============================================================ */
  --radius-none: 0;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 24px;
  --radius-full: 9999px;

  /* ============================================================
     5b. SHADOWS  (aus shadow/xl)
     ============================================================ */
  --shadow-lg: 0 4px 8px -2px rgba(0, 0, 0, 0.08), 0 12px 24px -4px rgba(0, 0, 0, 0.10);
  --shadow-xl: 0 8px 16px -4px rgba(0, 0, 0, 0.10), 0 24px 40px -8px rgba(0, 0, 0, 0.12);

  /* ============================================================
     6. COMPONENT HEIGHTS
     ============================================================ */
  --height-sm: 32px;
  --height-md: 40px; /* Default */
  --height-lg: 48px;
  --height-xl: 56px;
  --height-badge: 24px;

  /* ============================================================
     7. LETTER SPACING
     ============================================================ */
  --ls-tightest: -0.015em;
  --ls-tighter: -0.01em;
  --ls-tight: -0.005em;
  --ls-normal: 0em;
  --ls-wide: 0.005em;
  --ls-wider: 0.01em;

  /* ============================================================
     8. FONT FAMILIES & WEIGHTS  (@font-face folgt in Schritt 2)
     ============================================================ */
  --font-display: 'NaN Holo', 'Arial Narrow', system-ui, sans-serif;
  --font-body: 'Geist', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;

  --fw-black: 900;
  --fw-bold: 700;
  --fw-semibold: 600;
  --fw-medium: 500;
  --fw-regular: 400;

  /* ============================================================
     8b. TYPE SCALE — steuerbar über Theme-Einstellungen › Typografie
     Quelle der Defaults: Figma „04 — Typography" (Baukasten).
     Aufbau:
       --ts-<stil>-d   Desktop-Basisgröße. Wird von layout/theme.liquid aus den
                       Theme-Settings überschrieben; der Wert hier ist der Design-Default.
       --ts-<stil>     Aktiv genutzte Größe. Desktop = Basis, im Mobile-Media-Query
                       unten neu definiert (Design-Ratio × globaler Mobile-Faktor).
       --tl-<stil>     Line-Height (unitless → skaliert automatisch mit).
       --tw-<stil>     Schriftschnitt (nur Display-/Heading-Stile).
     Sections nutzen ausschließlich --ts-*/--tl-*, nie feste px/rem.
     ============================================================ */
  --ts-display-1-d: 9.6rem;
  --ts-display-2-d: 6.4rem;
  --ts-h1-d: 4.8rem;
  --ts-h2-d: 3.2rem;
  --ts-h3-d: 2.2rem;
  --ts-eyebrow-d: 1.4rem;
  --ts-p1-d: 1.8rem;
  --ts-p2-d: 1.6rem;
  --ts-p3-d: 1.4rem;
  --ts-p4-d: 1.3rem;
  --ts-caption-1-d: 1.2rem;
  --ts-caption-2-d: 1.1rem;

  /* Globale Mobile-Skalierung (Theme-Setting: 85 / 90 / 95 / 100 %) */
  --type-mobile-scale: 1;

  /* Aktive Größen — Desktop */
  --ts-display-1: var(--ts-display-1-d);
  --ts-display-2: var(--ts-display-2-d);
  --ts-h1: var(--ts-h1-d);
  --ts-h2: var(--ts-h2-d);
  --ts-h3: var(--ts-h3-d);
  --ts-eyebrow: var(--ts-eyebrow-d);
  --ts-p1: var(--ts-p1-d);
  --ts-p2: var(--ts-p2-d);
  --ts-p3: var(--ts-p3-d);
  --ts-p4: var(--ts-p4-d);
  --ts-caption-1: var(--ts-caption-1-d);
  --ts-caption-2: var(--ts-caption-2-d);

  /* Eyebrow-Varianten — folgen der Eyebrow-Einstellung, halten die Design-Deltas
     (Default 14 → sm 13, lg 16). lg wird nur per min-width-Query aktiv gesetzt. */
  --ts-eyebrow-sm: calc(var(--ts-eyebrow) - 0.1rem);
  --ts-eyebrow-lg: calc(var(--ts-eyebrow) + 0.2rem);

  /* Line-Heights — Desktop */
  --tl-display-1: 1.0833;
  --tl-display-2: 1.0625;
  --tl-h1: 1.0833;
  --tl-h2: 1.125;
  --tl-h3: 1.2727;
  --tl-eyebrow: 1.1428;
  --tl-eyebrow-sm: 1.2308;
  --tl-eyebrow-lg: 1.5;
  --tl-p1: 1.4444;
  --tl-p2: 1.5;
  --tl-p3: 1.4286;
  --tl-p4: 1.3846;
  --tl-caption-1: 1.3333;
  --tl-caption-2: 1.2727;

  /* Schriftschnitte (Theme-Setting je Stil).
     Hinweis: Figma nennt H1/H2 „Bold" und H3 „Medium"; angewandt ist bisher Black.
     Defaults bleiben auf dem Ist-Stand, die Abweichung ist im Editor auflösbar. */
  --tw-display-1: var(--fw-black);
  --tw-display-2: var(--fw-bold);
  --tw-h1: var(--fw-black);
  --tw-h2: var(--fw-black);
  --tw-h3: var(--fw-black);
  --tw-eyebrow: var(--fw-medium);

  /* Layout-Container (Design authored @1440 mit 80px-Rändern → Content 1280) */
  --momo-container: 1440px;
  --momo-gutter: var(--space-20); /* 80px Desktop */
}

/* ================================================================
   TYPOGRAPHY — Utility-Klassen (token-getrieben)
   Größen/Schnitte kommen aus den --ts-*/--tl-*/--tw-*-Variablen oben und
   sind damit über Theme-Einstellungen › Typografie steuerbar.
   ================================================================ */
.type-display-1 { font-family: var(--font-display); font-weight: var(--tw-display-1); font-size: var(--ts-display-1); line-height: var(--tl-display-1); letter-spacing: var(--ls-tightest); }
.type-display-2 { font-family: var(--font-display); font-weight: var(--tw-display-2); font-size: var(--ts-display-2); line-height: var(--tl-display-2); letter-spacing: var(--ls-tighter); }
.type-h1        { font-family: var(--font-display); font-weight: var(--tw-h1);        font-size: var(--ts-h1);        line-height: var(--tl-h1);        letter-spacing: var(--ls-tighter); }
.type-h2        { font-family: var(--font-display); font-weight: var(--tw-h2);        font-size: var(--ts-h2);        line-height: var(--tl-h2);        letter-spacing: var(--ls-tight); }
.type-h3        { font-family: var(--font-display); font-weight: var(--tw-h3);        font-size: var(--ts-h3);        line-height: var(--tl-h3);        letter-spacing: var(--ls-normal); }
.type-p1        { font-family: var(--font-body);    font-weight: var(--fw-regular);   font-size: var(--ts-p1);        line-height: var(--tl-p1); }
.type-p2        { font-family: var(--font-body);    font-weight: var(--fw-regular);   font-size: var(--ts-p2);        line-height: var(--tl-p2); }
.type-p3        { font-family: var(--font-body);    font-weight: var(--fw-regular);   font-size: var(--ts-p3);        line-height: var(--tl-p3); }
.type-p4        { font-family: var(--font-body);    font-weight: var(--fw-regular);   font-size: var(--ts-p4);        line-height: var(--tl-p4); }
.type-caption-1 { font-family: var(--font-body);    font-weight: var(--fw-medium);    font-size: var(--ts-caption-1); line-height: var(--tl-caption-1); letter-spacing: var(--ls-wide); }
.type-caption-2 { font-family: var(--font-body);    font-weight: var(--fw-medium);    font-size: var(--ts-caption-2); line-height: var(--tl-caption-2); letter-spacing: var(--ls-wider); }

/* ================================================================
   MOBILE-TYPOGRAFIE — eine zentrale Stelle statt Overrides je Section.
   Größe = Desktop-Wert × Design-Ratio (Figma „— Mobile") × globalem Faktor.
   Ratios: Display 1 56/96 · Display 2 40/64 · H1 32/48 · H2 24/32 · H3 20/22.
   Fließtext/Captions/Eyebrow haben im Design keine eigene Mobile-Stufe und
   bekommen nur den globalen Faktor.
   ================================================================ */
@media screen and (max-width: 989px) {
  :root {
    --ts-display-1: calc(var(--ts-display-1-d) * 0.58333 * var(--type-mobile-scale));
    --ts-display-2: calc(var(--ts-display-2-d) * 0.625   * var(--type-mobile-scale));
    --ts-h1:        calc(var(--ts-h1-d)        * 0.66667 * var(--type-mobile-scale));
    --ts-h2:        calc(var(--ts-h2-d)        * 0.75    * var(--type-mobile-scale));
    --ts-h3:        calc(var(--ts-h3-d)        * 0.90909 * var(--type-mobile-scale));

    --ts-eyebrow:   calc(var(--ts-eyebrow-d)   * var(--type-mobile-scale));
    --ts-p1:        calc(var(--ts-p1-d)        * var(--type-mobile-scale));
    --ts-p2:        calc(var(--ts-p2-d)        * var(--type-mobile-scale));
    --ts-p3:        calc(var(--ts-p3-d)        * var(--type-mobile-scale));
    --ts-p4:        calc(var(--ts-p4-d)        * var(--type-mobile-scale));
    --ts-caption-1: calc(var(--ts-caption-1-d) * var(--type-mobile-scale));
    --ts-caption-2: calc(var(--ts-caption-2-d) * var(--type-mobile-scale));

    --tl-display-1: 1.0714;
    --tl-display-2: 1.1;
    --tl-h1: 1.125;
    --tl-h2: 1.25;
    --tl-h3: 1.3;
  }
}

/* Button-/Icon-/Komponenten-Styles liegen in momo-components.css */

/* ================================================================
   DAWN-BRIDGE — Dawns Font-Variablen auf mo:mo-Fonts umbiegen.
   Lädt nach dem inline :root in theme.liquid → überschreibt den font_picker.
   (Der font_picker selbst wird in Schritt 4 aus settings_schema.json entfernt.)
   ================================================================ */
:root {
  --font-body-family: var(--font-body);
  --font-body-style: normal;
  --font-body-weight: var(--fw-regular);
  --font-body-weight-bold: var(--fw-bold);

  --font-heading-family: var(--font-display);
  --font-heading-style: normal;
  --font-heading-weight: var(--fw-black);
}
