.elementor-kit-5{--e-global-color-primary:#0063A2;--e-global-color-secondary:#0063A2;--e-global-color-text:#212529;--e-global-color-accent:#5C6873;--e-global-color-vm_bg:#FFFFFF;--e-global-color-vm_surface:#FFFFFF;--e-global-color-vm_muted:#F3F8FA;--e-global-color-vm_primary_soft:#D3EBFA;--e-global-color-vm_border:#D3DDE3;--e-global-color-vm_border_st:#025489;--e-global-color-vm_primary_fg:#FFFFFF;--e-global-color-vm_accent_fg:#FFFFFF;--e-global-color-vm_link:#0063A2;--e-global-color-vm_transparent:rgba(0,0,0,0);--e-global-typography-primary-font-family:"Fira Sans";--e-global-typography-primary-font-size:52px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Fira Sans";--e-global-typography-secondary-font-size:40px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Fira Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Open Sans";--e-global-typography-accent-font-size:24px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.5em;--e-global-typography-vm_h1-font-family:"Fira Sans";--e-global-typography-vm_h1-font-size:52px;--e-global-typography-vm_h1-font-weight:700;--e-global-typography-vm_h1-line-height:1.2em;--e-global-typography-vm_h2-font-family:"Fira Sans";--e-global-typography-vm_h2-font-size:40px;--e-global-typography-vm_h2-font-weight:700;--e-global-typography-vm_h2-line-height:1.2em;--e-global-typography-vm_h3-font-family:"Fira Sans";--e-global-typography-vm_h3-font-size:24px;--e-global-typography-vm_h3-font-weight:700;--e-global-typography-vm_h3-line-height:1.4em;--e-global-typography-vm_h3_gross-font-family:"Fira Sans";--e-global-typography-vm_h3_gross-font-size:33px;--e-global-typography-vm_h3_gross-font-weight:700;--e-global-typography-vm_h3_gross-line-height:1.15em;--e-global-typography-vm_h4-font-family:"Fira Sans";--e-global-typography-vm_h4-font-size:24px;--e-global-typography-vm_h4-font-weight:400;--e-global-typography-vm_h4-line-height:1.25em;--e-global-typography-vm_lead-font-family:"Open Sans";--e-global-typography-vm_lead-font-size:24px;--e-global-typography-vm_lead-font-weight:400;--e-global-typography-vm_lead-line-height:1.5em;--e-global-typography-vm_text-font-family:"Fira Sans";--e-global-typography-vm_text-font-size:18px;--e-global-typography-vm_text-font-weight:400;--e-global-typography-vm_text-line-height:1.5em;--e-global-typography-vm_klein-font-family:"Fira Sans";--e-global-typography-vm_klein-font-size:16px;--e-global-typography-vm_klein-font-weight:400;--e-global-typography-vm_klein-line-height:1.5em;--e-global-typography-vm_knopf-font-family:"Fira Sans";--e-global-typography-vm_knopf-font-size:18px;--e-global-typography-vm_knopf-font-weight:700;--e-global-typography-vm_knopf-line-height:1.5em;--e-global-typography-vm_menue-font-family:"Fira Sans";--e-global-typography-vm_menue-font-size:16px;--e-global-typography-vm_menue-font-weight:400;--e-global-typography-vm_menue-line-height:1em;--e-global-typography-vm_zahl-font-family:"Fira Sans";--e-global-typography-vm_zahl-font-size:48px;--e-global-typography-vm_zahl-font-weight:700;--e-global-typography-vm_zahl-line-height:1em;--e-global-typography-vm_zahl_label-font-family:"Fira Sans";--e-global-typography-vm_zahl_label-font-size:20px;--e-global-typography-vm_zahl_label-font-weight:400;--e-global-typography-vm_zahl_label-line-height:1.6em;--e-global-typography-vm_zahl_label-letter-spacing:0.5px;--e-global-typography-vm_eyebrow-font-family:"Fira Sans";--e-global-typography-vm_eyebrow-font-size:14px;--e-global-typography-vm_eyebrow-font-weight:600;--e-global-typography-vm_eyebrow-text-transform:uppercase;--e-global-typography-vm_eyebrow-line-height:1.4em;--e-global-typography-vm_eyebrow-letter-spacing:1px;--e-global-typography-vm_badge-font-family:"Fira Sans";--e-global-typography-vm_badge-font-size:16px;--e-global-typography-vm_badge-font-weight:400;--e-global-typography-vm_badge-line-height:1.5em;color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_text-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_text-font-size );font-weight:var( --e-global-typography-vm_text-font-weight );line-height:var( --e-global-typography-vm_text-line-height );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-vm_knopf-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_knopf-font-size );font-weight:var( --e-global-typography-vm_knopf-font-weight );line-height:var( --e-global-typography-vm_knopf-line-height );color:var( --e-global-color-vm_accent_fg );border-radius:8px 8px 8px 8px;padding:10px 32px 10px 32px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#025489;color:var( --e-global-color-vm_accent_fg );}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 p{margin-block-end:1em;}.elementor-kit-5 a{color:var( --e-global-color-vm_link );}.elementor-kit-5 a:hover{color:var( --e-global-color-vm_border_st );}.elementor-kit-5 h1{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_h1-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_h1-font-size );font-weight:var( --e-global-typography-vm_h1-font-weight );line-height:var( --e-global-typography-vm_h1-line-height );}.elementor-kit-5 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_h2-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_h2-font-size );font-weight:var( --e-global-typography-vm_h2-font-weight );line-height:var( --e-global-typography-vm_h2-line-height );}.elementor-kit-5 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_h3-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_h3-font-size );font-weight:var( --e-global-typography-vm_h3-font-weight );line-height:var( --e-global-typography-vm_h3-line-height );}.elementor-kit-5 h4{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_h4-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_h4-font-size );font-weight:var( --e-global-typography-vm_h4-font-weight );line-height:var( --e-global-typography-vm_h4-line-height );}.elementor-kit-5 h5{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_klein-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_klein-font-size );font-weight:var( --e-global-typography-vm_klein-font-weight );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-kit-5 h6{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_eyebrow-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_eyebrow-font-size );font-weight:var( --e-global-typography-vm_eyebrow-font-weight );text-transform:var( --e-global-typography-vm_eyebrow-text-transform );line-height:var( --e-global-typography-vm_eyebrow-line-height );letter-spacing:var( --e-global-typography-vm_eyebrow-letter-spacing );}.elementor-kit-5 label{color:var( --e-global-color-text );font-family:var( --e-global-typography-vm_klein-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_klein-font-size );font-weight:var( --e-global-typography-vm_klein-font-weight );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-family:var( --e-global-typography-vm_klein-font-family ), Sans-serif;font-size:var( --e-global-typography-vm_klein-font-size );font-weight:var( --e-global-typography-vm_klein-font-weight );line-height:var( --e-global-typography-vm_klein-line-height );color:var( --e-global-color-text );background-color:var( --e-global-color-vm_surface );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-vm_border );border-radius:8px 8px 8px 8px;padding:14px 14px 14px 14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1248px;}.e-con{--container-max-width:1248px;--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);}.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-kit-5{--e-global-typography-primary-font-size:42px;--e-global-typography-secondary-font-size:34px;--e-global-typography-text-font-size:18px;--e-global-typography-accent-font-size:20px;--e-global-typography-vm_h1-font-size:42px;--e-global-typography-vm_h2-font-size:34px;--e-global-typography-vm_h3-font-size:22px;--e-global-typography-vm_h3_gross-font-size:28px;--e-global-typography-vm_h4-font-size:22px;--e-global-typography-vm_lead-font-size:20px;--e-global-typography-vm_text-font-size:18px;--e-global-typography-vm_klein-font-size:16px;--e-global-typography-vm_knopf-font-size:18px;--e-global-typography-vm_menue-font-size:16px;--e-global-typography-vm_zahl-font-size:40px;--e-global-typography-vm_zahl_label-font-size:18px;font-size:var( --e-global-typography-vm_text-font-size );line-height:var( --e-global-typography-vm_text-line-height );}.elementor-kit-5 h1{font-size:var( --e-global-typography-vm_h1-font-size );line-height:var( --e-global-typography-vm_h1-line-height );}.elementor-kit-5 h2{font-size:var( --e-global-typography-vm_h2-font-size );line-height:var( --e-global-typography-vm_h2-line-height );}.elementor-kit-5 h3{font-size:var( --e-global-typography-vm_h3-font-size );line-height:var( --e-global-typography-vm_h3-line-height );}.elementor-kit-5 h4{font-size:var( --e-global-typography-vm_h4-font-size );line-height:var( --e-global-typography-vm_h4-line-height );}.elementor-kit-5 h5{font-size:var( --e-global-typography-vm_klein-font-size );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-kit-5 h6{font-size:var( --e-global-typography-vm_eyebrow-font-size );line-height:var( --e-global-typography-vm_eyebrow-line-height );letter-spacing:var( --e-global-typography-vm_eyebrow-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-vm_knopf-font-size );line-height:var( --e-global-typography-vm_knopf-line-height );}.elementor-kit-5 label{font-size:var( --e-global-typography-vm_klein-font-size );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-size:var( --e-global-typography-vm_klein-font-size );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:34px;--e-global-typography-secondary-font-size:28px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:18px;--e-global-typography-vm_h1-font-size:34px;--e-global-typography-vm_h2-font-size:28px;--e-global-typography-vm_h3-font-size:20px;--e-global-typography-vm_h3_gross-font-size:24px;--e-global-typography-vm_h4-font-size:20px;--e-global-typography-vm_lead-font-size:18px;--e-global-typography-vm_text-font-size:16px;--e-global-typography-vm_klein-font-size:15px;--e-global-typography-vm_knopf-font-size:16px;--e-global-typography-vm_menue-font-size:18px;--e-global-typography-vm_zahl-font-size:32px;--e-global-typography-vm_zahl_label-font-size:16px;font-size:var( --e-global-typography-vm_text-font-size );line-height:var( --e-global-typography-vm_text-line-height );}.elementor-kit-5 h1{font-size:var( --e-global-typography-vm_h1-font-size );line-height:var( --e-global-typography-vm_h1-line-height );}.elementor-kit-5 h2{font-size:var( --e-global-typography-vm_h2-font-size );line-height:var( --e-global-typography-vm_h2-line-height );}.elementor-kit-5 h3{font-size:var( --e-global-typography-vm_h3-font-size );line-height:var( --e-global-typography-vm_h3-line-height );}.elementor-kit-5 h4{font-size:var( --e-global-typography-vm_h4-font-size );line-height:var( --e-global-typography-vm_h4-line-height );}.elementor-kit-5 h5{font-size:var( --e-global-typography-vm_klein-font-size );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-kit-5 h6{font-size:var( --e-global-typography-vm_eyebrow-font-size );line-height:var( --e-global-typography-vm_eyebrow-line-height );letter-spacing:var( --e-global-typography-vm_eyebrow-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-vm_knopf-font-size );line-height:var( --e-global-typography-vm_knopf-line-height );}.elementor-kit-5 label{font-size:var( --e-global-typography-vm_klein-font-size );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-size:var( --e-global-typography-vm_klein-font-size );line-height:var( --e-global-typography-vm_klein-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =====================================================================
   Vanced Media · Basis-CSS für Elementor-Kundenwebsites (portable Fassung, 08.10.2026)
   Einfügen in: Elementor → Site Settings → Custom CSS (Pro) oder style.css des Hello-Child-Themes.
   Grundsatz: Dies ist die EINZIGE CSS-Stelle. Kein CSS an Elementen, kein HTML-Widget.
   Farben nur über Kit-Variablen var(--e-global-color-<id>), nie Hex.
   Layout-Angaben an WIDGET-Klassen brauchen !important (Elementor liefert seine Element-CSS später aus),
   an Containern nicht (Fehler-Register #37).
   ===================================================================== */

/* ---------- 1. Nie horizontal verschiebbar (Kilian 17.09.2026, harte Regel) ----------
   Dies ist nur die letzte Sicherung. Die Lösung ist: nichts ragt über den Fensterrand,
   keine Wischstreifen, kein 100vw. Prüfen mit scripts/mobil_pruefen.mjs. */
html,body{overflow-x:clip;max-width:100%;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom}
@supports not (overflow:clip){ html,body{overflow-x:hidden} }

/* ---------- 2. Kopf-Ebene: Untermenü liegt über dem ersten Abschnitt (Menüregel 14.09.2026) ---------- */
.elementor-location-header{position:relative;z-index:900}
.elementor-location-header .elementor-nav-menu--dropdown,
.elementor-location-header .e-n-menu-dropdown{z-index:901}
.elementor-location-header .vm-kopf{min-height:72px}
/* Pillen-/Flex-Köpfe: Aktionsbereich nicht zusammendrücken */
.vm-kopf > .e-con-inner{justify-content:space-between;align-items:center;flex-wrap:nowrap}
/* Untermenü lesbar und breit genug, Hover-Farbe nicht erben */
.vm-kopf .elementor-nav-menu--dropdown{min-width:280px;max-width:440px}
.vm-kopf .elementor-nav-menu--dropdown a{white-space:normal}

/* ---------- 3. Typografie-Grundregeln (Gestaltungsregel 2) ---------- */
.elementor-heading-title{text-wrap:balance;font-variation-settings:normal}
.elementor-widget-text-editor p{text-wrap:pretty}
.vm-nowrap,.vm-nowrap .elementor-button-text,.vm-tel{white-space:nowrap}
/* Kennzahlen skalieren mit ihrer Karte, nie fest */
.vm-zahl .elementor-heading-title{font-size:clamp(28px,6cqw,44px);line-height:1}
.vm-karte{container-type:inline-size}
/* Elementor-Standards neutralisieren, die das Design verfälschen */
.elementor-widget-text-editor{max-width:none}
.elementor-button{min-height:0}

/* ---------- 4. Gleiche Boxen, kein Waisenknopf (Gestaltungsregel 4) ---------- */
.vm-raster{align-items:stretch}
.vm-raster > .e-con{height:auto;min-height:100%}
.vm-karte > .elementor-widget-button:last-child{margin-top:auto}
/* Grid-Zeilen auf dem Handy nicht auf die höchste strecken */
@media (max-width:767px){ .vm-raster.e-grid{grid-template-rows:none !important} }

/* ---------- 5. Seitenverhältnis-Boxen für Bilder (fester Rahmen, Fehler-Register #15/#23) ----------
   Achtung: nie die position des Bilds in diesen Klassen ändern, sonst verschwindet das Foto (height:0). */
.vm-43 .elementor-widget-container,.vm-169 .elementor-widget-container,.vm-32 .elementor-widget-container{position:relative;height:0;overflow:hidden}
.vm-43 .elementor-widget-container{padding-top:75%}
.vm-169 .elementor-widget-container{padding-top:56.25%}
.vm-32 .elementor-widget-container{padding-top:66.666%}
.vm-43 img,.vm-169 img,.vm-32 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ---------- 6. Text auf Bild braucht eine Fläche (Gestaltungsregel 1) ---------- */
.vm-bildkachel{position:relative;background-color:var(--e-global-color-primary)}
.vm-bildkachel::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.94) 0%,rgba(0,0,0,.62) 40%,rgba(0,0,0,.18) 100%);pointer-events:none}
.vm-bildkachel > *{position:relative;z-index:1}
.vm-hero-overlay::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.72);pointer-events:none}

