.elementor-kit-6{--e-global-color-primary:#1E293B;--e-global-color-secondary:#64748B;--e-global-color-text:#334155;--e-global-color-accent:#A855F7;--e-global-color-kl-bg-1:#F8FAFF;--e-global-color-kl-bg-2:#FFF7ED;--e-global-color-kl-bg-3:#F0FDFA;--e-global-color-kl-bg-4:#FDF2F8;--e-global-color-35f4f98:#FFFFFF;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-5603339-font-size:2.2rem;--e-global-typography-5603339-font-weight:800;--e-global-typography-c831ee6-font-size:1.2rem;--e-global-typography-c831ee6-text-transform:uppercase;--e-global-typography-c831ee6-letter-spacing:2px;background-color:#DEE6EA;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-accent );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:20px;--container-default-padding-right:20px;--container-default-padding-bottom:20px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   KLUSTA – GLOBAL BASE (MODERN & STABLE)
   ========================================================= */

/* 0) ROOT VARS - Synchronisiert mit dem neuen Look */
:root {
  --kl-text: var(--e-global-color-text, #475569);
  --kl-head: var(--e-global-color-primary, #1E293B); /* Anthrazit */
  --kl-accent: var(--e-global-color-accent, #A855F7); /* Klusta Lila */
  --kl-bg: var(--e-global-color-background, #F8FAFC); /* Sanftes Grau */
  --kl-card: #ffffff;
  --kl-border: #E2E8F0;
  --kl-shadow: rgba(15, 23, 42, 0.08);
  
  /* Legacy Aliases für bestehende Komponenten */
  --bg: var(--kl-bg);
  --line: var(--kl-border);
  --muted: #64748b;
  --accent: var(--kl-accent);
}

/* 1) BASIS & TYPOGRAFIE */
html, body { 
  height: 100%; 
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: var(--e-global-typography-text-font-family, 'Inter', sans-serif);
  color: var(--kl-text);
  line-height: 1.6;
  font-size: 1rem;
  background-color: var(--kl-bg);
  -webkit-font-smoothing: antialiased;
}

p, li, .elementor-text-editor {
  color: var(--kl-text);
  line-height: 1.7;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  font-family: var(--e-global-typography-primary-font-family, inherit);
  color: var(--kl-head);
  margin: 0 0 1.2rem 0;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

h1, .elementor-heading-title.elementor-size-xl { font-size: 2.5rem; font-weight: 900; }
h2, .elementor-heading-title.elementor-size-large { font-size: 2rem; font-weight: 800; }
h3 { font-size: 1.5rem; font-weight: 700; }

/* 2) MODERNES BOXEN-SYSTEM (Card Look) */
.kl-box-info, .kl-box-success, .kl-box-warning, .kl-box-accent, .kl-prompt-box {
  padding: 30px;
  border-radius: 24px; /* Runder wie die User-Cards */
  margin: 0 0 30px 0;
  border: 1px solid var(--kl-border);
  background: var(--kl-card);
  box-shadow: 0 10px 25px var(--kl-shadow);
  transition: transform 0.3s ease;
}

.kl-box-info { border-left: 6px solid #0EA5E9; }
.kl-box-success { border-left: 6px solid #10B981; }
.kl-box-warning { border-left: 6px solid #F43F5E; }
.kl-box-accent { border-left: 6px solid var(--kl-accent); }

/* 3) BUTTONS (Klusta Style) */
.kl-btn-primary {
  display: inline-block;
  background: var(--kl-accent);
  color: #fff !important;
  font-weight: 800;
  padding: 14px 28px;
  border-radius: 14px;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  box-shadow: 0 4px 15px rgba(168, 85, 247, 0.25);
  text-align: center;
}

.kl-btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(168, 85, 247, 0.4);
  filter: brightness(1.1);
}

/* 4) ACCORDION (Cleaner Look) */
.kl-acc-header {
  padding: 20px;
  background: var(--kl-card);
  border: 1px solid var(--kl-border);
  border-radius: 14px;
  cursor: pointer;
  font-weight: 700;
  transition: all 0.2s ease;
}

.kl-acc-header:hover { 
  background: var(--kl-bg); 
  color: var(--kl-accent); 
  border-color: var(--kl-accent);
}

/* 5) STICKY FOOTER & LAYOUT STABILITÄT */
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Verhindert das Springen von Elementor-Sektionen */
#elementor-content, #content, main, .site-content {
  flex: 1 0 auto;
}

#elementor-footer, footer {
  margin-top: auto;
  flex-shrink: 0;
  background-color: var(--kl-head); /* Dunkler Footer-Background passend zum Header */
}

/* 6) UTILS */
.kl-round { border-radius: 24px !important; }
.kl-shadow { box-shadow: 0 15px 45px var(--kl-shadow) !important; }/* End custom CSS */