@charset "UTF-8";
/*------------------------------------*\
 * Global Variables
 * 
 * 1. Colors
 *    ─ Purpose: Defines the color variables used throughout the project.
 * 
 * 2. Fonts
 *    ─ Purpose: Sets the font families, line heights, and gaps.
 * 
 * 3. Layout
 *    ─ Purpose: Sets the breakpoints for various screen sizes.
 * 
 * 4. Root Import
 *    ─ Purpose: Imports root-level custom properties.
 * 
 * 5. Spaces
 *    ─ Purpose: Sets the space variables for larger layout elements.
 * 
 * 6. Others
 *    ─ Purpose: Miscellaneous variables like transitions, borders
\*------------------------------------*/
/*------------------------------------*/
/* NOTE - Not from FIGMA */
/*------------------------------------*/
:root {
  --transition: all 300ms ease-in-out;
  --transition-fast: all 100ms ease-in-out;
  --layout-screen: var(--layout-wrapper);
  --layout-desktop: 1024px;
  --layout-tablet: 768px;
  --layout-mobile: 520px;
  --inner-margin: var(--layout-outergap);
}
@media only screen and (min-width: 1184px) {
  :root {
    --inner-margin: calc((100vw - 1120px) / 2);
  }
}

/*------------------------------------*/
/* COLLECTION - 🌟 Primitives */
/*------------------------------------*/
:root {
  /* colors */
  --colors-blue-100: #dcebe9;
  --colors-blue-200: #b8d7d3;
  --colors-blue-300: #8dbbb8;
  --colors-blue-400: #659c99;
  --colors-blue-50: #f4f9f8;
  --colors-blue-500: #4b817f;
  --colors-blue-600: #3a6766;
  --colors-blue-700: #2f4f4f;
  --colors-blue-800: #2b4444;
  --colors-blue-900: #273a3a;
  --colors-blue-950: #122121;
  --colors-dark-blue-100: #cde4fd;
  --colors-dark-blue-200: #91befe;
  --colors-dark-blue-300: #5392fd;
  --colors-dark-blue-400: #1c63fd;
  --colors-dark-blue-50: #ebf5ff;
  --colors-dark-blue-500: #023cd9;
  --colors-dark-blue-600: #02239c;
  --colors-dark-blue-700: #011160;
  --colors-dark-blue-800: #010f42;
  --colors-dark-blue-900: #00081e;
  --colors-dark-blue-950: #00050f;
  --colors-gray-100: #d0d3d7;
  --colors-gray-200: #babec4;
  --colors-gray-300: #a4aab1;
  --colors-gray-400: #8e959f;
  --colors-gray-50: #dbdde0;
  --colors-gray-500: #78818c;
  --colors-gray-600: #656d76;
  --colors-gray-700: #525860;
  --colors-gray-800: #3f444a;
  --colors-gray-900: #25282c;
  --colors-gray-950: #181a1d;
  --colors-green-100: #d9f2e3;
  --colors-green-200: #b6e4cc;
  --colors-green-300: #86cfad;
  --colors-green-400: #65bc96;
  --colors-green-50: #effaf4;
  --colors-green-500: #31986f;
  --colors-green-600: #217a58;
  --colors-green-700: #1b6148;
  --colors-green-800: #174e3a;
  --colors-green-900: #144031;
  --colors-green-950: #0a241c;
  --colors-orange-100: #feead6;
  --colors-orange-200: #fdd2ab;
  --colors-orange-300: #fbb176;
  --colors-orange-400: #f8843b;
  --colors-orange-50: #fff6ed;
  --colors-orange-500: #ef6f2a;
  --colors-orange-600: #e74b0f;
  --colors-orange-700: #bf370f;
  --colors-orange-800: #982d14;
  --colors-orange-900: #7a2714;
  --colors-orange-950: #421108;
  --colors-taas-blue-100: #c8e7fe;
  --colors-taas-blue-200: #96d0fe;
  --colors-taas-blue-300: #5eb8fd;
  --colors-taas-blue-400: #2ba2fc;
  --colors-taas-blue-50: #e6f4ff;
  --colors-taas-blue-500: #0387ed;
  --colors-taas-blue-600: #016bba;
  --colors-taas-blue-700: #024b83;
  --colors-taas-blue-800: #012d4e;
  --colors-taas-blue-900: #011828;
  --colors-taas-blue-950: #000c14;
  --colors-türkis-100: #cbfcf8;
  --colors-türkis-200: #97f8f2;
  --colors-türkis-300: #5bede9;
  --colors-türkis-400: #2ad7d7;
  --colors-türkis-50: #f0fdfc;
  --colors-türkis-500: #11b8bb;
  --colors-türkis-600: #0b989e;
  --colors-türkis-700: #0d7278;
  --colors-türkis-800: #105a5f;
  --colors-türkis-900: #124b4f;
  --colors-türkis-950: #032b30;
  /* numbers */
  --space-100: 2px;
  --space-200: 4px;
  --space-300: 8px;
  --space-400: 12px;
  --space-500: 16px;
  --space-600: 20px;
  --space-700: 32px;
  --space-800: 44px;
  --space-900: 64px;
  /* string */
  --subline: String value;
  --überschrift-2: Überschrift 2;
}