/* ---------- 7. KI-Kennzeichnung als Badge AUF dem Bild (Art. 50 KI-VO) ----------
   Bild-Widget: Bildunterschrift „Bild mit KI erstellt." + Klasse vm-bild. Echte Fotos: Klasse vm-echt, keine Unterschrift. */
.vm-bild{position:relative}
.vm-bild figcaption.widget-image-caption{
  position:absolute;right:14px;bottom:14px;left:auto;width:auto;max-width:calc(100% - 28px);
  margin:0;padding:6px 12px;border-radius:999px;
  background:rgba(12,14,18,.78);color:#fff;
  font-size:11px;font-weight:600;letter-spacing:.01em;line-height:1.3;
  backdrop-filter:saturate(140%) blur(6px);box-shadow:0 1px 2px rgba(0,0,0,.25)}
@media (max-width:640px){ .vm-bild figcaption.widget-image-caption{right:10px;bottom:10px;font-size:10px;padding:5px 10px} }
/* Badge-Hüllen aus Heading-Widgets haben 27 px Zeilenhöhe → rutschen hoch */
.vm-badge .elementor-widget-container{line-height:0}

/* ---------- 8. Bewegung (Kilian 16.09.2026: „Elemente kommen nicht reingeflogen, Buttons ohne Hover") ----------
   Ohne Skript. Startdeckkraft .4 statt 0, damit Suchmaschinen (einmal gerendert, kein Scrollen) nie verborgenen Text sehen.
   Alles nur bei prefers-reduced-motion:no-preference. */
