.elementor-kit-7{--e-global-color-primary:#0A509B;--e-global-color-secondary:#B9D9FF;--e-global-color-text:#222222;--e-global-color-accent:#0090DE;--e-global-color-a510a75:#FFFFFF;--e-global-color-0f3af85:#E7EFFA;--e-global-color-58fb4be:#1161B7;--e-global-color-5592920:#9FC9FB;--e-global-color-44eb969:#00A4FD;--e-global-color-7ee649a:#00927D;--e-global-typography-primary-font-family:"Fustat";--e-global-typography-primary-font-size:40px;font-weight:var( --e-global-typography-text-weight );--e-global-typography-primary-letter-spacing:1px;--e-global-typography-secondary-font-family:"Fustat";--e-global-typography-secondary-font-size:35px;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-line-height:48px;--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-letter-spacing:0.4px;--e-global-typography-264963a-font-size:14px;--e-global-typography-264963a-font-weight:600;--e-global-typography-3f2bde5-font-size:16px;--e-global-typography-59e3888-font-size:14px;--e-global-typography-ead0451-font-size:20px;--e-global-typography-0d3b4b7-font-family:"Fustat";--e-global-typography-0d3b4b7-font-size:24px;--e-global-typography-0d3b4b7-line-height:32px;--e-global-typography-3e934fb-font-size:18px;color:var( --e-global-color-text );font-size:var( --e-global-typography-text-font-size );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-accent );font-size:var( --e-global-typography-264963a-font-size );font-weight:var( --e-global-typography-264963a-weight );color:var( --e-global-color-a510a75 );}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:var( --e-global-color-44eb969 );color:var( --e-global-color-a510a75 );border-radius:5px 5px 5px 5px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-accent );}.elementor-kit-7 a:hover{color:var( --e-global-color-44eb969 );}.elementor-kit-7 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-7 h3{color:var( --e-global-color-primary );font-family:"Fustat", Sans-serif;font-size:24px;font-weight:400;line-height:26px;}.elementor-kit-7 h4{color:var( --e-global-color-primary );font-size:var( --e-global-typography-3e934fb-font-size );font-weight:var( --e-global-typography-3e934fb-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-weight );}.elementor-kit-7 h1{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h2{font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-3e934fb-font-size );font-weight:var( --e-global-typography-3e934fb-weight );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-264963a-font-size );font-weight:var( --e-global-typography-264963a-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-weight );}.elementor-kit-7 h1{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-7 h2{font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-3e934fb-font-size );font-weight:var( --e-global-typography-3e934fb-weight );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-264963a-font-size );font-weight:var( --e-global-typography-264963a-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Tabellen im Beitrag & HTML-Widget – Volle Breite, sauberes Layout */
.elementor-widget-theme-post-content table,
.elementor-widget-html table {
  width: 100% !important;
  max-width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  font-family: var(--e-global-typography-text-font-family), sans-serif !important;
  font-size: var(--e-global-typography-text-font-size, 16px);
  line-height: 1.3;
  color: #222;
  margin: 1em 0;
  table-layout: auto;
}

/* Tabellenzellen – kompakt, ohne Rahmen */
.elementor-widget-theme-post-content table td,
.elementor-widget-theme-post-content table th,
.elementor-widget-html table td,
.elementor-widget-html table th {
  padding: 0.4em 0.6em;
  border: none !important;
  background-color: transparent !important;
  font-family: inherit !important;
  font-weight: 400;
  vertical-align: middle;
  word-break: break-word;
}

/* Alternierende Zeilenfarbe */
.elementor-widget-theme-post-content table tr:nth-child(even) td,
.elementor-widget-html table tr:nth-child(even) td {
  background-color: #E7EFFA !important;
}

/* Hover-Effekt für Lesbarkeit */
.elementor-widget-theme-post-content table tr:hover td,
.elementor-widget-html table tr:hover td {
  background-color: #f4f9fe !important;
}

/* Fettschrift */
.elementor-widget-theme-post-content table td strong,
.elementor-widget-html table td strong {
  font-weight: 600;
}

/* Untere Linie bei <strong> */
.elementor-widget-theme-post-content table td:has(strong),
.elementor-widget-html table td:has(strong) {
  border-bottom: 3px solid #0A509B !important;
}

/* Inline-Fonts entfernen */
.elementor-widget-theme-post-content table td [style*="font-family"],
.elementor-widget-theme-post-content table td span[style*="font-family"],
.elementor-widget-html table td [style*="font-family"],
.elementor-widget-html table td span[style*="font-family"] {
  font-family: inherit !important;
}

/* Alle Ränder raus */
.elementor-widget-theme-post-content table,
.elementor-widget-theme-post-content table *,
.elementor-widget-html table,
.elementor-widget-html table * {
  border: none !important;
}

/* Padding im Beitrag rausnehmen (optional) */
.elementor-widget-theme-post-content {
  padding: 0 !important;
}


/*_____________________________________________________________________________________________*/






/* BULLET POINTS */

/* UL – nur innerhalb von Texteditoren */
.elementor-widget-text-editor ul {
  list-style: none;
  padding-left: 0em;
  margin-bottom: 1em;
}

.elementor-widget-text-editor ul li {
  position: relative;
  padding-left: 1.5em;
}

.elementor-widget-text-editor ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 10px;
  height: 10px;
  background-color: #0090DE;
  border-radius: 2px;
}

