@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 */
  --color-blue-100: rgb(220, 235, 233);
  --color-blue-200: rgb(184, 215, 211);
  --color-blue-300: rgb(141, 187, 184);
  --color-blue-400: rgb(101, 156, 153);
  --color-blue-50: rgb(244, 249, 248);
  --color-blue-500: rgb(75, 129, 127);
  --color-blue-600: rgb(58, 103, 102);
  --color-blue-700: rgb(47, 79, 79);
  --color-blue-800: rgb(43, 68, 68);
  --color-blue-900: rgb(39, 58, 58);
  --color-blue-950: rgb(18, 33, 33);
  --color-dark-blue-100: rgb(205, 228, 253);
  --color-dark-blue-200: rgb(145, 190, 254);
  --color-dark-blue-300: rgb(83, 146, 253);
  --color-dark-blue-400: rgb(28, 99, 253);
  --color-dark-blue-50: rgb(235, 245, 255);
  --color-dark-blue-500: rgb(2, 60, 217);
  --color-dark-blue-600: rgb(2, 35, 156);
  --color-dark-blue-700: rgb(1, 17, 96);
  --color-dark-blue-800: rgb(1, 15, 66);
  --color-dark-blue-900: rgb(0, 8, 30);
  --color-dark-blue-950: rgb(0, 5, 15);
  --color-green-100: rgb(217, 242, 227);
  --color-green-200: rgb(182, 228, 204);
  --color-green-300: rgb(134, 207, 173);
  --color-green-400: rgb(101, 188, 150);
  --color-green-50: rgb(239, 250, 244);
  --color-green-500: rgb(49, 152, 111);
  --color-green-600: rgb(33, 122, 88);
  --color-green-700: rgb(27, 97, 72);
  --color-green-800: rgb(23, 78, 58);
  --color-green-900: rgb(20, 64, 49);
  --color-green-950: rgb(10, 36, 28);
  --color-orange-100: rgb(254, 234, 214);
  --color-orange-200: rgb(253, 210, 171);
  --color-orange-300: rgb(251, 177, 118);
  --color-orange-400: rgb(248, 132, 59);
  --color-orange-50: rgb(255, 246, 237);
  --color-orange-500: rgb(239, 111, 42);
  --color-orange-600: rgb(231, 75, 15);
  --color-orange-700: rgb(191, 55, 15);
  --color-orange-800: rgb(152, 45, 20);
  --color-orange-900: rgb(122, 39, 20);
  --color-orange-950: rgb(66, 17, 8);
  --color-taas-blue-100: rgb(200, 231, 254);
  --color-taas-blue-200: rgb(150, 208, 254);
  --color-taas-blue-300: rgb(94, 184, 253);
  --color-taas-blue-400: rgb(43, 162, 252);
  --color-taas-blue-50: rgb(230, 244, 255);
  --color-taas-blue-500: rgb(3, 135, 237);
  --color-taas-blue-600: rgb(1, 107, 186);
  --color-taas-blue-700: rgb(2, 75, 131);
  --color-taas-blue-800: rgb(1, 45, 78);
  --color-taas-blue-900: rgb(1, 24, 40);
  --color-taas-blue-950: rgb(0, 12, 20);
  /* 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;
}

/*------------------------------------*/
/* COLLECTION - 🔗 Aliases */
/*------------------------------------*/
:root {
  /* colors */
  --theme-accent-accent: $main;
  --theme-accent-accent-dark: $main;
  --theme-accent-accent-darker: $main;
  --theme-accent-accent-light: $main;
  --theme-accent-accent-lighter: $main;
  --theme-accent-accent-lightest: $main;
  --theme-error-error: var(--tailwind-rose-600);
  --theme-error-error-dark: var(--tailwind-rose-700);
  --theme-error-error-darker: var(--tailwind-rose-800);
  --theme-error-error-light: var(--tailwind-rose-400);
  --theme-error-error-lighter: var(--tailwind-rose-200);
  --theme-error-error-lightest: var(--tailwind-rose-50);
  --theme-neutral-black: var(--tailwind-black);
  --theme-neutral-neutral: var(--tailwind-zinc-400);
  --theme-neutral-neutral-dark: var(--tailwind-zinc-600);
  --theme-neutral-neutral-darker: var(--tailwind-zinc-800);
  --theme-neutral-neutral-darkest: var(--tailwind-zinc-950);
  --theme-neutral-neutral-light: var(--tailwind-zinc-300);
  --theme-neutral-neutral-lighter: var(--tailwind-zinc-100);
  --theme-neutral-neutral-lightest: var(--tailwind-zinc-50);
  --theme-neutral-white: var(--tailwind-white);
  --theme-notice-notice: var(--tailwind-sky-500);
  --theme-notice-notice-dark: var(--tailwind-sky-600);
  --theme-notice-notice-darker: var(--tailwind-sky-700);
  --theme-notice-notice-light: var(--tailwind-sky-400);
  --theme-notice-notice-lighter: var(--tailwind-sky-200);
  --theme-notice-notice-lightest: var(--tailwind-sky-50);
  --theme-primary-primary: var(--color-taas-blue-700);
  --theme-primary-primary-dark: var(--color-taas-blue-800);
  --theme-primary-primary-darker: var(--color-taas-blue-900);
  --theme-primary-primary-light: var(--color-taas-blue-600);
  --theme-primary-primary-lighter: var(--color-taas-blue-500);
  --theme-primary-primary-lightest: var(--color-taas-blue-50);
  --theme-secondary-secondary: var(--tailwind-blue-500);
  --theme-secondary-secondary-dark: var(--tailwind-blue-600);
  --theme-secondary-secondary-darker: var(--tailwind-blue-700);
  --theme-secondary-secondary-light: var(--tailwind-blue-400);
  --theme-secondary-secondary-lighter: var(--tailwind-blue-300);
  --theme-secondary-secondary-lightest: var(--tailwind-blue-50);
  --theme-success-success: var(--tailwind-green-500);
  --theme-success-success-dark: var(--tailwind-green-600);
  --theme-success-success-darker: var(--tailwind-green-700);
  --theme-success-success-light: var(--tailwind-green-400);
  --theme-success-success-lighter: var(--tailwind-green-200);
  --theme-success-success-lightest: var(--tailwind-green-50);
  --theme-warning-warning: var(--tailwind-orange-500);
  --theme-warning-warning-dark: var(--tailwind-orange-600);
  --theme-warning-warning-darker: var(--tailwind-orange-700);
  --theme-warning-warning-light: var(--tailwind-orange-400);
  --theme-warning-warning-lighter: var(--tailwind-orange-200);
  --theme-warning-warning-lightest: var(--tailwind-orange-50);
  /* 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 */
  --box-padding-small: var(--space-lg);
  --box-padding-medium: var(--space-xl);
  --box-padding-large: var(--space-3xl);
  --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;
  --font-family-body: "Bricolage Grotesque";
  --font-family-headings: "Bricolage Grotesque";
  --font-default-lineheight: 1.5;
  --font-body-lineheight: 1.8;
  --font-default-linegap: 20px;
  --font-line-height-2xs: 16.5px;
  --font-line-height-xs: 19.5px;
  --font-line-height-sm: 22.5px;
  --font-line-height-md: 25.5px;
  --font-line-height-lg: 27px;
  --font-line-height-xl: 31.5px;
  --font-line-height-2xl: 39px;
  --font-line-height-3xl: 47.599998474121094px;
  --font-linegap-subline-h1: var(--space-xs);
  --font-linegap-subline-h2: var(--space-xs);
  --font-size-2xs: 11px;
  --font-size-xs: 13px;
  --font-size-sm: 15px;
  --font-size-md: 17px;
  --font-size-lg: 18px;
  --font-size-xl: 21px;
  --font-size-2xl: 26px;
  --font-size-3xl: 34px;
  --font-weight-regular: 500;
  --font-weight-bold: 600;
  --layout-wrapper: 1120px;
  --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;
  --radius-small: var(--radius-xs);
  --radius-medium: var(--radius-md);
  --radius-large: var(--radius-lg);
  --radius-rounded: 1000px;
  /* desktop */
}
@media only screen and (min-width: 768px) {
  :root {
    /* numbers */
    --box-padding-small: var(--space-xl);
    --box-padding-medium: var(--space-2xl);
    --box-padding-large: var(--space-4xl);
    --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;
    --font-family-body: "Bricolage Grotesque";
    --font-family-headings: "Bricolage Grotesque";
    --font-default-lineheight: 1.5;
    --font-body-lineheight: 1.8;
    --font-default-linegap: 20px;
    --font-line-height-2xs: 18px;
    --font-line-height-xs: 21px;
    --font-line-height-sm: 24px;
    --font-line-height-md: 27px;
    --font-line-height-lg: 30px;
    --font-line-height-xl: 36px;
    --font-line-height-2xl: 48px;
    --font-line-height-3xl: 60px;
    --font-linegap-subline-h1: var(--space-xs);
    --font-linegap-subline-h2: var(--space-xs);
    --font-size-2xs: 12px;
    --font-size-xs: 14px;
    --font-size-sm: 16px;
    --font-size-md: 18px;
    --font-size-lg: 20px;
    --font-size-xl: 24px;
    --font-size-2xl: 32px;
    --font-size-3xl: 40px;
    --font-weight-regular: 500;
    --font-weight-bold: 600;
    --layout-wrapper: 1120px;
    --layout-grid-columns: 12px;
    --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;
    --radius-small: var(--radius-xs);
    --radius-medium: var(--radius-md);
    --radius-large: var(--radius-lg);
    --radius-rounded: 1000px;
  }
}

