/* intrinsify Funnel-CI-Kit — components.css
   Basis-Komponenten nach Live-Messung future-leadership.de (design-tokens.md).
   Voraussetzung: tokens.css ist geladen. */

* { box-sizing: border-box; }

html { height: 100%; }

body {
  margin: 0;
  font-family: var(--in-font);
  font-size: var(--in-fs-body);
  line-height: var(--in-lh-body);
  color: var(--in-text);
  background: var(--in-weiss);
  /* Sticky-Footer: min-height:100vh + flex-column + margin-top:auto auf dem
     Footer schiebt ihn ans Viewport-Ende, auch bei kurzem Seiteninhalt.
     mog-footer.js bringt Sticky-Footer zusaetzlich als JS-Verhalten mit --
     diese CSS-Variante ist Konsistenz mit dem CI-Kit-Skelett, kein Widerspruch. */
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body > footer.site-footer { margin-top: auto; }

h1, h2, h3 {
  font-weight: 700;
  line-height: var(--in-lh-heading);
  margin: 0 0 0.6em;
}
h1 { font-size: var(--in-fs-h1); }
h2 { font-size: var(--in-fs-h2); }
h3 { font-size: var(--in-fs-h3); }

/* ── Hero (dunkel, Diagonalverlauf, weisse Headline) ─────────────────────── */
.hero {
  background-image: var(--in-hero-overlay), var(--in-hero-gradient);
  color: var(--in-weiss);
  padding: 1.5rem 1rem 3rem;
  text-align: center;
}
.hero h1 { color: var(--in-weiss); }

.hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(255, 255, 255, 0.12);
  color: var(--in-weiss);
  border-radius: 999px;
  padding: 0.6rem 1.4rem;
  font-size: 1rem;
}

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.btn {
  display: inline-block;
  background: var(--in-gelb);
  color: var(--in-text);
  font-family: var(--in-font);
  font-weight: 600;
  font-size: var(--in-fs-body);
  border: 0;
  border-radius: var(--in-radius-btn);
  padding: 15px 40px 16px;
  text-decoration: none;
  cursor: pointer;
}
.btn:hover { filter: brightness(0.95); }

.btn--secondary {
  font-size: var(--in-fs-body-sm);
  padding: 10px 25px 12px;
  border-radius: var(--in-radius-sm);
}
.btn--white { background: var(--in-weiss); }

/* ── Karten / Medien ─────────────────────────────────────────────────────── */
.card {
  background: var(--in-weiss);
  border-radius: var(--in-radius-card);
  overflow: hidden;
}
.section--light { background: var(--in-hellgrau); }
.section--blau { background: var(--in-blau); color: var(--in-weiss); }

/* ── Artikel-Layout (BAF) ────────────────────────────────────────────────── */
.article {
  max-width: 720px;
  margin: 0 auto;
  padding: 2.5rem 1.25rem 4rem;
}
.article p { margin: 0 0 1.2em; }
.article h2 { margin-top: 1.8em; }
.article .lead { font-weight: 600; }

.article-cta {
  background: var(--in-hellgrau);
  border-radius: var(--in-radius-card);
  padding: 2rem 1.5rem;
  text-align: center;
}

/* ── Footer (Single Source: partials/footer.html — byte-genau uebernehmen) ── */
.site-footer {
  background: var(--in-petrol);
  color: var(--in-weiss);
  text-align: center;
  padding: 1.4rem 1.25rem;
  font-size: 0.95rem;
}
.site-footer a { color: var(--in-weiss); text-decoration: underline; }