.elementor-widget-text-editor ul li ul li::before {
  width: 7px;
  height: 7px;
   background-color: #0A509B;;
}

.elementor-widget-text-editor ul li ul li ul li::before {
  width: 5px;
  height: 5px;
}

/* OL – Zahlenstyling nur im Content */


.elementor-widget-text-editor ol {

  padding-left: 1em;
  margin-bottom: 1em;
}

.elementor-widget-text-editor ol > li::marker {
  
  font-weight: 600;
  color: #0090DE;
}

.elementor-widget-text-editor ol ol > li::marker {

  font-weight: 600;
  color: #0A509B;
}

.elementor-widget-text-editor ol ol ol > li::marker {
    
  font-weight: 400;
  color: #0A509B;
}



.elementor-widget-text-editor strong,
.elementor-widget-text-editor b {
  
  
}

body {
    overflow-x: hidden;
    
}




/* ============================= Formulare ============================= */

/*****************************
 * Ninja Forms – Clean Layout
 * Farben & Look bleiben gleich,
 * Abstände und Struktur aufgeräumt
 *****************************/

/* ------ Spacing-Variablen (optional) ------ */
:root {
  --nf-space-2: 0.125rem;  /* 2px  */
  --nf-space-4: 0.25rem;   /* 4px  */
  --nf-space-6: 0.375rem;  /* 6px  */
  --nf-space-8: 0.5rem;    /* 8px  */
  --nf-space-10: 0.625rem; /* 10px */
  --nf-space-12: 0.75rem;  /* 12px */
  --nf-space-16: 1rem;     /* 16px */
  --nf-space-20: 1.25rem;  /* 20px */
}

/* ------ Vertikaler Rhythmus (Hauptabstände) ------ */
.nf-form-content .field-wrap,
.nf-form-content .nf-field-container,
.nf-form-content .nf-field { 
  margin-bottom: var(--nf-space-20) !important; /* Abstand Feld → nächstes Element */
}

/* Kompaktere Gruppen für Checkboxen/Radio */
.nf-form-content .checkbox-wrap,
.nf-form-content .list-checkbox-wrap,
.nf-form-content .list-radio-wrap {
  margin-bottom: var(--nf-space-16) !important;
}

/* Label → Feld Abstand */
.nf-form-content .nf-field-label {
  margin-bottom: var(--nf-space-8) !important;
}

/* Letztes Element im Formular: kein Extra-Abstand */
.nf-form-content .field-wrap:last-child,
.nf-form-content .nf-field-container:last-child,
.nf-form-content .nf-field:last-child {
  margin-bottom: 0 !important;
}

/* ------ Grund-Styles: Felder (Pillen) ------ */
.ninja-forms-field.nf-element,
.nf-form-content input[type="text"],
.nf-form-content input[type="email"],
.nf-form-content input[type="tel"],
.nf-form-content input[type="url"],
.nf-form-content input[type="password"],
.nf-form-content select {
  background-color: #E7EFFA !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.75em 1.5em !important;
  color: #0A509B !important;
  font-weight: 600;
  box-shadow: none !important;
  width: 100%;
}

/* Textarea: kein Pillen-Radius */
textarea.ninja-forms-field.nf-element {
  border-radius: 10px !important;
}

/* Platzhalter-Farbe angleichen */
.nf-form-content ::placeholder {
  color: #0A509B !important;
  opacity: 0.7;
}

/* ------ Labels, Überschriften, Pflicht-Hinweise ------ */
.nf-field-label label,
.nf-label-span,
.nf-field-label .nf-section-title,
.nf-form-title h2,
.nf-form-fields-required {
  color: #0A509B !important;
  font-weight: 600;
}

/* Formulartitel wie Elementor h2 */
.nf-form-title h2 {
  all: unset;
  font-family: var(--e-global-typography-secondary-font-family);
  font-size: var(--e-global-typography-secondary-font-size);
  font-weight: var(--e-global-typography-secondary-font-weight);
  line-height: var(--e-global-typography-secondary-line-height);
  letter-spacing: var(--e-global-typography-secondary-letter-spacing);
  color: var(--e-global-color-primary);
  margin-bottom: var(--nf-space-20);
  display: block;
}

/* Pflichtsymbol in Dunkelblau (wie Text) */
.ninja-forms-req-symbol {
  color: #0A509B !important;
}