/*------------------------------------*/
/* COLLECTION - 🔗 Aliases */
/*------------------------------------*/
:root {
  /* colors */
  --theme-accent-accent: var(--colors-türkis-600, #0b989e);
  --theme-accent-accent-dark: var(--colors-türkis-700, #0d7278);
  --theme-accent-accent-darker: var(--colors-türkis-800, #105a5f);
  --theme-accent-accent-light: var(--colors-türkis-500, #11b8bb);
  --theme-accent-accent-lighter: var(--colors-türkis-400, #2ad7d7);
  --theme-accent-accent-lightest: var(--colors-türkis-100, #cbfcf8);
  --theme-error-error: var(--tailwind-rose-600, #e11d48);
  --theme-error-error-dark: var(--tailwind-rose-700, #be123c);
  --theme-error-error-darker: var(--tailwind-rose-800, #9f1239);
  --theme-error-error-light: var(--tailwind-rose-400, #fb7185);
  --theme-error-error-lighter: var(--tailwind-rose-200, #fecdd3);
  --theme-error-error-lightest: var(--tailwind-rose-50, #fff1f2);
  --theme-neutral-black: var(--tailwind-black, #000000);
  --theme-neutral-neutral: var(--tailwind-zinc-400, #a1a1aa);
  --theme-neutral-neutral-dark: var(--tailwind-zinc-600, #52525b);
  --theme-neutral-neutral-darker: var(--tailwind-zinc-800, #27272a);
  --theme-neutral-neutral-darkest: var(--tailwind-zinc-950, #09090b);
  --theme-neutral-neutral-light: var(--tailwind-zinc-300, #d4d4d8);
  --theme-neutral-neutral-lighter: var(--tailwind-zinc-100, #f4f4f5);
  --theme-neutral-neutral-lightest: var(--tailwind-zinc-50, #fafafa);
  --theme-neutral-white: var(--tailwind-white, #ffffff);
  --theme-notice-notice: var(--tailwind-sky-500, #0ea5e9);
  --theme-notice-notice-dark: var(--tailwind-sky-600, #0284c7);
  --theme-notice-notice-darker: var(--tailwind-sky-700, #0369a1);
  --theme-notice-notice-light: var(--tailwind-sky-400, #38bdf8);
  --theme-notice-notice-lighter: var(--tailwind-sky-200, #bae6fd);
  --theme-notice-notice-lightest: var(--tailwind-sky-50, #f0f9ff);
  --theme-primary-primary: var(--colors-gray-800, #3f444a);
  --theme-primary-primary-dark: var(--colors-gray-900, #25282c);
  --theme-primary-primary-darker: var(--colors-gray-950, #181a1d);
  --theme-primary-primary-light: var(--colors-gray-700, #525860);
  --theme-primary-primary-lighter: var(--colors-gray-600, #656d76);
  --theme-primary-primary-lightest: var(--colors-gray-500, #78818c);
  --theme-secondary-secondary: var(--tailwind-blue-500, #3b82f6);
  --theme-secondary-secondary-dark: var(--tailwind-blue-600, #2563eb);
  --theme-secondary-secondary-darker: var(--tailwind-blue-700, #1d4ed8);
  --theme-secondary-secondary-light: var(--tailwind-blue-400, #60a5fa);
  --theme-secondary-secondary-lighter: var(--tailwind-blue-300, #93c5fd);
  --theme-secondary-secondary-lightest: var(--tailwind-blue-50, #eff6ff);
  --theme-success-success: var(--tailwind-green-500, #22c55e);
  --theme-success-success-dark: var(--tailwind-green-600, #16a34a);
  --theme-success-success-darker: var(--tailwind-green-700, #15803d);
  --theme-success-success-light: var(--tailwind-green-400, #4ade80);
  --theme-success-success-lighter: var(--tailwind-green-200, #bbf7d0);
  --theme-success-success-lightest: var(--tailwind-green-50, #f0fdf4);
  --theme-warning-warning: var(--tailwind-orange-500, #f97316);
  --theme-warning-warning-dark: var(--tailwind-orange-600, #ea580c);
  --theme-warning-warning-darker: var(--tailwind-orange-700, #c2410c);
  --theme-warning-warning-light: var(--tailwind-orange-400, #fb923c);
  --theme-warning-warning-lighter: var(--tailwind-orange-200, #fed7aa);
  --theme-warning-warning-lightest: var(--tailwind-orange-50, #fff7ed);
  /* numbers */
  --radius-2xs: var(--space-100);
  --radius-xs: var(--space-200);
  --radius-sm: var(--space-300);
  --radius-md: var(--space-400);
  --radius-lg: var(--space-500);
  --radius-xl: var(--space-600);
  --radius-2xl: var(--space-700);
  --radius-3xl: var(--space-800);
  --radius-4xl: var(--space-900);
  --space-2xs: var(--space-100);
  --space-xs: var(--space-200);
  --space-sm: var(--space-300);
  --space-md: var(--space-400);
  --space-lg: var(--space-500);
  --space-xl: var(--space-600);
  --space-2xl: var(--space-700);
  --space-3xl: var(--space-800);
  --space-4xl: var(--space-900);
}

/*------------------------------------*/
/* COLLECTION - 🗺️ Responsive Tokens */
/*------------------------------------*/
:root {
  /* numbers - spacing */
  --components-abstand-extrasmall: 16px;
  --components-abstand-small: 32px;
  --components-abstand-medium: 64px;
  --components-abstand-large: 96px;
  --components-abstand-extralarge: 148px;
  --components-button-padding-y: var(--space-xl);
  --components-button-padding-x: var(--space-3xl);
  --components-input-radius: var(--radius-small);
  --components-input-font-size: 16px;
  --components-input-padding-y: 16px;
  --components-input-padding-x: 18px;
  --layout-outergap: var(--space-xl);
  --layout-grid-columns: 4px;
  --layout-grid-gutter: var(--space-xl);
  --layout-outergap: var(--space-xl);
  --layout-native-ui-height-bottom: 52px;
  --layout-native-ui-height-top: 137px;
  --layout-window-width: 390px;
  --layout-window-height: 844px;
  /* numbers */
  --components-box-padding-small: 16px;
  --components-box-padding-large: 24px;
  --components-box-padding-medium: 24px;
  --components-button-padding-y: 18px;
  --components-button-padding-x: 32px;
  --components-input-padding-y: 16px;
  --components-input-padding-x: 18px;
  --components-produktvorteil-icon-padding-top: 1px;
  --components-produktvorteil-gap: 12px;
  --components-radius-small: 8px;
  --components-radius-medium: 12px;
  --components-radius-large: 20px;
  --components-radius-rounded: 1000px;
  --font-default-lineheight: 1.25;
  --font-body-lineheight: 1.7999999523162842;
  --font-default-linegap: 20px;
  --font-linegap-linegap-extrasmall: var(--layout-space-extrasmall, 20px);
  --font-linegap-linegap-small: var(--layout-space-small, 32px);
  --font-linegap-linegap-medium: var(--layout-space-medium, 44px);
  --font-size-2xs: 11px;
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 17px;
  --font-size-h5: 18px;
  --font-size-h4: 20px;
  --font-size-h3: 24px;
  --font-size-h2: 28px;
  --font-size-h1: 44px;
  --font-weight-regular: 500;
  --font-weight-bold: 700;
  --layout-gap-list: 10px;
  --layout-gap-text: 32px;
  --layout-grid-column-width: 0px;
  --layout-grid-inner-window-gap: 0px;
  --layout-grid-columns: 4px;
  --layout-grid-column-gap: 20px;
  --layout-grid-outergap: 24px;
  --layout-grid-inner: 360px;
  --layout-grid-inner-width-padding: 1184px;
  --layout-native-ui-height-bottom: 52px;
  --layout-native-ui-height-top: 134px;
  --layout-space-extraextrasmall: 4px;
  --layout-space-extrasmall: 8px;
  --layout-space-small: 16px;
  --layout-space-medium: 22px;
  --layout-space-large: 40px;
  --layout-space-extralarge: 80px;
  --layout-space-extraextralarge: 160px;
  --layout-window-min-width: 300px;
  --layout-window-width: 390px;
  --layout-window-height: 844px;
  --layout-wrapper: 1120px;
  /* string */
  --font-family-body: "Manrope";
  --font-family-headings: "Halfre";
  /* desktop */
}
@media only screen and (min-width: 768px) {
  :root {
    /* numbers spacing */
    --components-abstand-extrasmall: 20px;
    --components-abstand-medium: 80px;
    --components-abstand-small: 80px;
    --components-abstand-large: 160px;
    --components-abstand-extralarge: 200px;
    --components-button-padding-y: var(--space-xl);
    --components-button-padding-x: var(--space-4xl);
    --components-input-radius: var(--radius-small);
    --components-input-font-size: 16px;
    --components-input-padding-y: 18px;
    --components-input-padding-x: 20px;
    --layout-outergap: var(--space-2xl);
    --layout-grid-gutter: var(--space-xl);
    --layout-outergap: var(--space-2xl);
    --layout-native-ui-height-bottom: 0px;
    --layout-native-ui-height-top: 136px;
    --layout-window-height: 982px;
    --layout-window-width: 1512px;
    /* numbers */
    --components-box-padding-small: 20px;
    --components-box-padding-medium: 32px;
    --components-box-padding-large: 48px;
    --components-button-padding-y: 18px;
    --components-button-padding-x: 32px;
    --components-input-padding-y: 18px;
    --components-input-padding-x: 20px;
    --components-produktvorteil-icon-padding-top: 3.5px;
    --components-produktvorteil-gap: 16px;
    --components-radius-medium: 12px;
    --components-radius-small: 12px;
    --components-radius-large: 24px;
    --components-radius-rounded: 1000px;
    --font-default-lineheight: 1.25;
    --font-body-lineheight: 1.7999999523162842;
    --font-default-linegap: 20px;
    --font-linegap-linegap-extrasmall: var(--layout-space-extrasmall, 20px);
    --font-linegap-linegap-small: var(--layout-space-small, 32px);
    --font-linegap-linegap-medium: var(--layout-space-medium, 44px);
    --font-size-2xs: 12px;
    --font-size-xs: 14px;
    --font-size-sm: 16px;
    --font-size-md: 18px;
    --font-size-lg: 20px;
    --font-size-h5: 22px;
    --font-size-h4: 28px;
    --font-size-h3: 36px;
    --font-size-h2: 42px;
    --font-size-h1: 54px;
    --font-weight-regular: 500;
    --font-weight-bold: 700;
    --layout-gap-list: var(--layout-grid-column-gap, 20px);
    --layout-gap-text: 48px;
    --layout-grid-columns: 12px;
    --layout-grid-column-gap: 20px;
    --layout-grid-outergap: 32px;
    --layout-grid-column-width: 95px;
    --layout-grid-inner-window-gap: 196px;
    --layout-grid-inner: 1120px;
    --layout-grid-inner-width-padding: 1184px;
    --layout-native-ui-height-bottom: 0px;
    --layout-native-ui-height-top: 136px;
    --layout-space-extraextrasmall: 10px;
    --layout-space-extrasmall: 20px;
    --layout-space-small: 32px;
    --layout-space-medium: 44px;
    --layout-space-large: 64px;
    --layout-space-extralarge: 160px;
    --layout-space-extraextralarge: 200px;
    --layout-window-min-width: 768px;
    --layout-window-height: 982px;
    --layout-window-width: 1512px;
    --font-family-body: "Manrope";
    --font-family-headings: "Halfre";
  }
}

/*------------------------------------*/
/* COLLECTION - 🗺️ Theme Tokens */
/*------------------------------------*/
:root {
  /* colors */
  --divider: var(--tailwind-zinc-100, #f4f4f5);
  --divider-on-dark: var(--colors-gray-800, #3f444a);
  --border-accent: #e7f5f5;
  --border-box: var(--tailwind-zinc-50, #fafafa);
  --border-divider: var(--tailwind-zinc-300, #d4d4d8);
  --border-error: var(--tailwind-rose-200, #fecdd3);
  --border-input: var(--tailwind-zinc-300, #d4d4d8);
  --border-input-error: var(--tailwind-rose-600, #e11d48);
  --border-input-focus: var(--colors-türkis-600, #0b989e);
  --border-input-hover: var(--colors-türkis-400, #2ad7d7);
  --border-notice: var(--tailwind-sky-200, #bae6fd);
  --border-selector: var(--tailwind-zinc-400, #a1a1aa);
  --border-selector-active: var(--colors-türkis-600, #0b989e);
  --border-selector-hover: var(--colors-türkis-600, #0b989e);
  --border-selector-press: var(--colors-türkis-600, #0b989e);
  --border-success: var(--tailwind-green-200, #bbf7d0);
  --border-warning: var(--tailwind-orange-200, #fed7aa);
  --button-accent-action: var(--colors-türkis-800, #105a5f);
  --button-accent-default: var(--colors-türkis-600, #0b989e);
  --button-accent-disabled: var(--colors-türkis-400, #2ad7d7);
  --button-accent-focus: var(--colors-türkis-700, #0d7278);
  --button-accent-hover: var(--colors-türkis-700, #0d7278);
  --button-neutral-action: var(--tailwind-zinc-100, #f4f4f5);
  --button-neutral-default: var(--tailwind-white, #ffffff);
  --button-neutral-disabled: var(--tailwind-zinc-400, #a1a1aa);
  --button-neutral-focus: var(--tailwind-zinc-50, #fafafa);
  --button-neutral-hover: var(--tailwind-zinc-50, #fafafa);
  --button-primary-action: var(--colors-gray-950, #181a1d);
  --button-primary-default: var(--colors-gray-800, #3f444a);
  --button-primary-disabled: var(--colors-gray-500, #78818c);
  --button-primary-focus: var(--colors-gray-900, #25282c);
  --button-primary-hover: var(--colors-gray-900, #25282c);
  --icon-accent: var(--colors-türkis-600, #0b989e);
  --icon-error: var(--tailwind-rose-600, #e11d48);
  --icon-neutral: var(--colors-gray-800, #3f444a);
  --icon-neutral-on-dark: var(--tailwind-white, #ffffff);
  --icon-neutral-on-disabled: var(--tailwind-zinc-600, #52525b);
  --icon-notice: var(--tailwind-sky-500, #0ea5e9);
  --icon-primary: var(--colors-gray-800, #3f444a);
  --icon-secondary: var(--tailwind-blue-500, #3b82f6);
  --icon-success: var(--tailwind-green-500, #22c55e);
  --icon-warning: var(--tailwind-orange-500, #f97316);
  --surface-accent: #e7f5f5;
  --surface-action: var(--colors-türkis-600, #0b989e);
  --surface-action-hover: var(--colors-türkis-700, #0d7278);
  --surface-box: var(--tailwind-zinc-100, #f4f4f5);
  --surface-dark: var(--colors-gray-900, #25282c);
  --surface-disabled: var(--tailwind-zinc-400, #a1a1aa);
  --surface-error: var(--tailwind-rose-50, #fff1f2);
  --surface-input: var(--tailwind-white, #ffffff);
  --surface-input-hover: var(--colors-türkis-100, #cbfcf8);
  --surface-modal: var(--tailwind-zinc-50, #fafafa);
  --surface-notice: var(--tailwind-sky-50, #f0f9ff);
  --surface-page: var(--tailwind-white, #ffffff);
  --surface-primary: var(--colors-gray-800, #3f444a);
  --surface-secondary: var(--tailwind-blue-500, #3b82f6);
  --surface-selector: var(--tailwind-white, #ffffff);
  --surface-selector-active: var(--colors-türkis-600, #0b989e);
  --surface-selector-hover: var(--colors-türkis-100, #cbfcf8);
  --surface-selector-press: var(--colors-türkis-400, #2ad7d7);
  --surface-success: var(--tailwind-green-50, #f0fdf4);
  --surface-warning: var(--tailwind-orange-50, #fff7ed);
  --text-action: var(--colors-türkis-600, #0b989e);
  --text-action-hover: var(--colors-türkis-700, #0d7278);
  --text-action-press: var(--colors-türkis-800, #105a5f);
  --text-body: var(--tailwind-zinc-600, #52525b);
  --text-body-on-dark: var(--tailwind-zinc-300, #d4d4d8);
  --text-disabled: var(--tailwind-zinc-300, #d4d4d8);
  --text-error: var(--tailwind-rose-600, #e11d48);
  --text-headings: var(--colors-gray-800, #3f444a);
  --text-headings-on-dark: var(--tailwind-white, #ffffff);
  --text-highlight: var(--colors-türkis-600, #0b989e);
  --text-highlight-on-dark: var(--colors-türkis-500, #11b8bb);
  --text-notice: var(--tailwind-sky-500, #0ea5e9);
  --text-on-action: var(--tailwind-white, #ffffff);
  --text-on-disabled: var(--tailwind-zinc-600, #52525b);
  --text-placeholder: var(--tailwind-zinc-400, #a1a1aa);
  --text-success: var(--tailwind-green-500, #22c55e);
  --text-warning: var(--tailwind-orange-500, #f97316);
}

/*------------------------------------*/
/* NOTE - Tailwind colors */
/*------------------------------------*/
:root {
  --tailwind-zinc-100: #f4f4f5;
  --tailwind-zinc-200: #e4e4e7;
  --tailwind-zinc-300: #d4d4d8;
  --tailwind-zinc-400: #a1a1aa;
  --tailwind-zinc-50: #fafafa;
  --tailwind-zinc-500: #71717a;
  --tailwind-zinc-600: #52525b;
  --tailwind-zinc-700: #3f3f46;
  --tailwind-zinc-800: #27272a;
  --tailwind-zinc-900: #18181b;
  --tailwind-zinc-950: #09090b;
  --tailwind-rose-100: #ffe4e6;
  --tailwind-rose-200: #fecdd3;
  --tailwind-rose-300: #fda4af;
  --tailwind-rose-400: #fb7185;
  --tailwind-rose-50: #fff1f2;
  --tailwind-rose-500: #f43f5e;
  --tailwind-rose-600: #e11d48;
  --tailwind-rose-700: #be123c;
  --tailwind-rose-800: #9f1239;
  --tailwind-rose-900: #881337;
  --tailwind-rose-950: #4c0519;
  --tailwind-sky-100: #e0f2fe;
  --tailwind-sky-200: #bae6fd;
  --tailwind-sky-300: #7dd3fc;
  --tailwind-sky-400: #38bdf8;
  --tailwind-sky-50: #f0f9ff;
  --tailwind-sky-500: #0ea5e9;
  --tailwind-sky-600: #0284c7;
  --tailwind-sky-700: #0369a1;
  --tailwind-sky-800: #075985;
  --tailwind-sky-900: #0c4a6e;
  --tailwind-sky-950: #082f49;
  --tailwind-green-100: #dcfce7;
  --tailwind-green-200: #bbf7d0;
  --tailwind-green-300: #86efac;
  --tailwind-green-400: #4ade80;
  --tailwind-green-50: #f0fdf4;
  --tailwind-green-500: #22c55e;
  --tailwind-green-600: #16a34a;
  --tailwind-green-700: #15803d;
  --tailwind-green-800: #166534;
  --tailwind-green-900: #14532d;
  --tailwind-green-950: #052e16;
  --tailwind-blue-100: #dbeafe;
  --tailwind-blue-200: #bfdbfe;
  --tailwind-blue-300: #93c5fd;
  --tailwind-blue-400: #60a5fa;
  --tailwind-blue-50: #eff6ff;
  --tailwind-blue-500: #3b82f6;
  --tailwind-blue-600: #2563eb;
  --tailwind-blue-700: #1d4ed8;
  --tailwind-blue-800: #1e40af;
  --tailwind-blue-900: #1e3a8a;
  --tailwind-blue-950: #172554;
  --tailwind-orange-100: #ffedd5;
  --tailwind-orange-200: #fed7aa;
  --tailwind-orange-300: #fdba74;
  --tailwind-orange-400: #fb923c;
  --tailwind-orange-50: #fff7ed;
  --tailwind-orange-500: #f97316;
  --tailwind-orange-600: #ea580c;
  --tailwind-orange-700: #c2410c;
  --tailwind-orange-800: #9a3412;
  --tailwind-orange-900: #7c2d12;
  --tailwind-orange-950: #431407;
  --tailwind-white: #fff;
  --tailwind-black: #000;
}

/*------------------------------------*\
 * SASS Mixins and Utilities
 * 
 * Mixins:
 * ───────────
 * 
 * 1. fluid-type
 *    ─ Purpose: Dynamically adjust the font size based on the viewport width (min and max)
 * 
 * 2. pseudo
 *    ─ Purpose: Default properties for pseudo-elements ::before and ::after and display them.
 * 
 * 3. flex
 *    ─ Purpose: Flexbox configurator sets basic styling for flexbox containers and centers the content.
 * 
 * 4. pos
 *    ─ Purpose: Shortcode for absolute positioning of items and centering elements or images.
 * 
 * 5. hide-scrollbar
 *    ─ Purpose: Cross-browser properties to hide the scrollbar.
 * 
 * 6. background-image
 *    ─ Purpose: Center background images.
 * 
 * 7. bp-higher
 *    ─ Purpose: Breakpoint for min-width device width / mobile first.
 * 
 * 8. bp-lower
 *    ─ Purpose: Breakpoint for max-width device width.
\*------------------------------------*/
/*------------------------------------*\
  @mixin fluid-type
  Dynamically adjusts the font size based on the viewport width (min and max).

  @param {Number} $min-font-size - Minimum font size (default: 12px)
  @param {Number} $max-font-size - Maximum font size (default: 21px)
  @param {Number} $lower-range - Lower boundary for the viewport width (default: $mobile) 
  @param {Number} $upper-range - Upper boundary for the viewport width  (default: $screen) 
  @example
  @include fluid-type(14px, 18px, 400px, 1200px);
\*------------------------------------*/
/*------------------------------------*\
  @mixin pseudo
  Adds inner styles to an element.

  @param none

  @example
  @include inner;
\*------------------------------------*/
/*------------------------------------*\
  @mixin pseudo
  Provides default properties for pseudo-elements ::before and ::after.

  @param {String} $display - Display type (default: block)
  @param {String} $pos - Position (default: absolute)
  @param {String} $content - Content (default: empty)
  @example
  @include pseudo(block, absolute, 'content');
\*------------------------------------*/
/*------------------------------------*\
  @mixin flex
  Configures basic styling for flexbox containers.

  @param {String} $variant - Flexbox direction and alignment (default: empty)
  @param {Number} $gap - Gap between flexbox items (default: 0px)
  @example
  @include flex('row', 10px);
\*------------------------------------*/
/*------------------------------------*\
  @mixin pos
  Provides absolute positioning of items.

  @param {String} $variant - Special positioning variants like 'center' or 'cover'
  @example
  @include pos('center');
\*------------------------------------*/
/*------------------------------------*\
  @mixin hide-scrollbar
  Hides the scrollbar across browsers.

  @param none

  @example
  @include hide-scrollbar;
\*------------------------------------*/
/*------------------------------------*\
  @mixin background-image
  Centers background images.

  @param {String} $image - Background image URL
  @example
  @include background-image(url('path/to/image.jpg'));
\*------------------------------------*/
/*------------------------------------*\
  @mixin bp-higher
  Breakpoint for min-width device width (mobile first).

  @param {Number} $variable - Breakpoint value
  @example
  @include bp-higher(768px) { ... }
\*------------------------------------*/
/*------------------------------------*\
  @mixin bp-lower
  Breakpoint for max-width device width.

  @param {Number} $variable - Breakpoint value
  @example
  @include bp-lower(768px) { ... }
\*------------------------------------*/
/*------------------------------------*/
/* SECTION - NEW */
/*------------------------------------*/
/*------------------------------------*/
/* SECTION - Editor */
/*------------------------------------*/
.hamburger {
  padding: 0px;
  display: inline-block;
  cursor: pointer;
  outline: none;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  cursor: pointer;
  float: right;
  margin-right: 0px;
  margin-top: 0px;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: var(--icon-accent, #0b989e);
  border-radius: 3.5px;
}

.hamburger-box {
  width: 35px;
  height: 24px;
  display: block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 35px;
  height: 1.5px;
  background-color: var(--icon-neutral, #3f444a);
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}

.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/**
 * Print Stylesheet fuer Deinewebsite.de
* @version         1.0
* @lastmodified    16.06.2016
*/
@media print {
  /* Inhaltsbreite setzen, Floats und Margins aufheben */
  /* Achtung: Die Klassen und IDs variieren von Theme zu Theme. Hier also eigene Klassen setzen */
  #content, #page {
    width: 100%;
    margin: 0;
    float: none;
  }
  /** Seitenränder einstellen */
  @page {
    margin: 2cm;
  }
  /* Font auf 16px/13pt setzen, Background auf Weiß und Schrift auf Schwarz setzen.*/
  /* Das spart Tinte */
  body {
    font: 13pt Georgia, "Times New Roman", Times, serif;
    line-height: 1.3;
    background: #fff !important;
    color: #000;
  }
  h1 {
    font-size: 24pt;
  }
  h2, h3, h4 {
    font-size: 14pt;
    margin-top: 25px;
  }
  /* Alle Seitenumbrüche definieren */
  a {
    page-break-inside: avoid;
  }
  blockquote {
    page-break-inside: avoid;
  }
  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
    page-break-inside: avoid;
  }
  img {
    page-break-inside: avoid;
    page-break-after: avoid;
  }
  table, pre {
    page-break-inside: avoid;
  }
  ul, ol, dl {
    page-break-before: avoid;
  }
  /* Linkfarbe und Linkverhalten darstellen */
  a:link, a:visited, a {
    background: transparent;
    color: #520;
    font-weight: bold;
    text-decoration: underline;
    text-align: left;
  }
  a {
    page-break-inside: avoid;
  }
  a[href^=http]:after {
    content: " <" attr(href) "> ";
  }
  a:after > img {
    content: "";
  }
  article a[href^="#"]:after {
    content: "";
  }
  a:not(:local-link):after {
    content: " <" attr(href) "> ";
  }
  /**
   * Eingebundene Videos verschwinden lassen und den Whitespace der iframes auf null reduzieren.
   */
  .entry iframe, ins {
    display: none;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    line-height: 0pt !important;
    white-space: nowrap;
  }
  .embed-youtube, .embed-responsive {
    position: absolute;
    height: 0;
    overflow: hidden;
  }
  /* Unnötige Elemente ausblenden für den Druck */
  #header-widgets, nav, aside.mashsb-container,
  .sidebar, .mashshare-top, .mashshare-bottom,
  .content-ads, .make-comment, .author-bio,
  .heading, .related-posts, #decomments-form-add-comment,
  #breadcrumbs, #footer, .post-byline, .meta-single,
  .site-title img, .post-tags, .readability {
    display: none;
  }
  /* Benutzerdefinierte Nachrichten vor und nach dem Inhalt einfügen */
  .entry:after {
    content: " Alle Rechte vorbehalten. (c) 2014 - 2016 TechBrain - techbrain.de";
    color: #999 !important;
    font-size: 1em;
    padding-top: 30px;
  }
  #header:before {
    content: " Vielen herzlichen Dank für das Ausdrucken unseres Artikels. Wir hoffen, dass auch andere Artikel von uns Ihr Interesse wecken können.";
    color: #777 !important;
    font-size: 1em;
    padding-top: 30px;
    text-align: center !important;
  }
  /* Wichtige Elemente definieren */
  p, address, li, dt, dd, blockquote {
    font-size: 100%;
  }
  /* Zeichensatz fuer Code Beispiele */
  code, pre {
    font-family: "Courier New", Courier, mono;
  }
  ul, ol {
    list-style: square;
    margin-left: 18pt;
    margin-bottom: 20pt;
  }
  li {
    line-height: 1.6em;
  }
}
/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/
.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 0px auto;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}
a img.alignnone {
  margin: 5px 20px 20px 0;
}
a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}
a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  padding: 5px 3px 10px;
  text-align: center;
}
.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}
.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption .wp-caption-text,
.gallery-caption {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

/*------------------------------------*\
    FONTS.SCSS
    Font Smoothing and Custom Fonts
\*------------------------------------*/
html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

@-moz-document url-prefix() {
  body {
    font-weight: lighter !important;
  }
}
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/ManropeExtraLight-Regular.woff2") format("woff2"), url("../fonts/ManropeExtraLight-Regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/ManropeExtraLight-Medium.woff2") format("woff2"), url("../fonts/ManropeExtraLight-Medium.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/ManropeExtraLight-SemiBold.woff2") format("woff2"), url("../fonts/ManropeExtraLight-SemiBold.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Halfre";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Halfre-Regular.woff2") format("woff2"), url("../fonts/Halfre-Regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/*------------------------------------*\
	TYPOGRAPHY.scss

	Basic stylings for text elements.

	1. Text (body, p)
	   ─ Purpose: Styles for HTML paragraphs, including padding and margin.

	2. Headings (h1-h6)
	   ─ Note: Utilizes the fluid-type mixin for responsive font sizes.

	3. Links (a)
	   ─ Purpose: Styles for HTML links, including hover and focus states.

	4. Lists (ul)
	   ─ Purpose: Styles for HTML lists, including padding and margin.
\*------------------------------------*/
/*------------------------------------*/
/* SECTION - Text */
/*------------------------------------*/
body {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
}
@media screen and (max-width: 520px) {
  body {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  body {
    font-size: 18px;
  }
}

p {
  padding: 16px 0 0;
  margin: 0px;
  line-height: var(--font-body-lineheight);
}

/*------------------------------------*/
/* SECTION - Headings */
/*------------------------------------*/
h1,
.h1,
.--show-as-h1 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(44px + 10 * (100vw - 520px) / 600);
  line-height: var(--font-line-height-3xl, 60px); /* 111.111% -> line-height: 125%; /* 55px */
}
@media screen and (max-width: 520px) {
  h1,
  .h1,
  .--show-as-h1 {
    font-size: 44px;
  }
}
@media screen and (min-width: 1120px) {
  h1,
  .h1,
  .--show-as-h1 {
    font-size: 54px;
  }
}

h2,
.h2,
.--show-as-h2 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(28px + 14 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h2,
  .h2,
  .--show-as-h2 {
    font-size: 28px;
  }
}
@media screen and (min-width: 1120px) {
  h2,
  .h2,
  .--show-as-h2 {
    font-size: 42px;
  }
}

h3,
.h3,
.--show-as-h3 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(24px + 12 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h3,
  .h3,
  .--show-as-h3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 1120px) {
  h3,
  .h3,
  .--show-as-h3 {
    font-size: 36px;
  }
}

h4,
.h4,
.--show-as-h4 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h4,
  .h4,
  .--show-as-h4 {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  h4,
  .h4,
  .--show-as-h4 {
    font-size: 28px;
  }
}

.subline-h4 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
  color: var(--text-highlight, #0b989e);
}
@media screen and (max-width: 520px) {
  .subline-h4 {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  .subline-h4 {
    font-size: 28px;
  }
}

h5,
.h5,
.--show-as-h5 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(18px + 4 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h5,
  .h5,
  .--show-as-h5 {
    font-size: 18px;
  }
}
@media screen and (min-width: 1120px) {
  h5,
  .h5,
  .--show-as-h5 {
    font-size: 22px;
  }
}

h6,
.h6,
.--show-as-h4 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(14px + 2 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h6,
  .h6,
  .--show-as-h4 {
    font-size: 14px;
  }
}
@media screen and (min-width: 1120px) {
  h6,
  .h6,
  .--show-as-h4 {
    font-size: 16px;
  }
}

.subline-h6 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(14px + 2 * (100vw - 520px) / 600);
  color: var(--text-highlight, #0b989e);
}
@media screen and (max-width: 520px) {
  .subline-h6 {
    font-size: 14px;
  }
}
@media screen and (min-width: 1120px) {
  .subline-h6 {
    font-size: 16px;
  }
}

.subline {
  color: var(--text-highlight, #0b989e);
  /* Überschrift/Subline */
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-md, 18px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 700);
  line-height: 125%; /* 22.5px */
}

.subline + :is(h2, h3, h4) {
  padding-top: 8px;
}

/*------------------------------------*/
/* SECTION - Links */
/*------------------------------------*/
a {
  color: var(--text-highlight, #0b989e);
  text-decoration: underline;
  text-underline-position: under;
  transition: var(--transition);
}
a:hover {
  color: var(--colors-türkis-700, #0d7278);
}
a:focus, a:hover, a:active {
  outline: 0;
}

/*------------------------------------*/
/* SECTION - Hyphens */
/*------------------------------------*/
@media (max-width: 768px) {
  h1,
  .h1,
  .--show-as-h1,
  h2,
  .h2,
  .--show-as-h2,
  h3,
  .h3,
  .--show-as-h3,
  h4,
  .h4,
  .--show-as-h4,
  h5,
  .h5,
  .--show-as-h5,
  h6,
  .h6,
  .--show-as-h6,
  p,
  a,
  b,
  span {
    hyphens: auto;
  }
}
/*------------------------------------*/
/* SECTION - Lists */
/*------------------------------------*/
.wp-block-group ul,
ul.ul {
  --wv-ul-marker-size: 10px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 14px;
  list-style: none;
}
.wp-block-group ul li,
ul.ul li {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  padding-left: calc(var(--wv-ul-marker-size) + 20px);
  position: relative;
  text-align: left;
}
@media screen and (max-width: 520px) {
  .wp-block-group ul li,
  ul.ul li {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .wp-block-group ul li,
  ul.ul li {
    font-size: 18px;
  }
}
.wp-block-group ul li:before,
ul.ul li:before {
  content: "";
  display: block;
  position: absolute;
  width: var(--wv-ul-marker-size);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='5' cy='5' r='2' fill='%230B989E'/%3E%3Ccircle cx='5' cy='5' r='4.55' stroke='%230B989E' stroke-width='0.9'/%3E%3C/svg%3E%0A") !important;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}

/*------------------------------------*/
/* SECTION - Text styles */
/*------------------------------------*/
.text-highlighted {
  color: var(--button-accent-action);
}

/*------------------------------------*\
    GLOBALS.SCSS
    Stylings for the whole page and utility and extra classes
\*------------------------------------*/
.acf-block-preview *,
.acf-block-preview *:after,
.acf-block-preview *:before,
body.page *,
body.page *:after,
body.page *:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

html {
  font-size: 100%;
}

/* clear */
.clear:before,
.clear:after {
  content: " ";
  display: table;
}

.clear:after {
  clear: both;
}

.clear {
  *zoom: 1;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

input:focus {
  outline: 0;
}

.text-left,
.alignleft,
.has-text-align-left {
  text-align: left !important;
}

.text-center,
.aligncenter,
.has-text-align-center {
  text-align: center !important;
}

.text-right,
.alignright,
.has-text-align-right {
  text-align: right !important;
}

.blocksatz {
  text-align: justify !important;
}

hr {
  margin: 40px 0;
  border-color: var(--border-box);
}

/*------------------------------------*\
    Formatting
\*------------------------------------*/
.wp-block-image {
  padding-top: var(--font-default-linegap);
}

.wp-block-quote {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  padding-left: 25px;
  margin: 20px 0;
  border-left: 2px solid var(--text-headings, #3f444a);
}
@media screen and (max-width: 520px) {
  .wp-block-quote {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .wp-block-quote {
    font-size: 18px;
  }
}
.wp-block-quote > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.wp-block-quote strong {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(18px + 4 * (100vw - 520px) / 600);
  color: var(--text-headings, #3f444a);
}
@media screen and (max-width: 520px) {
  .wp-block-quote strong {
    font-size: 18px;
  }
}
@media screen and (min-width: 1120px) {
  .wp-block-quote strong {
    font-size: 22px;
  }
}

/*------------------------------------*\
    Spaces
\*------------------------------------*/
.space {
  margin-bottom: var(--components-abstand-medium);
}
.space-extrasmall {
  margin-bottom: var(--components-abstand-extrasmall);
}
.space-small {
  margin-bottom: var(--components-abstand-small);
}
.space-medium {
  margin-bottom: var(--components-abstand-medium);
}
.space-large {
  margin-bottom: var(--components-abstand-large);
}
.space-extralarge {
  margin-bottom: var(--components-abstand-extralarge);
}

/*------------------------------------*\
    Group
\*------------------------------------*/
.wp-block-group.--background {
  background: var(--surface-dark);
  width: 100%;
  max-width: unset;
}
.wp-block-group.--background .wp-block-group__inner-container {
  width: calc(100% - 2 * var(--layout-outergap));
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
}
.wp-block-group.--background .wp-block-group__inner-container > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.wp-block-group.--background h1,
.wp-block-group.--background .h1,
.wp-block-group.--background .--show-as-h1,
.wp-block-group.--background h2,
.wp-block-group.--background .h2,
.wp-block-group.--background .--show-as-h2,
.wp-block-group.--background h3,
.wp-block-group.--background .h3,
.wp-block-group.--background .--show-as-h3,
.wp-block-group.--background h4,
.wp-block-group.--background .h4,
.wp-block-group.--background .--show-as-h4,
.wp-block-group.--background h5,
.wp-block-group.--background .h5,
.wp-block-group.--background .--show-as-h5,
.wp-block-group.--background h6,
.wp-block-group.--background .h6,
.wp-block-group.--background .--show-as-h6 {
  color: var(--text-headings-on-dark);
}
.wp-block-group.--background p,
.wp-block-group.--background li {
  color: var(--text-body-on-dark);
}
.wp-block-group.--margin-top-extrasmall {
  margin-top: var(--components-abstand-extrasmall);
}
.wp-block-group.--margin-top-small {
  margin-top: var(--components-abstand-small);
}
.wp-block-group.--margin-top-medium {
  margin-top: var(--components-abstand-medium);
}
.wp-block-group.--margin-top-large {
  margin-top: var(--components-abstand-large);
}
.wp-block-group.--margin-top-extralarge {
  margin-top: var(--components-abstand-extralarge);
}
.wp-block-group.--margin-bottom-extrasmall {
  margin-bottom: var(--components-abstand-extrasmall);
}
.wp-block-group.--margin-bottom-small {
  margin-bottom: var(--components-abstand-small);
}
.wp-block-group.--margin-bottom-medium {
  margin-bottom: var(--components-abstand-medium);
}
.wp-block-group.--margin-bottom-large {
  margin-bottom: var(--components-abstand-large);
}
.wp-block-group.--margin-bottom-extralarge {
  margin-bottom: var(--components-abstand-extralarge);
}
.wp-block-group.--padding-top-extrasmall {
  padding-top: var(--components-abstand-extrasmall);
}
.wp-block-group.--padding-top-small {
  padding-top: var(--components-abstand-small);
}
.wp-block-group.--padding-top-medium {
  padding-top: var(--components-abstand-medium);
}
.wp-block-group.--padding-top-large {
  padding-top: var(--components-abstand-large);
}
.wp-block-group.--padding-top-extralarge {
  padding-top: var(--components-abstand-extralarge);
}
.wp-block-group.--padding-bottom-extrasmall {
  padding-bottom: var(--components-abstand-extrasmall);
}
.wp-block-group.--padding-bottom-small {
  padding-bottom: var(--components-abstand-small);
}
.wp-block-group.--padding-bottom-medium {
  padding-bottom: var(--components-abstand-medium);
}
.wp-block-group.--padding-bottom-large {
  padding-bottom: var(--components-abstand-large);
}
.wp-block-group.--padding-bottom-extralarge {
  padding-bottom: var(--components-abstand-extralarge);
}

/*------------------------------------*\
    Grid elements
\*------------------------------------*/
.allcont {
  padding: 0px;
  display: block;
}

.inner,
.wp-block-group {
  width: calc(100% - 2 * var(--layout-outergap));
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
}

.wp-block-group .inner.resetInner,
.wp-block-group .wp-block-group {
  width: 100%;
}

.gridrow,
.wp-block-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  column-gap: var(--layout-grid-gutter);
  row-gap: var(--font-default-linegap);
  flex-wrap: wrap;
  width: 100%;
  margin: 0px auto;
}
.gridrow > .col,
.gridrow .wp-block-column,
.wp-block-columns > .col,
.wp-block-columns .wp-block-column {
  width: 100%;
}

/* reverseCol */
.reverseCol {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

/* align col */
.align-center,
.are-vertically-aligned-center {
  align-items: center;
}

.is-vertically-aligned-center {
  align-self: center;
}

.wp-block-columns.are-vertically-aligned-top {
  align-items: flex-start;
}

.is-vertically-aligned-top {
  align-self: flex-start;
}

.are-vertically-aligned-bottom {
  align-items: flex-end;
}

.is-vertically-aligned-bottom {
  align-self: flex-end;
}

@media all and (max-width: 768px) {
  /* reverseCol */
  .reverseCol .col + .col,
  .reverseCol .wp-block-column + .wp-block-column {
    margin-top: 10px;
  }
}
.gray-background {
  width: 100%;
  padding: calc(--components-abstand-large - var(--font-default-linegap)) 0px var(--components-abstand-large);
}

/*------------------------------------*\
    Call-To-Action's
\*------------------------------------*/
p.cta-grp {
  width: 100%;
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: var(--space-sm) var(--space-md);
}

.acf-block-preview a.button,
.acf-block-preview button:not(.hamburger),
.acf-block-preview input[type=submit],
body.page a.button,
body.page button:not(.hamburger),
body.page input[type=submit] {
  all: unset;
  display: inline-block;
  text-decoration: none;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  text-align: center;
  outline: none;
  border: none;
  transition: var(--transition);
  transition-property: background;
  box-sizing: border-box;
  padding: var(--components-button-padding-y, 18px) var(--components-button-padding-x, 32px);
  font-size: calc(14px + 2 * (100vw - 520px) / 600);
  border-radius: var(--components-radius-rounded, 1000px);
  color: var(--text-on-action, #fff);
  background: var(--button-primary-default);
  border: 2px solid var(--button-primary-default);
}
@media screen and (max-width: 520px) {
  .acf-block-preview a.button,
  .acf-block-preview button:not(.hamburger),
  .acf-block-preview input[type=submit],
  body.page a.button,
  body.page button:not(.hamburger),
  body.page input[type=submit] {
    font-size: 14px;
  }
}
@media screen and (min-width: 1120px) {
  .acf-block-preview a.button,
  .acf-block-preview button:not(.hamburger),
  .acf-block-preview input[type=submit],
  body.page a.button,
  body.page button:not(.hamburger),
  body.page input[type=submit] {
    font-size: 16px;
  }
}
.acf-block-preview a.button:hover,
.acf-block-preview button:not(.hamburger):hover,
.acf-block-preview input[type=submit]:hover,
body.page a.button:hover,
body.page button:not(.hamburger):hover,
body.page input[type=submit]:hover {
  background: var(--button-primary-hover, #25282c);
  cursor: pointer;
}
.acf-block-preview a.button:focus,
.acf-block-preview button:not(.hamburger):focus,
.acf-block-preview input[type=submit]:focus,
body.page a.button:focus,
body.page button:not(.hamburger):focus,
body.page input[type=submit]:focus {
  transition: none;
  background: var(--button-primary-focus, #25282c);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow);
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
  	var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
  	calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(236 72 153 / var(--tw-ring-opacity));
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: white;
  --tw-ring-inset: ;
  --tw-ring-color: var(--button-primary-focus, #002651) !important;
}
.acf-block-preview a.button:active,
.acf-block-preview button:not(.hamburger):active,
.acf-block-preview input[type=submit]:active,
body.page a.button:active,
body.page button:not(.hamburger):active,
body.page input[type=submit]:active {
  transition: none;
  background: var(--button-primary-action, #181a1d);
}
.acf-block-preview a.button:disabled,
.acf-block-preview button:not(.hamburger):disabled,
.acf-block-preview input[type=submit]:disabled,
body.page a.button:disabled,
body.page button:not(.hamburger):disabled,
body.page input[type=submit]:disabled {
  background: var(--button-primary-disabled, #78818c);
  color: var(--text-on-disabled, #52525b);
}
.acf-block-preview a.button.--color-main, .acf-block-preview a.button.--color-primary,
.acf-block-preview button:not(.hamburger).--color-main,
.acf-block-preview button:not(.hamburger).--color-primary,
.acf-block-preview input[type=submit].--color-main,
.acf-block-preview input[type=submit].--color-primary,
body.page a.button.--color-main,
body.page a.button.--color-primary,
body.page button:not(.hamburger).--color-main,
body.page button:not(.hamburger).--color-primary,
body.page input[type=submit].--color-main,
body.page input[type=submit].--color-primary {
  color: var(--text-on-action, #fff);
  background: var(--button-primary-default);
  border-color: var(--button-primary-default);
}
.acf-block-preview a.button.--color-main:hover, .acf-block-preview a.button.--color-primary:hover,
.acf-block-preview button:not(.hamburger).--color-main:hover,
.acf-block-preview button:not(.hamburger).--color-primary:hover,
.acf-block-preview input[type=submit].--color-main:hover,
.acf-block-preview input[type=submit].--color-primary:hover,
body.page a.button.--color-main:hover,
body.page a.button.--color-primary:hover,
body.page button:not(.hamburger).--color-main:hover,
body.page button:not(.hamburger).--color-primary:hover,
body.page input[type=submit].--color-main:hover,
body.page input[type=submit].--color-primary:hover {
  background: var(--button-primary-hover, #25282c);
}
.acf-block-preview a.button.--color-main:focus, .acf-block-preview a.button.--color-primary:focus,
.acf-block-preview button:not(.hamburger).--color-main:focus,
.acf-block-preview button:not(.hamburger).--color-primary:focus,
.acf-block-preview input[type=submit].--color-main:focus,
.acf-block-preview input[type=submit].--color-primary:focus,
body.page a.button.--color-main:focus,
body.page a.button.--color-primary:focus,
body.page button:not(.hamburger).--color-main:focus,
body.page button:not(.hamburger).--color-primary:focus,
body.page input[type=submit].--color-main:focus,
body.page input[type=submit].--color-primary:focus {
  transition: none;
  background: var(--button-primary-focus, #25282c);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow);
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
  	var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
  	calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(236 72 153 / var(--tw-ring-opacity));
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: white;
  --tw-ring-inset: ;
}
.acf-block-preview a.button.--color-main:active, .acf-block-preview a.button.--color-primary:active,
.acf-block-preview button:not(.hamburger).--color-main:active,
.acf-block-preview button:not(.hamburger).--color-primary:active,
.acf-block-preview input[type=submit].--color-main:active,
.acf-block-preview input[type=submit].--color-primary:active,
body.page a.button.--color-main:active,
body.page a.button.--color-primary:active,
body.page button:not(.hamburger).--color-main:active,
body.page button:not(.hamburger).--color-primary:active,
body.page input[type=submit].--color-main:active,
body.page input[type=submit].--color-primary:active {
  transition: none;
  background: var(--button-primary-action, #181a1d);
}
.acf-block-preview a.button.--color-main:disabled, .acf-block-preview a.button.--color-primary:disabled,
.acf-block-preview button:not(.hamburger).--color-main:disabled,
.acf-block-preview button:not(.hamburger).--color-primary:disabled,
.acf-block-preview input[type=submit].--color-main:disabled,
.acf-block-preview input[type=submit].--color-primary:disabled,
body.page a.button.--color-main:disabled,
body.page a.button.--color-primary:disabled,
body.page button:not(.hamburger).--color-main:disabled,
body.page button:not(.hamburger).--color-primary:disabled,
body.page input[type=submit].--color-main:disabled,
body.page input[type=submit].--color-primary:disabled {
  background: var(--button-primary-disabled, #78818c);
  color: var(--text-on-disabled, #52525b);
}
.acf-block-preview a.button.--color-second, .acf-block-preview a.button.--color-accent,
.acf-block-preview button:not(.hamburger).--color-second,
.acf-block-preview button:not(.hamburger).--color-accent,
.acf-block-preview input[type=submit].--color-second,
.acf-block-preview input[type=submit].--color-accent,
body.page a.button.--color-second,
body.page a.button.--color-accent,
body.page button:not(.hamburger).--color-second,
body.page button:not(.hamburger).--color-accent,
body.page input[type=submit].--color-second,
body.page input[type=submit].--color-accent {
  background: var(--button-accent-default, #0b989e);
  border-color: var(--button-accent-default, #0b989e);
  color: var(--text-on-action);
}
.acf-block-preview a.button.--color-second:hover, .acf-block-preview a.button.--color-accent:hover,
.acf-block-preview button:not(.hamburger).--color-second:hover,
.acf-block-preview button:not(.hamburger).--color-accent:hover,
.acf-block-preview input[type=submit].--color-second:hover,
.acf-block-preview input[type=submit].--color-accent:hover,
body.page a.button.--color-second:hover,
body.page a.button.--color-accent:hover,
body.page button:not(.hamburger).--color-second:hover,
body.page button:not(.hamburger).--color-accent:hover,
body.page input[type=submit].--color-second:hover,
body.page input[type=submit].--color-accent:hover {
  background: var(--button-accent-hover, #0d7278);
  border-color: var(--button-accent-hover, #0d7278);
}
.acf-block-preview a.button.--color-second:focus, .acf-block-preview a.button.--color-accent:focus,
.acf-block-preview button:not(.hamburger).--color-second:focus,
.acf-block-preview button:not(.hamburger).--color-accent:focus,
.acf-block-preview input[type=submit].--color-second:focus,
.acf-block-preview input[type=submit].--color-accent:focus,
body.page a.button.--color-second:focus,
body.page a.button.--color-accent:focus,
body.page button:not(.hamburger).--color-second:focus,
body.page button:not(.hamburger).--color-accent:focus,
body.page input[type=submit].--color-second:focus,
body.page input[type=submit].--color-accent:focus {
  background: var(--button-accent-focus, #0d7278);
  --tw-ring-color: var(--button-accent-focus, #0d7278) !important;
}
.acf-block-preview a.button.--color-second:active, .acf-block-preview a.button.--color-accent:active,
.acf-block-preview button:not(.hamburger).--color-second:active,
.acf-block-preview button:not(.hamburger).--color-accent:active,
.acf-block-preview input[type=submit].--color-second:active,
.acf-block-preview input[type=submit].--color-accent:active,
body.page a.button.--color-second:active,
body.page a.button.--color-accent:active,
body.page button:not(.hamburger).--color-second:active,
body.page button:not(.hamburger).--color-accent:active,
body.page input[type=submit].--color-second:active,
body.page input[type=submit].--color-accent:active {
  background: var(--button-accent-action, #105a5f);
}
.acf-block-preview a.button.--color-second:disabled, .acf-block-preview a.button.--color-accent:disabled,
.acf-block-preview button:not(.hamburger).--color-second:disabled,
.acf-block-preview button:not(.hamburger).--color-accent:disabled,
.acf-block-preview input[type=submit].--color-second:disabled,
.acf-block-preview input[type=submit].--color-accent:disabled,
body.page a.button.--color-second:disabled,
body.page a.button.--color-accent:disabled,
body.page button:not(.hamburger).--color-second:disabled,
body.page button:not(.hamburger).--color-accent:disabled,
body.page input[type=submit].--color-second:disabled,
body.page input[type=submit].--color-accent:disabled {
  background: var(--button-accent-disabled, #2ad7d7);
}
.acf-block-preview a.button.--color-white, .acf-block-preview a.button.--color-neutral,
.acf-block-preview button:not(.hamburger).--color-white,
.acf-block-preview button:not(.hamburger).--color-neutral,
.acf-block-preview input[type=submit].--color-white,
.acf-block-preview input[type=submit].--color-neutral,
body.page a.button.--color-white,
body.page a.button.--color-neutral,
body.page button:not(.hamburger).--color-white,
body.page button:not(.hamburger).--color-neutral,
body.page input[type=submit].--color-white,
body.page input[type=submit].--color-neutral {
  background: var(--button-neutral-default, #fff);
  border-color: var(--button-neutral-default, #fff);
  color: var(--text-headings, #3f444a);
}
.acf-block-preview a.button.--color-white:hover, .acf-block-preview a.button.--color-neutral:hover,
.acf-block-preview button:not(.hamburger).--color-white:hover,
.acf-block-preview button:not(.hamburger).--color-neutral:hover,
.acf-block-preview input[type=submit].--color-white:hover,
.acf-block-preview input[type=submit].--color-neutral:hover,
body.page a.button.--color-white:hover,
body.page a.button.--color-neutral:hover,
body.page button:not(.hamburger).--color-white:hover,
body.page button:not(.hamburger).--color-neutral:hover,
body.page input[type=submit].--color-white:hover,
body.page input[type=submit].--color-neutral:hover {
  background: var(--button-neutral-hover, #fafafa);
}
.acf-block-preview a.button.--color-white:focus, .acf-block-preview a.button.--color-neutral:focus,
.acf-block-preview button:not(.hamburger).--color-white:focus,
.acf-block-preview button:not(.hamburger).--color-neutral:focus,
.acf-block-preview input[type=submit].--color-white:focus,
.acf-block-preview input[type=submit].--color-neutral:focus,
body.page a.button.--color-white:focus,
body.page a.button.--color-neutral:focus,
body.page button:not(.hamburger).--color-white:focus,
body.page button:not(.hamburger).--color-neutral:focus,
body.page input[type=submit].--color-white:focus,
body.page input[type=submit].--color-neutral:focus {
  background: var(--button-neutral-focus, #fafafa);
  --tw-ring-color: var(
  	--button-neutral-focus,
  	#fafafa
  ) !important;
}
.acf-block-preview a.button.--color-white:active, .acf-block-preview a.button.--color-neutral:active,
.acf-block-preview button:not(.hamburger).--color-white:active,
.acf-block-preview button:not(.hamburger).--color-neutral:active,
.acf-block-preview input[type=submit].--color-white:active,
.acf-block-preview input[type=submit].--color-neutral:active,
body.page a.button.--color-white:active,
body.page a.button.--color-neutral:active,
body.page button:not(.hamburger).--color-white:active,
body.page button:not(.hamburger).--color-neutral:active,
body.page input[type=submit].--color-white:active,
body.page input[type=submit].--color-neutral:active {
  background: var(--button-neutral-action, #f4f4f5);
}
.acf-block-preview a.button.--color-white:disabled, .acf-block-preview a.button.--color-neutral:disabled,
.acf-block-preview button:not(.hamburger).--color-white:disabled,
.acf-block-preview button:not(.hamburger).--color-neutral:disabled,
.acf-block-preview input[type=submit].--color-white:disabled,
.acf-block-preview input[type=submit].--color-neutral:disabled,
body.page a.button.--color-white:disabled,
body.page a.button.--color-neutral:disabled,
body.page button:not(.hamburger).--color-white:disabled,
body.page button:not(.hamburger).--color-neutral:disabled,
body.page input[type=submit].--color-white:disabled,
body.page input[type=submit].--color-neutral:disabled {
  opacity: 0.5;
  background: var(--button-neutral-disabled, #a1a1aa);
  color: var(--text-headings, #3f444a);
}
.acf-block-preview a.button.--color-outline,
.acf-block-preview button:not(.hamburger).--color-outline,
.acf-block-preview input[type=submit].--color-outline,
body.page a.button.--color-outline,
body.page button:not(.hamburger).--color-outline,
body.page input[type=submit].--color-outline {
  background: transparent;
  border-color: var(--button-accent-default, #0b989e);
  color: var(--button-accent-default, #0b989e);
}
.acf-block-preview a.button.--color-outline:hover,
.acf-block-preview button:not(.hamburger).--color-outline:hover,
.acf-block-preview input[type=submit].--color-outline:hover,
body.page a.button.--color-outline:hover,
body.page button:not(.hamburger).--color-outline:hover,
body.page input[type=submit].--color-outline:hover {
  background: var(--button-accent-hover, #0d7278);
  border-color: var(--button-accent-hover, #0d7278);
  color: var(--text-on-action, #fff);
}
.acf-block-preview a.button.--color-outline:focus,
.acf-block-preview button:not(.hamburger).--color-outline:focus,
.acf-block-preview input[type=submit].--color-outline:focus,
body.page a.button.--color-outline:focus,
body.page button:not(.hamburger).--color-outline:focus,
body.page input[type=submit].--color-outline:focus {
  background: var(--button-accent-action, #105a5f);
  color: var(--text-on-action, #fff);
  --tw-ring-color: var(--text-on-action, #fff) !important;
}
.acf-block-preview a.button.--color-outline:active,
.acf-block-preview button:not(.hamburger).--color-outline:active,
.acf-block-preview input[type=submit].--color-outline:active,
body.page a.button.--color-outline:active,
body.page button:not(.hamburger).--color-outline:active,
body.page input[type=submit].--color-outline:active {
  background: var(--button-neutral-action, #f4f4f5);
  color: var(--text-on-action, #fff);
}
.acf-block-preview a.button.--color-outline:disabled,
.acf-block-preview button:not(.hamburger).--color-outline:disabled,
.acf-block-preview input[type=submit].--color-outline:disabled,
body.page a.button.--color-outline:disabled,
body.page button:not(.hamburger).--color-outline:disabled,
body.page input[type=submit].--color-outline:disabled {
  opacity: 0.5;
  background: var(--button-neutral-disabled, #a1a1aa);
  background: var(--button-neutral-default, #fff);
  color: var(--button-accent-disabled, #2ad7d7);
}
.acf-block-preview a.button.--size-regular,
.acf-block-preview button:not(.hamburger).--size-regular,
.acf-block-preview input[type=submit].--size-regular,
body.page a.button.--size-regular,
body.page button:not(.hamburger).--size-regular,
body.page input[type=submit].--size-regular {
  padding: var(--components-button-padding-y, 18px) var(--components-button-padding-x, 32px);
}

a.button-link {
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-300);
  font-size: calc(16px + 0 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-bold);
  line-height: 100%;
  text-decoration: none;
  transition: var(--transition);
  position: relative;
  color: var(--button-accent-default, #0b989e);
}
@media screen and (max-width: 520px) {
  a.button-link {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  a.button-link {
    font-size: 16px;
  }
}
a.button-link .arrow {
  transition: var(--transition);
}
a.button-link:hover {
  color: var(--button-accent-hover, #0d7278);
  gap: var(--space-400);
}
a.button-link:focus {
  color: var(--button-accent-focus, #0d7278);
  gap: var(--space-400);
}
a.button-link:active {
  color: var(--button-accent-action, #105a5f);
}
a.button-link:disabled {
  color: var(--button-accent-disabled, #2ad7d7);
}
a.button-link.--color-accent {
  color: var(--button-accent-default, #0b989e);
}
a.button-link.--color-accent:hover {
  color: var(--button-accent-hover, #0d7278);
}
a.button-link.--color-accent:focus {
  color: var(--button-accent-focus, #0d7278);
}
a.button-link.--color-accent:active {
  color: var(--button-accent-action, #105a5f);
}
a.button-link.--color-accent:disabled {
  color: var(--button-accent-disabled, #2ad7d7);
}
a.button-link.--color-neutral {
  color: var(--button-neutral-default, #fafafa);
}
a.button-link.--color-neutral:hover {
  color: var(--button-neutral-hover, #f4f4f5);
}
a.button-link.--color-neutral:focus {
  color: var(--button-neutral-focus, #f4f4f5);
}
a.button-link.--color-neutral:active {
  color: var(--button-neutral-press, #fff);
}
a.button-link.--color-neutral:disabled {
  color: var(--button-neutral-disabled, #f4f4f5);
}

a.icon-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-md);
  font-weight: var(--font-weight-regular);
  line-height: var(--font-body-lineheight);
  text-decoration: none;
  transition: var(--transition);
  color: var(--text-headings);
}
a.icon-link svg {
  width: 18px;
  translate: 0 -0.5px;
}
a.icon-link svg path {
  transition: var(--transition);
}
a.icon-link:hover, a.icon-link:focus {
  color: var(--button-accent-hover);
}
a.icon-link:active {
  color: var(--button-accent-action);
}
a.icon-link:disabled {
  opacity: 50%;
}
a.icon-link.--color-white {
  color: var(--text-body-on-dark);
}
a.icon-link.--color-white svg {
  stroke: var(--text-body-on-dark);
}
a.icon-link.--color-white:hover, a.icon-link.--color-white:focus {
  color: var(--button-accent-hover);
}
a.icon-link.--color-white:hover svg, a.icon-link.--color-white:focus svg {
  stroke: var(--button-accent-hover);
}
a.icon-link.--color-white:active {
  color: var(--button-accent-action);
}
a.icon-link.--color-white:active svg {
  stroke: var(--button-accent-action);
}

/*------------------------------------*\
    MISC
\*------------------------------------*/
::selection {
  background: var(--text-action);
  color: var(--text-on-action);
  text-shadow: none;
}

::-webkit-selection {
  background: var(--text-action);
  color: var(--text-on-action);
  text-shadow: none;
}

::-moz-selection {
  background: var(--text-action);
  color: var(--text-on-action);
  text-shadow: none;
}

/*------------------------------------*/
/* SECTION - Components */
/*------------------------------------*/
.icon {
  width: 24px;
  height: auto;
  aspect-ratio: 1;
}

.arc {
  fill: #e6f5f5;
  animation: none;
}

.arc-1,
.arc-2,
.arc-3 {
  animation: fillPulse 3s ease-out infinite;
}

.arc-1 {
  animation-delay: 0.5s;
}

.arc-2 {
  animation-delay: 1s;
}

.arc-3 {
  animation-delay: 1.5s;
}

@keyframes fillPulse {
  0% {
    fill: #e6f5f5;
  }
  10% {
    fill: #03989e;
  }
  30% {
    fill: #03989e;
  }
  40% {
    fill: #e6f5f5;
  }
}
.content-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.content-container .top .subline {
  padding: 0;
}
.content-container .top h2 {
  padding-top: 8px;
}
.content-container .top .source {
  padding-top: 8px;
  color: var(--text-disabled, #d4d4d8);
  font-family: var(--font-family-body, Manrope);
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-bold);
  line-height: 125%; /* 13.75px */
}
@media screen and (max-width: 520px) {
  .content-container .top .source {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .content-container .top .source {
    font-size: 14px;
  }
}
.content-container .cta-grp {
  padding: 0;
  gap: var(--space-sm);
  flex-direction: column;
}
.content-container .cta-grp a.button {
  width: 100%;
}
@media (min-width: 769px) {
  .content-container {
    gap: 48px;
  }
  .content-container .cta-grp {
    flex-direction: row;
    gap: 16px;
  }
  .content-container .cta-grp a.button {
    width: auto;
  }
}

/*------------------------------------*\
    HEADER.SCSS
\*------------------------------------*/
.header {
  z-index: 999;
  background-color: var(--surface-page);
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.header .wrapper {
  transform: translateY(0);
  transition: transform 0.3s ease;
}
.header.--shadow .wrapper {
  box-shadow: 0px 0px 24px 0px rgba(23, 24, 24, 0.2);
  transform: translateY(0px);
}
.header .inner {
  position: static;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-xl) 0px;
}
.header .logo {
  max-width: 100px;
  width: 100%;
}
.header .hamburger {
  margin-right: -5px;
}
@media (min-width: 769px) {
  .header .inner {
    padding-bottom: 0;
  }
  .header .logo {
    max-width: 120px;
    padding-bottom: 24px;
  }
}

/*------------------------------------*/
/* NOTE - Footer */
/*------------------------------------*/
.footer {
  padding-top: 230px;
  position: relative;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.footer a.icon-link {
  max-width: 220px;
}
.footer a.icon-link svg {
  min-width: 18px;
}
.footer .image-container {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: -1;
  height: 250px;
}
.footer .image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  border-radius: 32px 32px 0px 0px;
}
.footer .inner {
  display: flex;
  flex-direction: column;
  gap: 48px;
  max-width: 1248px;
  border-radius: var(--components-radius-large, 24px) var(--components-radius-large, 24px) 0px 0px;
  outline: 6px solid rgba(231, 245, 245, 0.5);
  background: var(--surface-box, #f4f4f5);
  border-bottom: 0;
  padding: var(--layout-grid-outergap, 24px) var(--layout-grid-outergap, 24px) 0px var(--layout-grid-outergap, 24px);
  width: 100%;
}
.footer .top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 48px;
}
.footer .logo-img {
  max-width: 130px;
  width: 100%;
}
.footer .menus-container .gridrow {
  display: flex;
  justify-content: space-between;
  align-items: space-between;
  gap: 32px;
}
.footer .contact-container h5,
.footer .menu-container h5 {
  padding: 0;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--icon-accent, #0b989e);
}
.footer .contact-container ul,
.footer .menu-container ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
}
.footer .contact-container ul.sub-menu,
.footer .menu-container ul.sub-menu {
  margin-top: 0;
}
.footer .contact-container a,
.footer .menu-container a {
  display: flex;
  text-decoration: none;
  transition: var(--transition);
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  padding: 0;
  /* Hover/active state */
}
@media screen and (max-width: 520px) {
  .footer .contact-container a,
  .footer .menu-container a {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .footer .contact-container a,
  .footer .menu-container a {
    font-size: 18px;
  }
}
.footer .contact-container a:hover,
.footer .menu-container a:hover {
  color: var(--text-action);
}
.footer .contact-container a:active,
.footer .menu-container a:active {
  color: var(--text-action-press);
  transition: none;
}
.footer .bottom {
  display: flex;
  row-gap: 10px;
  padding: 20px 0px;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  align-self: stretch;
  flex-wrap: wrap;
  border-top: 1px solid var(--border-divider, #d4d4d8);
}
.footer .bottom .meta,
.footer .bottom .legal {
  width: 100%;
}
.footer .bottom .meta,
.footer .bottom .wv-legal-menu ul {
  display: flex;
  justify-content: center;
}
.footer .bottom .copyright,
.footer .bottom .copyright a {
  padding: 0;
  color: var(--text-placeholder, #a1a1aa);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 160%; /* 19.2px */
  transition: var(--transition);
  text-decoration: none;
}
.footer .bottom .copyright a:hover,
.footer .bottom .wv-legal-menu ul a:hover {
  color: var(--text-action);
}
.footer .bottom .copyright {
  text-align: center;
}
.footer .bottom .wv-legal-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.footer .bottom .wv-legal-menu ul a {
  color: var(--text-body, #52525b);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-xs, 14px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 160%; /* 22.4px */
  text-decoration: none;
}
@media (min-width: 769px) {
  .footer {
    padding-top: 450px;
  }
  .footer .inner {
    gap: var(--components-abstand-small);
    padding: 60px 64px 0px 64px;
  }
  .footer .menus-container .gridrow {
    gap: 20px;
  }
  .footer .contact-container ul,
  .footer .menu-container ul {
    margin-top: 20px;
  }
  .footer .top {
    gap: 0;
  }
  .footer .bottom {
    row-gap: 20px;
  }
  .footer .bottom .meta,
  .footer .bottom .legal {
    width: auto;
  }
  .footer .logo-img {
    max-width: 200px;
  }
  .footer .box50 > .col {
    width: calc(50% - 10px);
  }
  .footer .image-container {
    height: 100%;
    max-height: 1512px;
  }
  .footer .image-container img {
    border-radius: 60px 60px 0px 0px;
  }
}

/*------------------------------------*/
/* Styling for navigation and (sub) menues  */
/*------------------------------------*/
/*------------------------------------*/
/* NOTE - Mobile & Desktop Navigation */
/*------------------------------------*/
.header-menu {
  --nav-item-gap: calc(var(--space-2xl) / 2);
  /* Global styles for all navigation levels */
  /* Main level navigation */
  /* Second level navigation */
}
.header-menu .buttons-container {
  display: flex;
  align-items: center;
  gap: 20px;
  padding-bottom: 24px;
  padding-left: 61px;
  display: none;
}
.header-menu .buttons-container .icon-link {
  font-size: 16px;
  color: var(--button-accent-default, #0b989e);
  display: flex;
}
.header-menu .buttons-container .icon-link:hover {
  color: var(--button-accent-hover, #0d7278);
}
.header-menu .buttons-container a.button.main {
  padding: var(--components-button-padding-y, 18px) 24px;
}
.header-menu .wv-legal-menu {
  display: none;
}
.header-menu ul {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
}
.header-menu a {
  display: block;
  color: var(--text-headings, #3f444a);
  text-decoration: none;
  transition: var(--transition);
}
.header-menu > ul > li {
  /* Hover/active state */
}
.header-menu > ul > li a:hover, .header-menu > ul > li:hover > a {
  color: var(--text-action);
}
.header-menu > ul > li a:active {
  color: var(--text-action-press);
  transition: none;
}
@media (min-width: 1025px) {
  .header-menu > ul > li.only-mobile .hover-container {
    display: none;
  }
}
@media (max-width: 768px) {
  .header-menu > ul > li + li {
    margin-top: 20px;
  }
}
.header-menu .hover-container {
  padding: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  gap: 23px;
  border-radius: var(--components-radius-medium, 12px);
  outline: 6px solid #e7f5f5;
  background: var(--Tailwind-White, #fff);
  position: relative;
}
.header-menu .hover-container:before {
  content: "";
  display: block;
  position: absolute;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='19' viewBox='0 0 30 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_4604_7043)'%3E%3Cpath d='M11.0391 5.53906C13.0301 2.94207 16.9699 2.94208 18.9609 5.53906L19.1533 5.80664L30.9922 23.4658L31.1875 23.7803C33.069 27.0621 30.7142 31.2498 26.8398 31.25H3.16016C-0.839126 31.2498 -3.21935 26.7876 -0.992188 23.4658L10.8467 5.80664L11.0391 5.53906Z' fill='white' stroke='%23E7F5F5' stroke-width='6'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_4604_7043'%3E%3Crect width='30' height='19' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  border-radius: var(--components-radius-medium, 12px);
  top: -8px;
  z-index: 2;
  height: 20px;
  width: 30px;
  background-repeat: no-repeat;
  display: none;
}
.header-menu .hover-container .image-container {
  flex: 11 33%;
  max-width: 114px;
}
.header-menu .hover-container .text-container {
  flex: 1 66%;
}
.header-menu .hover-container .text-container .subline {
  color: var(--text-highlight, #0b989e);
  font-family: var(--font-family-body, Manrope);
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 125%; /* 15px */
}
@media screen and (max-width: 520px) {
  .header-menu .hover-container .text-container .subline {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .header-menu .hover-container .text-container .subline {
    font-size: 14px;
  }
}
.header-menu .hover-container .text-container > a {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
  color: var(--text-headings, #3f444a);
  padding: 0;
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  .header-menu .hover-container .text-container > a {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  .header-menu .hover-container .text-container > a {
    font-size: 28px;
  }
}
@media screen and (max-width: 520px) {
  .header-menu .hover-container .text-container > a {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  .header-menu .hover-container .text-container > a {
    font-size: 28px;
  }
}
.header-menu .hover-container .text-container .description {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 180%; /* 21.6px */
  padding-top: 8px;
}
@media screen and (max-width: 520px) {
  .header-menu .hover-container .text-container .description {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .header-menu .hover-container .text-container .description {
    font-size: 18px;
  }
}
@media screen and (max-width: 520px) {
  .header-menu .hover-container .text-container .description {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .header-menu .hover-container .text-container .description {
    font-size: 14px;
  }
}
.header-menu > ul > li > ul > li {
  /* Hover/active state */
}
.header-menu > ul > li > ul > li a:hover, .header-menu > ul > li > ul > li:hover > a, .header-menu > ul > li > ul > li.current_page_item > a {
  color: var(--text-action);
}
.header-menu > ul > li > ul > li a:active {
  color: var(--text-action-press);
  transition: none;
}

/*------------------------------------*/
/* NOTE - Mobile Navigation */
/*------------------------------------*/
@media (max-width: 1024px) {
  .hamburger {
    width: auto;
  }
  .hamburger:hover {
    background: transparent;
  }
  .hamburger .hamburger-box {
    scale: 0.8;
  }
  .header-menu {
    display: none;
    max-height: calc(100dvh - 100%);
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0%;
    z-index: 999;
    background: var(--theme-neutral-white);
    /* Main level navigation */
    /* Second level navigation */
  }
  .header-menu .wv-legal-menu {
    padding: 15px 53px 15px var(--layout-grid-outergap, 24px);
    margin-top: 38px;
    display: block;
  }
  .header-menu .wv-legal-menu ul {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
  }
  .header-menu .wv-legal-menu ul li a {
    color: var(--text-body, #52525b);
    text-align: right;
    font-family: var(--font-family-body, Manrope);
    font-size: var(--font-size-xs, 12px);
    font-style: normal;
    font-weight: var(--font-weight-bold, 600);
    line-height: 180%; /* 21.6px */
  }
  .header-menu > ul {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
    flex-direction: column;
    align-items: stretch;
    padding: 20px;
    padding-bottom: 0;
  }
  .header-menu > ul > li.menu-item {
    width: 100%;
    /* Hover/active state */
  }
  .header-menu > ul > li.menu-item > a {
    padding: 15px 20px;
    position: relative;
  }
  .header-menu > ul > li.menu-item > a .toggle-submenu {
    height: 100%;
    aspect-ratio: 1;
    background: var(--surface-input);
    border: 1px solid var(--border-input);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
    transition: var(--transition);
    cursor: pointer;
  }
  .header-menu > ul > li.menu-item > a .toggle-submenu:after {
    content: "";
    display: block;
    position: absolute;
    width: 24px;
    aspect-ratio: 1;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.5 9.5L12.5 15.5L18.5 9.5' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: var(--transition);
  }
  .header-menu > ul > li.menu-item > a .toggle-submenu.open:after {
    transform: rotate(-180deg) translate(50%, 50%);
  }
  .header-menu > ul > li.menu-item a:hover, .header-menu > ul > li.menu-item:hover > a, .header-menu > ul > li.menu-item.current_page_item > a {
    color: var(--text-action);
  }
  .header-menu > ul > li.menu-item.anchor-hover-item {
    border: 1px solid red;
  }
  .header-menu > ul > li.menu-item.anchor-hover-item > a {
    display: none;
  }
  .header-menu > ul > li.menu-item > ul {
    display: none;
    padding-bottom: 10px;
  }
  .header-menu > ul > li.menu-item > ul > li.menu-item > a {
    padding: 10px 20px;
    font-size: 16px;
  }
  .nav__background {
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 998;
    pointer-events: none;
    opacity: 0%;
    transition: var(--transition);
    transition-duration: 200ms;
  }
  .nav__background.is-active {
    opacity: 100%;
    pointer-events: all;
  }
}
/*------------------------------------*/
/* NOTE - Desktop Navigation */
/*------------------------------------*/
@media (min-width: 1025px) {
  .header-menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* Main level navigation */
    /* Second level navigation */
  }
  .header-menu .buttons-container {
    display: flex;
  }
  .header-menu > ul {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
    flex-direction: row;
  }
  .header-menu > ul > li.menu-item {
    position: relative;
    /* Menü Item with Submenu */
    /* Hover/active state */
  }
  .header-menu > ul > li.menu-item > a {
    padding: 5px 16px;
    font-size: 16px;
    padding-bottom: 24px;
  }
  .header-menu > ul > li.menu-item.menu-item-has-children {
    overflow: hidden;
  }
  .header-menu > ul > li.menu-item.menu-item-has-children > a {
    padding-right: calc(23px + var(--nav-item-gap));
    position: relative;
  }
  .header-menu > ul > li.menu-item.menu-item-has-children > a:after {
    content: "";
    display: block;
    position: absolute;
    width: 11px;
    height: 8px;
    transition: var(--transition);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.865' height='6.847' viewBox='0 0 10.865 6.847'%3E%3Cpath id='Pfad_17' data-name='Pfad 17' d='M291.258,1305.2a1,1,0,0,1-.707-1.707l3.725-3.725-3.725-3.725a1,1,0,0,1,1.414-1.414l5.14,5.14-5.14,5.14A1,1,0,0,1,291.258,1305.2Z' transform='translate(1305.196 -290.258) rotate(90)' fill='%231c1c1c'/%3E%3C/svg%3E%0A");
    top: 50%;
    right: var(--nav-item-gap);
    transform: translateY(-50%);
  }
  .header-menu > ul > li.menu-item.menu-item-has-children:hover {
    overflow: visible;
  }
  .header-menu > ul > li.menu-item.menu-item-has-children:hover > a:after {
    transform: translateY(-50%) rotate(180deg);
  }
  .header-menu > ul > li.menu-item.menu-item-has-children:hover > ul {
    opacity: 1;
    transform: translateY(0px);
  }
  .header-menu > ul > li.menu-item.anchor-hover-item {
    position: relative;
  }
  .header-menu > ul > li.menu-item.anchor-hover-item .hover-container {
    opacity: 0;
    transition: var(--transition);
    visibility: hidden;
    z-index: -2;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    max-width: 390px;
    min-width: 330px;
  }
  .header-menu > ul > li.menu-item.anchor-hover-item .hover-container:before {
    display: block;
  }
  .header-menu > ul > li.menu-item.anchor-hover-item:hover {
    cursor: pointer;
  }
  .header-menu > ul > li.menu-item.anchor-hover-item:hover .hover-container {
    opacity: 1;
    visibility: visible;
    z-index: 2;
  }
  .header-menu > ul > li.menu-item a:hover:after, .header-menu > ul > li.menu-item:hover > a:after, .header-menu > ul > li.menu-item.current_page_item > a:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.865' height='6.847' viewBox='0 0 10.865 6.847'%3E%3Cpath id='Pfad_17' data-name='Pfad 17' d='M291.258,1305.2a1,1,0,0,1-.707-1.707l3.725-3.725-3.725-3.725a1,1,0,0,1,1.414-1.414l5.14,5.14-5.14,5.14A1,1,0,0,1,291.258,1305.2Z' transform='translate(1305.196 -290.258) rotate(90)' fill='%23E11D48'/%3E%3C/svg%3E%0A");
  }
  .header-menu > ul > li.menu-item > ul {
    padding-top: 31px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
    flex-direction: column;
    align-items: stretch;
    top: 100%;
    left: 0px;
    min-width: 100%;
    position: absolute;
    white-space: nowrap;
    opacity: 0;
    transition: all 0.5s ease-in-out;
    transform: translateY(10px);
    z-index: 999;
  }
  .header-menu > ul > li.menu-item > ul > li.menu-item {
    display: block;
    border-top: 1px solid var(--border-input);
    position: relative;
    background: var(--surface-page);
  }
  .header-menu > ul > li.menu-item > ul > li.menu-item > a {
    padding: var(--space-md) var(--space-xl);
    background-color: var(--theme-neutral-white);
    font-size: 15px;
  }
  .header-menu > ul > li.menu-item > ul > li.menu-item:first-child {
    padding-top: var(--space-xs);
    border-top: 3px solid var(--border-accent);
  }
  .header-menu > ul > li.menu-item > ul > li.menu-item:last-child {
    padding-bottom: var(--space-xs);
  }
  .hamburger {
    display: none;
  }
}
/*------------------------------------*/
/* NOTE - Swiper slider componente */
/*------------------------------------*/
.slider__controls {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: var(--layout-grid-gutter);
}
.slider__controls .slider__scrollbar {
  width: 10px;
  flex: auto;
}

.slider__button {
  padding: 0 !important;
  width: 60px !important;
  aspect-ratio: 1 !important;
  background-size: 20px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: var(--components-radius-small, 12px) !important;
  background: var(--button-primary-default);
  border: 0 !important;
}
.slider__button.--prev {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='18' viewBox='0 0 22 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.61492 16.5146L0.999918 8.89958M0.999918 8.89958L8.61491 1.28458M0.999918 8.89958L20.7989 8.89958' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;
}
.slider__button.--next {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='19' viewBox='0 0 22 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.2845 1.88496L20.8995 9.49996M20.8995 9.49996L13.2845 17.115M20.8995 9.49996L1.1005 9.49996' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;
}
.slider__button:hover {
  background: var(--button-primary-hover, #25282c);
}
.slider__button:focus {
  background: var(--button-primary-focus, #25282c);
  --tw-ring-color: var(--button-primary-focus, #25282c) !important;
}
.slider__button:active {
  background: var(--button-primary-action, #181a1d);
}
.slider__button:disabled {
  background: var(--button-primary-disabled, #78818c);
}
.slider__button:disabled.--prev {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='20' viewBox='0 0 22 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.71541 17.615L1.10041 10M1.10041 10L8.71542 2.385M1.10041 10L20.8994 10' stroke='%2352525B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;
}
.slider__button:disabled.--next {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='20' viewBox='0 0 22 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.2845 2.38501L20.8995 10M20.8995 10L13.2845 17.615M20.8995 10H1.10052' stroke='%2352525B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;
}

.slider__scrollbar {
  height: 8px;
  width: 100%;
  max-width: 400px;
  background: var(--surface-box, #f4f4f5);
  border-radius: 4px;
  margin: 5px 0;
}
@media (min-width: 769px) {
  .slider__scrollbar {
    max-width: 400px;
  }
}
.slider__scrollbar__drag {
  margin: -1px;
  height: calc(100% + 2px);
  background: var(--surface-action);
  cursor: pointer;
  position: relative;
  border-radius: 4px;
}
.slider__scrollbar__drag:before {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.slider__scrollbar__drag:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: var(--surface-action);
  border-radius: 10px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: var(--transition-fast);
  z-index: -1;
  opacity: 20%;
}
.slider__scrollbar__drag.--dragging:after, .slider__scrollbar__drag:hover:after {
  width: calc(100% + 8px);
  height: calc(100% + 8px);
}

.slider__pagination {
  --slider__pagination-gap: 10px;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: row;
  justify-content: center;
  gap: var(--slider__pagination-gap);
}
.slider__pagination .slider__pagination__bullet {
  width: 12px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--button-primary-default);
  transition: var(--transition);
  position: relative;
}
.slider__pagination .slider__pagination__bullet.--active {
  background: var(--text-action);
}
.slider__pagination .slider__pagination__bullet:before {
  content: "";
  width: calc(100% + var(--slider__pagination-gap));
  height: calc(100% + var(--slider__pagination-gap));
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
.slider__pagination.--vertical {
  flex-direction: column;
}
.slider__pagination.--clickable .slider__pagination__bullet:not(.--active) {
  cursor: pointer;
}
.slider__pagination.--clickable .slider__pagination__bullet:not(.--active):hover {
  background: var(--button-accent-hover);
}
.slider__pagination.--clickable .slider__pagination__bullet:not(.--active):active {
  background: var(--button-accent-action);
  transition: none;
}

.swiper {
  /*------------------------------------*/
  /* Responsive */
  /*------------------------------------*/
}
.swiper:hover .slider-button.--prev {
  left: 0px;
}
.swiper:hover .slider-button.--next {
  right: 0px;
}
@media (max-width: 768px) {
  .swiper .slider-button.--prev {
    left: 0px;
  }
  .swiper .slider-button.--next {
    right: 0px;
  }
}

/*------------------------------------*/
/* SECTION - Responsive */
/*------------------------------------*/
@media (max-width: 768px) {
  .slider__button {
    width: 46px !important;
    background-size: 16px !important;
  }
}
@keyframes fill-vertical-1 {
  0% {
    opacity: 100%;
  }
  10% {
    height: 0%;
  }
  20% {
    height: 100%;
  }
  90% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
    height: 100%;
  }
}
@keyframes fill-vertical-2 {
  0% {
    opacity: 100%;
    height: 0%;
  }
  40% {
    height: 0%;
  }
  50% {
    height: 100%;
  }
  90% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
    height: 100%;
  }
}
@keyframes fill-vertical-3 {
  0% {
    opacity: 100%;
    height: 0%;
  }
  70% {
    height: 0%;
  }
  80% {
    height: 100%;
  }
  90% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
    height: 100%;
  }
}
@keyframes fill-horizontal-1 {
  0% {
    opacity: 100%;
  }
  10% {
    width: 0%;
  }
  20% {
    width: 100%;
  }
  90% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
    width: 100%;
  }
}
@keyframes fill-horizontal-2 {
  0% {
    opacity: 100%;
    width: 0%;
  }
  40% {
    width: 0%;
  }
  50% {
    width: 100%;
  }
  90% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
    width: 100%;
  }
}
@keyframes fill-horizontal-3 {
  0% {
    opacity: 100%;
    width: 0%;
  }
  70% {
    width: 0%;
  }
  80% {
    width: 100%;
  }
  90% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
    width: 100%;
  }
}
/*------------------------------------*/
/* STYLES - Form */
/*------------------------------------*/
/*------------------------------------*/
/* SECTION - Mixins */
/*------------------------------------*/
/*------------------------------------*/
/* SECTION - Styling */
/*------------------------------------*/
form.wpcf7-form p {
  width: 100%;
}
form.wpcf7-form br {
  display: none;
}
form.wpcf7-form input[type=text],
form.wpcf7-form input[type=email],
form.wpcf7-form input[type=tel],
form.wpcf7-form input[type=date],
form.wpcf7-form input[type=url],
form.wpcf7-form input[type=number],
form.wpcf7-form textarea {
  outline: none !important;
  width: 100%;
  color: var(--text-headings);
  padding: var(--components-input-padding-y, 18px) var(--components-input-padding-x, 20px);
  line-height: var(--font-body-lineheight);
  font-size: 16px;
  font-weight: 500;
  appearance: none;
  letter-spacing: normal;
  transition: var(--transition-fast);
  text-overflow: ellipsis;
  font-family: var(--font-family-body);
  line-height: 160%; /* 25.6px */
  border-radius: var(--components-radius-small, 12px);
  border: 1px solid var(--border-input, #d4d4d8);
  background-color: var(--surface-input, #fff);
}
form.wpcf7-form input[type=text]::-webkit-input-placeholder, form.wpcf7-form input[type=text]:-ms-input-placeholder, form.wpcf7-form input[type=text]::placeholder,
form.wpcf7-form input[type=email]::-webkit-input-placeholder,
form.wpcf7-form input[type=email]:-ms-input-placeholder,
form.wpcf7-form input[type=email]::placeholder,
form.wpcf7-form input[type=tel]::-webkit-input-placeholder,
form.wpcf7-form input[type=tel]:-ms-input-placeholder,
form.wpcf7-form input[type=tel]::placeholder,
form.wpcf7-form input[type=date]::-webkit-input-placeholder,
form.wpcf7-form input[type=date]:-ms-input-placeholder,
form.wpcf7-form input[type=date]::placeholder,
form.wpcf7-form input[type=url]::-webkit-input-placeholder,
form.wpcf7-form input[type=url]:-ms-input-placeholder,
form.wpcf7-form input[type=url]::placeholder,
form.wpcf7-form input[type=number]::-webkit-input-placeholder,
form.wpcf7-form input[type=number]:-ms-input-placeholder,
form.wpcf7-form input[type=number]::placeholder,
form.wpcf7-form textarea::-webkit-input-placeholder,
form.wpcf7-form textarea:-ms-input-placeholder,
form.wpcf7-form textarea::placeholder {
  color: var(--text-placeholder, #a1a1aa);
}
form.wpcf7-form input[type=text]:not([aria-invalid=true]):hover,
form.wpcf7-form input[type=email]:not([aria-invalid=true]):hover,
form.wpcf7-form input[type=tel]:not([aria-invalid=true]):hover,
form.wpcf7-form input[type=date]:not([aria-invalid=true]):hover,
form.wpcf7-form input[type=url]:not([aria-invalid=true]):hover,
form.wpcf7-form input[type=number]:not([aria-invalid=true]):hover,
form.wpcf7-form textarea:not([aria-invalid=true]):hover {
  border-color: var(--border-input-hover, #2ad7d7);
}
form.wpcf7-form input[type=text]:not([aria-invalid=true]):focus,
form.wpcf7-form input[type=email]:not([aria-invalid=true]):focus,
form.wpcf7-form input[type=tel]:not([aria-invalid=true]):focus,
form.wpcf7-form input[type=date]:not([aria-invalid=true]):focus,
form.wpcf7-form input[type=url]:not([aria-invalid=true]):focus,
form.wpcf7-form input[type=number]:not([aria-invalid=true]):focus,
form.wpcf7-form textarea:not([aria-invalid=true]):focus {
  border-color: var(--border-input-focus, #0b989e);
}
form.wpcf7-form input[type=text][aria-invalid=true],
form.wpcf7-form input[type=email][aria-invalid=true],
form.wpcf7-form input[type=tel][aria-invalid=true],
form.wpcf7-form input[type=date][aria-invalid=true],
form.wpcf7-form input[type=url][aria-invalid=true],
form.wpcf7-form input[type=number][aria-invalid=true],
form.wpcf7-form textarea[aria-invalid=true] {
  background: var(--surface-error);
  border-color: var(--border-input-error);
}
form.wpcf7-form input[type=text]:disabled,
form.wpcf7-form input[type=email]:disabled,
form.wpcf7-form input[type=tel]:disabled,
form.wpcf7-form input[type=date]:disabled,
form.wpcf7-form input[type=url]:disabled,
form.wpcf7-form input[type=number]:disabled,
form.wpcf7-form textarea:disabled {
  opacity: 50%;
  cursor: not-allowed;
}
form.wpcf7-form select {
  outline: none !important;
  width: 100%;
  color: var(--text-headings);
  padding: var(--components-input-padding-y, 18px) var(--components-input-padding-x, 20px);
  line-height: var(--font-body-lineheight);
  font-size: 16px;
  font-weight: 500;
  appearance: none;
  letter-spacing: normal;
  transition: var(--transition-fast);
  text-overflow: ellipsis;
  font-family: var(--font-family-body);
  line-height: 160%; /* 25.6px */
  border-radius: var(--components-radius-small, 12px);
  border: 1px solid var(--border-input, #d4d4d8);
  background-color: var(--surface-input, #fff);
  appearance: none;
  background-size: 12px;
  background-position: calc(100% - 20px) center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.0279 3.44434L6.00027 8.55591L10.9726 3.44434' stroke='black' stroke-width='1.1' stroke-linecap='square'/%3E%3C/svg%3E%0A");
  letter-spacing: normal;
}
form.wpcf7-form select::-webkit-input-placeholder, form.wpcf7-form select:-ms-input-placeholder, form.wpcf7-form select::placeholder {
  color: var(--text-placeholder, #a1a1aa);
}
form.wpcf7-form select:not([aria-invalid=true]):hover {
  border-color: var(--border-input-hover, #2ad7d7);
}
form.wpcf7-form select:not([aria-invalid=true]):focus {
  border-color: var(--border-input-focus, #0b989e);
}
form.wpcf7-form select[aria-invalid=true] {
  background: var(--surface-error);
  border-color: var(--border-input-error);
}
form.wpcf7-form select:disabled {
  opacity: 50%;
  cursor: not-allowed;
}
form.wpcf7-form textarea {
  height: 250px;
  resize: none;
}
form.wpcf7-form .wpcf7-checkbox,
form.wpcf7-form .wpcf7-acceptance,
form.wpcf7-form .wpcf7-radio {
  width: fit-content;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  position: relative;
}
form.wpcf7-form .wpcf7-checkbox span,
form.wpcf7-form .wpcf7-acceptance span,
form.wpcf7-form .wpcf7-radio span {
  margin: 0px;
}
form.wpcf7-form .wpcf7-checkbox label,
form.wpcf7-form .wpcf7-acceptance label {
  display: flex !important;
  position: relative;
  cursor: pointer;
}
form.wpcf7-form .wpcf7-checkbox label input[type=checkbox],
form.wpcf7-form .wpcf7-checkbox label input[type=radio],
form.wpcf7-form .wpcf7-acceptance label input[type=checkbox],
form.wpcf7-form .wpcf7-acceptance label input[type=radio] {
  display: none;
}
form.wpcf7-form .wpcf7-checkbox label:before,
form.wpcf7-form .wpcf7-acceptance label:before {
  content: "";
  display: block;
  margin: 4px var(--space-md) 0 0;
  height: 20px;
  width: 20px;
  min-width: 20px;
  background-color: var(--surface-selector);
  border: solid 1px var(--border-selector);
  border-radius: 50%;
  transition: var(--transition-fast);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 4.00024L4.06471 6.95459L9.5 1.0459' stroke='%23EF6F2A' stroke-width='1.5'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.800049 3.65454L4.36476 6.60889L9.80005 0.700195' stroke='%230B989E' stroke-width='2'/%3E%3C/svg%3E%0A") !important;
  background-size: 0;
}
form.wpcf7-form .wpcf7-checkbox label span,
form.wpcf7-form .wpcf7-acceptance label span {
  line-height: var(--font-body-lineheight);
  font-size: calc(15px + 0 * (100vw - 520px) / 600);
  font-size: calc(16px + 0 * (100vw - 520px) / 600);
  padding-top: 0;
  color: var(--text-body);
}
@media screen and (max-width: 520px) {
  form.wpcf7-form .wpcf7-checkbox label span,
  form.wpcf7-form .wpcf7-acceptance label span {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  form.wpcf7-form .wpcf7-checkbox label span,
  form.wpcf7-form .wpcf7-acceptance label span {
    font-size: 15px;
  }
}
@media screen and (max-width: 520px) {
  form.wpcf7-form .wpcf7-checkbox label span,
  form.wpcf7-form .wpcf7-acceptance label span {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  form.wpcf7-form .wpcf7-checkbox label span,
  form.wpcf7-form .wpcf7-acceptance label span {
    font-size: 16px;
  }
}
form.wpcf7-form .wpcf7-checkbox label:hover:before,
form.wpcf7-form .wpcf7-acceptance label:hover:before {
  background-color: var(--surface-selector-hover);
  border-color: var(--border-selector-active);
}
form.wpcf7-form .wpcf7-checkbox label:has(input:active):before,
form.wpcf7-form .wpcf7-acceptance label:has(input:active):before {
  background-color: var(--surface-selector-press);
  border-color: var(--border-selector-active);
}
form.wpcf7-form .wpcf7-checkbox label:has(input:checked):before,
form.wpcf7-form .wpcf7-acceptance label:has(input:checked):before {
  border-color: var(--border-input-focus);
  background-size: 10px;
}
form.wpcf7-form .wpcf7-radio label {
  display: flex !important;
  position: relative;
  cursor: pointer;
}
form.wpcf7-form .wpcf7-radio label input[type=checkbox],
form.wpcf7-form .wpcf7-radio label input[type=radio] {
  display: none;
}
form.wpcf7-form .wpcf7-radio label:before {
  content: "";
  display: block;
  margin: 4px var(--space-md) 0 0;
  height: 20px;
  width: 20px;
  min-width: 20px;
  background-color: var(--surface-selector);
  border: solid 1px var(--border-selector);
  border-radius: 50%;
  transition: var(--transition-fast);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 4.00024L4.06471 6.95459L9.5 1.0459' stroke='%23EF6F2A' stroke-width='1.5'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.800049 3.65454L4.36476 6.60889L9.80005 0.700195' stroke='%230B989E' stroke-width='2'/%3E%3C/svg%3E%0A") !important;
  background-size: 0;
}
form.wpcf7-form .wpcf7-radio label span {
  line-height: var(--font-body-lineheight);
  font-size: calc(15px + 0 * (100vw - 520px) / 600);
  font-size: calc(16px + 0 * (100vw - 520px) / 600);
  padding-top: 0;
  color: var(--text-body);
}
@media screen and (max-width: 520px) {
  form.wpcf7-form .wpcf7-radio label span {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  form.wpcf7-form .wpcf7-radio label span {
    font-size: 15px;
  }
}
@media screen and (max-width: 520px) {
  form.wpcf7-form .wpcf7-radio label span {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  form.wpcf7-form .wpcf7-radio label span {
    font-size: 16px;
  }
}
form.wpcf7-form .wpcf7-radio label:hover:before {
  background-color: var(--surface-selector-hover);
  border-color: var(--border-selector-active);
}
form.wpcf7-form .wpcf7-radio label:has(input:active):before {
  background-color: var(--surface-selector-press);
  border-color: var(--border-selector-active);
}
form.wpcf7-form .wpcf7-radio label:has(input:checked):before {
  border-color: var(--border-input-focus);
  background-size: 10px;
}
form.wpcf7-form .wpcf7-radio label:before {
  border-radius: 50%;
}
form.wpcf7-form .wpcf7-radio label:has(input:checked):before {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='10' height='10' rx='5' fill='%23EF6F2A'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 5C0 2.23858 2.23858 0 5 0C7.76142 0 10 2.23858 10 5C10 7.76142 7.76142 10 5 10C2.23858 10 0 7.76142 0 5Z' fill='%230B989E'/%3E%3C/svg%3E%0A") !important;
}
form.wpcf7-form .error,
form.wpcf7-form .wpcf7-not-valid-tip {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding-top: var(--space-md);
  font-size: 13px;
  font-weight: 500;
  color: var(--text-error);
}
form.wpcf7-form .error:empty,
form.wpcf7-form .wpcf7-not-valid-tip:empty {
  display: none;
}
form.wpcf7-form .error:before,
form.wpcf7-form .wpcf7-not-valid-tip:before {
  display: block;
  width: 16px;
  min-width: 16px;
  height: 16px;
}
form.wpcf7-form .error:before,
form.wpcf7-form .wpcf7-not-valid-tip:before {
  content: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='15' height='15' rx='7.5' fill='%23FFF1F2'/%3E%3Crect x='0.5' y='0.5' width='15' height='15' rx='7.5' stroke='%23E11D48'/%3E%3Cpath d='M8.63029 9.47986L7.38029 9.47986L7.38029 4.13986L8.63029 4.13986L8.63029 9.47986ZM8.00029 10.3599C8.22696 10.3599 8.41696 10.4299 8.57029 10.5699C8.72363 10.7165 8.80029 10.8965 8.80029 11.1099C8.80029 11.3232 8.72363 11.4999 8.57029 11.6399C8.41696 11.7865 8.22696 11.8599 8.00029 11.8599C7.77363 11.8599 7.58363 11.7899 7.43029 11.6499C7.27696 11.5165 7.20029 11.3465 7.20029 11.1399C7.20029 10.9199 7.27696 10.7332 7.43029 10.5799C7.57696 10.4332 7.76696 10.3599 8.00029 10.3599Z' fill='%23E11D48'/%3E%3C/svg%3E%0A");
}
form.wpcf7-form .notice {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding-top: var(--space-md);
  font-size: 13px;
  font-weight: 500;
  color: var(--text-notice);
}
form.wpcf7-form .notice:empty {
  display: none;
}
form.wpcf7-form .notice:before {
  display: block;
  width: 16px;
  min-width: 16px;
  height: 16px;
}
form.wpcf7-form .notice:before {
  content: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='15' height='15' rx='7.5' fill='%23F0F9FF'/%3E%3Crect x='0.5' y='0.5' width='15' height='15' rx='7.5' stroke='%230EA5E9'/%3E%3Cpath d='M7.36995 6.52014H8.61995V11.8601H7.36995V6.52014ZM7.99995 5.64014C7.77328 5.64014 7.58328 5.57014 7.42995 5.43014C7.27662 5.28347 7.19995 5.10347 7.19995 4.89014C7.19995 4.6768 7.27662 4.50014 7.42995 4.36014C7.58328 4.21347 7.77328 4.14014 7.99995 4.14014C8.22662 4.14014 8.41662 4.21014 8.56995 4.35014C8.72328 4.48347 8.79995 4.65347 8.79995 4.86014C8.79995 5.08014 8.72328 5.2668 8.56995 5.42014C8.42328 5.5668 8.23328 5.64014 7.99995 5.64014Z' fill='%230EA5E9'/%3E%3C/svg%3E%0A");
}
form.wpcf7-form p.required {
  line-height: var(--font-body-lineheight);
  font-size: calc(15px + 0 * (100vw - 520px) / 600);
  font-size: calc(16px + 0 * (100vw - 520px) / 600);
  padding: 0;
  width: fit-content;
  color: var(--text-body);
}
@media screen and (max-width: 520px) {
  form.wpcf7-form p.required {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  form.wpcf7-form p.required {
    font-size: 15px;
  }
}
@media screen and (max-width: 520px) {
  form.wpcf7-form p.required {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  form.wpcf7-form p.required {
    font-size: 16px;
  }
}
form.wpcf7-form .wpcf7-spinner {
  position: absolute;
  left: 7px;
  bottom: 16px;
  margin: 0px;
}

.standard-formular {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  gap: var(--space-xl);
}
.standard-formular .button-container {
  width: 100%;
}
.standard-formular .button-container button.--color-accent {
  width: 100%;
}
.standard-formular > label {
  width: 100%;
}
.standard-formular > label span {
  display: block;
  width: 100%;
}
.standard-formular > label span.labeltext {
  padding-bottom: var(--space-md);
  font-size: 12px;
  color: var(--text-headings, #3f444a);
  font-family: var(--font-family-body, Manrope);
  font-weight: var(--font-weight-bold, 700);
  line-height: 150%;
}
.standard-formular > label span.labeltext sup {
  color: var(--text-highlight, #0b989e);
}
.standard-formular > label span.labeltext .required {
  display: inline;
}

/*------------------------------------*/
/* SECTION - Responsive */
/*------------------------------------*/
@media (min-width: 521px) {
  .standard-formular > label {
    min-width: 100px;
  }
  .standard-formular > label.full, .standard-formular > label.ten {
    width: 100%;
    flex-grow: 10;
  }
  .standard-formular > label.nine {
    width: calc(90% - var(--space-xl));
    flex-grow: 9;
  }
  .standard-formular > label.eight {
    width: calc(80% - var(--space-xl));
    flex-grow: 8;
  }
  .standard-formular > label.seven {
    width: calc(70% - var(--space-xl));
    flex-grow: 7;
  }
  .standard-formular > label.six {
    width: calc(60% - var(--space-xl));
    flex-grow: 6;
  }
  .standard-formular > label.half, .standard-formular > label.five {
    width: calc(50% - var(--space-xl));
    flex-grow: 5;
  }
  .standard-formular > label.four {
    width: calc(40% - var(--space-xl));
    flex-grow: 4;
  }
  .standard-formular > label.three {
    width: calc(30% - var(--space-xl));
    flex-grow: 3;
  }
  .standard-formular > label.two {
    width: calc(20% - var(--space-xl));
    flex-grow: 2;
  }
  .standard-formular > label.one {
    width: calc(10% - var(--space-xl));
    flex-grow: 1;
  }
}
/*------------------------------------*\
    BOX20.SCSS

	Sets the width of a column based on its parent container - .box20 or .wp-block-columns.box20 .col;

	Layout for 2 columns layout on desktop 

\*------------------------------------*/
@media (min-width: 769px) {
  .box50 > .col,
  .wp-block-columns.box50 > .wp-block-column {
    width: calc(50% - var(--layout-grid-gutter) / 2);
  }
}

/*------------------------------------*\
    BOX20.SCSS

	Sets the width of a column based on its parent container - .box20 or .wp-block-columns.box20 .col;

	Layout for 3 columns layout on desktop 

\*------------------------------------*/
@media (min-width: 769px) {
  .box33 .col,
  .box33 .wp-block-column,
  .wp-block-columns.box33 .col,
  .wp-block-columns.box33 .wp-block-column {
    width: calc(33.333% - var(--layout-grid-gutter) * 2 / 3);
  }
}

/*------------------------------------*\
    BOX20.SCSS

	Sets the width of a column based on its parent container - .box20 or .wp-block-columns.box20 .col;

	Layout for 4 columns layout on desktop 

\*------------------------------------*/
@media (min-width: 521px) {
  .box25 .col,
  .box25 .wp-block-column,
  .wp-block-columns.box25 .col,
  .wp-block-columns.box25 .wp-block-column {
    width: calc(50% - var(--layout-grid-gutter) / 2);
  }
}
@media (min-width: 1025px) {
  .box25 .col,
  .box25 .wp-block-column,
  .wp-block-columns.box25 .col,
  .wp-block-columns.box25 .wp-block-column {
    width: calc(25% - var(--layout-grid-gutter) * 3 / 4);
  }
}

/*------------------------------------*\
    BOX20.SCSS

	Sets the width of a column based on its parent container - .box20 or .wp-block-columns.box20 .col;

	Layout for 5 columns layout on desktop 

\*------------------------------------*/
@media (min-width: 521px) {
  .box20 .col,
  .box20 .wp-block-column,
  .wp-block-columns.box20 .col,
  .wp-block-columns.box20 .wp-block-column {
    width: calc(50% - var(--layout-grid-gutter) / 2);
  }
}
@media (min-width: 1025px) {
  .box20 .col,
  .box20 .wp-block-column,
  .wp-block-columns.box20 .col,
  .wp-block-columns.box20 .wp-block-column {
    width: calc(20% - var(--layout-grid-gutter) * 4 / 5);
  }
}

/*------------------------------------*/
/* ACF BLOCK - Video */
/*------------------------------------*/
.video {
  /* ---------- RESPONSIVE ---------- */
}
.video .inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
}
.video .text-container {
  gap: 10px;
  position: relative;
}
.video .text-container a.button {
  width: auto;
}
.video .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 3;
  display: none;
  border-radius: var(--components-radius-large, 24px);
  background: radial-gradient(114.21% 101.51% at 9.06% 0%, #fff 20%, rgba(255, 255, 255, 0) 80%);
}
.video .video-container {
  height: 192px;
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: var(--components-radius-large, 20px);
  outline: 6px solid rgba(11, 152, 158, 0.1);
  border: 1px solid var(--icon-accent, #0b989e);
}
.video .video-container video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.video .controls-container {
  position: absolute;
  bottom: 16px;
  right: 16px;
  z-index: 7;
}
.video .controls-container .controls {
  display: inline-flex;
  padding-left: 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.video .controls-container .controls .sound-toggle {
  display: flex;
  align-items: center;
  gap: 16px;
  background: rgba(63, 68, 74, 0.7);
  border-radius: var(--components-radius-rounded, 1000px);
  padding: 0;
  transition: var(--transition);
  padding-left: 30px;
  position: relative;
  z-index: 7;
  color: #fff;
  font-family: "Manrope";
  font-size: var(--font-size-xs, 14px);
  font-style: normal;
  font-weight: 700;
  line-height: 100%; /* 14px */
  border: 0;
}
.video .controls-container .controls .sound-toggle .label {
  white-space: nowrap;
}
.video .controls-container .controls .sound-toggle .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(63, 68, 74, 0.7);
  border-radius: 50%;
  width: 48px;
  height: 48px;
  border: 2px solid rgba(231, 245, 245, 0.2);
}
.video .controls-container .controls .sound-toggle .icon svg {
  width: 24px;
  height: 24px;
}
.video .controls-container .controls .sound-toggle:hover {
  background: rgba(37, 40, 44, 0.7);
  cursor: pointer;
}
.video .controls-container .controls .sound-toggle:active, .video .controls-container .controls .sound-toggle:focus {
  border: 0px !important;
  border-color: rgba(37, 40, 44, 0.7) !important;
  --tw-ring-color: rgba(37, 40, 44, 0.7) !important;
  outline: none;
  box-shadow: none;
  border-color: initial;
}
@media (min-width: 769px) {
  .video .inner {
    flex-direction: row;
  }
  .video .video-container {
    height: 630px;
    width: 100%;
    border-radius: var(--components-radius-large, 24px);
  }
  .video .text-container {
    position: absolute;
    top: 48px;
    left: 48px;
    z-index: 5;
    width: calc(100% - 96px);
  }
  .video .content-container {
    gap: 24px;
  }
  .video .overlay {
    display: block;
  }
  .video .controls-container {
    bottom: 48px;
    right: 48px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Formular mit Kontakt */
/*------------------------------------*/
.formular-advanced .inner--big {
  max-width: 1512px;
  width: 100%;
}
.formular-advanced .content-container {
  padding: 0px var(--layout-grid-outergap, 32px) 0px var(--layout-grid-outergap, 32px);
}
.formular-advanced .contact-container {
  width: 100%;
  border-radius: var(--components-radius-large, 20px) 0px 0px var(--components-radius-large, 20px);
  background: var(--surface-primary, #3f444a);
  outline: 6px solid var(--border-accent, #e7f5f5);
  display: flex;
  padding: var(--components-box-padding-large, 24px) var(--layout-grid-outergap, 24px) var(--components-box-padding-large, 24px) var(--components-box-padding-large, 24px);
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
  position: relative;
  justify-content: space-between;
  margin: 0 20px;
}
.formular-advanced .contact-container h2 {
  padding: 0;
  color: var(--text-headings-on-dark, #fff);
  font-size: calc(28px + 14 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  .formular-advanced .contact-container h2 {
    font-size: 28px;
  }
}
@media screen and (min-width: 1120px) {
  .formular-advanced .contact-container h2 {
    font-size: 42px;
  }
}
.formular-advanced .contact-container .deco-element {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  width: 120px;
  height: 120px;
}
.formular-advanced .contact-container .bottom {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 36px;
  align-self: stretch;
}
.formular-advanced .contact-container .data p {
  color: var(--text-highlight-on-dark, #11b8bb);
  /* Überschrift/Subline */
  font-family: var(--font-family-body, Manrope);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-bold, 700);
  line-height: 125%; /* 20px */
  padding: 0;
  padding-bottom: 10px;
}
@media screen and (max-width: 520px) {
  .formular-advanced .contact-container .data p {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .formular-advanced .contact-container .data p {
    font-size: 18px;
  }
}
.formular-advanced .contact-container .data a.icon-link {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(24px + 12 * (100vw - 520px) / 600);
  font-size: calc(24px + 12 * (100vw - 520px) / 600);
  color: var(--text-headings-on-dark, #fff);
  padding: 0;
}
@media screen and (max-width: 520px) {
  .formular-advanced .contact-container .data a.icon-link {
    font-size: 24px;
  }
}
@media screen and (min-width: 1120px) {
  .formular-advanced .contact-container .data a.icon-link {
    font-size: 36px;
  }
}
@media screen and (max-width: 520px) {
  .formular-advanced .contact-container .data a.icon-link {
    font-size: 24px;
  }
}
@media screen and (min-width: 1120px) {
  .formular-advanced .contact-container .data a.icon-link {
    font-size: 36px;
  }
}
.formular-advanced .contact-container .data a.icon-link svg {
  display: none;
}
@media (min-width: 769px) {
  .formular-advanced .gridrow {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .formular-advanced .content-container {
    padding: 0px 95px 0px var(--layout-grid-outergap, 32px);
    width: calc(64% - 10px);
  }
  .formular-advanced .contact-container {
    width: calc(36% - 10px);
    margin: 0;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Hero Banner mit Kontakt */
/*------------------------------------*/
.hero-banner-contact {
  position: relative;
  overflow: hidden;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.hero-banner-contact .inner {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1025px) {
  .hero-banner-contact .inner {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 80px 0;
  }
}
.hero-banner-contact .text-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: var(--layout-grid-column-gap, 32px);
}
.hero-banner-contact .text-container p {
  color: #0b989e;
  font-size: var(--font-size-md, 16px);
}
.hero-banner-contact .text-container .icon {
  display: inline-block;
}
.hero-banner-contact .wysiwyg ul {
  --wv-ul-marker-size: 20px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 14px;
  list-style: none;
  list-style-type: none;
  padding: 0;
}
.hero-banner-contact .wysiwyg ul li {
  color: var(--text-body, #52525b);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-sm, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 700);
  line-height: 160%; /* 25.6px */
  padding-left: calc(var(--wv-ul-marker-size) + 12px);
  position: relative;
  text-align: left;
}
.hero-banner-contact .wysiwyg ul li:before {
  content: "";
  display: block;
  position: absolute;
  width: var(--wv-ul-marker-size);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='21' viewBox='0 0 20 21' fill='none'%3E%3Cpath d='M7.49967 10.5002L9.16634 12.1669L12.4997 8.83358M3.20801 7.68358C3.08637 7.13568 3.10505 6.56595 3.2623 6.02719C3.41956 5.48844 3.7103 4.99811 4.10756 4.60168C4.50483 4.20524 4.99576 3.91553 5.53484 3.75941C6.07393 3.60328 6.6437 3.5858 7.19134 3.70858C7.49276 3.23716 7.90801 2.84921 8.3988 2.58048C8.88959 2.31175 9.44013 2.1709 9.99967 2.1709C10.5592 2.1709 11.1098 2.31175 11.6005 2.58048C12.0913 2.84921 12.5066 3.23716 12.808 3.70858C13.3565 3.58526 13.9272 3.60267 14.4672 3.75917C15.0071 3.91568 15.4987 4.20619 15.8962 4.60371C16.2937 5.00122 16.5842 5.4928 16.7407 6.03275C16.8972 6.57269 16.9147 7.14344 16.7913 7.69191C17.2628 7.99334 17.6507 8.40858 17.9194 8.89937C18.1882 9.39016 18.329 9.9407 18.329 10.5002C18.329 11.0598 18.1882 11.6103 17.9194 12.1011C17.6507 12.5919 17.2628 13.0072 16.7913 13.3086C16.9141 13.8562 16.8966 14.426 16.7405 14.9651C16.5844 15.5042 16.2947 15.9951 15.8982 16.3924C15.5018 16.7896 15.0115 17.0804 14.4727 17.2376C13.934 17.3949 13.3642 17.4135 12.8163 17.2919C12.5153 17.7651 12.0997 18.1547 11.6081 18.4247C11.1165 18.6946 10.5647 18.8361 10.0038 18.8361C9.44298 18.8361 8.89119 18.6946 8.39957 18.4247C7.90794 18.1547 7.49237 17.7651 7.19134 17.2919C6.6437 17.4147 6.07393 17.3972 5.53484 17.2411C4.99576 17.085 4.50483 16.7952 4.10756 16.3988C3.7103 16.0024 3.41956 15.512 3.2623 14.9733C3.10505 14.4345 3.08637 13.8648 3.20801 13.3169C2.73297 13.0163 2.34168 12.6004 2.07055 12.1079C1.79941 11.6155 1.65723 11.0624 1.65723 10.5002C1.65723 9.93807 1.79941 9.38503 2.07055 8.89257C2.34168 8.4001 2.73297 7.98421 3.20801 7.68358Z' stroke='%230B989E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}
/*------------------------------------*/
/* ACF BLOCK - Produktvergleich */
/*------------------------------------*/
.products {
  background: var(--surface-box, #f4f4f5);
  padding: var(--layout-space-large, 40px) 0px;
  overflow: hidden;
  position: relative;
}
.products .deco {
  position: absolute;
  width: 120px;
  height: 120px;
  z-index: 0;
}
.products .deco.top-right {
  top: 0;
  right: 0;
}
.products .deco.bottom-left {
  bottom: 0;
  left: 0;
}
.products .content-container {
  text-align: center;
}
.products .content-container .top {
  width: 100%;
}
@media (min-width: 769px) {
  .products .content-container .top {
    width: 100%;
  }
}
.products .products-container {
  margin-top: 74px;
  overflow-x: auto;
  width: 100%;
  overflow: auto;
}
@media (min-width: 1513px) {
  .products .products-container {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE/Edge */
  }
  .products .products-container::-webkit-scrollbar {
    display: none; /* Chrome, Safari */
  }
}
.products .products-container > .gridrow {
  flex-wrap: nowrap;
  width: 1120px;
  align-items: stretch;
}
.products .products-container .col {
  width: 33% !important;
  flex: 0 0 300px;
}
@media (min-width: 769px) {
  .products .products-container .col {
    flex: 0 0 340px;
  }
}
.products .cta-grp {
  width: 100%;
  justify-content: center;
}
.products .product {
  flex: 1;
  max-width: 80vw;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.products .product .top {
  width: 100%;
  min-height: 50px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  align-items: center;
  padding: 0 20px;
  z-index: 3;
}
@media (min-width: 769px) {
  .products .product .top {
    width: 100%;
  }
}
.products .product .top .image-container {
  height: 140px;
}
.products .product .top .image-container img {
  min-width: 140px;
  width: 140px;
}
.products .product .bottom {
  margin-top: -50px;
  border-radius: var(--components-radius-large, 20px);
  background: var(--surface-page, #fff);
  border: 2px solid var(--surface-page, #fff);
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 70px var(--components-box-padding-medium, 24px) var(--components-box-padding-medium, 24px) var(--components-box-padding-medium, 24px);
  display: flex;
  transition: var(--transition);
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
  align-self: stretch;
}
.products .product .bottom a.button:hover {
  border-color: black;
}
.products .product .price {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
}
.products .product .price * {
  transition: var(--transition);
  white-space: nowrap;
  text-align: right;
}
.products .product .price .main {
  color: var(--text-headings, #3f444a);
  /* Überschrift/Subline */
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-md, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 125%; /* 20px */
}
.products .product .price .additional {
  color: var(--text-body, #52525b);
  /* Fließtext/Box */
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 180%; /* 21.6px */
}
.products .product .wysiwyg {
  margin-top: 32px;
}
.products .product .wysiwyg ul {
  --wv-ul-marker-size: 20px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 14px;
  list-style: none;
  list-style-type: none;
  padding: 0;
}
.products .product .wysiwyg ul li {
  color: var(--text-body, #52525b);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-sm, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 700);
  line-height: 160%; /* 25.6px */
  padding-left: calc(var(--wv-ul-marker-size) + 12px);
  position: relative;
  text-align: left;
}
.products .product .wysiwyg ul li:before {
  content: "";
  display: block;
  position: absolute;
  width: var(--wv-ul-marker-size);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='21' viewBox='0 0 20 21' fill='none'%3E%3Cpath d='M7.49967 10.5002L9.16634 12.1669L12.4997 8.83358M3.20801 7.68358C3.08637 7.13568 3.10505 6.56595 3.2623 6.02719C3.41956 5.48844 3.7103 4.99811 4.10756 4.60168C4.50483 4.20524 4.99576 3.91553 5.53484 3.75941C6.07393 3.60328 6.6437 3.5858 7.19134 3.70858C7.49276 3.23716 7.90801 2.84921 8.3988 2.58048C8.88959 2.31175 9.44013 2.1709 9.99967 2.1709C10.5592 2.1709 11.1098 2.31175 11.6005 2.58048C12.0913 2.84921 12.5066 3.23716 12.808 3.70858C13.3565 3.58526 13.9272 3.60267 14.4672 3.75917C15.0071 3.91568 15.4987 4.20619 15.8962 4.60371C16.2937 5.00122 16.5842 5.4928 16.7407 6.03275C16.8972 6.57269 16.9147 7.14344 16.7913 7.69191C17.2628 7.99334 17.6507 8.40858 17.9194 8.89937C18.1882 9.39016 18.329 9.9407 18.329 10.5002C18.329 11.0598 18.1882 11.6103 17.9194 12.1011C17.6507 12.5919 17.2628 13.0072 16.7913 13.3086C16.9141 13.8562 16.8966 14.426 16.7405 14.9651C16.5844 15.5042 16.2947 15.9951 15.8982 16.3924C15.5018 16.7896 15.0115 17.0804 14.4727 17.2376C13.934 17.3949 13.3642 17.4135 12.8163 17.2919C12.5153 17.7651 12.0997 18.1547 11.6081 18.4247C11.1165 18.6946 10.5647 18.8361 10.0038 18.8361C9.44298 18.8361 8.89119 18.6946 8.39957 18.4247C7.90794 18.1547 7.49237 17.7651 7.19134 17.2919C6.6437 17.4147 6.07393 17.3972 5.53484 17.2411C4.99576 17.085 4.50483 16.7952 4.10756 16.3988C3.7103 16.0024 3.41956 15.512 3.2623 14.9733C3.10505 14.4345 3.08637 13.8648 3.20801 13.3169C2.73297 13.0163 2.34168 12.6004 2.07055 12.1079C1.79941 11.6155 1.65723 11.0624 1.65723 10.5002C1.65723 9.93807 1.79941 9.38503 2.07055 8.89257C2.34168 8.4001 2.73297 7.98421 3.20801 7.68358Z' stroke='%230B989E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  left: 0;
  top: 3px;
}
.products .product .title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  align-self: stretch;
}
.products .product .title h3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  align-self: stretch;
  padding: 0;
}
.products .product .title .subline {
  /* Überschrift/Subline */
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-md, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 125%; /* 20px */
  transition: var(--transition);
  padding: 0;
  color: var(--text-body, #52525b);
}
.products .product:first-of-type .top .price * {
  color: var(--icon-accent, #0b989e);
}
.products .product:first-of-type .title .subline {
  color: var(--text-highlight, #0b989e);
}
.products .product:first-of-type .bottom {
  border-color: var(--icon-accent, #0b989e);
  cursor: pointer;
}
.products .product:first-of-type .cta-grp a.button {
  background-color: var(--icon-accent, #0b989e);
  border-color: var(--icon-accent, #0b989e);
}
.products .product .cta-grp a.button {
  width: 100%;
}
@media (min-width: 1025px) {
  .products {
    padding: var(--layout-space-medium, 44px) 0px var(--layout-space-large, 64px) 0px;
  }
  .products .product .top .image-container img {
    min-width: 200px;
    width: 200px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Formular */
/*------------------------------------*/
.formular .ctas {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.formular a.icon-link {
  color: var(--text-action, #0b989e);
  /* Fließtext/Offen */
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-md, 18px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 180%; /* 32.4px */
  max-width: 237px;
}
.formular a.icon-link .icon {
  min-width: 18px;
}
.formular .subline + h2 {
  padding-top: 8px;
}
@media (min-width: 769px) {
  .formular .ctas {
    margin-top: 48px;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Prozess */
/*------------------------------------*/
.process {
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.process .gridrow {
  gap: 16px;
}
.process .cta-grp {
  justify-content: center;
  padding-top: var(--layout-space-large, 40px);
}
.process .cta-grp a.button {
  width: 100%;
}
.process .step:nth-child(1) .container::before {
  animation: fill-vertical-1 8s ease-out infinite;
}
.process .step:nth-child(2) .container::before {
  animation: fill-vertical-2 8s ease-out infinite;
}
.process .step:nth-child(3) .container::before {
  animation: fill-vertical-3 8s ease-out infinite;
}
.process .step .container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 24px;
  align-self: stretch;
}
.process .step .container::before {
  content: "";
  display: block;
  position: absolute;
  width: 5px;
  height: 0%;
  background: var(--highlight, #0b989e);
  top: 0;
  left: 13px;
  z-index: -1;
}
.process .step .container::after {
  content: "";
  display: block;
  position: absolute;
  width: 5px;
  height: 100%;
  background: var(--border-accent, #e7f5f5);
  top: 0;
  left: 13px;
  z-index: -2;
}
.process .step .container.animate::before {
  height: 100%;
}
.process .step .content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  padding-bottom: 20px;
  padding-top: 10px;
}
.process .step .count {
  width: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(44px + 10 * (100vw - 520px) / 600);
  line-height: var(--font-line-height-3xl, 60px); /* 111.111% -> line-height: 125%; /* 55px */
  color: var(--text-highlight, #0b989e);
  line-height: inherit;
  padding: 16px 0;
}
@media screen and (max-width: 520px) {
  .process .step .count {
    font-size: 44px;
  }
}
@media screen and (min-width: 1120px) {
  .process .step .count {
    font-size: 54px;
  }
}
.process .step .icon {
  width: 40px;
  height: 40px;
  margin-bottom: 12px;
}
.process .step h4 {
  color: var(--text-headings, #3f444a);
  padding: 0;
  font-size: var(--font-size-h4, 20px);
}
.process .step .text {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  color: var(--text-body, #52525b);
}
@media screen and (max-width: 520px) {
  .process .step .text {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .process .step .text {
    font-size: 18px;
  }
}
@media (max-width: 1024px) {
  .process .col {
    width: 100% !important;
  }
}
@media (min-width: 1025px) {
  .process .cta-grp {
    padding-top: var(--layout-space-medium, 44px);
  }
  .process .cta-grp a.button {
    width: auto;
  }
  .process .step {
    display: flex;
    min-width: 280px;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    flex: 1 0 0;
  }
  .process .step:nth-child(1) .container::before {
    animation: none;
  }
  .process .step:nth-child(2) .container::before {
    animation: none;
  }
  .process .step:nth-child(3) .container::before {
    animation: none;
  }
  .process .step:nth-child(1) .container::after {
    animation: fill-horizontal-1 8s ease-out infinite;
  }
  .process .step:nth-child(2) .container::after {
    animation: fill-horizontal-2 8s ease-out infinite;
  }
  .process .step:nth-child(3) .container::after {
    animation: fill-horizontal-3 8s ease-out infinite;
  }
  .process .step:last-child .container:after, .process .step:last-child .container:before {
    display: none;
  }
  .process .step .container {
    min-width: 280px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    flex: 1 0 0;
  }
  .process .step .container:before {
    content: "";
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background: var(--border-accent, #e7f5f5);
    top: 16px;
    left: 50%;
    z-index: -2;
  }
  .process .step .container::after {
    content: "";
    display: block;
    position: absolute;
    height: 5px;
    width: 0;
    background: var(--highlight, #0b989e);
    top: 16px;
    left: 50%;
    z-index: -2;
  }
  .process .step .container.animate::after {
    width: 100%;
  }
  .process .step .content {
    padding-top: 0px;
    min-width: 280px;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    flex: 1 0 0;
  }
  .process .step .count {
    width: fit-content;
    padding: 0 24px;
    height: 37px;
  }
  .process .step .icon {
    width: 64px;
    height: 64px;
  }
  .process .step h4,
  .process .step .text {
    text-align: center;
  }
  .process .step h4 {
    padding-top: 8px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Partner */
/*------------------------------------*/
.logo-slider {
  overflow: hidden;
}
@media (min-width: 769px) {
  .logo-slider .inner {
    display: flex;
    align-items: center;
    gap: 46px;
    max-width: 100%;
  }
}
@media (min-width: 983px) and (min-width: 1195px) {
  .logo-slider .inner {
    margin-left: calc(50vw - 1120px / 2);
    padding-left: 0;
  }
}
.logo-slider .text-container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media (min-width: 769px) {
  .logo-slider .text-container {
    max-width: unset;
    flex-direction: column;
    align-items: flex-start;
    gap: 46px;
    width: calc(33% - 16px);
    max-width: 343px;
  }
}
.logo-slider h2 {
  padding: 0;
  margin-bottom: 32px;
}
@media (min-width: 769px) {
  .logo-slider h2 {
    margin-bottom: 0;
  }
}
.logo-slider .marquee-container {
  position: relative;
}
.logo-slider .marquee-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  height: 100%;
  background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
  z-index: 1;
}
.logo-slider .marquee-container::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 100%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #fff 100%);
  z-index: 1;
}
@media (min-width: 769px) {
  .logo-slider .marquee-container {
    width: calc(66% - 16px);
  }
}
.logo-slider .marquee-container.static {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 46px;
}
.logo-slider .marquee-container .logo-slide {
  display: inline-block;
  white-space: nowrap;
  height: 46px;
  width: auto;
  max-width: 200px;
  margin-right: 46px;
}
@media (min-width: 769px) {
  .logo-slider .marquee-container .logo-slide {
    margin-right: 46px;
  }
}
.logo-slider .marquee-container .logo-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.logo-slider .marquee-container .marquee {
  overflow: hidden;
  white-space: nowrap;
}

/*------------------------------------*/
/* ACF BLOCK - Kundenstimmen */
/*------------------------------------*/
.testimonials {
  overflow: clip;
}
.testimonials .swiper {
  margin: auto;
  max-width: var(--layout-wrapper);
  overflow: visible !important;
}
.testimonials .swiper-wrapper {
  margin-left: 20px;
  margin-top: 52px;
}
.testimonials .swiper-slide {
  width: 80%;
  max-width: 320px;
}
.testimonials .testimonial {
  padding: var(--components-box-padding-medium, 24px);
  border-radius: var(--components-radius-medium, 12px);
  background: var(--surface-box, #f4f4f5);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--layout-gap-text, 32px);
  align-self: stretch;
  min-height: 247px;
}
.testimonials .testimonial .stars {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
}
.testimonials .testimonial .stars img {
  height: 24px;
  width: 24px;
}
.testimonials .testimonial .quote {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  color: var(--text-body, #52525b);
  padding: 0;
}
@media screen and (max-width: 520px) {
  .testimonials .testimonial .quote {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .testimonials .testimonial .quote {
    font-size: 18px;
  }
}
@media screen and (max-width: 520px) {
  .testimonials .testimonial .quote {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .testimonials .testimonial .quote {
    font-size: 14px;
  }
}
.testimonials .testimonial .name {
  padding: 0;
}
.testimonials .testimonial.special-quote {
  background: var(--surface-primary, #3f444a);
  position: relative;
  gap: 12px;
  padding-top: 24px;
  padding-bottom: 24px;
  justify-content: center;
}
.testimonials .testimonial.special-quote:before, .testimonials .testimonial.special-quote:after {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.testimonials .testimonial.special-quote:before {
  top: 24px;
  left: 24px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='18' viewBox='0 0 19 18' fill='none'%3E%3Cpath d='M18.624 0.658562L18.144 3.98656C17.1627 3.90123 16.384 4.0719 15.808 4.49856C15.232 4.9039 14.8373 5.49056 14.624 6.25856C14.432 7.00523 14.4 7.85856 14.528 8.81856H16.624C17.7286 8.81856 18.624 9.71399 18.624 10.8186V15.0426C18.624 16.1471 17.7286 17.0426 16.624 17.0426H12.72C11.6154 17.0426 10.72 16.1471 10.72 15.0426V8.49856C10.72 5.70389 11.3813 3.5919 12.704 2.16256C14.0267 0.711895 16 0.210561 18.624 0.658562ZM7.904 0.658562L7.424 3.98656C6.44267 3.90123 5.664 4.0719 5.088 4.49856C4.512 4.9039 4.11733 5.49056 3.904 6.25856C3.712 7.00523 3.68 7.85856 3.808 8.81856H5.904C7.00857 8.81856 7.904 9.71399 7.904 10.8186V15.0426C7.904 16.1471 7.00857 17.0426 5.904 17.0426H2C0.895429 17.0426 0 16.1471 0 15.0426V8.49856C0 5.70389 0.661333 3.5919 1.984 2.16256C3.30667 0.711895 5.28 0.210561 7.904 0.658562Z' fill='%230B989E'/%3E%3C/svg%3E");
}
.testimonials .testimonial.special-quote::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='18' viewBox='0 0 19 18' fill='none'%3E%3Cpath d='M0.375977 17.3529L0.823977 14.0249C1.80531 14.1102 2.58398 13.9502 3.15998 13.5449C3.73598 13.1182 4.11998 12.5315 4.31198 11.7849C4.52531 11.0169 4.57864 10.1529 4.47198 9.19287H2.37598C1.27141 9.19287 0.375977 8.29744 0.375977 7.19287V2.96887C0.375977 1.8643 1.27141 0.968872 2.37598 0.968872H6.27998C7.38455 0.968872 8.27998 1.8643 8.27998 2.96887V9.51287C8.27998 12.3075 7.61864 14.4195 6.29598 15.8489C4.97331 17.2782 2.99998 17.7795 0.375977 17.3529ZM11.096 17.3529L11.544 14.0249C12.5253 14.1102 13.304 13.9502 13.88 13.5449C14.456 13.1182 14.84 12.5315 15.032 11.7849C15.2453 11.0169 15.2986 10.1529 15.192 9.19287H13.096C11.9914 9.19287 11.096 8.29744 11.096 7.19287V2.96887C11.096 1.8643 11.9914 0.968872 13.096 0.968872H17C18.1045 0.968872 19 1.8643 19 2.96887V9.51287C19 12.3075 18.3386 14.4195 17.016 15.8489C15.6933 17.2782 13.72 17.7795 11.096 17.3529Z' fill='%230B989E'/%3E%3C/svg%3E");
  bottom: 24px;
  right: 24px;
}
.testimonials .testimonial.special-quote .quote {
  color: var(--text-headings-on-dark, #fff);
  font-family: var(--font-family-headings, "Halfre");
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-bold, 400);
  line-height: 125%; /* 35px */
}
@media screen and (max-width: 520px) {
  .testimonials .testimonial.special-quote .quote {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  .testimonials .testimonial.special-quote .quote {
    font-size: 28px;
  }
}
.testimonials .testimonial.special-quote .name {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(14px + 2 * (100vw - 520px) / 600);
  padding: 0;
  color: var(--text-body-on-dark, #d4d4d8);
}
@media screen and (max-width: 520px) {
  .testimonials .testimonial.special-quote .name {
    font-size: 14px;
  }
}
@media screen and (min-width: 1120px) {
  .testimonials .testimonial.special-quote .name {
    font-size: 16px;
  }
}
.testimonials .navigation {
  margin-top: 22px;
  display: flex;
  justify-content: flex-end;
}
@media (min-width: 769px) {
  .testimonials .navigation {
    justify-content: flex-end;
  }
  .testimonials .swiper-slide {
    max-width: 360px;
  }
}
@media (min-width: 1025px) {
  .testimonials .swiper-wrapper {
    margin-left: 0;
  }
  .testimonials .testimonial {
    gap: var(--layout-gap-text, 48px);
    min-height: 312px;
  }
  .testimonials .testimonial.special-quote {
    gap: 12px;
    padding-top: 44px;
    padding-bottom: 44px;
  }
  .testimonials .testimonial.special-quote:before, .testimonials .testimonial.special-quote:after {
    width: 25px;
    height: 25px;
  }
  .testimonials .testimonial.special-quote:before {
    top: 32px;
    left: 32px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='18' viewBox='0 0 19 18' fill='none'%3E%3Cpath d='M18.624 0.658562L18.144 3.98656C17.1627 3.90123 16.384 4.0719 15.808 4.49856C15.232 4.9039 14.8373 5.49056 14.624 6.25856C14.432 7.00523 14.4 7.85856 14.528 8.81856H16.624C17.7286 8.81856 18.624 9.71399 18.624 10.8186V15.0426C18.624 16.1471 17.7286 17.0426 16.624 17.0426H12.72C11.6154 17.0426 10.72 16.1471 10.72 15.0426V8.49856C10.72 5.70389 11.3813 3.5919 12.704 2.16256C14.0267 0.711895 16 0.210561 18.624 0.658562ZM7.904 0.658562L7.424 3.98656C6.44267 3.90123 5.664 4.0719 5.088 4.49856C4.512 4.9039 4.11733 5.49056 3.904 6.25856C3.712 7.00523 3.68 7.85856 3.808 8.81856H5.904C7.00857 8.81856 7.904 9.71399 7.904 10.8186V15.0426C7.904 16.1471 7.00857 17.0426 5.904 17.0426H2C0.895429 17.0426 0 16.1471 0 15.0426V8.49856C0 5.70389 0.661333 3.5919 1.984 2.16256C3.30667 0.711895 5.28 0.210561 7.904 0.658562Z' fill='%230B989E'/%3E%3C/svg%3E");
  }
  .testimonials .testimonial.special-quote::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='18' viewBox='0 0 19 18' fill='none'%3E%3Cpath d='M0.375977 17.3529L0.823977 14.0249C1.80531 14.1102 2.58398 13.9502 3.15998 13.5449C3.73598 13.1182 4.11998 12.5315 4.31198 11.7849C4.52531 11.0169 4.57864 10.1529 4.47198 9.19287H2.37598C1.27141 9.19287 0.375977 8.29744 0.375977 7.19287V2.96887C0.375977 1.8643 1.27141 0.968872 2.37598 0.968872H6.27998C7.38455 0.968872 8.27998 1.8643 8.27998 2.96887V9.51287C8.27998 12.3075 7.61864 14.4195 6.29598 15.8489C4.97331 17.2782 2.99998 17.7795 0.375977 17.3529ZM11.096 17.3529L11.544 14.0249C12.5253 14.1102 13.304 13.9502 13.88 13.5449C14.456 13.1182 14.84 12.5315 15.032 11.7849C15.2453 11.0169 15.2986 10.1529 15.192 9.19287H13.096C11.9914 9.19287 11.096 8.29744 11.096 7.19287V2.96887C11.096 1.8643 11.9914 0.968872 13.096 0.968872H17C18.1045 0.968872 19 1.8643 19 2.96887V9.51287C19 12.3075 18.3386 14.4195 17.016 15.8489C15.6933 17.2782 13.72 17.7795 11.096 17.3529Z' fill='%230B989E'/%3E%3C/svg%3E");
    bottom: 32px;
    right: 32px;
  }
  .testimonials .navigation {
    width: 100%;
    margin-top: 44px;
  }
}
@media (min-width: 1025px) and (min-width: 1025px) {
  .testimonials .navigation {
    margin-right: calc(50vw - 1024px / 2);
    padding-right: 0;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Kacheln */
/*------------------------------------*/
.grid .grid-item {
  display: flex;
  padding: var(--components-box-padding-medium, 24px);
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
  border-radius: var(--components-radius-large, 24px);
}
.grid .grid-item:nth-child(even) {
  background: var(--surface-accent, #e7f5f5);
}
.grid .grid-item:nth-child(odd) {
  border-radius: var(--components-radius-large, 20px);
  outline: 6px solid var(--border-accent);
  border: 2px solid var(--icon-accent, #0b989e);
}
.grid .grid-item .title {
  display: flex;
  align-items: flex-start;
  align-self: stretch;
  gap: 12px;
}
.grid .grid-item .title h4 {
  padding: 0;
  color: var(--text-headings, #3f444a);
  font-weight: 400;
  line-height: 125%; /* 25px */
}
.grid .grid-item .title .icon {
  width: 24px;
  display: flex;
}
.grid .grid-item .text {
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 180%; /* 21.6px */
}
@media screen and (max-width: 520px) {
  .grid .grid-item .text {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .grid .grid-item .text {
    font-size: 14px;
  }
}
@media (min-width: 769px) {
  .grid .grid-item {
    width: calc(50% - 10px);
    gap: 16px;
  }
  .grid .grid-item .title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 27px;
  }
  .grid .grid-item .title .icon {
    width: 48px;
    height: 48px;
  }
}
@media (min-width: 1025px) {
  .grid .grid-item {
    width: calc(33% - 10px);
  }
}

/*------------------------------------*/
/* ACF BLOCK - CTA Karte */
/*------------------------------------*/
.cta-card {
  padding: 0 20px;
}
.cta-card .inner {
  display: flex;
  padding: var(--components-box-padding-large, 24px);
  flex-direction: column;
  align-items: center;
  align-self: stretch;
  width: 100%;
  gap: 16px;
  max-width: 930px;
  border-radius: var(--components-radius-large, 20px);
  outline: 6px solid var(--border-accent);
  border: 2px solid var(--icon-accent, #0b989e);
}
.cta-card .inner * {
  padding-top: 0;
  text-align: center;
}
.cta-card .inner .button-container {
  padding-top: 16px;
}
@media (min-width: 769px) {
  .cta-card {
    padding: 0;
  }
  .cta-card .inner {
    padding: var(--components-box-padding-large, 48px);
  }
}

/*------------------------------------*/
/* ACF BLOCK - Bild & Text (Breit) */
/*------------------------------------*/
.image-text-fullwidth {
  display: flex;
  width: 100%;
  padding: 20px var(--layout-grid-outergap, 24px);
  justify-content: center;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  align-self: stretch;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.image-text-fullwidth.bg {
  background: var(--surface-accent, #e7f5f5);
}
.image-text-fullwidth .left,
.image-text-fullwidth .right {
  width: 100%;
  display: flex;
  align-items: center;
}
.image-text-fullwidth .left {
  justify-content: flex-end;
}
.image-text-fullwidth .wysiwyg ul {
  --wv-ul-marker-size: 20px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 14px;
  list-style: none;
  list-style-type: none;
  padding: 0;
}
.image-text-fullwidth .wysiwyg ul li {
  color: var(--text-body, #52525b);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-sm, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 700);
  line-height: 160%; /* 25.6px */
  padding-left: calc(var(--wv-ul-marker-size) + 12px);
  position: relative;
  text-align: left;
}
.image-text-fullwidth .wysiwyg ul li:before {
  content: "";
  display: block;
  position: absolute;
  width: var(--wv-ul-marker-size);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='21' viewBox='0 0 20 21' fill='none'%3E%3Cpath d='M7.49967 10.5002L9.16634 12.1669L12.4997 8.83358M3.20801 7.68358C3.08637 7.13568 3.10505 6.56595 3.2623 6.02719C3.41956 5.48844 3.7103 4.99811 4.10756 4.60168C4.50483 4.20524 4.99576 3.91553 5.53484 3.75941C6.07393 3.60328 6.6437 3.5858 7.19134 3.70858C7.49276 3.23716 7.90801 2.84921 8.3988 2.58048C8.88959 2.31175 9.44013 2.1709 9.99967 2.1709C10.5592 2.1709 11.1098 2.31175 11.6005 2.58048C12.0913 2.84921 12.5066 3.23716 12.808 3.70858C13.3565 3.58526 13.9272 3.60267 14.4672 3.75917C15.0071 3.91568 15.4987 4.20619 15.8962 4.60371C16.2937 5.00122 16.5842 5.4928 16.7407 6.03275C16.8972 6.57269 16.9147 7.14344 16.7913 7.69191C17.2628 7.99334 17.6507 8.40858 17.9194 8.89937C18.1882 9.39016 18.329 9.9407 18.329 10.5002C18.329 11.0598 18.1882 11.6103 17.9194 12.1011C17.6507 12.5919 17.2628 13.0072 16.7913 13.3086C16.9141 13.8562 16.8966 14.426 16.7405 14.9651C16.5844 15.5042 16.2947 15.9951 15.8982 16.3924C15.5018 16.7896 15.0115 17.0804 14.4727 17.2376C13.934 17.3949 13.3642 17.4135 12.8163 17.2919C12.5153 17.7651 12.0997 18.1547 11.6081 18.4247C11.1165 18.6946 10.5647 18.8361 10.0038 18.8361C9.44298 18.8361 8.89119 18.6946 8.39957 18.4247C7.90794 18.1547 7.49237 17.7651 7.19134 17.2919C6.6437 17.4147 6.07393 17.3972 5.53484 17.2411C4.99576 17.085 4.50483 16.7952 4.10756 16.3988C3.7103 16.0024 3.41956 15.512 3.2623 14.9733C3.10505 14.4345 3.08637 13.8648 3.20801 13.3169C2.73297 13.0163 2.34168 12.6004 2.07055 12.1079C1.79941 11.6155 1.65723 11.0624 1.65723 10.5002C1.65723 9.93807 1.79941 9.38503 2.07055 8.89257C2.34168 8.4001 2.73297 7.98421 3.20801 7.68358Z' stroke='%230B989E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}
@media (max-width: 768px) {
  .image-text-fullwidth .content-container {
    width: 100%;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg width='82' height='84' viewBox='0 0 82 84' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg opacity='0.1'%3E%3Cpath d='M17.9485 0.839788L-0.000503117 0.83979C-0.0248522 46.3627 36.7011 83.2705 81.9998 83.2705L81.9998 65.2327C46.6132 65.2327 17.9485 36.4015 17.9485 0.864271L17.9485 0.839788Z' fill='%2303989E'/%3E%3Cpath d='M17.9485 0.839788L-0.000503117 0.83979C-0.0248522 46.3627 36.7011 83.2705 81.9998 83.2705L81.9998 65.2327C46.6132 65.2327 17.9485 36.4015 17.9485 0.864271L17.9485 0.839788Z' fill='%2303989E'/%3E%3Cpath d='M50.0718 0.838744L32.1228 0.838746C32.1228 28.5196 54.4555 50.9629 82 50.9629L82 32.925C64.3676 32.9251 50.0961 18.5584 50.0961 0.863223L50.0718 0.838744Z' fill='%2303989E'/%3E%3Cpath d='M64.2472 0.839355L81.977 0.839354L81.977 18.6569C72.1866 18.6569 64.2472 10.6782 64.2472 0.839355Z' fill='%2303989E'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: contain;
    background-size: 82px 82px;
  }
}
.image-text-fullwidth .left {
  align-self: stretch;
}
.image-text-fullwidth .image-container {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
.image-text-fullwidth .image-container img {
  width: 100%;
  height: auto;
  object-fit: cover;
  max-width: none;
  border-radius: var(--components-radius-large, 20px) var(--components-radius-large, 20px);
  outline: 6px solid var(--border-accent, #e7f5f5);
  max-height: 256px;
  object-position: top;
}
.image-text-fullwidth.--order-text-image .image-container img {
  border-radius: var(--components-radius-large, 20px) var(--components-radius-large, 20px);
}
@media (min-width: 769px) {
  .image-text-fullwidth {
    padding: 0;
    flex-direction: row;
    justify-content: center;
    align-self: center;
    gap: var(--layout-grid-column-gap, 20px);
  }
  .image-text-fullwidth .left,
  .image-text-fullwidth .right {
    width: 50%;
  }
  .image-text-fullwidth .right .content-container {
    padding: var(--components-box-padding-large, 48px) var(--layout-grid-outergap, 32px) var(--components-box-padding-large, 48px) var(--layout-grid-column-width, 95px);
  }
  .image-text-fullwidth .image-container {
    padding: 6px 0px;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: flex-end;
  }
  .image-text-fullwidth .image-container img {
    border-radius: 0px var(--components-radius-large, 24px) var(--components-radius-large, 24px) 0px;
    max-height: 650px;
    outline: 6px solid var(--border-accent, #e7f5f5);
  }
  .image-text-fullwidth.bg {
    background: var(--surface-accent, #e7f5f5);
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 120 120' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg opacity='0.1' clip-path='url(%23clip0_4050_6194)'%3E%3Cpath d='M120.63 26.5823L120.63 0.315569C54.0114 0.279935 -2.89765e-06 54.0251 0 120.316L26.3968 120.316C26.3968 68.5306 68.5887 26.5823 120.594 26.5823L120.63 26.5823Z' fill='%2303989E'/%3E%3Cpath d='M120.632 73.5917L120.632 47.325C80.1231 47.325 47.2793 80.0069 47.2793 120.316L73.6761 120.316C73.6761 94.5124 94.7004 73.6274 120.596 73.6274L120.632 73.5917Z' fill='%2303989E'/%3E%3Cpath d='M120.631 94.3353L120.631 120.281L94.5564 120.281C94.5564 105.954 106.233 94.3353 120.631 94.3353Z' fill='%2303989E'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_4050_6194'%3E%3Crect width='120' height='120.631' fill='white' transform='translate(0 120.316) rotate(-90)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: contain;
    background-size: 120px 120px;
  }
  .image-text-fullwidth.--order-text-image {
    flex-direction: row-reverse;
  }
  .image-text-fullwidth.--order-text-image .right .content-container {
    padding: 20px;
  }
  .image-text-fullwidth.--order-text-image .image-container img {
    border-radius: var(--components-radius-large, 20px) 0 0 var(--components-radius-large, 20px);
  }
}
@media (min-width: 769px) and (min-width: 1533px) {
  .image-text-fullwidth.--order-text-image .content-container {
    margin-left: calc(50vw - 1512px / 2);
    padding-left: 0;
    max-width: calc(100vw - (50vw - 1512px / 2));
  }
}
@media (min-width: 769px) {
  .image-text-fullwidth.--order-text-image.bg {
    background-position: bottom left;
    background-image: url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 120 120' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg opacity='0.1' clip-path='url(%23clip0_4050_6135)'%3E%3Cpath d='M93.7333 120.63H120C120.036 54.0114 66.2905 0 0 0V26.3968C51.785 26.3968 93.7333 68.5887 93.7333 120.594V120.63Z' fill='%2303989E'/%3E%3Cpath d='M46.7241 120.632H72.9908C72.9908 80.1231 40.3089 47.2793 0 47.2793V73.6761C25.8034 73.6761 46.6884 94.7004 46.6884 120.596L46.7241 120.632Z' fill='%2303989E'/%3E%3Cpath d='M25.9805 120.63H0.0345211L0.0345211 94.5554C14.3618 94.5554 25.9805 106.232 25.9805 120.63Z' fill='%2303989E'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_4050_6135'%3E%3Crect width='120' height='120.632' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  }
}

/*------------------------------------*/
/* ACF BLOCK - Fakt */
/*------------------------------------*/
.fact {
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.fact .inner {
  display: flex;
  align-items: stretch;
  gap: 43px;
  padding: 0px;
  max-width: var(--layout-grid-inner-width-padding, 1184px);
}
.fact .gridrow {
  gap: 32px;
}
.fact .content-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.fact .content-container > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.fact .content-container a.button {
  width: auto;
}
.fact .image-container {
  position: relative;
  display: flex;
  justify-content: flex-end;
  height: 237px;
  width: 100%;
}
.fact .image-container img {
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  object-position: bottom right;
  display: block;
}
@media (min-width: 769px) {
  .fact {
    flex-direction: row;
  }
  .fact .inner {
    padding: 0px var(--layout-grid-outergap, 32px);
  }
  .fact .content-container {
    width: calc(66% - 10px);
    padding-bottom: 50px;
  }
  .fact .content-container h2 {
    color: var(--text-headings, #3f444a);
    font-family: var(--font-family-headings);
    font-weight: 400;
  }
  .fact .gridrow {
    gap: var(--layout-grid-column-gap, 20px);
    justify-content: space-between;
  }
  .fact .image-container {
    width: calc(33% - 10px);
    align-items: flex-end;
    padding-top: 50px;
    height: 340px;
  }
  .fact .image-container img {
    height: auto;
    object-fit: contain;
  }
}

/*------------------------------------*\
	ACF Block: Akkordeon
\*------------------------------------*/
.accordeon {
  width: calc(100% - 2 * var(--layout-outergap));
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
  margin-top: var(--font-default-linegap);
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 10px;
  padding: 0 20px;
}
.accordeon .item {
  align-items: stretch;
  border-radius: var(--components-radius-large, 20px);
  background: var(--surface-box, #f4f4f5);
}
.accordeon .item .title {
  margin: 0;
  padding: 0;
  position: relative;
  cursor: pointer;
  transition: all 0.25s ease-in-out;
  padding: 16px 70px 16px 20px;
  color: var(--text-headings, #3f444a);
  font-family: var(--font-family-body, Manrope);
  font-size: calc(14px + 6 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 21px */
  display: flex;
  align-items: center;
  gap: 16px;
  align-self: stretch;
}
@media screen and (max-width: 520px) {
  .accordeon .item .title {
    font-size: 14px;
  }
}
@media screen and (min-width: 1120px) {
  .accordeon .item .title {
    font-size: 20px;
  }
}
.accordeon .item .title span {
  display: inline-block;
}
.accordeon .item .title:after {
  content: "";
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  aspect-ratio: 1;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 20H27' stroke='black' stroke-width='2'/%3E%3Cpath d='M20 13V27' stroke='black' stroke-width='2'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: all 0.25s ease-in-out;
}
.accordeon .item .icon {
  width: 24px;
  height: 24px;
}
.accordeon .item .icon svg {
  height: 100%;
  width: 100%;
}
.accordeon .item .contents-container {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 300ms linear;
}
.accordeon .item .content {
  padding: 0px var(--space-xl, 20px) var(--space-xl, 20px) var(--space-xl, 20px);
  overflow: hidden;
  transition: padding 300ms linear;
  color: var(--text-body, #52525b);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-xs, 12px);
  font-size: calc(12px + 6 * (100vw - 520px) / 600);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 180%; /* 21.6px */
}
.accordeon .item .content > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
@media screen and (max-width: 520px) {
  .accordeon .item .content {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .accordeon .item .content {
    font-size: 18px;
  }
}
.accordeon .item.--open .title:after {
  transform: translateY(-50%) rotate(180deg);
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 20H27' stroke='black' stroke-width='2'/%3E%3Cpath d='M27 20L13 20' stroke='black' stroke-width='2'/%3E%3C/svg%3E%0A");
}
.accordeon .item:not(.--open) .contents-container {
  grid-template-rows: 0fr;
}
.accordeon .item:not(.--open) .content {
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 769px) {
  .accordeon {
    padding: 0 0px;
  }
  .accordeon .item .icon {
    width: 32px;
    height: 32px;
  }
  .accordeon .item .title {
    padding: var(--space-2xl) 90px var(--space-2xl) var(--space-2xl);
  }
  .accordeon .item .title::after {
    right: 25px;
  }
  .accordeon .item .content {
    padding: 0px var(--space-2xl) var(--space-2xl) var(--space-2xl);
  }
}

/*------------------------------------*/
/* ACF Block: Galerie Slider */
/*------------------------------------*/
.gallery-slider {
  --gallery-gap: var(--space-md);
  overflow: hidden;
}
.gallery-slider .swiper {
  margin-left: calc(-1 * var(--gallery-gap) / 2);
  margin-right: calc(-1 * var(--gallery-gap) / 2);
}
.gallery-slider .swiper .swiper-slide {
  padding: 0px calc(var(--gallery-gap) / 2);
}
.gallery-slider .swiper .swiper-slide img {
  width: 100%;
  height: auto;
}
.gallery-slider .swiper .slider__controls {
  margin-top: var(--space-2xl);
  margin-left: calc(var(--gallery-gap) / 2);
  margin-right: calc(var(--gallery-gap) / 2);
}

/*------------------------------------*/
/* ACF Block: Hero Banner */
/*------------------------------------*/
.hero-banner {
  position: relative;
  overflow: hidden;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.hero-banner .inner {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1025px) {
  .hero-banner .inner {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 80px 0;
  }
}
.hero-banner .wysiwyg ul {
  --wv-ul-marker-size: 20px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 16px;
  list-style: none;
  list-style-type: none;
  padding: 0;
  margin: 20px 0;
}
.hero-banner .wysiwyg ul li {
  color: var(--text-body, #52525b);
  font-family: var(--font-family-body, Manrope);
  font-size: var(--font-size-sm, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 700);
  line-height: 160%; /* 25.6px */
  padding-left: calc(var(--wv-ul-marker-size) + 12px);
  position: relative;
  text-align: left;
}
.hero-banner .wysiwyg ul li:before {
  content: "";
  display: block;
  position: absolute;
  width: var(--wv-ul-marker-size);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='21' viewBox='0 0 20 21' fill='none'%3E%3Cpath d='M7.49967 10.5002L9.16634 12.1669L12.4997 8.83358M3.20801 7.68358C3.08637 7.13568 3.10505 6.56595 3.2623 6.02719C3.41956 5.48844 3.7103 4.99811 4.10756 4.60168C4.50483 4.20524 4.99576 3.91553 5.53484 3.75941C6.07393 3.60328 6.6437 3.5858 7.19134 3.70858C7.49276 3.23716 7.90801 2.84921 8.3988 2.58048C8.88959 2.31175 9.44013 2.1709 9.99967 2.1709C10.5592 2.1709 11.1098 2.31175 11.6005 2.58048C12.0913 2.84921 12.5066 3.23716 12.808 3.70858C13.3565 3.58526 13.9272 3.60267 14.4672 3.75917C15.0071 3.91568 15.4987 4.20619 15.8962 4.60371C16.2937 5.00122 16.5842 5.4928 16.7407 6.03275C16.8972 6.57269 16.9147 7.14344 16.7913 7.69191C17.2628 7.99334 17.6507 8.40858 17.9194 8.89937C18.1882 9.39016 18.329 9.9407 18.329 10.5002C18.329 11.0598 18.1882 11.6103 17.9194 12.1011C17.6507 12.5919 17.2628 13.0072 16.7913 13.3086C16.9141 13.8562 16.8966 14.426 16.7405 14.9651C16.5844 15.5042 16.2947 15.9951 15.8982 16.3924C15.5018 16.7896 15.0115 17.0804 14.4727 17.2376C13.934 17.3949 13.3642 17.4135 12.8163 17.2919C12.5153 17.7651 12.0997 18.1547 11.6081 18.4247C11.1165 18.6946 10.5647 18.8361 10.0038 18.8361C9.44298 18.8361 8.89119 18.6946 8.39957 18.4247C7.90794 18.1547 7.49237 17.7651 7.19134 17.2919C6.6437 17.4147 6.07393 17.3972 5.53484 17.2411C4.99576 17.085 4.50483 16.7952 4.10756 16.3988C3.7103 16.0024 3.41956 15.512 3.2623 14.9733C3.10505 14.4345 3.08637 13.8648 3.20801 13.3169C2.73297 13.0163 2.34168 12.6004 2.07055 12.1079C1.79941 11.6155 1.65723 11.0624 1.65723 10.5002C1.65723 9.93807 1.79941 9.38503 2.07055 8.89257C2.34168 8.4001 2.73297 7.98421 3.20801 7.68358Z' stroke='%230B989E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}
.hero-banner .text-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 32px;
}
.hero-banner .text-container p {
  color: #0b989e;
  font-size: var(--font-size-md, 16px);
}
.hero-banner .text-container .icon {
  display: inline-block;
  padding-left: 20px;
}
.hero-banner .images-container {
  width: 477px;
  height: 371px;
  position: relative;
  display: flex;
}
@media (max-width: 768px) {
  .hero-banner .images-container {
    margin-left: auto;
    align-self: flex-end;
  }
}
.hero-banner .images-container .central-icon {
  position: absolute;
  top: calc(50% + 30px);
  left: calc(50% - 30px);
  transform: translate(-50%, -50%);
  z-index: 5;
  width: 66px;
  height: 66px;
}
.hero-banner .images-container .central-icon svg {
  width: 100%;
  height: 100%;
}
.hero-banner .images-container .image-container {
  position: absolute;
  z-index: 1;
}
.hero-banner .images-container .image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  outline: 4px solid rgba(11, 152, 158, 0.1);
  border-radius: 20px;
}
.hero-banner .images-container .image-container.--first {
  z-index: 1;
  width: 195px;
  height: 217px;
  top: 50%;
  transform: translateY(-50%);
}
.hero-banner .images-container .image-container.--second {
  z-index: 1;
  width: 266px;
  height: 204px;
  right: 0;
  top: 0;
}
.hero-banner .images-container .image-container.--third {
  z-index: 1;
  width: 195px;
  height: 151px;
  right: 64px;
  bottom: 0;
}
.hero-banner .inner {
  display: flex;
}
.hero-banner.--contact {
  padding-top: 84px;
}
.hero-banner.--contact .contact-container {
  outline: 6px solid var(--border-accent, #e7f5f5);
  border-radius: var(--components-radius-large, 20px);
  background: var(--surface-primary, #3f444a);
  display: flex;
  padding: 32px;
  flex-direction: column;
  align-items: flex-start;
  gap: 48px;
  align-self: stretch;
}
.hero-banner.--contact .contact-container .contact-content h4 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--text-headings, #3f444a);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 45px */
  font-family: var(--font-family-headings);
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
  color: var(--text-headings-on-dark, #fff);
  padding: 0;
  font-size: calc(20px + 8 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  .hero-banner.--contact .contact-container .contact-content h4 {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  .hero-banner.--contact .contact-container .contact-content h4 {
    font-size: 28px;
  }
}
@media screen and (max-width: 520px) {
  .hero-banner.--contact .contact-container .contact-content h4 {
    font-size: 20px;
  }
}
@media screen and (min-width: 1120px) {
  .hero-banner.--contact .contact-container .contact-content h4 {
    font-size: 28px;
  }
}
.hero-banner.--contact .contact-container .contact-content p.text {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  color: var(--text-body-on-dark, #d4d4d8);
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  padding: 13px 0 0;
}
@media screen and (max-width: 520px) {
  .hero-banner.--contact .contact-container .contact-content p.text {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .hero-banner.--contact .contact-container .contact-content p.text {
    font-size: 18px;
  }
}
@media screen and (max-width: 520px) {
  .hero-banner.--contact .contact-container .contact-content p.text {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .hero-banner.--contact .contact-container .contact-content p.text {
    font-size: 14px;
  }
}
.hero-banner.--contact .contact-container .contact-data {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  color: var(--text-body-on-dark, #d4d4d8);
  display: flex;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
@media screen and (max-width: 520px) {
  .hero-banner.--contact .contact-container .contact-data {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .hero-banner.--contact .contact-container .contact-data {
    font-size: 18px;
  }
}
.hero-banner.--contact .contact-container .contact-data .image-container img {
  border-radius: 50%;
}
.hero-banner.--contact .contact-container .contact-data .contact-text-container {
  display: flex;
  flex-direction: column;
}
.hero-banner.--contact .contact-container .contact-data .contact-text-container a.icon-link {
  font-family: var(--font-family-body);
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  font-weight: var(--font-weight-regular);
  color: var(--text-body);
  font-style: normal;
  line-height: 180%;
  color: var(--text-highlight-on-dark, #11b8bb);
}
@media screen and (max-width: 520px) {
  .hero-banner.--contact .contact-container .contact-data .contact-text-container a.icon-link {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .hero-banner.--contact .contact-container .contact-data .contact-text-container a.icon-link {
    font-size: 18px;
  }
}
.hero-banner.--contact .contact-container .contact-data .contact-text-container .name {
  color: var(--text-headings-on-dark, #fff);
  padding: 0;
  margin-bottom: 8px;
}
@media (min-width: 769px) {
  .hero-banner .inner .text-container {
    flex: 1;
  }
  .hero-banner .inner .images-container {
    width: 646px;
    height: 503px;
  }
  .hero-banner .inner .images-container .central-icon {
    width: 90px;
    height: 90px;
    top: calc(50% + 30px);
    left: calc(50% - 30px);
  }
  .hero-banner .inner .images-container .image-container.--first {
    width: 265px;
    height: 295px;
  }
  .hero-banner .inner .images-container .image-container.--second {
    width: 361px;
    height: 277px;
  }
  .hero-banner .inner .images-container .image-container.--third {
    z-index: 1;
    width: 265px;
    height: 206px;
  }
  .hero-banner.--contact {
    padding-top: 0;
  }
  .hero-banner.--contact h1 {
    padding: 0;
  }
  .hero-banner.--contact .inner {
    justify-content: space-between;
  }
  .hero-banner.--contact .text-container {
    width: calc(50% - 20px);
  }
  .hero-banner.--contact .contact-container {
    min-height: 390px;
    width: calc(41% - 20px);
    justify-content: space-between;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Image Text */
/*------------------------------------*/
.image-text {
  width: calc(100% - 2 * var(--layout-outergap));
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  align-items: stretch;
  gap: 43px;
  max-width: var(--layout-grid-inner-width-padding, 1184px);
  padding: 0px;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.image-text .content-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.image-text .content-container > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.image-text .image-container {
  position: relative;
}
.image-text .image-container img {
  width: 100%;
  object-fit: cover;
  object-position: top;
  height: -webkit-fill-available;
  border-radius: var(--components-radius-large, 24px);
  outline: 6px solid rgba(11, 152, 158, 0.1);
  max-height: 256px;
}
@media (min-width: 769px) {
  .image-text {
    flex-direction: row;
    gap: var(--space-4xl);
    gap: 20px;
  }
  .image-text .image-container {
    flex: auto;
    width: calc(41% - 10px);
  }
  .image-text .image-container img {
    max-height: 476px;
  }
  .image-text .content-container {
    width: calc(59% - 10px);
    padding: var(--components-box-padding-large, 48px) var(--layout-grid-column-width, 95px) var(--components-box-padding-large, 48px) 0px;
  }
  .image-text.--order-text-image {
    flex-direction: row-reverse;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Seitenanfang */
/*------------------------------------*/
.page-start {
  display: flex;
  padding: var(--space-3xl, 44px) var(--layout-grid-outergap, 24px);
  flex-direction: column;
  align-items: center;
  gap: var(--space-lg, 16px);
  border-bottom: 4px solid var(--border-accent, #e7f5f5);
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.page-start .inner {
  width: 100%;
}
.page-start .inner > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.page-start .inner h1 {
  color: var(--text-headings, #3f444a);
  font-size: calc(44px + 10 * (100vw - 520px) / 600);
  margin-bottom: 5px;
}
@media screen and (max-width: 520px) {
  .page-start .inner h1 {
    font-size: 44px;
  }
}
@media screen and (min-width: 1120px) {
  .page-start .inner h1 {
    font-size: 54px;
  }
}
.page-start .inner p {
  font-size: calc(16px + 2 * (100vw - 520px) / 600);
  color: var(--text-body, #52525b);
}
@media screen and (max-width: 520px) {
  .page-start .inner p {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .page-start .inner p {
    font-size: 18px;
  }
}
@media (min-width: 769px) {
  .page-start h1 {
    margin: 0;
  }
}

/*# sourceMappingURL=main.css.map */