@keyframes vm-einblenden{from{opacity:.4;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes vm-hoch{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes vm-bild-rein{from{opacity:0;scale:.98}to{opacity:1;scale:1}}
@media (prefers-reduced-motion:no-preference){
  /* Knöpfe: Farbe, 1 px anheben, Pfeil schiebt, Druck gibt nach */
  .elementor-button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,translate .18s ease,transform .18s ease}
  .elementor-button:hover{translate:0 -1px;box-shadow:0 4px 12px -6px rgba(0,0,0,.25)}
  .elementor-button:active{translate:0 1px;box-shadow:none;transform:none}
  .elementor-button .elementor-button-icon{transition:translate .18s ease}
  .elementor-button:hover .elementor-button-icon{translate:2px 0}
  .elementor-nav-menu--main .elementor-item{transition:background-color .15s ease,color .15s ease}
  /* Karten heben sich nur mit Maus (auf Touch bliebe der Hover hängen) */
  @media (hover:hover) and (pointer:fine){
    .vm-karte,a.e-con.vm-kachel{transition:translate .25s ease,box-shadow .25s ease,opacity .2s ease}
    .vm-karte:hover,a.e-con.vm-kachel:hover{transform:none;translate:0 -3px;box-shadow:0 12px 24px -16px rgba(0,0,0,.35)}
    .vm-karte:hover .vm-bild img,.vm-kachel:hover img{transform:scale(1.04)}
    .vm-karte img,.vm-kachel img{transition:transform .35s ease}
    .vm-schritt .vm-schritt-symbol{transition:translate .25s ease}
    .vm-schritt:hover .vm-schritt-symbol{translate:4px 0}
  }
  /* Hero beim Laden: Text zeilenweise, Bild weich */
  .vm-hero-text > .elementor-element{animation:vm-hoch .6s cubic-bezier(.22,1,.36,1) both}
  .vm-hero-text > .elementor-element:nth-child(2){animation-delay:.08s}
  .vm-hero-text > .elementor-element:nth-child(3){animation-delay:.16s}
  .vm-hero-text > .elementor-element:nth-child(4){animation-delay:.24s}
  .vm-hero-bild{animation:vm-bild-rein .8s cubic-bezier(.22,1,.36,1) .2s both}
}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    /* Karten, Kacheln, Kennzahlen, Schritte, FAQ-Zeilen kommen beim Heranscrollen einzeln herein.
       Sticky-Elemente ausnehmen: Transformation am Elternteil bricht position:sticky. */
    .vm-karte,.vm-kachel,.vm-stat,.vm-schritt,.vm-faq .elementor-toggle-item,.vm-faq .e-n-accordion-item{
      animation:vm-einblenden linear both;animation-timeline:view();animation-range:entry 0% entry 45%}
    .vm-haft,.vm-haft *{animation:none}
  }
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;translate:none;scale:none}
}

/* ---------- 9. Sichtbarer Tastaturfokus (Barrierefreiheit) ---------- */
a:focus-visible,button:focus-visible,.elementor-button:focus-visible{outline:2px solid var(--e-global-color-vm_link);outline-offset:3px}

/* ---------- 10. Handy ---------- */
@media (max-width:767px){
  /* Dropdown unter den Kopf, sonst wächst der Kopf und die Seite wird breiter */
  .vm-kopf .elementor-nav-menu--dropdown{position:absolute;left:0;right:0;top:100%}
  /* Logo fängt keine Klicks (Burger bleibt bedienbar) */
  .vm-kopf .elementor-widget-image a{pointer-events:auto}
  /* Bildreihen werden Raster, nie Wischstreifen */
  .vm-bildreihe{display:grid !important;grid-template-columns:1fr 1fr;gap:12px}
  /* Wortmarken im Fuß kleiner */
  .vm-wortmarke .elementor-heading-title{font-size:28px}
}


/* ---------- St. Gregor: Ergänzungen (08.10.2026) ---------- */
/* Hero-Overlay nach Figma 294:492: dunkel links, offen rechts, unter Text ≥ .41 */
.vm-hero-gregor::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.41) 32%,rgba(0,0,0,0) 50%),rgba(0,0,0,.30);pointer-events:none}
.vm-hero-gregor > *{position:relative;z-index:1}
/* Vorteile-Karte: linker Markenrand 7 px (Figma 294:1830) */
.vm-karte-rand{border-left:7px solid var(--e-global-color-primary)}
/* Kartenschatten nach Figma */
.vm-karte{box-shadow:0 2px 6.5px rgba(7,23,44,.12)}
/* Seitenverhältnis-Boxen ohne Widget-Hülle (Elementor 4 optimiertes Markup): aspect-ratio statt padding-Trick */
.vm-43,.vm-169,.vm-32{position:relative}
.vm-43 .elementor-widget-container,.vm-169 .elementor-widget-container,.vm-32 .elementor-widget-container{position:static;height:auto;padding-top:0;overflow:visible}
.vm-43 img,.vm-169 img,.vm-32 img{position:static;inset:auto;width:100% !important;height:auto;object-fit:cover;display:block}
.vm-43 img{aspect-ratio:4/3}.vm-169 img{aspect-ratio:16/9}.vm-32 img{aspect-ratio:3/2}
/* Badge auf Kartenbild (Figma 294:571: weiß, Radius 8, Polster 4/10, oben 16, rechts 16) */
.vm-bild-badge{position:relative}
.vm-bild-badge .vm-badge-weiss{position:absolute;top:16px;right:16px;z-index:2;margin:0}
.vm-bild-badge .vm-badge-weiss .elementor-heading-title{background:var(--e-global-color-vm_surface);padding:4px 10px;border-radius:8px;line-height:1.5}
.vm-badge-weiss a{color:inherit;text-decoration:none}
/* Bildkachel mit Verlauf (Kennzahl 4,2/5) und Hero-Overlay: Kinder über dem ::before */
.vm-bildkachel{overflow:hidden}
/* Zitat-Karte: Avatar rund */
.vm-avatar img{border-radius:50%;width:82px;height:82px;object-fit:cover}
/* Jobsuche im Hero (Figma 294:497): weißes Feld 14 px Polster, Knopf 52 breit */
.vm-jobsuche .elementor-search-form__container{border-radius:8px;overflow:hidden}
.vm-jobsuche .elementor-search-form__input{padding:14px;flex:1 1 auto;min-width:0}
.vm-jobsuche .elementor-search-form__submit{flex:0 0 52px;width:52px;min-width:52px}
/* Kennzahlen-Band (Figma 294:504): Zahl oben, Label mindestens zwei Zeilen hoch → Zahlen auf einer Linie */
.vm-stat,.vm-stat > .e-con-inner{justify-content:flex-start !important}.vm-stat .elementor-widget-text-editor{min-height:64px}
/* Kennzahlen-Band über dem Hero */
.vm-kennzahlen-sektion{position:relative}
/* Symbolkreise: Symbol zentriert */
.vm-karte .elementor-widget-icon .elementor-icon{display:inline-flex}
/* container-type auf Karten im Loop-Grid (grid-auto-rows:1fr) bläht die Höhe auf (gemessen 13.163 px bei 390 px) → nur auf Kennzahl-Zellen */
.vm-karte{container-type:normal}.vm-stat{container-type:inline-size}
/* FAQ-Titel (Figma 630:2505: 24/30 regular): Nested-Accordion-Titelstil per Kit-Variablen, da die Widget-Typografie nicht greift */
.vm-faq .e-n-accordion-item-title-text{font-family:var(--e-global-typography-vm_lead-font-family),sans-serif;font-weight:var(--e-global-typography-vm_lead-font-weight);font-size:var(--e-global-typography-vm_lead-font-size);line-height:1.3}
@media (max-width:767px){.vm-faq .e-n-accordion-item-title-text{font-size:18px}}
.vm-faq .e-n-accordion-item{border:1px solid var(--e-global-color-vm_border);border-radius:12px}
/* Blaues Badge (Stellenzeile, Stellen-Einzelansicht; Figma 551:923) */
.vm-badge-blau .elementor-heading-title{display:inline-block;background:var(--e-global-color-primary);color:var(--e-global-color-vm_primary_fg);padding:4px 10px;border-radius:8px;line-height:1.5}
.vm-badge-blau a{color:inherit;text-decoration:none}
/* Zurück-Link: Pfeil nach links */
.vm-zurueck .elementor-icon-list-icon svg{transform:scaleX(-1)}
/* Inline-Icon-Listen (Infozeile, Zurück-Link): Elementor setzt negative Ränder → latente Überbreite */
.vm-infozeile .elementor-icon-list-items.elementor-inline-items,.vm-zurueck .elementor-icon-list-items.elementor-inline-items{margin:0 !important;display:flex;flex-wrap:wrap;gap:8px 24px}
.vm-infozeile .elementor-inline-item,.vm-zurueck .elementor-inline-item{margin:0 !important;padding:0 !important}
/* Hotspot-Tooltip nie über den Fensterrand */
.vm-karte-hotspots .e-hotspot__tooltip{max-width:min(320px,calc(100vw - 32px))}.vm-karte-hotspots .e-hotspot__tooltip,.vm-karte-hotspots .e-hotspot__tooltip *{white-space:normal;overflow-wrap:anywhere}
@media (max-width:767px){.vm-karte-hotspots .e-hotspot__tooltip{position:fixed !important;inset:auto 16px 16px 16px !important;width:auto !important;max-width:none !important;z-index:950;box-shadow:0 8px 24px rgba(7,23,44,.25)}}
/* Formularfelder auf dem Handy ohne negative Ränder */
@media (max-width:767px){.elementor-form-fields-wrapper{margin-left:0 !important;margin-right:0 !important}.elementor-field-group{padding-left:0 !important;padding-right:0 !important}}

/* ---------- Schriften lokal (DSGVO), Dateien in der Mediathek ---------- */
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-regular.woff2') format('woff2')}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:500;font-display:swap;src:url('/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-500.woff2') format('woff2')}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-600.woff2') format('woff2')}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-700.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/wp-content/uploads/2026/10/open-sans-v44-latin_latin-ext-regular.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/wp-content/uploads/2026/10/open-sans-v44-latin_latin-ext-600.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/wp-content/uploads/2026/10/open-sans-v44-latin_latin-ext-700.woff2') format('woff2')}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Fira Sans';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Fira Sans';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-500.woff2') format('woff2');
}
@font-face {
	font-family: 'Fira Sans';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-600.woff2') format('woff2');
}
@font-face {
	font-family: 'Fira Sans';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/fira-sans-v18-latin_latin-ext-700.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/open-sans-v44-latin_latin-ext-regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/open-sans-v44-latin_latin-ext-600.woff2') format('woff2');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://gregor-neu.client-dev-server.de/wp-content/uploads/2026/10/open-sans-v44-latin_latin-ext-700.woff2') format('woff2');
}
/* End Custom Fonts CSS */