/* ------ Fehlerzustände in Blau, ohne rote Rahmen ------ */
.nf-error,
.nf-error-msg,
.nf-error-wrap {
  color: #0090DE !important;
  margin-top: var(--nf-space-6);
}

.nf-error input,
.nf-error textarea,
.nf-error select {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* ------ Fokus: dezentes Outline, kein Browser-Glow ------ */
.nf-form-content .nf-element:focus {
  outline: 2px solid #0090DE !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

/* ------ Native Date/Time/Number anpassen ------ */
.nf-form-content input[type="date"],
.nf-form-content input[type="time"],
.nf-form-content input[type="number"] {
  background-color: #E7EFFA !important;
  color: #0A509B !important; 
  border: none !important;
  border-radius: 999px !important;
  padding: 0.75em 1.5em !important;
  width: 100%;
}

/* Number-Spinner neutralisieren */
.nf-form-content input[type="number"] {
  -moz-appearance: textfield;
}
.nf-form-content input[type="number"]::-webkit-outer-spin-button,
.nf-form-content input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Kalender-/Zeit-Icon leicht angleichen (WebKit) */
.nf-form-content input[type="date"]::-webkit-calendar-picker-indicator,
.nf-form-content input[type="time"]::-webkit-calendar-picker-indicator {
  filter: brightness(0) saturate(100%) sepia(18%) hue-rotate(180deg);
  opacity: 0.7;
}

/* ------ Select: einheitlicher Pfeil & Padding rechts ------ */
.nf-form-content select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #0A509B 50%),
    linear-gradient(135deg, #0A509B 50%, transparent 50%);
  background-position:
    calc(100% - 18px) calc(50% - 4px),
    calc(100% - 12px) calc(50% - 4px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 2.5em !important;
}

/* ------ Checkboxen & Radio-Buttons ------ */
/* Gruppe: oben ausrichten + Abstand zwischen Control und Text */
.checkbox-wrap,
.list-checkbox-wrap,
.list-radio-wrap {
  display: flex !important;
  align-items: flex-start !important;
  gap: var(--nf-space-8);
}

/* kleines optisches Ausgleichen */
.checkbox-wrap .nf-field-element,
.list-checkbox-wrap .nf-field-element {
  margin-top: var(--nf-space-2);
}

/* Input selbst: Markenfarbe */
.nf-form-content input[type="checkbox"],
.nf-form-content input[type="radio"] {
  accent-color: #0090DE;
}

/* Label-Farbe & Zeilenhöhe */
.checkbox-wrap label,
.list-checkbox-wrap label,
.list-radio-wrap label,
.nf-checked-label,
.nf-field-label label {
  color: #0A509B !important;
  font-weight: 600;
  line-height: 1.3;
}

/* ------ Hilfesymbole (Info-Icon) ------ */
.nf-help,
.fa-info-circle.nf-help {
  color: #0A509B !important;
  margin-left: var(--nf-space-6) !important;
  vertical-align: middle !important;
  font-size: 1em !important;
  opacity: 0.85;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.nf-help:hover,
.nf-help:focus {
  color: #0090DE !important;
  opacity: 1;
  cursor: pointer;
}

/* ------ Beschreibungstexte unter Feldern ------ */
.nf-field-description,
.nf-field-description p {
  color: #0A509B !important;
  font-size: 0.95em;
  line-height: 1.4;
  margin-top: var(--nf-space-8);
  padding-left: 10px !important; /* gewünschter linker Einzug */
}

/* ------ Submit-Button ------ */
.nf-form-cont .nf-field-element input[type="submit"] {
  background-color: #0A509B;
  color: #fff;
  border: none;
  padding: 0.75em 1.5em;
  font-size: 1rem;
  font-weight: 500;
  font-family: var(--e-global-typography-text-font-family), sans-serif;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

.nf-form-cont .nf-field-element input[type="submit"]:hover {
  background-color: #B9D9FF !important;
  color: #0A509B !important;
}

/* ------ Sonstiges ------ */
/* Einheitliche Caret-Farbe */
.nf-form-content input,
.nf-form-content textarea {
  caret-color: #0090DE;
}

/* ========= Einheitlicher vertikaler Abstand für alle Eingabefelder ========= */
.nf-form-content input[type="text"],
.nf-form-content input[type="email"],
.nf-form-content input[type="tel"],
.nf-form-content input[type="url"],
.nf-form-content input[type="password"],
.nf-form-content input[type="number"],
.nf-form-content input[type="date"],
.nf-form-content input[type="time"],
.nf-form-content input[type="datetime-local"],
.nf-form-content select,
.nf-form-content textarea {
  margin-top: 5px !important;    /* Abstand nach oben */
  margin-bottom: 5px !important; /* Abstand nach unten */
}


.nf-form-cont .nf-field-description {
  margin-right: 0 !important;
}


/* ============================= Formulare ============================= *//*/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Fustat';
	font-display: auto;
	src: url('https://mpg-ge.de/wp-content/uploads/2025/07/Fustat-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */