.elementor-kit-5{--e-global-color-primary:#A4CADF;--e-global-color-secondary:#8C969D;--e-global-color-text:#000000;--e-global-color-accent:#DBCBB4;--e-global-color-5c237dc:#FFFFFF;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-weight:700;font-family:"Outfit", Sans-serif;font-size:16px;font-weight:400;line-height:1.6px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 h1{font-family:"Outfit", Sans-serif;font-size:40px;font-weight:700;}.elementor-kit-5 h2{font-family:"Outfit", Sans-serif;font-size:32px;font-weight:700;}.elementor-kit-5 h3{font-family:"Outfit", Sans-serif;font-size:24px;font-weight:600;}.elementor-kit-5 h4{font-family:"Outfit", Sans-serif;font-weight:600;}.elementor-kit-5 h5{font-family:"Outfit", Sans-serif;font-weight:600;}.elementor-kit-5 h6{font-family:"Outfit", Sans-serif;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing: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 */:root{
  --tb-blue-50:#f4f8fb; --tb-blue-100:#eaf2f7; --tb-blue-200:#d7e7f0;
  --tb-blue-300:#c3dbe8; --tb-blue-400:#b4d1e2; --tb-blue-500:#a4cadf;
  --tb-blue-600:#8db4cb; --tb-blue-700:#7aa0b8; --tb-blue-800:#6a8da3; --tb-blue-900:#577587;
  --tb-black:#000000; --tb-gray:#8c969d;
}

/* Flächen & Highlights */
.bg-blue-soft{background:var(--tb-blue-100);color:#000}
.bg-blue-strong{background:var(--tb-blue-700);color:#fff}

/* Hero-Overlay für Bildsektionen */
.overlay-blue{position:relative}
.overlay-blue::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(122,160,184,.35),rgba(122,160,184,.55));
  pointer-events:none;
}

/* Rahmen / Schatten / Divider */
.border-blue{border:1px solid var(--tb-blue-300);border-radius:12px}
.shadow-blue{box-shadow:0 6px 28px rgba(122,160,184,.25)}
.hr-blue{height:1px;background:linear-gradient(90deg,transparent,var(--tb-blue-300),transparent);border:0}

/* Komponenten */
.callout-blue{
  background:var(--tb-blue-100);
  border-left:4px solid var(--tb-blue-600);
  padding:14px 16px; border-radius:10px;
}
.btn-blue{
  background:var(--tb-blue-700); color:#fff; border:1px solid var(--tb-blue-700);
  border-radius:10px; padding:12px 18px;
}
.btn-blue:hover{filter:brightness(.95)}

/* Formulare */
.input-blue input,.input-blue textarea,.input-blue select{
  border-radius:10px; border:1px solid var(--tb-blue-300);
}
.input-blue input:focus,.input-blue textarea:focus,.input-blue select:focus{
  outline:2px solid var(--tb-blue-600); box-shadow:0 0 0 3px rgba(122,160,184,.25);
}

/* Abstände für Sections */
.section{padding:clamp(48px, 6vw, 88px) 0}

/* Footer: Kontakt-Block Fix gegen Überlappungen */
.contact-block{ position:relative; display:block; }
.contact-block p{ margin:0 0 8px; line-height:1.6 !important; }
.contact-block a, .contact-block span{ line-height:1.6 !important; }
.contact-block *{ white-space:normal; letter-spacing:normal; position:static !important; }
``
/* Nur für den Kontakt-Text */
.contact-text p{
  margin: 6px 0 !important;   /* kompakte, gleichmäßige Absatzabstände */
}
.contact-text p:last-child{
  margin-bottom: 0 !important; /* kein zusätzlicher Schlussabstand */
}
/* === Text-Normalizer für alle Text-Editor-Widgets (Elementor) === */
.elementor-widget-text-editor { 
  line-height: 1.5;               /* zuverlässiger Grundabstand für Zeilen */
}
.elementor-widget-text-editor p{
  margin: 6px 0;                   /* kompakte, gleichmäßige Absatzabstände */
}
.elementor-widget-text-editor p:last-child{
  margin-bottom: 0;
}
.elementor-widget-text-editor a{
  line-height: inherit;            /* Links halten den gleichen Zeilenabstand */
  white-space: normal;
}
/* Globale Linkfarben */
a { 
  color: #000000;                 /* Standard: schwarz */
  text-decoration: none;
}
a:visited { 
  color: #000000;                 /* kein lila/rot für besuchte Links */
}
a:hover, a:focus { 
  color: var(--tb-blue-700);      /* Hover: dein dunkleres Blau */
  text-decoration: underline; 
}

/* Links auf dunklem Blau immer weiß */
.bg-blue-strong a,
.bg-black a {
  color: #ffffff;
}
.bg-blue-strong a:hover,
.bg-black a:hover {
  color: #ffffff;
  text-decoration: underline;
}

/* Footer-Minimalvariante (falls du ihn blau färbst) */
.tb-footer a { 
  color: inherit;                  /* übernimmt Textfarbe des Footers */
}/* End custom CSS */