/* site.css — WOERTLICHE Kopie aus /srv/sites/evolutionki/upgrades/index.html (Stand 2026-09-12T09:53:12Z).
   Erzeugt von _bau/site-css-aus-vorlage.sh am 2026-09-13T20:21:37Z. NICHT hand-editieren:
   Aenderungen gehoeren in die Vorlage, dann Skript neu laufen lassen.
   Zeilenbereiche der Vorlage: Tokens 33-120 · Reset/Base/Container/Mono-Label 141-210 ·
   Nav 211-441 · Buttons+Section 563-630 · Team 902-953 · Footer/Fade/Reduced-Motion/
   sr-only/Skip-Link 1165-1281 · Upgrades-Mockup (mk-live-Token, Hero, Hero-Split,
   Kurs-Karten) 1689, 1696-1779 · Proof-Zeile 1800-1803 · Capture/FAQ/Breakpoints 1805-1831 · Nav-Bundle-Link 1404-1440 ·
   Calm-Nachtrag 1835-1878. Ausgelassen: Produkt-Card-Themes, Lead-Magnete, Problems,
   Products, USPs, Testimonials, Blog, Newsletter, Bundle-Teaser, Soon-Grid, How-Grid,
   Kundenstimme-Video — auf dieser Seite nicht verwendet. */

/* --- Vorlage Zeilen 33,120 --- */
  /* ============================================================
     BRAND TOKENS v1.1 (inline — Source: Agents/delia/brand/tokens.css)
     theme-evolutionki: Sekundaer = Primary-Orange (Mutter-Marke)
  ============================================================ */
  :root {
    --surface-base:      #0A0D10;
    --surface-raised:    #13171C;
    --surface-elevated:  #1A1F26;
    --surface-inset:     #070A0D;

    --ink-primary:   #F5F7FA;
    --ink-body:      #D8DCE4;
    --ink-muted:     #9EA6B4;
    --ink-faint:     #4A525F;

    --border-subtle:  #1F252D;
    --border-default: #2A313B;
    --border-strong:  #3D4653;

    --accent-primary:       #FF7A18;
    --accent-primary-hover: #FF8F3D;
    --accent-primary-dim:   #CC5F10;
    --accent-primary-ink:   #0A0D10;

    --accent-secondary:     #FF7A18;
    --accent-secondary-dim: #CC5F10;
    --accent-secondary-ink: #0A0D10;

    --semantic-success: #22C55E;
    --semantic-warn:    #F59E0B;
    --semantic-danger:  #EF4444;
    --semantic-info:    #60A5FA;

    --font-display: 'Instrument Serif', 'Times New Roman', Georgia, serif;
    --font-body:    'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono:    'JetBrains Mono', 'SF Mono', Consolas, monospace;

    --fs-xs:   0.75rem;
    --fs-sm:   0.875rem;
    --fs-base: 1rem;
    --fs-md:   1.125rem;
    --fs-lg:   1.5rem;
    --fs-xl:   2rem;
    --fs-2xl:  2.75rem;
    --fs-3xl:  3.75rem;
    --fs-hero: clamp(3rem, 6vw + 1rem, 6.5rem);

    --lh-tight:   1.05;
    --lh-snug:    1.2;
    --lh-normal:  1.5;
    --lh-relaxed: 1.7;

    --ls-tight:  -0.02em;
    --ls-snug:   -0.01em;
    --ls-wide:   0.05em;
    --ls-mono:   0.12em;

    --space-1:  0.25rem;
    --space-2:  0.5rem;
    --space-3:  0.75rem;
    --space-4:  1rem;
    --space-5:  1.5rem;
    --space-6:  2rem;
    --space-7:  3rem;
    --space-8:  4rem;
    --space-9:  6rem;
    --space-10: 8rem;

    --radius-none:   0;
    --radius-xs:     2px;
    --radius-sm:     4px;
    --radius-md:     6px;
    --radius-pill:   999px;

    --shadow-sm: 0 1px 2px rgba(0,0,0,0.4);
    --shadow-md: 0 4px 16px rgba(0,0,0,0.5), 0 1px 2px rgba(0,0,0,0.3);
    --shadow-lg: 0 16px 48px rgba(0,0,0,0.6), 0 2px 6px rgba(0,0,0,0.4);
    --shadow-glow: 0 0 40px rgba(255, 122, 24, 0.15);

    --transition-fast:   120ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base:   200ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow:   400ms cubic-bezier(0.4, 0, 0.2, 1);

    --container-md:  768px;
    --container-lg:  1024px;
    --container-xl:  1280px;
  }


/* --- Vorlage Zeilen 141,210 --- */
  /* ============================================================
     RESET + BASE
  ============================================================ */
  *, *::before, *::after { box-sizing: border-box; }
  * { margin: 0; padding: 0; }

  html {
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
  }

  body {
    font-family: var(--font-body);
    font-size: var(--fs-base);
    line-height: var(--lh-normal);
    color: var(--ink-body);
    background: var(--surface-base);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
  }

  h1, h2, h3 {
    font-family: var(--font-display);
    font-weight: 400;
    line-height: var(--lh-snug);
    letter-spacing: var(--ls-snug);
    color: var(--ink-primary);
  }

  h1 em, h2 em, h3 em {
    font-style: italic;
    color: var(--accent-primary);
  }

  a {
    color: var(--accent-primary);
    text-decoration: none;
    transition: color var(--transition-fast);
  }
  a:hover { color: var(--accent-primary-hover); }

  ::selection { background: var(--accent-primary); color: var(--accent-primary-ink); }

  :focus-visible {
    outline: 2px solid var(--accent-primary);
    outline-offset: 2px;
    border-radius: 2px;
  }

  ul { list-style: none; }

  img { max-width: 100%; display: block; }

  .container {
    width: 100%;
    max-width: var(--container-xl);
    margin-inline: auto;
    padding-inline: var(--space-5);
  }

  .mono-label {
    font-family: var(--font-mono);
    font-size: var(--fs-xs);
    text-transform: uppercase;
    letter-spacing: var(--ls-mono);
    color: var(--ink-muted);
  }


