/* ============================================================
   Basis-Skin (Design 2.0) für alle mainlayout-Seiten:
   Rechtstexte (AGB/Impressum/Datenschutz), Kontakt, FAQ, Beirat,
   Blogseiten, Kategorie- und Checkout-Schritte.
   Bewusst zurückhaltend: Chrome-Angleichung, Typografie, Flächen
   und Buttons — Seiteninhalte bleiben strukturell unverändert.
   ============================================================ */

/* Design-Tokens: siehe tokens.css (verbindliche Quelle: ci-drfuxx-2_0.pdf) */

/* Grundfläche: warmes Creme wie die Startseite (Dashboard-Skin überschreibt spezifischer) */
body:not(.user-dashboard-page):not(.fb) {
  background:
    radial-gradient(40% 30% at 92% -6%, rgba(234, 219, 255, .55), transparent 60%),
    linear-gradient(180deg, var(--rds-cream-2) 0%, var(--rds-cream) 45%, var(--rds-cream) 100%) fixed;
  font-family: var(--rds-body);
  color: var(--rds-ink);
}

/* Typografie der Inhaltsbereiche */
.main_content h1,
.main_content h2,
.main_content h3,
.main_content h4,
.main_content .font-heading {
  font-family: var(--rds-display) !important;
  letter-spacing: -.015em;
}

/* Header 2.0: Bootstrap-.nav-Kollision global neutralisieren
   (identisch zur Dashboard-Lösung, hier für alle mainlayout-Seiten) */
body header.nav {
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none;
  background: rgba(255, 255, 255, .86);
}
body header.nav .nav__in {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  max-width: 1240px;
  margin-inline: auto;
  padding: 14px 40px;
}
body header.nav .nav__brand { margin-right: auto; }
body header.nav .nav__brand img { height: 30px; display: block; }
body header.nav a,
body .promo__in a { text-decoration: none !important; }
body header.nav .nav__right { display: flex; align-items: center; gap: 12px; margin-left: auto; }
@media (max-width: 680px) {
  body header.nav .nav__in { padding: 12px 16px; }
}

/* Rechtstexte / CMS-Seiten: Inhalt als weiße Karte auf Creme */
.main_content .page-content,
.main_content .container .card,
.main_content article {
  background: #fff;
  border: 1px solid var(--rds-line-2);
  border-radius: var(--rds-r-lg);
  box-shadow: var(--rds-shadow-card);
}

/* Primär-Buttons global als Design-Pill */
.main_content .btn-primary {
  border-radius: 999px !important;
  background: linear-gradient(180deg, #8a52ff, var(--rds-violet)) !important;
  border: none !important;
  color: #fff !important;
  font-family: var(--rds-display) !important;
  font-weight: 700 !important;
  box-shadow: 0 14px 30px -16px rgba(123, 66, 246, .6) !important;
  transition: transform .15s, filter .2s;
}
.main_content .btn-primary:hover { transform: translateY(-1px); filter: brightness(1.05); }

/* Links in Fließtexten — Button-artige Anker (btn-*, *-btn, pay-btn …) ausnehmen,
   sonst färbt die Regel weiße Button-Labels violett (Success/Payment). */
.main_content a:not(.btn):not([class*="btn"]):not([class*="bg-"]):not(.nav__cta) { color: var(--rds-violet-ink); }

/* Formulare (z. B. Kontakt) */
.main_content .form-control:focus,
.main_content input:focus,
.main_content textarea:focus {
  border-color: var(--rds-violet) !important;
  box-shadow: 0 0 0 4px rgba(123, 66, 246, .14) !important;
  outline: none;
}

@media (prefers-reduced-motion: reduce) {
  .main_content .btn-primary { transition: none; }
}

/* Seitentitel: keine Kursiven — Hanken 800 wie überall im Design */
.main_content h1, .main_content h2 { font-style: normal !important; font-weight: 800 !important; }

/* Footer 2.0: Link-Unterstreichungen seitenlokaler Stylesheets neutralisieren */
footer .foot__col a,
footer .foot__sub a,
footer a { text-decoration: none !important; }
footer .foot__col a:hover { color: #fff !important; }

/* Leere CMS-Buttons (ohne Label) nicht anzeigen */
.main_content a.btn:empty,
.main_content button.btn:empty { display: none !important; }

/* Rich-Text-/CMS-Fließtext IMMER in CI-Body (Inter) — überschreibt Inline-
   font-family (z. B. Arial) aus dem Rich-Text-Editor der Rechtstexte/CMS-Seiten.
   Überschriften behalten ihre Display-Font-Regeln (h1–h6 hier bewusst ausgenommen). */
.privacy-rich-content :where(p, li, span, td, th, a, div, strong, em, small, blockquote),
.styled-rich-content  :where(p, li, span, td, th, a, div, strong, em, small, blockquote),
.page-content         :where(p, li, span, td, th, a, div, strong, em, small, blockquote) {
  font-family: var(--rds-body, 'Inter', system-ui, sans-serif) !important;
}