/*------------------------------------*/
/* COLLECTION - 🗺️ Theme Tokens */
/*------------------------------------*/
:root {
  /* colors */
  --divider: var(--theme-neutral-neutral-lighter);
  --divider-on-dark: var(--theme-primary-primary);
  --border-accent: var(--theme-accent-accent);
  --border-box: var(--theme-neutral-neutral-lightest);
  --border-error: var(--theme-error-error-lighter);
  --border-input: var(--theme-neutral-neutral-lighter);
  --border-input-error: var(--theme-error-error);
  --border-input-focus: var(--theme-accent-accent);
  --border-input-hover: var(--theme-accent-accent-lighter);
  --border-notice: var(--theme-notice-notice-lighter);
  --border-selector: var(--theme-neutral-neutral);
  --border-selector-active: var(--theme-accent-accent);
  --border-selector-hover: var(--theme-accent-accent);
  --border-selector-press: var(--theme-accent-accent);
  --border-success: var(--theme-success-success-lighter);
  --border-warning: var(--theme-warning-warning-lighter);
  --button-accent-action: var(--theme-accent-accent-darker);
  --button-accent-default: var(--theme-accent-accent);
  --button-accent-disabled: var(--theme-accent-accent-lighter);
  --button-accent-focus: var(--theme-accent-accent-dark);
  --button-accent-hover: var(--theme-accent-accent-dark);
  --button-neutral-action: var(--theme-neutral-neutral-lighter);
  --button-neutral-default: var(--theme-neutral-white);
  --button-neutral-disabled: var(--theme-neutral-neutral);
  --button-neutral-focus: var(--theme-neutral-neutral-lightest);
  --button-neutral-hover: var(--theme-neutral-neutral-lightest);
  --button-primary-action: var(--theme-primary-primary-darker);
  --button-primary-default: var(--theme-primary-primary);
  --button-primary-disabled: var(--theme-primary-primary-lightest);
  --button-primary-focus: var(--theme-primary-primary-dark);
  --button-primary-hover: var(--theme-primary-primary-dark);
  --icon-accent: var(--theme-accent-accent);
  --icon-error: var(--theme-error-error);
  --icon-neutral: var(--text-headings);
  --icon-neutral-on-dark: var(--text-headings-on-dark);
  --icon-neutral-on-disabled: var(--text-on-disabled);
  --icon-notice: var(--theme-notice-notice);
  --icon-primary: var(--theme-primary-primary);
  --icon-secondary: var(--theme-secondary-secondary);
  --icon-success: var(--theme-success-success);
  --icon-warning: var(--theme-warning-warning);
  --surface-accent: var(--theme-accent-accent-lightest);
  --surface-action: var(--theme-accent-accent);
  --surface-action-hover: var(--theme-accent-accent-dark);
  --surface-box: var(--theme-neutral-neutral-lighter);
  --surface-dark: var(--theme-primary-primary-dark);
  --surface-disabled: var(--theme-neutral-neutral);
  --surface-error: var(--theme-error-error-lightest);
  --surface-input: var(--theme-neutral-neutral-lightest);
  --surface-input-hover: var(--theme-accent-accent-lightest);
  --surface-modal: var(--theme-neutral-neutral-lightest);
  --surface-notice: var(--theme-notice-notice-lightest);
  --surface-page: var(--theme-neutral-white);
  --surface-primary: var(--theme-primary-primary);
  --surface-secondary: var(--theme-secondary-secondary);
  --surface-selector: var(--theme-neutral-white);
  --surface-selector-active: var(--theme-accent-accent);
  --surface-selector-hover: var(--theme-accent-accent-lightest);
  --surface-selector-press: var(--theme-accent-accent-lighter);
  --surface-success: var(--theme-success-success-lightest);
  --surface-warning: var(--theme-warning-warning-lightest);
  --text-action: var(--theme-accent-accent);
  --text-action-hover: var(--theme-accent-accent-dark);
  --text-action-press: var(--theme-accent-accent-darker);
  --text-body: var(--theme-neutral-neutral-dark);
  --text-body-on-dark: var(--theme-neutral-neutral-light);
  --text-disabled: var(--theme-neutral-neutral-light);
  --text-error: var(--theme-error-error);
  --text-headings: var(--theme-neutral-black);
  --text-headings-on-dark: var(--theme-neutral-white);
  --text-highlight: $main;
  --text-highlight-on-dark: var(--theme-accent-accent-light);
  --text-notice: var(--theme-notice-notice);
  --text-on-action: var(--theme-neutral-white);
  --text-on-disabled: var(--theme-neutral-neutral-dark);
  --text-placeholder: var(--theme-neutral-neutral);
  --text-success: var(--theme-success-success);
  --text-warning: var(--theme-warning-warning);
}

/*------------------------------------*/
/* 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: #fff;
  --tailwind-orange-50: #fff7ed;
  --tailwind-orange-500: #fff;
  --tailwind-orange-600: #fff;
  --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: #fff;
}

.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: 3px;
  background-color: #fff;
  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);
  background-color: #04a64b;
}

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

.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);
  background-color: #04a64b;
}

/**
 * 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;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

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;
  }
}
/* bricolage-grotesque-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/bricolage-grotesque-v7-latin-300.woff2") format("woff2"), url("../fonts/bricolage-grotesque-v7-latin-300.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* bricolage-grotesque-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/bricolage-grotesque-v7-latin-regular.woff2") format("woff2"), url("../fonts/bricolage-grotesque-v7-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* bricolage-grotesque-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/bricolage-grotesque-v7-latin-500.woff2") format("woff2"), url("../fonts/bricolage-grotesque-v7-latin-500.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* bricolage-grotesque-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/bricolage-grotesque-v7-latin-600.woff2") format("woff2"), url("../fonts/bricolage-grotesque-v7-latin-600.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* bricolage-grotesque-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/bricolage-grotesque-v7-latin-700.woff2") format("woff2"), url("../fonts/bricolage-grotesque-v7-latin-700.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* bricolage-grotesque-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/bricolage-grotesque-v7-latin-800.woff2") format("woff2"), url("../fonts/bricolage-grotesque-v7-latin-800.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(15px + 1 * (100vw - 520px) / 600);
  font-weight: 500;
  line-height: 180%;
  color: #52525b;
}
@media screen and (max-width: 520px) {
  body {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  body {
    font-size: 16px;
  }
}

p {
  padding: var(--font-default-linegap) 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: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(34px + 6 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h1,
  .h1,
  .--show-as-h1 {
    font-size: 34px;
  }
}
@media screen and (min-width: 1120px) {
  h1,
  .h1,
  .--show-as-h1 {
    font-size: 40px;
  }
}

h2,
.h2,
.--show-as-h2 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(26px + 6 * (100vw - 520px) / 600);
  font-weight: 600;
  line-height: 150%;
}
@media screen and (max-width: 520px) {
  h2,
  .h2,
  .--show-as-h2 {
    font-size: 26px;
  }
}
@media screen and (min-width: 1120px) {
  h2,
  .h2,
  .--show-as-h2 {
    font-size: 32px;
  }
}

h3,
.h3,
.--show-as-h3 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(21px + 3 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h3,
  .h3,
  .--show-as-h3 {
    font-size: 21px;
  }
}
@media screen and (min-width: 1120px) {
  h3,
  .h3,
  .--show-as-h3 {
    font-size: 24px;
  }
}

h4,
.h4,
.--show-as-h4 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(18px + 2 * (100vw - 520px) / 600);
  font-weight: 600;
  line-height: 150%;
}
@media screen and (max-width: 520px) {
  h4,
  .h4,
  .--show-as-h4 {
    font-size: 18px;
  }
}
@media screen and (min-width: 1120px) {
  h4,
  .h4,
  .--show-as-h4 {
    font-size: 20px;
  }
}

h5,
.h5,
.--show-as-h5 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(17px + 1 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h5,
  .h5,
  .--show-as-h5 {
    font-size: 17px;
  }
}
@media screen and (min-width: 1120px) {
  h5,
  .h5,
  .--show-as-h5 {
    font-size: 18px;
  }
}

h6,
.h6,
.--show-as-h6 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(15px + 1 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  h6,
  .h6,
  .--show-as-h6 {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  h6,
  .h6,
  .--show-as-h6 {
    font-size: 16px;
  }
}

/*------------------------------------*/
/* SECTION - Links */
/*------------------------------------*/
a {
  color: var(--text-action);
  text-decoration: underline;
  text-underline-position: under;
}
a:hover {
  color: #04a64b;
}
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: 6px;
  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(15px + 1 * (100vw - 520px) / 600);
  font-weight: 500;
  line-height: 180%;
  color: #52525b;
  padding-left: calc(var(--wv-ul-marker-size) + 12px);
  position: relative;
  text-align: left;
}
@media screen and (max-width: 520px) {
  .wp-block-group ul li,
  ul.ul li {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  .wp-block-group ul li,
  ul.ul li {
    font-size: 16px;
  }
}
.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");
  left: 0;
  top: 50%;
  translate: 0 -50%;
}
@media (max-width: 768px) {
  .wp-block-group ul,
  ul.ul {
    --wv-ul-marker-size: 5px;
  }
  .wp-block-group ul li,
  ul.ul li {
    padding-left: calc(var(--wv-ul-marker-size) + 10px);
  }
}

/*------------------------------------*/
/* SECTION - Text styles */
/*------------------------------------*/
.text-highlighted {
  color: #04a64b;
}

/*------------------------------------*\
    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,
body.single *,
body.single *:after,
body.single *: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);
}

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

/*------------------------------------*\
    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.--background li:before {
  filter: invert(1);
}
.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],
body.single a.button,
body.single button:not(.hamburger),
body.single 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;
  cursor: pointer;
  padding: 20px 64px;
  font-size: calc(15px + 1 * (100vw - 520px) / 600);
  background-color: #04a64b;
  color: #fff;
}
@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],
  body.single a.button,
  body.single button:not(.hamburger),
  body.single input[type=submit] {
    font-size: 15px;
  }
}
@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],
  body.single a.button,
  body.single button:not(.hamburger),
  body.single 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,
body.single a.button:hover,
body.single button:not(.hamburger):hover,
body.single input[type=submit]:hover {
  background-color: var(--button-primary-hover);
}
.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,
body.single a.button:focus,
body.single button:not(.hamburger):focus,
body.single input[type=submit]:focus {
  transition: none;
  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: $main--dark;
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: white;
  --tw-ring-inset: ;
}
.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,
body.single a.button:active,
body.single button:not(.hamburger):active,
body.single input[type=submit]:active {
  transition: none;
}
.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,
body.single a.button:disabled,
body.single button:not(.hamburger):disabled,
body.single input[type=submit]:disabled {
  background-color: var(--button-primary-disabled);
  color: var(--text-on-disabled);
}
.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,
body.single a.button.--color-main,
body.single a.button.--color-primary,
body.single button:not(.hamburger).--color-main,
body.single button:not(.hamburger).--color-primary,
body.single input[type=submit].--color-main,
body.single input[type=submit].--color-primary {
  color: #fff;
  background-color: #04a64b;
}
.acf-block-preview a.button.--color-main:hover, .acf-block-preview a.button.--color-main:focus, .acf-block-preview a.button.--color-primary:hover, .acf-block-preview a.button.--color-primary:focus,
.acf-block-preview button:not(.hamburger).--color-main:hover,
.acf-block-preview button:not(.hamburger).--color-main:focus,
.acf-block-preview button:not(.hamburger).--color-primary:hover,
.acf-block-preview button:not(.hamburger).--color-primary:focus,
.acf-block-preview input[type=submit].--color-main:hover,
.acf-block-preview input[type=submit].--color-main:focus,
.acf-block-preview input[type=submit].--color-primary:hover,
.acf-block-preview input[type=submit].--color-primary:focus,
body.page a.button.--color-main:hover,
body.page a.button.--color-main:focus,
body.page a.button.--color-primary:hover,
body.page a.button.--color-primary:focus,
body.page button:not(.hamburger).--color-main:hover,
body.page button:not(.hamburger).--color-main:focus,
body.page button:not(.hamburger).--color-primary:hover,
body.page button:not(.hamburger).--color-primary:focus,
body.page input[type=submit].--color-main:hover,
body.page input[type=submit].--color-main:focus,
body.page input[type=submit].--color-primary:hover,
body.page input[type=submit].--color-primary:focus,
body.single a.button.--color-main:hover,
body.single a.button.--color-main:focus,
body.single a.button.--color-primary:hover,
body.single a.button.--color-primary:focus,
body.single button:not(.hamburger).--color-main:hover,
body.single button:not(.hamburger).--color-main:focus,
body.single button:not(.hamburger).--color-primary:hover,
body.single button:not(.hamburger).--color-primary:focus,
body.single input[type=submit].--color-main:hover,
body.single input[type=submit].--color-main:focus,
body.single input[type=submit].--color-primary:hover,
body.single input[type=submit].--color-primary:focus {
  background-color: #088d43;
}
.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,
body.single a.button.--color-main:active,
body.single a.button.--color-primary:active,
body.single button:not(.hamburger).--color-main:active,
body.single button:not(.hamburger).--color-primary:active,
body.single input[type=submit].--color-main:active,
body.single input[type=submit].--color-primary:active {
  background-color: #088d43;
}
.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,
body.single a.button.--color-main:disabled,
body.single a.button.--color-primary:disabled,
body.single button:not(.hamburger).--color-main:disabled,
body.single button:not(.hamburger).--color-primary:disabled,
body.single input[type=submit].--color-main:disabled,
body.single input[type=submit].--color-primary:disabled {
  opacity: 0.8;
}
.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,
body.single a.button.--color-second,
body.single a.button.--color-accent,
body.single button:not(.hamburger).--color-second,
body.single button:not(.hamburger).--color-accent,
body.single input[type=submit].--color-second,
body.single input[type=submit].--color-accent {
  background-color: #003759;
  color: #fff;
}
.acf-block-preview a.button.--color-second:hover, .acf-block-preview a.button.--color-second:focus, .acf-block-preview a.button.--color-accent:hover, .acf-block-preview a.button.--color-accent:focus,
.acf-block-preview button:not(.hamburger).--color-second:hover,
.acf-block-preview button:not(.hamburger).--color-second:focus,
.acf-block-preview button:not(.hamburger).--color-accent:hover,
.acf-block-preview button:not(.hamburger).--color-accent:focus,
.acf-block-preview input[type=submit].--color-second:hover,
.acf-block-preview input[type=submit].--color-second:focus,
.acf-block-preview input[type=submit].--color-accent:hover,
.acf-block-preview input[type=submit].--color-accent:focus,
body.page a.button.--color-second:hover,
body.page a.button.--color-second:focus,
body.page a.button.--color-accent:hover,
body.page a.button.--color-accent:focus,
body.page button:not(.hamburger).--color-second:hover,
body.page button:not(.hamburger).--color-second:focus,
body.page button:not(.hamburger).--color-accent:hover,
body.page button:not(.hamburger).--color-accent:focus,
body.page input[type=submit].--color-second:hover,
body.page input[type=submit].--color-second:focus,
body.page input[type=submit].--color-accent:hover,
body.page input[type=submit].--color-accent:focus,
body.single a.button.--color-second:hover,
body.single a.button.--color-second:focus,
body.single a.button.--color-accent:hover,
body.single a.button.--color-accent:focus,
body.single button:not(.hamburger).--color-second:hover,
body.single button:not(.hamburger).--color-second:focus,
body.single button:not(.hamburger).--color-accent:hover,
body.single button:not(.hamburger).--color-accent:focus,
body.single input[type=submit].--color-second:hover,
body.single input[type=submit].--color-second:focus,
body.single input[type=submit].--color-accent:hover,
body.single input[type=submit].--color-accent:focus {
  background-color: #004f7a;
}
.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,
body.single a.button.--color-second:active,
body.single a.button.--color-accent:active,
body.single button:not(.hamburger).--color-second:active,
body.single button:not(.hamburger).--color-accent:active,
body.single input[type=submit].--color-second:active,
body.single input[type=submit].--color-accent:active {
  background-color: #003759;
}
.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,
body.single a.button.--color-second:disabled,
body.single a.button.--color-accent:disabled,
body.single button:not(.hamburger).--color-second:disabled,
body.single button:not(.hamburger).--color-accent:disabled,
body.single input[type=submit].--color-second:disabled,
body.single input[type=submit].--color-accent:disabled {
  opacity: 0.8;
}
.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,
body.single a.button.--color-white,
body.single a.button.--color-neutral,
body.single button:not(.hamburger).--color-white,
body.single button:not(.hamburger).--color-neutral,
body.single input[type=submit].--color-white,
body.single input[type=submit].--color-neutral {
  background-color: var(--button-neutral-default);
  color: var(--text-headings);
}
.acf-block-preview a.button.--color-white:hover, .acf-block-preview a.button.--color-white:focus, .acf-block-preview a.button.--color-neutral:hover, .acf-block-preview a.button.--color-neutral:focus,
.acf-block-preview button:not(.hamburger).--color-white:hover,
.acf-block-preview button:not(.hamburger).--color-white:focus,
.acf-block-preview button:not(.hamburger).--color-neutral:hover,
.acf-block-preview button:not(.hamburger).--color-neutral:focus,
.acf-block-preview input[type=submit].--color-white:hover,
.acf-block-preview input[type=submit].--color-white:focus,
.acf-block-preview input[type=submit].--color-neutral:hover,
.acf-block-preview input[type=submit].--color-neutral:focus,
body.page a.button.--color-white:hover,
body.page a.button.--color-white:focus,
body.page a.button.--color-neutral:hover,
body.page a.button.--color-neutral:focus,
body.page button:not(.hamburger).--color-white:hover,
body.page button:not(.hamburger).--color-white:focus,
body.page button:not(.hamburger).--color-neutral:hover,
body.page button:not(.hamburger).--color-neutral:focus,
body.page input[type=submit].--color-white:hover,
body.page input[type=submit].--color-white:focus,
body.page input[type=submit].--color-neutral:hover,
body.page input[type=submit].--color-neutral:focus,
body.single a.button.--color-white:hover,
body.single a.button.--color-white:focus,
body.single a.button.--color-neutral:hover,
body.single a.button.--color-neutral:focus,
body.single button:not(.hamburger).--color-white:hover,
body.single button:not(.hamburger).--color-white:focus,
body.single button:not(.hamburger).--color-neutral:hover,
body.single button:not(.hamburger).--color-neutral:focus,
body.single input[type=submit].--color-white:hover,
body.single input[type=submit].--color-white:focus,
body.single input[type=submit].--color-neutral:hover,
body.single input[type=submit].--color-neutral:focus {
  background-color: var(--button-neutral-hover);
}
.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,
body.single a.button.--color-white:active,
body.single a.button.--color-neutral:active,
body.single button:not(.hamburger).--color-white:active,
body.single button:not(.hamburger).--color-neutral:active,
body.single input[type=submit].--color-white:active,
body.single input[type=submit].--color-neutral:active {
  background-color: var(--button-neutral-action);
}
.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,
body.single a.button.--color-white:disabled,
body.single a.button.--color-neutral:disabled,
body.single button:not(.hamburger).--color-white:disabled,
body.single button:not(.hamburger).--color-neutral:disabled,
body.single input[type=submit].--color-white:disabled,
body.single input[type=submit].--color-neutral:disabled {
  background-color: var(--button-neutral-disabled);
}
.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,
body.single a.button.--size-regular,
body.single button:not(.hamburger).--size-regular,
body.single input[type=submit].--size-regular {
  padding: 20px 60px;
  font-size: calc(15px + 1 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  .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,
  body.single a.button.--size-regular,
  body.single button:not(.hamburger).--size-regular,
  body.single input[type=submit].--size-regular {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  .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,
  body.single a.button.--size-regular,
  body.single button:not(.hamburger).--size-regular,
  body.single input[type=submit].--size-regular {
    font-size: 16px;
  }
}
.acf-block-preview a.button.--size-small,
.acf-block-preview button:not(.hamburger).--size-small,
.acf-block-preview input[type=submit].--size-small,
body.page a.button.--size-small,
body.page button:not(.hamburger).--size-small,
body.page input[type=submit].--size-small,
body.single a.button.--size-small,
body.single button:not(.hamburger).--size-small,
body.single input[type=submit].--size-small {
  padding: 18px 54px;
  font-size: calc(14px + 1 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  .acf-block-preview a.button.--size-small,
  .acf-block-preview button:not(.hamburger).--size-small,
  .acf-block-preview input[type=submit].--size-small,
  body.page a.button.--size-small,
  body.page button:not(.hamburger).--size-small,
  body.page input[type=submit].--size-small,
  body.single a.button.--size-small,
  body.single button:not(.hamburger).--size-small,
  body.single input[type=submit].--size-small {
    font-size: 14px;
  }
}
@media screen and (min-width: 1120px) {
  .acf-block-preview a.button.--size-small,
  .acf-block-preview button:not(.hamburger).--size-small,
  .acf-block-preview input[type=submit].--size-small,
  body.page a.button.--size-small,
  body.page button:not(.hamburger).--size-small,
  body.page input[type=submit].--size-small,
  body.single a.button.--size-small,
  body.single button:not(.hamburger).--size-small,
  body.single input[type=submit].--size-small {
    font-size: 15px;
  }
}
@media (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],
  body.single a.button,
  body.single button:not(.hamburger),
  body.single input[type=submit] {
    padding: 18px 50px;
    width: 100%;
  }
  .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,
  body.single a.button.--size-regular,
  body.single button:not(.hamburger).--size-regular,
  body.single input[type=submit].--size-regular {
    padding: 18px 50px;
  }
  .acf-block-preview a.button.--size-small,
  .acf-block-preview button:not(.hamburger).--size-small,
  .acf-block-preview input[type=submit].--size-small,
  body.page a.button.--size-small,
  body.page button:not(.hamburger).--size-small,
  body.page input[type=submit].--size-small,
  body.single a.button.--size-small,
  body.single button:not(.hamburger).--size-small,
  body.single input[type=submit].--size-small {
    padding: 16px 44px;
  }
}

a.button-link {
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-sm);
  font-size: calc(15px + 1 * (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);
}
@media screen and (max-width: 520px) {
  a.button-link {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  a.button-link {
    font-size: 16px;
  }
}
a.button-link .arrow {
  transition: var(--transition);
}
a.button-link:hover, a.button-link:focus {
  color: var(--button-accent-hover);
  gap: var(--space-md);
}
a.button-link:active {
  color: var(--button-accent-action);
}
a.button-link:disabled {
  color: var(--button-accent-disabled);
}
a.button-link.--color-accent {
  color: var(--button-accent-default);
}
a.button-link.--color-accent:hover, a.button-link.--color-accent:focus {
  color: var(--button-accent-hover);
}
a.button-link.--color-accent:active {
  color: var(--button-accent-action);
}
a.button-link.--color-accent:disabled {
  color: var(--button-accent-disabled);
}
a.button-link.--color-neutral {
  color: var(--button-neutral-default);
}
a.button-link.--color-neutral:hover, a.button-link.--color-neutral:focus {
  color: var(--button-neutral-hover);
}
a.button-link.--color-neutral:active {
  color: var(--button-neutral-action);
}
a.button-link.--color-neutral:disabled {
  color: var(--button-neutral-disabled);
}

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: #04a64b;
  color: #fff;
  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;
}

.main-ul, .image-text-grid > div > div .content {
  list-style-type: none;
  padding: 0;
}
.main-ul li, .image-text-grid > div > div .content li {
  position: relative;
  padding-left: 12px;
}
.main-ul li::before, .image-text-grid > div > div .content li::before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='9' viewBox='0 0 9 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4.24268' width='6' height='6' transform='rotate(45 4.24268 0)' fill='%2304A64B'/%3E%3C/svg%3E%0A");
  width: 6px;
  height: 6px;
  top: 12px;
  left: 0;
}

body .job {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
  position: relative;
  opacity: 1;
  transition: opacity 100ms ease-in-out;
}
body .job.hidden {
  opacity: 0;
}
body .job > div {
  width: 100%;
}
body .job a:not(.c-li) {
  display: block;
  font-weight: 700;
  text-decoration: none;
  color: #27272a;
  max-width: calc(100% - 50px);
  hyphens: auto;
}
body .job a.c-li {
  padding: 0;
  min-width: unset;
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 38px;
  aspect-ratio: 1;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  justify-content: center;
  align-items: center;
}
body .job a.c-li img {
  width: 17px;
}
body .icn-grp {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  row-gap: 8px;
  max-width: 100%;
}
body .icn-grp span {
  background-size: 19px;
  background-position: left center;
  background-repeat: no-repeat;
  padding: 2px 0 2px 26px;
  line-height: 100%;
}
body .icn-grp span.l {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='19' viewBox='0 0 18 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_3993_1170)'%3E%3Cpath d='M15.75 8C15.75 13.25 9 17.75 9 17.75C9 17.75 2.25 13.25 2.25 8C2.25 6.20979 2.96116 4.4929 4.22703 3.22703C5.4929 1.96116 7.20979 1.25 9 1.25C10.7902 1.25 12.5071 1.96116 13.773 3.22703C15.0388 4.4929 15.75 6.20979 15.75 8Z' stroke='%2304A64B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9 10.25C10.2426 10.25 11.25 9.24264 11.25 8C11.25 6.75736 10.2426 5.75 9 5.75C7.75736 5.75 6.75 6.75736 6.75 8C6.75 9.24264 7.75736 10.25 9 10.25Z' stroke='%2304A64B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_3993_1170'%3E%3Crect width='18' height='18' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}
body .icn-grp span.t {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='19' viewBox='0 0 18 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.75 8.75H12.75C12.9489 8.75 13.1397 8.82902 13.2803 8.96967C13.421 9.11032 13.5 9.30109 13.5 9.5C13.5 9.69891 13.421 9.88968 13.2803 10.0303C13.1397 10.171 12.9489 10.25 12.75 10.25H9C8.80109 10.25 8.61032 10.171 8.46967 10.0303C8.32902 9.88968 8.25 9.69891 8.25 9.5V5C8.25 4.80109 8.32902 4.61032 8.46967 4.46967C8.61032 4.32902 8.80109 4.25 9 4.25C9.19891 4.25 9.38968 4.32902 9.53033 4.46967C9.67098 4.61032 9.75 4.80109 9.75 5V8.75ZM9 17C4.85775 17 1.5 13.6423 1.5 9.5C1.5 5.35775 4.85775 2 9 2C13.1423 2 16.5 5.35775 16.5 9.5C16.5 13.6423 13.1423 17 9 17ZM9 15.5C10.5913 15.5 12.1174 14.8679 13.2426 13.7426C14.3679 12.6174 15 11.0913 15 9.5C15 7.9087 14.3679 6.38258 13.2426 5.25736C12.1174 4.13214 10.5913 3.5 9 3.5C7.4087 3.5 5.88258 4.13214 4.75736 5.25736C3.63214 6.38258 3 7.9087 3 9.5C3 11.0913 3.63214 12.6174 4.75736 13.7426C5.88258 14.8679 7.4087 15.5 9 15.5Z' fill='%2304A64B'/%3E%3C/svg%3E%0A");
}
body .icn-grp span.d {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='19' viewBox='0 0 18 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 5V8H12.735L14.8748 6.7145C14.9119 6.69235 14.9426 6.66094 14.964 6.62334C14.9853 6.58574 14.9966 6.54324 14.9966 6.5C14.9966 6.45676 14.9853 6.41426 14.964 6.37666C14.9426 6.33906 14.9119 6.30765 14.8748 6.2855L12.735 5H3ZM9 3.5H12.735C13.0072 3.50009 13.2742 3.57423 13.5075 3.7145L15.6473 5C15.9062 5.15551 16.1204 5.37538 16.2692 5.63824C16.4179 5.90109 16.4961 6.19797 16.4961 6.5C16.4961 6.80203 16.4179 7.09891 16.2692 7.36176C16.1204 7.62462 15.9062 7.84449 15.6473 8L13.5075 9.2855C13.2742 9.42576 13.0072 9.49991 12.735 9.5H9V16.25C9 16.4489 8.92098 16.6397 8.78033 16.7803C8.63968 16.921 8.44891 17 8.25 17C8.05109 17 7.86032 16.921 7.71967 16.7803C7.57902 16.6397 7.5 16.4489 7.5 16.25V9.5H3C2.60218 9.5 2.22064 9.34196 1.93934 9.06066C1.65804 8.77936 1.5 8.39782 1.5 8V5C1.5 4.60218 1.65804 4.22064 1.93934 3.93934C2.22064 3.65804 2.60218 3.5 3 3.5H7.5V2.75C7.5 2.55109 7.57902 2.36032 7.71967 2.21967C7.86032 2.07902 8.05109 2 8.25 2C8.44891 2 8.63968 2.07902 8.78033 2.21967C8.92098 2.36032 9 2.55109 9 2.75V3.5Z' fill='%2304A64B'/%3E%3C/svg%3E%0A");
}

/*------------------------------------*\
    HEADER.SCSS
\*------------------------------------*/
.header {
  position: sticky;
  top: 0;
  z-index: 999;
  background-color: #003759;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.header > .inner {
  position: static;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 0px;
  flex-wrap: wrap;
}
@media (min-width: 769px) {
  .header > .inner {
    flex-wrap: nowrap;
  }
}
.header .logo {
  max-width: 236px;
  width: 100%;
}
.header .hamburger {
  margin-right: -5px;
}
.header a,
.header p,
.header span,
.header li {
  color: #fff;
}
.header .nc {
  display: contents;
}
@media (min-width: 769px) {
  .header .nc {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
.header .contact {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  width: 100%;
  margin-bottom: 10px;
  order: -1;
  width: 100%;
}
@media (min-width: 769px) {
  .header .contact {
    justify-content: flex-end;
    margin-bottom: 30px;
    width: fit-content;
  }
}
.header .contact a {
  background-size: 18px 18px;
  background-position: left center;
  padding-left: 25px;
  background-repeat: no-repeat;
  text-decoration: none;
  transition: all 250ms ease-in-out;
  font-size: calc(12px + 4 * (100vw - 520px) / 600);
}
@media screen and (max-width: 520px) {
  .header .contact a {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .header .contact a {
    font-size: 16px;
  }
}
.header .contact a.t {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='19' viewBox='0 0 18 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.5001 13.19V15.44C16.5009 15.6489 16.4581 15.8556 16.3745 16.047C16.2908 16.2384 16.168 16.4102 16.0141 16.5514C15.8602 16.6926 15.6785 16.8001 15.4806 16.867C15.2828 16.934 15.0731 16.9588 14.8651 16.94C12.5572 16.6892 10.3403 15.9006 8.39257 14.6375C6.58044 13.486 5.04407 11.9496 3.89257 10.1375C2.62506 8.18092 1.83625 5.95326 1.59007 3.63501C1.57133 3.42761 1.59598 3.21858 1.66245 3.02123C1.72892 2.82388 1.83575 2.64253 1.97615 2.48873C2.11654 2.33493 2.28743 2.21204 2.47792 2.1279C2.6684 2.04376 2.87433 2.00021 3.08257 2.00001H5.33257C5.69655 1.99643 6.04942 2.12532 6.32539 2.36266C6.60137 2.6 6.78163 2.9296 6.83257 3.29001C6.92754 4.01006 7.10366 4.71706 7.35757 5.39751C7.45848 5.66595 7.48032 5.9577 7.4205 6.23817C7.36069 6.51865 7.22172 6.77609 7.02007 6.98001L6.06757 7.93251C7.13524 9.81017 8.68991 11.3648 10.5676 12.4325L11.5201 11.48C11.724 11.2784 11.9814 11.1394 12.2619 11.0796C12.5424 11.0198 12.8341 11.0416 13.1026 11.1425C13.783 11.3964 14.49 11.5725 15.2101 11.6675C15.5744 11.7189 15.9071 11.9024 16.145 12.1831C16.3828 12.4638 16.5092 12.8222 16.5001 13.19Z' stroke='%2304A64B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.header .contact a.m {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='19' viewBox='0 0 18 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 3.5H15C15.825 3.5 16.5 4.175 16.5 5V14C16.5 14.825 15.825 15.5 15 15.5H3C2.175 15.5 1.5 14.825 1.5 14V5C1.5 4.175 2.175 3.5 3 3.5Z' stroke='%2304A64B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16.5 5L9 10.25L1.5 5' stroke='%2304A64B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.header .contact a + a {
  margin-left: 16px;
}
@media (min-width: 521px) {
  .header .contact a + a {
    margin-left: 30px;
  }
}
.header .contact a:hover {
  color: #04a64b;
}

/*------------------------------------*/
/* NOTE - Footer */
/*------------------------------------*/
.footer {
  background: #003759;
  color: var(--text-body-on-dark);
  position: relative;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.footer .inner {
  display: flex;
  flex-direction: column;
  gap: var(--components-abstand-small);
  padding: 32px 0;
}
.footer .footer-logo {
  max-width: 60px;
  width: 100%;
}
.footer .footer-content {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: var(--components-abstand-small);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.footer .footer-content h5 {
  padding: 0 0 var(--space-lg);
  border-bottom: solid 2px #04a64b;
  color: var(--text-headings-on-dark);
}
.footer .footer-content ul {
  list-style-type: none;
  margin: 0;
  padding: 20px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.footer .footer-content ul li {
  width: 100%;
}
.footer .footer-content ul li a {
  text-decoration: none;
  color: #fff;
}
.footer .footer-content ul li a:hover {
  color: #04a64b;
}
.footer .footer-end {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  font-size: calc(12px + 2 * (100vw - 520px) / 600);
  font-weight: 700;
}
@media screen and (max-width: 520px) {
  .footer .footer-end {
    font-size: 12px;
  }
}
@media screen and (min-width: 1120px) {
  .footer .footer-end {
    font-size: 14px;
  }
}
.footer .footer-end .copyright {
  padding: 0;
}
.footer .footer-end a {
  color: var(--text-body-on-dark);
  transition: var(--transition);
}
.footer .footer-end a:hover {
  color: #04a64b;
}
.footer .footer-end .wv-legal-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: var(--space-lg);
}
.footer .b-t {
  cursor: pointer;
  width: 100%;
  background-color: #04a64b;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 0;
}
.footer .b-t span {
  color: #fff;
  display: block;
  font-weight: 600;
  font-size: 20px;
  background-size: 24px 24px;
  background-position: right center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 15L12 9L6 15' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  padding-right: 30px;
}
.footer .b-t:hover {
  background-color: #088d43;
}
@media (min-width: 1241px) {
  .footer .b-t {
    position: absolute;
    padding: 0;
    transition: background-color 250ms ease-in-out;
    width: 80px;
    height: 100%;
    cursor: pointer;
    right: 0;
    bottom: 0;
  }
  .footer .b-t span {
    white-space: nowrap;
    rotate: -90deg;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 18L15 12L9 6' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  }
}
@media (min-width: 769px) {
  .footer .footer-content {
    flex-direction: row;
  }
  .footer .footer-content .footer-contact {
    flex: 2;
  }
  .footer .footer-content .footer-menu {
    flex: 1;
  }
  .footer .footer-end {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}

/*------------------------------------*/
/* 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 ul {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
}
.header-menu a {
  display: block;
  font-weight: 700;
  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, .header-menu > ul > li.active > a {
  color: #04a64b;
}
.header-menu > ul > li a:active {
  color: #04a64b;
  transition: none;
}
.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: #04a64b;
}
.header-menu > ul > li > ul > li a:active {
  color: #04a64b;
  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;
    /* Main level navigation */
    /* Second level navigation */
  }
  .header-menu > ul {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
    flex-direction: column;
    align-items: stretch;
    background: #003759;
  }
  .header-menu > ul > li.menu-item {
    width: 100%;
    /* Hover/active state */
  }
  .header-menu > ul > li.menu-item > a {
    padding: 32px 20px;
    border-top: 1px solid var(--border-input);
    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 {
    color: #04a64b;
  }
  .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: 1041px) {
  .header-menu {
    /* Main level navigation */
    /* Second level navigation */
  }
  .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 var(--nav-item-gap);
    font-size: 16px;
  }
  .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 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;
}
.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: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-input);
  border: 1px solid var(--border-input);
  border-radius: 10px;
}
.slider__scrollbar__drag {
  margin: -1px;
  height: calc(100% + 2px);
  background: var(--surface-action);
  cursor: pointer;
  position: relative;
  border-radius: 10px;
}
.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;
  }
}
/*------------------------------------*/
/* NOTE - singleJobs.scss             */
/*------------------------------------*/
.singleJob .head {
  padding: 44px 0;
  background-color: #f4f4f5;
}
.singleJob .head h3 {
  color: #04a64b;
}

/*------------------------------------*/
/* 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 {
  border-radius: var(--components-input-radius);
  border: 1px solid var(--border-input);
  outline: none !important;
  width: 100%;
  line-height: var(--font-body-lineheight);
  font-size: 16px;
  font-weight: 500;
  color: var(--text-headings);
  background-color: var(--surface-input);
  padding: var(--components-input-padding-y) var(--components-input-padding-x);
  appearance: none;
  letter-spacing: normal;
  transition: var(--transition-fast);
}
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-body);
}
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);
}
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);
}
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 {
  border-radius: var(--components-input-radius);
  border: 1px solid var(--border-input);
  outline: none !important;
  width: 100%;
  line-height: var(--font-body-lineheight);
  font-size: 16px;
  font-weight: 500;
  color: var(--text-headings);
  background-color: var(--surface-input);
  padding: var(--components-input-padding-y) var(--components-input-padding-x);
  appearance: none;
  letter-spacing: normal;
  transition: var(--transition-fast);
  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-body);
}
form.wpcf7-form select:not([aria-invalid=true]):hover {
  border-color: var(--border-input-hover);
}
form.wpcf7-form select:not([aria-invalid=true]):focus {
  border-color: var(--border-input-focus);
}
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: var(--input-radius);
  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-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: var(--input-radius);
  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-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");
}
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 > label {
  width: 100%;
}
.standard-formular > label span {
  display: block;
  width: 100%;
}
.standard-formular > label span.labeltext {
  padding-bottom: var(--space-md);
  color: var(--text-headings) !important;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
.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 - quote */
/*------------------------------------*/
.quote .inner {
  display: flex;
  background-color: #003759;
  padding: 20px;
  gap: 20px;
  align-items: stretch;
  flex-direction: column;
}
@media (min-width: 769px) {
  .quote .inner {
    flex-direction: row;
  }
}
.quote .inner::after {
  content: "";
  display: block;
  position: absolute;
  width: 32px;
  height: 30px;
  top: 20px;
  right: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg width='32' height='30' viewBox='0 0 32 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.9876 4.21875H0.9375C0.419678 4.21875 0 4.6122 0 5.09766V16.3946C0 16.88 0.419678 17.2735 0.9375 17.2735H6.0249V24.8673C6.0249 25.3526 6.44458 25.7462 6.9624 25.7462H9.9751C10.3787 25.7462 10.7368 25.5041 10.8643 25.1452L13.8767 16.6724C13.9087 16.5829 13.9251 16.4891 13.9251 16.3946V5.09766C13.9251 4.6122 13.5054 4.21875 12.9876 4.21875Z' fill='white'/%3E%3Cpath d='M31.0623 4.21875H19.0122C18.4944 4.21875 18.0747 4.6122 18.0747 5.09766V16.3946C18.0747 16.88 18.4944 17.2735 19.0122 17.2735H24.0999V24.8673C24.0999 25.3526 24.5195 25.7462 25.0374 25.7462H28.0498C28.4534 25.7462 28.8115 25.5041 28.9392 25.1452L31.9517 16.6724C31.9834 16.5829 31.9998 16.4891 31.9998 16.3946V5.09766C31.9998 4.6122 31.5801 4.21875 31.0623 4.21875Z' fill='white'/%3E%3C/svg%3E%0A");
}
.quote .inner .img {
  aspect-ratio: 2/1;
  width: 100%;
  height: fit-content;
  max-width: 300px;
}
@media (min-width: 769px) {
  .quote .inner .img {
    max-width: 190px;
    aspect-ratio: 1;
  }
}
.quote .inner .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.quote .inner h3 {
  color: #fff;
}
.quote .inner p {
  font-weight: 400;
  color: #d4d4d8;
}

/*------------------------------------*/
/* ACF BLOCK - process  */
/*------------------------------------*/
@media (min-width: 769px) {
  .process {
    display: flex;
    gap: 120px;
  }
  .process .h {
    position: relative;
  }
  .process .h h2 {
    position: sticky;
    top: 110px;
  }
}
@media (min-width: 769px) and (min-width: 1025px) {
  .process .h h2 {
    top: 160px;
  }
}
.process .l {
  margin-top: var(--font-default-linegap);
}
@media (min-width: 769px) {
  .process .l {
    margin: 0;
  }
}
.process .l > div {
  display: flex;
  gap: 10px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ebebeb;
}
.process .l > div + div {
  margin-top: 20px;
}
@media (min-width: 769px) {
  .process .l > div {
    padding-bottom: 32px;
  }
  .process .l > div + div {
    margin-top: 32px;
  }
}
.process .l > div:last-of-type {
  border-bottom: unset;
}
.process .l > div:last-of-type .c p::after {
  display: none;
}
.process .l > div .icn {
  width: 24px;
  margin-top: 2px;
}
.process .l > div .icn img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
}
.process .l > div .c {
  width: fit-content;
}
.process .l > div .c h4 {
  padding: 0;
}
.process .l > div .c p {
  padding-top: 4px;
  position: relative;
}
.process .l > div .c p::after {
  content: "";
  display: block;
  position: absolute;
  background-color: #04a64b;
  width: 1px;
  height: 100%;
  left: -22px;
  bottom: 0;
}

/*------------------------------------*/
/* ACF BLOCK - job-offers */
/*------------------------------------*/
.job-offers {
  padding: 64px 0;
  background-color: #f4f4f5;
}
.job-offers .archive {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.job-offers .archive .job {
  background-color: #fff;
  width: 100%;
}
@media (min-width: 769px) {
  .job-offers .archive .job {
    width: calc(50% - 25px);
  }
}
@media (min-width: 1025px) {
  .job-offers .archive .job {
    width: calc(33.33% - 16.6666666667px);
  }
}

/*------------------------------------*/
/* ACF BLOCK - icon-box-grid */
/*------------------------------------*/
.icon-box-grid .inner {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.icon-box-grid .inner > div {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #003759;
  padding: 32px 20px;
  width: 100%;
}
@media (min-width: 769px) {
  .icon-box-grid .inner > div {
    align-items: flex-start;
  }
  .icon-box-grid .inner > div:first-of-type, .icon-box-grid .inner > div:nth-of-type(2) {
    width: calc(50% - 10px);
  }
  .icon-box-grid .inner > div:last-of-type {
    width: 100%;
  }
}
@media (min-width: 1025px) {
  .icon-box-grid .inner > div {
    justify-content: flex-start;
    align-items: center;
  }
  .icon-box-grid .inner > div:first-of-type, .icon-box-grid .inner > div:nth-of-type(2), .icon-box-grid .inner > div:last-of-type {
    width: calc(33.333% - 13.3333333333px);
  }
}
.icon-box-grid .inner > div p,
.icon-box-grid .inner > div h3 {
  color: #fff;
  text-align: center;
}
.icon-box-grid .inner > div img {
  width: 24px;
}

/*------------------------------------*/
/* ACF BLOCK - jobs-teaser */
/*------------------------------------*/
.jobs-teaser {
  overflow: hidden;
  position: relative;
  background-color: #f4f4f5;
}
@media (min-width: 1025px) {
  .jobs-teaser {
    background-color: transparent;
  }
}
.jobs-teaser .wrp {
  max-width: 1520px;
  display: flex;
  flex-direction: column;
}
@media (min-width: 769px) {
  .jobs-teaser .wrp {
    margin: 0 auto;
    flex-direction: row;
  }
  .jobs-teaser .wrp::after {
    content: "";
    display: block;
    position: absolute;
    width: 10%;
    height: 100%;
    right: 0;
    top: 0;
    background-color: #003759;
  }
}
@media (min-width: 769px) and (min-width: 1521px) {
  .jobs-teaser .wrp::after {
    width: 100%;
    z-index: -1;
  }
}
.jobs-teaser .wrp .swiper {
  width: 100%;
}
.jobs-teaser .wrp .img-c {
  display: block;
  width: 100%;
  aspect-ratio: 390/240;
  max-height: 240px;
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .img-c {
    width: 30%;
    max-height: unset;
  }
}
.jobs-teaser .wrp .img-c img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 0 41%;
}
.jobs-teaser .wrp .c {
  margin: 0 var(--layout-outergap);
  padding: 0 0 40px 0;
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .c {
    margin: 0;
    padding: 64px 0;
    background-color: #f4f4f5;
    width: 70%;
  }
}
.jobs-teaser .wrp .c .txt {
  padding: 0 24px;
  max-width: calc(100% - 20px);
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .c .txt {
    max-width: calc(100% - 120px);
  }
}
.jobs-teaser .wrp .c h3 {
  width: 100%;
  hyphens: auto;
  display: block;
}
.jobs-teaser .wrp .c .sldr-grp {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .c .sldr-grp {
    display: block;
  }
}
@media (min-width: 521px) {
  .jobs-teaser .wrp .c .sldr-grp {
    gap: 32px;
  }
}
.jobs-teaser .wrp .c .sldr-grp .swiper {
  background-color: #fff;
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .c .sldr-grp .swiper {
    transform: translateX(-75px);
  }
}
.jobs-teaser .wrp .c .sldr-grp .swiper .swiper-wrapper {
  align-items: stretch;
}
.jobs-teaser .wrp .c .sldr-grp .nxt-grp {
  z-index: 2;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  justify-content: center;
  align-items: center;
  justify-content: flex-start;
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .c .sldr-grp .nxt-grp {
    left: calc(100% - 75px);
    height: 100%;
    width: 75px;
    padding: 20px;
    background-color: #f4f4f5;
    position: absolute;
    top: 0;
  }
}
@media (min-width: 1521px) {
  .jobs-teaser .wrp .c .sldr-grp .nxt-grp {
    width: 100%;
  }
}
.jobs-teaser .wrp .c .sldr-grp .nxt-grp .btn-next {
  width: fit-content;
  display: block;
  min-width: none;
  padding: 20px;
  aspect-ratio: 1;
  background-position: center;
  background-size: 22px 19px;
  background-repeat: no-repeat;
  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.2846 2.38477L20.8996 9.99977M20.8996 9.99977L13.2846 17.6148M20.8996 9.99977H1.10059' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
@media (min-width: 769px) {
  .jobs-teaser .wrp .c > .button {
    margin-left: 20px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - process-slider */
/*------------------------------------*/
.process-slider {
  overflow: hidden;
  padding-top: 20px;
}
.process-slider .swiper {
  overflow: visible;
  width: calc(100% - var(--layout-outergap));
  margin-left: var(--layout-outergap);
}
@media (min-width: 1121px) {
  .process-slider .swiper {
    width: auto;
    margin-left: none;
  }
}
.process-slider .swiper .btn-prev {
  transition: all 250ms ease-in-out;
  visibility: hidden;
  opacity: 0;
  position: relative;
  rotate: 180deg;
  z-index: 2;
  width: fit-content;
  transform: translateY(-50%) translateX(20px);
  display: block;
  min-width: none;
  padding: 20px;
  aspect-ratio: 1;
  background-position: center;
  background-size: 22px 19px;
  background-repeat: no-repeat;
  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.2846 2.38477L20.8996 9.99977M20.8996 9.99977L13.2846 17.6148M20.8996 9.99977H1.10059' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
@media (min-width: 1025px) {
  .process-slider .swiper .btn-prev.count-4 {
    display: none;
  }
}
@media (min-width: 769px) {
  .process-slider .swiper .btn-prev.count-3, .process-slider .swiper .btn-prev.count-2 {
    display: none;
  }
}
.process-slider .swiper .btn-prev.count-1 {
  display: none;
}
.process-slider .swiper .btn-prev.v {
  visibility: visible;
  opacity: 1;
}
.process-slider .swiper .btn-next {
  position: relative;
  z-index: 2;
  width: fit-content;
  transform: translateY(150%);
  display: block;
  margin: 0 0 0 auto;
  min-width: none;
  padding: 20px;
  aspect-ratio: 1;
  background-position: center;
  background-size: 22px 19px;
  background-repeat: no-repeat;
  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.2846 2.38477L20.8996 9.99977M20.8996 9.99977L13.2846 17.6148M20.8996 9.99977H1.10059' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
@media (min-width: 1025px) {
  .process-slider .swiper .btn-next.count-4 {
    display: none;
  }
}
@media (min-width: 769px) {
  .process-slider .swiper .btn-next.count-3, .process-slider .swiper .btn-next.count-2 {
    display: none;
  }
}
.process-slider .swiper .btn-next.count-1 {
  display: none;
}
.process-slider .swiper .swiper-slide {
  position: relative;
  opacity: 1;
  border-top: 1px dotted #d7d7d7;
  transition: all 250ms ease-in-out;
}
.process-slider .swiper .swiper-slide.hidden {
  opacity: 0;
}
.process-slider .swiper .swiper-slide .bg {
  width: 10px;
  position: absolute;
  left: -5px;
  top: 0;
  object-fit: contain;
  max-height: 290px;
}
.process-slider .swiper .swiper-slide .t {
  transform: translateY(-50%) translateX(36px);
  position: relative;
  background-color: #04a64b;
  padding: 2px 10px;
  color: #fff;
  width: fit-content;
}
.process-slider .swiper .swiper-slide .t svg {
  position: absolute;
  height: 100%;
  right: 0;
  top: 0;
  transform: translateX(100%);
}
.process-slider .swiper .swiper-slide .img {
  display: block;
  border-radius: calc(infinity * 1px);
  max-width: 75px;
  object-fit: cover;
  aspect-ratio: 1;
  transform: translateX(-37.5px);
  overflow: hidden;
}
.process-slider .swiper .swiper-slide .img:not(.i) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.process-slider .swiper .swiper-slide .img.i {
  background-color: #003759;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  justify-content: center;
  align-items: center;
}
.process-slider .swiper .swiper-slide .img.i img {
  width: 22px;
}
.process-slider .swiper .swiper-slide .c {
  hyphens: auto;
  padding: 50px 38px 0 38px;
}

/*------------------------------------*/
/* ACF BLOCK - bulletpoints-image */
/*------------------------------------*/
.bulletpoints-image {
  display: block;
  overflow-y: visible;
  overflow-x: clip;
}
.bulletpoints-image .inner {
  display: flex;
  flex-direction: column-reverse;
  gap: 32px;
}
@media (min-width: 1025px) {
  .bulletpoints-image .inner {
    gap: 120px;
    flex-direction: row;
  }
}
.bulletpoints-image .inner .img {
  height: fit-content;
  width: 100%;
  max-width: 475px;
  position: relative;
}
.bulletpoints-image .inner .img img {
  aspect-ratio: 375/260;
  object-fit: cover;
}
@media (min-width: 1025px) {
  .bulletpoints-image .inner .img img {
    aspect-ratio: 375/511;
    max-width: 375px;
  }
}
.bulletpoints-image .inner .img::after, .bulletpoints-image .inner .img::before {
  content: "";
  display: block;
  position: absolute;
  display: block;
  z-index: -1;
  width: 50%;
  aspect-ratio: 1/1;
}
@media (min-width: 1025px) {
  .bulletpoints-image .inner .img::after, .bulletpoints-image .inner .img::before {
    width: 90%;
  }
}
.bulletpoints-image .inner .img::after {
  background-color: #04a64b;
  bottom: -8px;
  right: -8px;
}
@media (min-width: 1025px) {
  .bulletpoints-image .inner .img::after {
    bottom: unset;
    top: -32px;
    right: -32px;
  }
}
.bulletpoints-image .inner .img::before {
  bottom: 0px;
  right: -20%;
  border: 1px solid #04a64b;
  rotate: 45deg;
}
@media (min-width: 1025px) {
  .bulletpoints-image .inner .img::before {
    bottom: unset;
    top: -44px;
    right: -55%;
  }
}
.bulletpoints-image .inner .c ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  padding-top: 20px;
  border-top: 1px solid #e3e3e3;
}
.bulletpoints-image .inner .c ul li {
  width: 100%;
  color: #52525b;
}
@media (min-width: 769px) {
  .bulletpoints-image .inner .c ul li {
    width: calc(50% - 10px);
  }
}
.bulletpoints-image .inner .c ul li:before {
  top: 8px;
}
.bulletpoints-image .inner .c .button {
  margin-top: 20px;
}

/*------------------------------------*/
/* ACF BLOCK - cta-banner */
/*------------------------------------*/
.cta-banner {
  background-color: #003759;
  position: relative;
  padding: 60px 0 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media (min-width: 769px) {
  .cta-banner {
    padding: 60px 0;
  }
}
.cta-banner h2 {
  color: #fff;
  hyphens: none;
}
.cta-banner .h5 {
  color: #04a64b;
  padding: 0;
}
.cta-banner p {
  color: #d4d4d8;
}
.cta-banner .inner {
  position: relative;
}
@media (min-width: 769px) {
  .cta-banner .inner {
    display: flex;
    gap: 120px;
    align-items: stretch;
  }
}
.cta-banner .inner img {
  aspect-ratio: 1;
  width: 100%;
  object-fit: cover;
}
@media (min-width: 769px) {
  .cta-banner .inner img {
    max-width: 266px;
  }
}
@media (min-width: 1025px) {
  .cta-banner .inner img {
    max-width: 350px;
  }
}
.cta-banner .inner .button {
  margin-top: 20px;
}
.cta-banner .inner .c {
  position: relative;
  z-index: 1;
  margin-top: 34px;
}
@media (min-width: 769px) {
  .cta-banner .inner .c {
    margin: 0;
    max-width: calc(50% - 90px);
  }
}
.cta-banner .bg {
  position: relative;
  width: 40%;
}
@media (min-width: 769px) {
  .cta-banner .bg {
    width: auto;
    position: absolute;
    height: 80%;
    top: 10%;
    right: 0;
  }
}

/*------------------------------------*/
/* ACF BLOCK - image-text-grid */
/*------------------------------------*/
@media (min-width: 769px) {
  .image-text-grid {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 20px;
  }
}
.image-text-grid > div + .row {
  margin-top: 20px;
}
@media (min-width: 769px) {
  .image-text-grid > div + .row {
    margin: 0;
  }
}
@media (min-width: 769px) {
  .image-text-grid > div {
    display: flex;
    gap: 20px;
  }
}
.image-text-grid > div.fit .el {
  height: fit-content !important;
}
.image-text-grid > div.auto .el {
  height: auto !important;
}
.image-text-grid > div > div {
  height: auto;
  width: 100%;
  padding: 20px;
  box-shadow: 0px 0px 2.1px 0px rgba(23, 24, 24, 0.3);
}
@media (min-width: 769px) {
  .image-text-grid > div > div {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
    flex-direction: column;
    width: calc(50% - 10px);
    justify-content: space-between;
  }
}
.image-text-grid > div > div + div {
  margin-top: 20px;
}
@media (min-width: 769px) {
  .image-text-grid > div > div + div {
    margin: 0;
  }
}
.image-text-grid > div > div img {
  aspect-ratio: 310/243;
  object-fit: cover;
  width: 100%;
}
@media (min-width: 769px) {
  .image-text-grid > div > div img {
    aspect-ratio: 508/243;
  }
}
.image-text-grid > div > div span {
  width: fit-content;
  display: block;
  cursor: pointer;
  font-size: 12px;
  color: #52525b;
  line-height: 100%;
  transform: translateY(0);
  transition: all 250ms ease-in-out;
  opacity: 1;
}
.image-text-grid > div > div span.c {
  margin-bottom: 20px;
}
.image-text-grid > div > div span.o {
  margin-top: 20px;
}
.image-text-grid > div > div span.h {
  transform: translateY(-15%);
  visibility: hidden;
  opacity: 0;
  line-height: 0%;
}
.image-text-grid > div > div span.h.c {
  margin: 0;
}
.image-text-grid > div > div .arw {
  position: relative;
}
.image-text-grid > div > div .arw::after {
  content: "";
  display: block;
  position: absolute;
  transition: rotate 250ms ease-in-out;
  right: -23px;
  top: calc(50% - 10px);
  width: 20px;
  height: 20px;
  rotate: -180deg;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Icon'%3E%3Cpath id='Vector' d='M15 12.4106L10 7.58921L5 12.4106' stroke='%23656565' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.image-text-grid > div > div .arw.c::after {
  rotate: 0deg;
}
.image-text-grid > div > div .content {
  display: none;
}
.image-text-grid > div > div .content ul {
  padding: 0;
  list-style-type: none;
}
.image-text-grid.open .el {
  height: fit-content;
}

/*------------------------------------*/
/* ACF BLOCK - image-row */
/*------------------------------------*/
.image-row {
  transform: translateX(calc(var(--layout-outergap) * -1));
  width: calc(100% + var(--layout-outergap));
  overflow: hidden;
}
@media (min-width: 1025px) {
  .image-row {
    width: calc(100% - 2 * var(--layout-outergap));
    max-width: 1120px;
    margin: 0 auto;
    position: relative;
    transform: unset;
  }
}
.image-row .swiper {
  overflow: visible;
}
@media (min-width: 769px) {
  .image-row .swiper {
    overflow: hidden;
  }
}
.image-row .swiper .swiper-wrapper {
  transition-timing-function: linear !important;
  align-items: stretch !important;
}
@media (min-width: 769px) {
  .image-row .swiper .swiper-wrapper {
    gap: 70px;
  }
}
.image-row .swiper .swiper-wrapper .swiper-slide {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  justify-content: center;
  align-items: center;
}
@media (min-width: 769px) {
  .image-row .swiper .swiper-wrapper .swiper-slide {
    flex: 1;
    max-width: 25%;
  }
}
.image-row .swiper .swiper-wrapper .swiper-slide img {
  max-height: 100px;
}
@media (min-width: 769px) {
  .image-row .swiper .swiper-wrapper .swiper-slide img {
    max-height: 72px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - infotext-list */
/*------------------------------------*/
@media (min-width: 769px) {
  .infotext-list {
    display: flex;
    gap: 100px;
  }
}
.infotext-list > div {
  flex: 1;
}
@media (min-width: 769px) {
  .infotext-list > div.txt {
    position: relative;
  }
  .infotext-list > div.txt div {
    position: sticky;
    top: 110px;
  }
}
@media (min-width: 769px) and (min-width: 1025px) {
  .infotext-list > div.txt div {
    top: 160px;
  }
}
.infotext-list > div h3 {
  color: #04a64b;
}
.infotext-list > div ul {
  list-style-type: none;
  padding: 0;
}
.infotext-list > div ul li::before {
  display: none;
}
.infotext-list > div ul li p {
  padding-top: 8px;
}
.infotext-list > div ul li + li {
  margin-top: 30px;
}

/*------------------------------------*/
/* ACF BLOCK - Referenzen */
/*------------------------------------*/
.references {
  overflow: hidden;
  background-color: #003759;
  padding: 64px 0;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.references .text-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: var(--space-xl, 20px);
  align-self: stretch;
  position: relative;
}
.references .text-container h2,
.references .text-container p {
  color: #fff;
  padding: 0;
}
.references .text-container .text-controls-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 61px;
  align-self: stretch;
}
.references .text-container .controls {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.references .slider-container {
  margin-left: 20px;
  margin-top: var(--space-xl, 20px);
  margin-top: 64px;
  position: relative;
  overflow: visible;
  z-index: 5;
}
.references .slider-container::before, .references .slider-container::after {
  content: "";
  display: block;
  position: absolute;
  background-color: #fff;
  opacity: 0.5;
}
.references .slider-container::before {
  width: 200vw;
  height: 1px;
  top: -36px;
  left: -50vw;
}
.references .slider-container::after {
  height: 100vh;
  width: 1px;
  left: -100px;
  top: -36px;
}
.references .slider-container .swiper {
  overflow: visible;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide {
  transition: var(--transition);
  opacity: 0.5;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide.swiper-slide-next, .references .slider-container .swiper .swiper-wrapper .swiper-slide.swiper-slide-active {
  opacity: 1;
  cursor: pointer;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide > div {
  background-color: #fff;
  padding: 20px;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide > div img {
  aspect-ratio: 50/24;
  width: 100%;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide > div .c {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide .mb {
  transition: all 250ms ease-in-out;
  font-size: 12px;
  color: #52525b;
  background-size: 19px 19px;
  background-position: right center;
  padding-right: 22px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg width='21' height='20' viewBox='0 0 21 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.5 7.58984L10.5 12.4113L15.5 7.58984' stroke='%23656565' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide .inf {
  width: 100%;
  display: none;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide .inf ul {
  padding-left: 18px;
}
.references .slider-container .swiper .swiper-wrapper .swiper-slide.o .mb {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 15L12 9L6 15' stroke='%23656565' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
@media (min-width: 1025px) {
  .references .text-container {
    position: relative;
  }
  .references .text-container .text-controls-wrapper {
    flex-direction: row;
  }
  .references .slider-container .swiper {
    overflow: visible;
    margin-left: 0;
  }
  .references .slider-container .swiper .swiper-wrapper .swiper-slide {
    width: 100%;
  }
}
@media (min-width: 1321px) {
  .references .slider-container {
    margin-left: calc((100% - 1120px) / 2);
  }
}

/*------------------------------------*\
	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: row;
  gap: var(--space-md);
  flex-wrap: wrap;
  align-items: stretch;
}
.accordeon .row {
  display: contents;
}
.accordeon .item {
  align-items: stretch;
  box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.08);
  font-size: 16px;
  padding: 20px;
  width: 100%;
}
@media (min-width: 1025px) {
  .accordeon .item {
    width: calc(33.33% - 10px);
  }
}
.accordeon .item .title {
  background-color: #003759;
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: #27272a;
  font-family: var(--font-family-headings);
  font-weight: 500;
  line-height: 120%;
  font-size: calc(15px + 1 * (100vw - 520px) / 600);
  margin: 0;
  color: #fff;
  height: 100%;
  max-height: 126px;
  padding: 10px;
  position: relative;
  cursor: pointer;
  transition: height 250ms ease-in-out;
}
@media screen and (max-width: 520px) {
  .accordeon .item .title {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  .accordeon .item .title {
    font-size: 16px;
  }
}
.accordeon .item .title span {
  display: block;
  font-weight: 600;
}
.accordeon .item .title span:first-of-type {
  margin-bottom: 5px;
}
.accordeon .item .title:after {
  content: "";
  display: block;
  position: absolute;
  right: 10px;
  bottom: 15px;
  transform: translateY(-50%);
  width: 24px;
  aspect-ratio: 1;
  background-color: transparent;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: all 0.25s ease-in-out;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 6L9 12L15 18' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.accordeon .item .content-container {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 300ms linear;
}
.accordeon .item .content {
  line-height: var(--font-body-lineheight);
  font-size: calc(15px + 0 * (100vw - 520px) / 600);
  font-size: calc(16px + 0 * (100vw - 520px) / 600);
  padding: 0px 10px 10px 10px;
  overflow: hidden;
  transition: padding 300ms linear;
}
@media screen and (max-width: 520px) {
  .accordeon .item .content {
    font-size: 15px;
  }
}
@media screen and (min-width: 1120px) {
  .accordeon .item .content {
    font-size: 15px;
  }
}
@media screen and (max-width: 520px) {
  .accordeon .item .content {
    font-size: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .accordeon .item .content {
    font-size: 16px;
  }
}
.accordeon .item .content li,
.accordeon .item .content a,
.accordeon .item .content span,
.accordeon .item .content p {
  color: #52525b;
  font-size: 14px;
}
.accordeon .item .content li::before {
  width: 4px;
  height: 4px;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='9' viewBox='0 0 9 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4.24268' width='6' height='6' transform='rotate(45 4.24268 0)' fill='%2352525b'/%3E%3C/svg%3E%0A");
}
.accordeon .item.--open .title::after {
  transform: translateY(-50%) rotate(180deg);
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 15L12 9L6 15' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.accordeon .item:not(.--open) .content-container {
  grid-template-rows: 0fr;
}
.accordeon .item:not(.--open) .content {
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 769px) {
  .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 10px 10px 10px;
  }
}

/*------------------------------------*/
/* 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;
}
.hero-banner .l {
  display: none;
}
@media (min-width: 769px) {
  .hero-banner .l {
    display: block;
    opacity: 0.3;
    position: absolute;
    background-color: #a1a1a1;
  }
}
.hero-banner > .l {
  left: 0;
  width: calc(100% - (100% - 1120px) / 2);
  height: 1px;
}
.hero-banner > .l:not(.b) {
  top: 100px;
}
.hero-banner > .l.b {
  bottom: 0;
}
.hero-banner .inner {
  padding: 35px 0;
  position: relative;
  z-index: 2;
}
@media (min-width: 769px) {
  .hero-banner .inner {
    display: flex;
    align-items: center;
    padding: 100px 0 20px 0;
    justify-content: space-between;
    gap: 100px;
  }
}
.hero-banner .inner .text {
  height: fit-content;
  width: 100%;
  max-width: 544px;
  position: static;
  z-index: 1;
}
.hero-banner .inner .text > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.hero-banner .inner .text .h4 {
  color: #04a64b;
}
.hero-banner .inner .img {
  position: relative;
  aspect-ratio: 548/707;
  max-width: 548px;
  transform: translateX(calc(var(--layout-outergap)));
  margin: 130px 0px 0px auto;
}
@media (min-width: 769px) {
  .hero-banner .inner .img {
    margin: 0;
    transform: unset;
  }
}
.hero-banner .inner .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-banner .inner .img::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  transform: translateY(-50%);
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg width='348' height='288' viewBox='0 0 348 288' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M209.296 43.4021L1 44.137L1.75035 261.39L210.047 260.655L209.296 43.4021Z' stroke='%23868686' stroke-opacity='0.3'/%3E%3Cpath d='M199.924 1.00003L64.6025 154.503L211.688 286.951L347.009 133.447L199.924 1.00003Z' stroke='%23868686' stroke-opacity='0.3'/%3E%3C/svg%3E%0A");
  width: 50%;
  max-width: 364;
  aspect-ratio: 364/285;
}
@media (min-width: 769px) {
  .hero-banner .inner .img::after {
    transform: translateX(-50%);
    bottom: 0;
    left: 0;
    top: unset;
    right: unset;
  }
}
.hero-banner .inner .img .l {
  width: 1px;
  height: calc(100% + 100px);
  top: -100px;
  left: 0;
}
.hero-banner .bg-m,
.hero-banner .bg-s {
  position: absolute;
  right: 0;
}
.hero-banner .bg-m {
  z-index: -2;
  background-color: #04a64b;
}
.hero-banner .bg-m.f {
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 35%;
}
@media (min-width: 769px) {
  .hero-banner .bg-m.f {
    z-index: -1;
    max-width: calc((100% - 1120px) / 2 + 566px);
    width: 60%;
    height: 50%;
  }
}
.hero-banner .bg-m:not(.f) {
  display: none;
  top: 0;
  width: calc((100% - 1120px) / 2);
  height: 100%;
  min-width: calc(var(--layout-outergap) * 4);
}
@media (min-width: 769px) {
  .hero-banner .bg-m:not(.f) {
    display: block;
  }
}
.hero-banner .bg-s {
  display: none;
  background-color: #003759;
  top: 100px;
  width: calc((100% - 1120px) / 2);
  height: 30%;
  min-width: calc(var(--layout-outergap) * 4);
}
@media (min-width: 769px) {
  .hero-banner .bg-s {
    display: block;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Image Text */
/*------------------------------------*/
.image-text {
  background-color: #f4f4f5;
  width: 100%;
  overflow: hidden;
}
.image-text .inner {
  display: flex;
  flex-direction: column-reverse;
  align-items: stretch;
  align-items: flex-end;
  padding: 25px 0 41px 0;
  gap: 64px;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
@media (min-width: 769px) {
  .image-text .inner {
    gap: 120px;
  }
}
.image-text .inner .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.image-text .inner .text > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.image-text .inner .text h4 {
  color: #04a64b;
}
.image-text .inner .image {
  position: relative;
  z-index: 1;
  max-width: 455px;
  width: 100%;
  aspect-ratio: 368/343;
  transform: translateX(calc(var(--layout-outergap) * 1));
}
@media (min-width: 769px) {
  .image-text .inner .image {
    aspect-ratio: 455/343;
    transform: unset;
  }
}
.image-text .inner .image img {
  width: 100%;
  height: 100%;
  max-width: 455px;
  object-fit: cover;
}
.image-text .inner .image::after {
  content: "";
  display: block;
  position: absolute;
  background-color: #04a64b;
  z-index: -1;
  height: 50%;
  bottom: -16px;
  right: -16px;
  width: 100vw;
}
@media (min-width: 769px) {
  .image-text .inner .image::after {
    width: 50vw;
  }
}
.image-text .inner.--order-text-image .image::after {
  right: unset;
  left: -16px;
}
@media (min-width: 769px) {
  .image-text .inner {
    flex-direction: row;
    gap: 120px;
  }
  .image-text .inner .text {
    padding: var(--space-3xl) 0;
  }
  .image-text .inner .image img {
    max-height: 700px;
  }
  .image-text .inner.--order-text-image {
    flex-direction: row-reverse;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Seitenanfang */
/*------------------------------------*/
.page-start {
  padding: var(--space-3xl) 0;
  background: var(--surface-dark);
  border-bottom: 4px solid var(--border-accent);
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.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-on-dark);
}
.page-start .inner p {
  color: var(--text-body-on-dark);
}
@media (min-width: 769px) {
  .page-start {
    padding: var(--space-4xl) 0;
  }
}

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