/* --- Vorlage Zeilen 211,441 --- */
  /* ============================================================
     NAV
  ============================================================ */
  .nav {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(10, 13, 16, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border-subtle);
  }
  .nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-5);
    padding: var(--space-4) var(--space-5);
    max-width: var(--container-xl);
    margin-inline: auto;
  }
  .logo {
    font-family: var(--font-display);
    font-size: 1.375rem;
    color: var(--ink-primary);
    letter-spacing: 0.01em;
    line-height: 1;
    display: inline-flex;
    align-items: baseline;
    gap: 2px;
  }
  .logo::before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--accent-primary);
    margin-right: 6px;
    transform: translateY(-2px);
  }
  .logo {
    gap: 0.625rem;
    align-items: baseline;
  }
  .logo-mark {
    width: 1.6em;
    height: 1.6em;
    flex-shrink: 0;
    color: var(--ink-primary);
    transform: translateY(8px);
  }
  .logo .logo-italic {
    font-style: italic;
    color: var(--accent-primary);
  }

  .nav-links {
    display: flex;
    align-items: center;
    gap: var(--space-6);
  }
  .nav-links a {
    color: var(--ink-body);
    font-size: var(--fs-sm);
    font-weight: 500;
    padding: var(--space-2) 0;
    transition: color var(--transition-fast);
  }
  .nav-links a:hover { color: var(--accent-primary); }
  /* Fix (Delia, Job d6390454): .nav-links a hat .btn-primary ueberschrieben —
     "Jetzt starten" stand mit --ink-body auf Orange, Kontrast 1.89:1 (axe serious). */
  .nav-links a.btn-primary,
  .nav-links a.btn-primary:hover { color: var(--accent-primary-ink); }

  .nav-dropdown-parent {
    position: relative;
  }
  .nav-dropdown-toggle {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
  }
  .nav-dropdown-toggle::after {
    content: '';
    width: 6px;
    height: 6px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    margin-left: 2px;
    transition: transform var(--transition-fast);
  }
  .nav-dropdown-parent.open .nav-dropdown-toggle::after {
    transform: rotate(-135deg) translateY(-2px);
  }
  /* Hover-Variante nur auf echten Hover-Geraeten — iOS-Touch-Fix (2-Click-Bug) */
  @media (hover: hover) and (pointer: fine) {
    .nav-dropdown-parent:hover .nav-dropdown-toggle::after {
      transform: rotate(-135deg) translateY(-2px);
    }
  }
  .nav-dropdown::before {
    content: '';
    position: absolute;
    top: calc(-1 * var(--space-2) - 8px);
    left: 0;
    right: 0;
    height: calc(var(--space-2) + 8px);
  }
  .nav-dropdown {
    position: absolute;
    top: calc(100% + var(--space-2));
    left: 50%;
    transform: translateX(-50%) translateY(-8px);
    min-width: 520px;
    max-width: 640px;
    background: var(--surface-raised);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-xs);
    padding: var(--space-5);
    box-shadow: var(--shadow-lg);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-5);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity var(--transition-base), transform var(--transition-base), visibility var(--transition-base);
  }
  .nav-dropdown-parent.open .nav-dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
  }
  /* Hover-Variante nur auf echten Hover-Geraeten — iOS-Touch-Fix (2-Click-Bug) */
  @media (hover: hover) and (pointer: fine) {
    .nav-dropdown-parent:hover .nav-dropdown {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      transform: translateX(-50%) translateY(0);
    }
  }
  .nav-dropdown-group p {
    font-family: var(--font-mono);
    font-size: var(--fs-xs);
    text-transform: uppercase;
    letter-spacing: var(--ls-mono);
    color: var(--ink-muted);
    margin-bottom: var(--space-3);
  }
  .nav-dropdown-group a {
    display: flex;
    flex-direction: column;
    padding: var(--space-2) 0;
    gap: 2px;
  }
  .nav-dropdown-group a strong {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--ink-primary);
  }
  .nav-dropdown-group a small {
    color: var(--ink-muted);
    font-size: 0.75rem;
  }
  .nav-dropdown-group a:hover strong { color: var(--accent-primary); }

  .nav-toggle {
    display: none;
    background: none;
    border: 1px solid var(--border-default);
    color: var(--ink-body);
    padding: var(--space-2);
    cursor: pointer;
    border-radius: var(--radius-xs);
  }
  .nav-toggle svg { width: 20px; height: 20px; }

  @media (max-width: 900px) {
    .nav-links { display: none; }
    .nav-toggle { display: inline-flex; align-items: center; }
    .nav-inner { padding: var(--space-3) var(--space-5); }
    .nav.open .nav-links {
      display: flex;
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      background: var(--surface-raised);
      border-bottom: 1px solid var(--border-default);
      flex-direction: column;
      align-items: stretch;
      padding: var(--space-4) var(--space-5);
      gap: var(--space-3);
      max-height: calc(100vh - 120px);
      max-height: calc(100dvh - 120px);
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      overscroll-behavior: contain;
    }
    .nav-dropdown {
      position: static;
      transform: none;
      min-width: 0;
      grid-template-columns: 1fr;
      box-shadow: none;
      border: none;
      background: transparent;
      padding: var(--space-2) 0;
      gap: var(--space-3);
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease, opacity 0.2s ease, visibility 0.2s ease;
    }
    .nav-dropdown-parent.open .nav-dropdown {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      max-height: 1200px;
      transform: none;
    }
  }


/* --- Vorlage Zeilen 563,630 --- */
  /* ============================================================
     BUTTONS
  ============================================================ */
  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    font-family: var(--font-body);
    font-weight: 600;
    font-size: var(--fs-sm);
    padding: var(--space-3) var(--space-5);
    border-radius: var(--radius-sm);
    border: 1px solid transparent;
    cursor: pointer;
    transition: all var(--transition-fast);
    text-decoration: none;
    line-height: 1.2;
  }
  .btn-primary {
    background: var(--accent-primary);
    color: var(--accent-primary-ink);
    border-color: var(--accent-primary);
  }
  .btn-primary:hover {
    background: var(--accent-primary-hover);
    border-color: var(--accent-primary-hover);
    color: var(--accent-primary-ink);
    transform: translateY(-1px);
  }
  .btn-ghost {
    background: transparent;
    color: var(--ink-primary);
    border-color: var(--border-default);
  }
  .btn-ghost:hover {
    border-color: var(--accent-primary);
    color: var(--accent-primary);
  }
  .btn-lg { padding: var(--space-4) var(--space-6); font-size: var(--fs-base); }

  /* ============================================================
     SECTION BASE
  ============================================================ */
  .section {
    padding: var(--space-9) 0;
    border-bottom: 1px solid var(--border-subtle);
  }
  .section-header {
    max-width: 760px;
    margin-bottom: var(--space-7);
  }
  .section-header .mono-label {
    display: block;
    margin-bottom: var(--space-3);
  }
  .section-title {
    font-size: clamp(2rem, 4vw + 0.5rem, 3.25rem);
    line-height: 1.05;
    letter-spacing: -0.02em;
    margin-bottom: var(--space-4);
  }
  .section-subtitle {
    font-size: var(--fs-md);
    color: var(--ink-body);
    max-width: 60ch;
  }


/* --- Vorlage Zeilen 902,953 --- */
  /* ============================================================
     TEAM
  ============================================================ */
  .team-lead {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(0, 2fr);
    gap: var(--space-6);
    padding: var(--space-6);
    background: var(--surface-raised);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-xs);
    margin-bottom: var(--space-6);
  }
  @media (max-width: 720px) {
    .team-lead { grid-template-columns: 1fr; }
  }
  .team-lead-left {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
  }
  .team-avatar {
    width: 88px;
    height: 88px;
    border-radius: var(--radius-xs);
    background: var(--surface-elevated);
    border: 1px solid var(--border-default);
    font-family: var(--font-display);
    font-size: 2rem;
    color: var(--accent-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: italic;
  }
  .team-lead h3 { font-size: 1.75rem; margin-bottom: 4px; }
  .team-lead-role {
    font-family: var(--font-mono);
    font-size: var(--fs-xs);
    text-transform: uppercase;
    letter-spacing: var(--ls-mono);
    color: var(--ink-muted);
    margin-bottom: var(--space-3);
  }
  .team-lead p {
    color: var(--ink-body);
    font-size: var(--fs-sm);
    line-height: 1.65;
    margin-bottom: var(--space-3);
  }
  .team-lead p:last-child { margin-bottom: 0; }
  .team-lead p a { text-decoration: underline; text-underline-offset: 3px; }

/* --- Vorlage Zeilen 1165,1281 --- */
  /* ============================================================
     FOOTER
  ============================================================ */
  .footer {
    background: var(--surface-inset);
    padding: var(--space-8) 0 var(--space-6);
  }
  .footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: var(--space-6);
    margin-bottom: var(--space-7);
  }
  @media (max-width: 900px) {
    .footer-grid { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 540px) {
    .footer-grid { grid-template-columns: 1fr; }
  }
  .footer-brand .logo {
    font-size: 1.25rem;
    margin-bottom: var(--space-3);
  }
  .footer-brand p {
    color: var(--ink-muted);
    font-size: var(--fs-sm);
    line-height: 1.6;
    max-width: 36ch;
  }
  .footer-col h4 {
    font-family: var(--font-mono);
    font-size: var(--fs-xs);
    text-transform: uppercase;
    letter-spacing: var(--ls-mono);
    color: var(--ink-muted);
    margin-bottom: var(--space-4);
    font-weight: 500;
  }
  .footer-col ul { display: flex; flex-direction: column; gap: var(--space-2); }
  .footer-col a {
    color: var(--ink-body);
    font-size: var(--fs-sm);
  }
  .footer-col a:hover { color: var(--accent-primary); }

  .footer-bottom {
    padding-top: var(--space-5);
    border-top: 1px solid var(--border-subtle);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-4);
    flex-wrap: wrap;
  }
  .footer-bottom-left {
    font-size: 0.75rem;
    color: var(--ink-muted);
    font-family: var(--font-mono);
  }
  .footer-bottom-links {
    display: flex;
    gap: var(--space-5);
  }
  .footer-bottom-links a {
    color: var(--ink-muted);
    font-size: 0.75rem;
    font-family: var(--font-mono);
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }
  .footer-bottom-links a:hover { color: var(--accent-primary); }

  /* ============================================================
     FADE-UP
  ============================================================ */
  .fade-up {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s ease, transform 0.7s ease;
    transition-delay: var(--fade-delay, 0s);
  }
  .fade-up.visible {
    opacity: 1;
    transform: none;
  }

  /* ============================================================
     REDUCED MOTION
  ============================================================ */
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
    .fade-up { opacity: 1 !important; transform: none !important; transition: none !important; }
  }

  /* Screen reader only */
  .sr-only {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
  }
  .skip-link {
    position: absolute;
    top: -40px;
    left: var(--space-4);
    background: var(--accent-primary);
    color: var(--accent-primary-ink);
    padding: var(--space-2) var(--space-4);
    border-radius: var(--radius-sm);
    font-weight: 600;
    z-index: 1000;
    transition: top var(--transition-fast);
  }
  .skip-link:focus { top: var(--space-3); }

/* --- Vorlage Zeilen 1689,1689 --- */
  :root{ --mk-live:#34D399; --mk-live-ink:#04140D; }

/* --- Vorlage Zeilen 1696,1779 --- */
  .mk-hero{position:relative;padding:clamp(4rem,11vh,7rem) 0 clamp(3.5rem,8vh,5.5rem);
    background:radial-gradient(1100px 480px at 74% -12%,rgba(255,122,24,.10),transparent 60%),var(--surface-base);
    border-bottom:1px solid var(--border-subtle);overflow:hidden}
  .mk-hero::before{content:"";position:absolute;inset:0;
    background-image:linear-gradient(var(--border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--border-subtle) 1px,transparent 1px);
    background-size:72px 72px;opacity:.14;-webkit-mask-image:radial-gradient(720px 420px at 80% 0,#000,transparent 72%);
    mask-image:radial-gradient(720px 420px at 80% 0,#000,transparent 72%);pointer-events:none}
  .mk-hero .container{position:relative}
  .mk-hero-tag{display:inline-flex;align-items:center;gap:9px;color:var(--accent-primary);margin-bottom:var(--space-5);
    font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-mono);text-transform:uppercase}
  .mk-hero-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 12px var(--accent-primary)}
  .mk-hero h1{font-family:var(--font-display);font-weight:400;line-height:1.02;letter-spacing:-.02em;
    font-size:clamp(2.5rem, 5vw + 1rem, 4.75rem);max-width:17ch;margin-bottom:var(--space-5);color:var(--ink-primary)}
  .mk-hero h1 em{font-style:italic;color:var(--accent-primary)}
  /* Kategorie-Claim (Dach) — Pull-Quote-Setzung, bewusst asymmetrisch links angeschlagen */
  .mk-hero-claim{font-family:var(--font-display);font-weight:400;line-height:1.18;letter-spacing:-.01em;
    font-size:clamp(1.3rem, 1.9vw + .5rem, 1.95rem);color:var(--ink-primary);max-width:30ch;
    margin-bottom:var(--space-5);padding-left:clamp(.9rem,1.6vw,1.4rem);border-left:2px solid var(--accent-primary)}
  .mk-hero-claim em{font-style:italic;color:var(--accent-primary);display:block}
  .mk-hero-sub{font-size:clamp(1.05rem, 1.2vw + .5rem, 1.35rem);color:var(--ink-body);max-width:54ch;line-height:1.5;margin-bottom:var(--space-6)}
  .mk-hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-3)}

  /* HERO-SPLIT (Ronald 25.08.): Ueberschrift ueber die volle Breite, darunter
     zwei Spalten — links die Einordnung, rechts eine Kundenstimme. Die .mk-voice
     ist fuer die volle Seitenbreite gebaut (980px, Video 208px daneben); in der
     schmalen Hero-Spalte wird sie deshalb einspaltig und kompakter gesetzt. */
  .mk-hero h1.mk-hero-wide{max-width:min(100%,34ch)}
  /* Umbruch der Prinzip-Ueberschrift steuern: ohne Begrenzung faellt "KI." allein
     in die zweite Zeile (Ronald 25.08.: "unruhig"). 30ch bricht nach "dich,". */
  #mk-prinzip-title{max-width:min(100%,30ch)}
  .mk-hero-split{display:grid;grid-template-columns:1fr;gap:var(--space-6);
    align-items:start;margin-top:var(--space-6)}
  .mk-hero-split-copy .mk-hero-claim{max-width:26ch}
  .mk-hero-split-copy .mk-hero-sub{max-width:42ch;margin-bottom:var(--space-5)}
  .mk-hero-split-voice .mk-voice{max-width:none;margin-inline:0;
    grid-template-columns:150px minmax(0,1fr);gap:var(--space-5);
    padding:var(--space-5)}
  .mk-hero-split-voice .mk-voice-quote{font-size:clamp(1.02rem,.9vw + .72rem,1.2rem);
    line-height:1.4}
  @media (min-width:900px){
    .mk-hero-split{grid-template-columns:1.05fr .95fr;gap:var(--space-7)}
  }
  @media (max-width:620px){
    .mk-hero-split-voice .mk-voice{grid-template-columns:1fr}
  }

  /* LIVE UPGRADE-GRID */
  .mk-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
  /* Warteliste-Block: zwei Straenge nebeneinander (nicht als Waise im 3er-Grid) */
  .mk-course-grid--two{grid-template-columns:repeat(2,1fr)}
  @media(max-width:860px){ .mk-course-grid--two{grid-template-columns:1fr} }
  /* Warteliste-Kachel — kein Kauf, sondern Vormerkung */
  .mk-course--wait{background:var(--surface-raised);border-color:var(--border-default)}
  .mk-course--wait .mk-course-kicker,.mk-course--wait .mk-course-no,.mk-course--wait .mk-course-name{color:var(--ink-primary)}
  .mk-course--wait .mk-course-no{background:var(--surface-elevated);color:var(--ink-primary);border:1px solid var(--border-strong)}
  .mk-wait-when{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-primary)}
  /* Mobil-Fix: Grid-Item darf unter die Track-Breite (min-width:auto verhinderte das
     -> Karte war 391px im 327px-Track). Lange Produktnamen mit nbsp brechen jetzt um. */
  .mk-course{min-width:0}
  .mk-course-tag{flex-wrap:wrap}
  .mk-course-name{min-width:0;overflow-wrap:anywhere}
  .mk-course{position:relative;display:flex;flex-direction:column;background:var(--surface-raised);
    border:1px solid var(--border-default);border-radius:var(--radius-md);padding:clamp(1.6rem,3vw,2.4rem);
    transition:border-color var(--transition-base),transform var(--transition-base)}
  .mk-course:hover{transform:translateY(-4px);border-color:var(--border-strong)}
  /* Upgrade-Nummer + Gegenstand — springt ins Auge (grün, groß) */
  .mk-course-tag{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}
  .mk-course-kicker{font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:var(--ls-mono);
    text-transform:uppercase;color:var(--mk-live);opacity:.85}
  .mk-course-no{display:inline-flex;align-items:center;justify-content:center;min-width:2.6rem;height:2.6rem;padding:0 .55rem;
    border-radius:var(--radius-sm);background:var(--mk-live);color:var(--mk-live-ink);
    font-family:var(--font-mono);font-weight:700;font-size:1.45rem;letter-spacing:-.03em;line-height:1}
  .mk-course-name{font-family:var(--font-mono);font-weight:700;font-size:1.25rem;letter-spacing:.02em;
    text-transform:uppercase;color:var(--mk-live)}
  .mk-course h3{font-family:var(--font-display);font-weight:400;font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.1;color:var(--ink-primary);margin-bottom:var(--space-3)}
  .mk-course-desc{color:var(--ink-body);font-size:1rem;line-height:1.55;margin-bottom:var(--space-7);flex:1}
  .mk-course-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-top:auto}
  .mk-price{font-family:var(--font-display);font-size:2.2rem;color:var(--ink-primary);line-height:1}
  .mk-price small{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);display:block;margin-top:6px;font-weight:400}
  .mk-course--featured{background:linear-gradient(180deg,rgba(255,122,24,.06),transparent 42%),var(--surface-raised);border-color:var(--accent-primary-dim)}
  .mk-ribbon{position:absolute;top:0;right:clamp(1.4rem,3vw,2.4rem);transform:translateY(-50%);
    font-family:var(--font-mono);font-size:.58rem;letter-spacing:var(--ls-mono);text-transform:uppercase;
    color:var(--accent-primary-ink);background:var(--accent-primary);padding:4px 11px;border-radius:var(--radius-pill);white-space:nowrap;box-shadow:var(--shadow-sm)}
  .mk-cta-note{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);margin-top:var(--space-3);display:block}

/* --- Vorlage Zeilen 1800,1803 --- */
  .mk-how-proof{margin-top:clamp(2.5rem,5vw,4rem);text-align:center;font-family:var(--font-display);font-style:italic;
    font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.35;color:var(--ink-primary);max-width:820px;margin-inline:auto}
  .mk-how-proof span{display:block;margin-top:var(--space-4);font-family:var(--font-mono);font-size:var(--fs-xs);
    letter-spacing:var(--ls-mono);text-transform:uppercase;color:var(--ink-muted);font-style:normal}

/* --- Vorlage Zeilen 1805,1831 --- */
  /* MAIL CAPTURE */
  .mk-capture{background:radial-gradient(700px 300px at 50% 130%,rgba(52,211,153,.08),transparent 70%),var(--surface-raised);
    border:1px solid var(--border-default);border-radius:var(--radius-md);padding:clamp(2rem,4vw,3rem);text-align:center;max-width:720px;margin-inline:auto}
  .mk-capture h2{font-family:var(--font-display);font-weight:400;font-size:clamp(1.8rem,3vw,2.6rem);color:var(--ink-primary);margin-bottom:var(--space-3)}
  .mk-capture>p{color:var(--ink-body);margin-bottom:var(--space-6);max-width:46ch;margin-inline:auto}
  .mk-capture-form{display:flex;gap:var(--space-3);max-width:480px;margin-inline:auto;flex-wrap:wrap}
  .mk-capture-form input{flex:1;min-width:200px;background:var(--surface-inset);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--ink-primary);font-family:var(--font-body);font-size:1rem;padding:var(--space-3) var(--space-4)}
  .mk-capture-form input:focus{outline:none;border-color:var(--mk-live)}
  .mk-capture-note{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-top:var(--space-4)}

  /* FAQ */
  .mk-faq{max-width:760px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-3)}
  .mk-faq details{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-4) var(--space-5)}
  .mk-faq summary{font-weight:600;color:var(--ink-primary);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);font-size:1.02rem}
  .mk-faq summary::-webkit-details-marker{display:none}
  .mk-faq summary::after{content:"+";color:var(--mk-live);font-family:var(--font-mono);font-size:1.3rem;line-height:1}
  .mk-faq details[open] summary::after{content:"−"}
  .mk-faq details p{color:var(--ink-body);margin-top:var(--space-3);line-height:1.6;font-size:.95rem}

  @media(max-width:900px){
    .mk-course-grid{grid-template-columns:1fr}
    .mk-soon-grid{grid-template-columns:1fr 1fr}
    .mk-how-grid{grid-template-columns:1fr 1fr}
  }
  @media(max-width:560px){
    .mk-soon-grid,.mk-how-grid{grid-template-columns:1fr}
  }

/* --- Vorlage Zeilen 1404,1440 --- */
  /* ============================================================
     NAV — Bundle-Link Primary-Style
  ============================================================ */
  .nav-links .nav-link-bundle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border: 1px solid rgba(255,122,24,0.45);
    border-radius: var(--radius-xs);
    background: rgba(255,122,24,0.10);
    color: var(--accent-primary);
    font-weight: 600;
    letter-spacing: 0.01em;
    transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);
  }
  .nav-links .nav-link-bundle::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--accent-primary);
    display: inline-block;
  }
  .nav-links .nav-link-bundle:hover {
    background: var(--accent-primary);
    color: var(--accent-primary-ink);
    border-color: var(--accent-primary);
  }
  .nav-links .nav-link-bundle:hover::before { background: var(--accent-primary-ink); }
  .nav-links .nav-link-bundle-price {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    opacity: 0.85;
    margin-left: 4px;
  }


/* --- Vorlage Zeilen 1835,1878 --- */
  /* ============================================================
     NACHTRAG 2026-08-07 (Ronald): RUHE.
     Display-Serif nur H1/H2 · Mono nur echte Code/Pfad-Semantik.
     Deko-Labels/Badges/Preise → Body. Weniger Schrift-Wechsel,
     weniger Farbakzente pro Karte/Screen. KEIN Redesign.
  ============================================================ */

  /* --- Serif runter: alles ausser H1/H2 in Body-Font --- */
  .mk-hero-claim{
    font-family:var(--font-body);font-weight:600;font-style:normal;
    border-left:none;padding-left:0;color:var(--ink-body);
    font-size:clamp(1.15rem,1.4vw + .5rem,1.5rem);line-height:1.4;max-width:46ch;
  }
  .mk-hero-claim em{font-family:var(--font-body);font-style:normal;font-weight:700;color:var(--ink-primary);display:inline}
  .mk-course h3{font-family:var(--font-body);font-weight:700;letter-spacing:normal}
  .mk-soon h4{font-family:var(--font-body);font-weight:600}
  .mk-how-proof{font-family:var(--font-body);font-style:normal;font-weight:500;color:var(--ink-body)}

  /* --- Mono runter: Deko-Labels/Kicker/Preise/Badges → Body
         (uppercase + Letterspacing bleiben, nur die Font wechselt) --- */
  .mono-label,
  .mk-hero-tag,
  .mk-ribbon,
  .mk-course-kicker,
  .mk-course-no,
  .mk-course-name,
  .mk-price small,
  .mk-cta-note,
  .mk-wait-when,
  .mk-soon-agent,
  .mk-soon-price,
  .mk-how-num,
  .mk-how-proof span,
  .mk-capture-note{font-family:var(--font-body)}

  /* --- Farbakzente pro Karte reduzieren:
         EIN Upgrade-Signal (grüne Nummer) bleibt · Kicker/Name werden ruhig --- */
  .mk-course-kicker{color:var(--ink-muted)}
  .mk-course-name{color:var(--ink-primary);font-weight:700}
  .mk-how-num{color:var(--ink-muted);font-weight:700}
  .mk-hero-tag{color:var(--ink-muted)}
  .mk-hero-tag::before{background:var(--ink-muted);box-shadow:none}
  .mk-faq summary::after,
  .mk-faq details[open] summary::after{color:var(--ink-muted)}
