@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: 1254px) {
  :root {
    --inner-margin: calc((100vw - 1190px) / 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);
  --farbe-1-100: var(--tailwind-slate-100, #f1f5f9);
  --farbe-1-200: var(--tailwind-slate-200, #e2e8f0);
  --farbe-1-300: var(--tailwind-slate-300, #cbd5e1);
  --farbe-1-400: var(--tailwind-slate-400, #94a3b8);
  --farbe-1-50: var(--tailwind-slate-50, #f8fafc);
  --farbe-1-500: var(--tailwind-slate-500, #64748b);
  --farbe-1-600: var(--tailwind-slate-600, #475569);
  --farbe-1-700: var(--tailwind-slate-700, #334155);
  --farbe-1-800: var(--tailwind-slate-800, #1e293b);
  --farbe-1-900: var(--tailwind-slate-900, #0f172a);
  --farbe-1-950: var(--tailwind-slate-950, #020617);
  --farbe-2-100: #d9f2e3;
  --farbe-2-200: #b6e4cc;
  --farbe-2-300: #86cfad;
  --farbe-2-400: #65bc96;
  --farbe-2-50: #effaf4;
  --farbe-2-500: #31986f;
  --farbe-2-600: #217a58;
  --farbe-2-700: #1b6148;
  --farbe-2-800: #174e3a;
  --farbe-2-900: #144031;
  --farbe-2-950: #0a241c;
  /* 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-secondary-default: var(--tailwind-violet-500, #8b5cf6);
  --theme-secondary-dark: var(--tailwind-violet-600, #7c3aed);
  --theme-secondary-darker: var(--tailwind-violet-700, #6d28d9);
  --theme-secondary-darkest: var(--tailwind-violet-800, #5b21b6);
  --theme-secondary-light: var(--tailwind-violet-400, #a78bfa);
  --theme-secondary-lighter: var(--tailwind-violet-300, #c4b5fd);
  --theme-secondary-lightest: var(--tailwind-violet-50, #f5f3ff);
  --theme-accent-default: var(--tailwind-emerald-700, #047857);
  --theme-accent-dark: var(--tailwind-emerald-800, #065f46);
  --theme-accent-darker: var(--tailwind-emerald-900, #064e3b);
  --theme-accent-darkest: var(--tailwind-emerald-950, #022c22);
  --theme-accent-light: var(--tailwind-emerald-500, #10b981);
  --theme-accent-lighter: var(--tailwind-emerald-200, #a7f3d0);
  --theme-accent-lightest: var(--tailwind-emerald-50, #ecfdf5);
  --theme-error-default: var(--tailwind-rose-400, #fb7185);
  --theme-error-dark: var(--tailwind-rose-600, #e11d48);
  --theme-error-darker: var(--tailwind-rose-800, #9f1239);
  --theme-error-darkest: var(--tailwind-rose-900, #881337);
  --theme-error-light: var(--tailwind-rose-300, #fda4af);
  --theme-error-lighter: var(--tailwind-rose-200, #fecdd3);
  --theme-error-lightest: var(--tailwind-rose-50, #fff1f2);
  --theme-neutral-default: var(--tailwind-zinc-300, #d4d4d8);
  --theme-neutral-black: var(--tailwind-black, #000000);
  --theme-neutral-dark: var(--tailwind-zinc-400, #a1a1aa);
  --theme-neutral-darker: var(--tailwind-zinc-700, #3f3f46);
  --theme-neutral-darkest: var(--tailwind-zinc-900, #18181b);
  --theme-neutral-light: var(--tailwind-zinc-200, #e4e4e7);
  --theme-neutral-lighter: var(--tailwind-zinc-100, #f4f4f5);
  --theme-neutral-lightest: var(--tailwind-zinc-50, #fafafa);
  --theme-neutral-white: var(--tailwind-white, #ffffff);
  --theme-notice-default: var(--tailwind-sky-500, #0ea5e9);
  --theme-notice-dark: var(--tailwind-sky-600, #0284c7);
  --theme-notice-darker: var(--tailwind-sky-700, #0369a1);
  --theme-notice-darkest: var(--tailwind-sky-800, #075985);
  --theme-notice-light: var(--tailwind-sky-400, #38bdf8);
  --theme-notice-lighter: var(--tailwind-sky-200, #bae6fd);
  --theme-notice-lightest: var(--tailwind-sky-50, #f0f9ff);
  --theme-primary-default: var(--tailwind-slate-800, #1e293b);
  --theme-primary-dark: var(--tailwind-slate-900, #0f172a);
  --theme-primary-darker: var(--tailwind-slate-950, #020617);
  --theme-primary-darkest: var(--tailwind-slate-950, #020617);
  --theme-primary-light: var(--tailwind-slate-300, #cbd5e1);
  --theme-primary-lighter: var(--tailwind-slate-200, #e2e8f0);
  --theme-primary-lightest: var(--tailwind-slate-100, #f1f5f9);
  --theme-success-default: var(--tailwind-green-500, #22c55e);
  --theme-success-dark: var(--tailwind-green-600, #16a34a);
  --theme-success-darker: var(--tailwind-green-700, #15803d);
  --theme-success-darkest: var(--tailwind-green-800, #166534);
  --theme-success-light: var(--tailwind-green-400, #4ade80);
  --theme-success-lighter: var(--tailwind-green-200, #bbf7d0);
  --theme-success-lightest: var(--tailwind-green-50, #f0fdf4);
  --theme-warning-default: var(--tailwind-orange-500, #f97316);
  --theme-warning-dark: var(--tailwind-orange-600, #ea580c);
  --theme-warning-darker: var(--tailwind-orange-700, #c2410c);
  --theme-warning-darkest: var(--tailwind-orange-800, #9a3412);
  --theme-warning-light: var(--tailwind-orange-400, #fb923c);
  --theme-warning-lighter: var(--tailwind-orange-200, #fed7aa);
  --theme-warning-lightest: var(--tailwind-orange-50, #fff7ed);
  --theme-secondary-default: var(--tailwind-violet-500, #8b5cf6);
  --theme-secondary-dark: var(--tailwind-orange-600, #ea580c);
  --theme-secondary-darker: var(--tailwind-violet-700, #6d28d9);
  --theme-secondary-darkest: var(--tailwind-violet-800, #5b21b6);
  --theme-secondary-light: var(--tailwind-violet-400, #a78bfa);
  --theme-secondary-lighter: var(--tailwind-violet-300, #c4b5fd);
  --theme-secondary-lightest: var(--tailwind-violet-50, #f5f3ff);
  --theme-accent-default: #ffde59;
  --theme-accent-dark: #fdc512;
  --theme-accent-darker: #ecab06;
  --theme-accent-darkest: #ecab06;
  --theme-accent-light: #ffec89;
  --theme-accent-lighter: #fff8c2;
  --theme-accent-lightest: #fefbe8;
  --theme-error-default: var(--tailwind-rose-400, #fb7185);
  --theme-error-dark: var(--tailwind-rose-600, #e11d48);
  --theme-error-darker: var(--tailwind-rose-800, #9f1239);
  --theme-error-darkest: var(--tailwind-rose-900, #881337);
  --theme-error-light: var(--tailwind-rose-300, #fda4af);
  --theme-error-lighter: var(--tailwind-rose-200, #fecdd3);
  --theme-error-lightest: var(--tailwind-rose-50, #fff1f2);
  --theme-neutral-default: var(--tailwind-zinc-300, #d4d4d8);
  --theme-neutral-black: var(--tailwind-black, #000000);
  --theme-neutral-dark: var(--tailwind-zinc-400, #a1a1aa);
  --theme-neutral-darker: var(--tailwind-zinc-700, #3f3f46);
  --theme-neutral-darkest: var(--tailwind-zinc-900, #18181b);
  --theme-neutral-light: var(--tailwind-zinc-200, #e4e4e7);
  --theme-neutral-lighter: var(--tailwind-zinc-100, #f4f4f5);
  --theme-neutral-lightest: var(--tailwind-zinc-50, #fafafa);
  --theme-neutral-white: var(--tailwind-white, #ffffff);
  --theme-notice-default: var(--tailwind-sky-500, #0ea5e9);
  --theme-notice-dark: var(--tailwind-sky-600, #0284c7);
  --theme-notice-darker: var(--tailwind-sky-700, #0369a1);
  --theme-notice-darkest: var(--tailwind-sky-800, #075985);
  --theme-notice-light: var(--tailwind-sky-400, #38bdf8);
  --theme-notice-lighter: var(--tailwind-sky-200, #bae6fd);
  --theme-notice-lightest: var(--tailwind-sky-50, #f0f9ff);
  --theme-primary-default: #ff3131;
  --theme-primary-dark: #c80d0d;
  --theme-primary-darker: #a50f0f;
  --theme-primary-darkest: #4b0404;
  --theme-primary-light: #ffc5c5;
  --theme-primary-lighter: #ffdfdf;
  --theme-primary-lightest: #fff1f1;
  --theme-success-default: var(--tailwind-green-500, #22c55e);
  --theme-success-dark: var(--tailwind-green-600, #16a34a);
  --theme-success-darker: var(--tailwind-green-700, #15803d);
  --theme-success-darkest: var(--tailwind-green-800, #166534);
  --theme-success-light: var(--tailwind-green-400, #4ade80);
  --theme-success-lighter: var(--tailwind-green-200, #bbf7d0);
  --theme-success-lightest: var(--tailwind-green-50, #f0fdf4);
  --theme-warning-default: var(--tailwind-orange-500, #f97316);
  --theme-warning-dark: var(--tailwind-orange-600, #ea580c);
  --theme-warning-darker: var(--tailwind-orange-700, #c2410c);
  --theme-warning-darkest: var(--tailwind-orange-800, #9a3412);
  --theme-warning-light: var(--tailwind-orange-400, #fb923c);
  --theme-warning-lighter: var(--tailwind-orange-200, #fed7aa);
  --theme-warning-lightest: var(--tailwind-orange-50, #fff7ed);
  /* numbers */
  --radius-2xs: var(--space-100);
  --radius-xs: var(--space-200);
  --radius-sm: var(--space-300);
  --radius-md: var(--space-400);
  --radius-lg: var(--space-500);
  --radius-xl: var(--space-600);
  --radius-2xl: var(--space-700);
  --radius-3xl: var(--space-800);
  --radius-4xl: var(--space-900);
  --space-2xs: var(--space-100);
  --space-xs: var(--space-200);
  --space-sm: var(--space-300);
  --space-md: var(--space-400);
  --space-lg: var(--space-500);
  --space-xl: var(--space-600);
  --space-2xl: var(--space-700);
  --space-3xl: var(--space-800);
  --space-4xl: var(--space-900);
}

/*------------------------------------*/
/* COLLECTION - 🗺️ Responsive Tokens */
/*------------------------------------*/
:root {
  /* numbers */
  --box-padding-small: var(--space-lg);
  --box-padding-medium: var(--space-xl);
  --box-padding-large: var(--space-3xl);
  --components-abstand-extrasmall: 20px;
  --components-abstand-medium: 80px;
  --components-abstand-small: 80px;
  --components-abstand-large: 80px;
  --components-abstand-extralarge: 120px;
  --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: "Montserrat";
  --font-family-headings: "Montserrat";
  --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: 300px;
    --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: "Montserrat";
    --font-family-headings: "Montserrat";
    --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;
    --linegap: 20px;
    --components-box-padding-md: 16px;
    --components-box-padding-sm: 16px;
    --components-box-padding-lg: 20px;
    --components-button-large-padding-y: 16px;
    --components-button-large-padding-x: 36px;
    --components-button-small-padding-y: 15px;
    --components-button-small-padding-x: 22px;
    --components-dropdown-min-width: 220px;
    --components-input-padding-y: 16px;
    --components-input-padding-x: 18px;
    --components-input-padding-x-large: 40px;
    --layout-grid-columns: 4px;
    --layout-grid-column-gap: 20px;
    --layout-grid-outergap: 20px;
    --layout-grid-inner: 360px;
    --layout-grid-inner-4: 460px;
    --layout-native-ui-height-bottom: 52px;
    --layout-native-ui-height-top: 52px;
    --layout-window-min-width: 320px;
    --layout-window-width: 390px;
    --layout-window-height: 844px;
    --lineheight-default: 1.5px;
    --lineheight-body: 10px;
    --radius-sm: 4px;
    --radius-md-6: 6px;
    --radius-sm-focus: 6px;
    --radius-md: 12px;
    --radius-md-focus: 14px;
    --radius-lg: 24px;
    --radius-xl: 24px;
    --radius-lg-focus: 26px;
    --spacing-xs: 8px;
    --spacing-sm: 12px;
    --spacing-md: 20px;
    --spacing-lg: 32px;
    --spacing-xl: 44px;
    --spacing-2xl: 80px;
    --spacing-3xl: 160px;
    --text-xs: 10px;
    --text-2xs: 11px;
    --text-sm: 12px;
    --text-md: 14px;
    --text-lg: 16px;
    --text-xl: 20px;
    --text-2xl: 22px;
    --text-3xl: 30px;
    --touch-height-aa: 24px;
    --linegap: 20px;
    --components-box-padding-sm: 10px;
    --components-box-padding-md: 20px;
    --components-box-padding-lg: 48px;
    --components-button-large-padding-y: 16px;
    --components-button-large-padding-x: 32px;
    --components-button-small-padding-y: 10px;
    --components-button-small-padding-x: 24px;
    --components-dropdown-min-width: 220px;
    --components-input-padding-y: 16px;
    --components-input-padding-x: 20px;
    --components-input-padding-x-large: 48px;
    --layout-grid-columns: 12px;
    --layout-grid-column-gap: 20px;
    --layout-grid-outergap: 40px;
    --layout-grid-inner-4: 460px;
    --layout-grid-inner: 1120px;
    --layout-native-ui-height-bottom: 0px;
    --layout-native-ui-height-top: 32px;
    --layout-window-min-width: 768px;
    --layout-window-height: 982px;
    --layout-window-width: 1512px;
    --lineheight-default: 1.5px;
    --lineheight-body: 10px;
    --radius-sm: 4px;
    --radius-md-6: 6px;
    --radius-sm-focus: 6px;
    --radius-md: 10px;
    --radius-md-focus: 14px;
    --radius-lg: 20px;
    --radius-lg-focus: 26px;
    --radius-xl: 32px;
    --spacing-xs: 10px;
    --spacing-sm: 20px;
    --spacing-md: 32px;
    --spacing-lg: 44px;
    --spacing-xl: 64px;
    --spacing-2xl: 160px;
    --spacing-3xl: 200px;
    --text-2xs: 12px;
    --text-xs: 14px;
    --text-sm: 16px;
    --text-lg: 18px;
    --text-md: 18px;
    --text-xl: 24px;
    --text-2xl: 32px;
    --text-3xl: 40px;
    --touch-height-aa: 24px;
  }
}

/*------------------------------------*/
/* COLLECTION - 🗺️ Theme Tokens */
/*------------------------------------*/
:root {
  /* colors */
  --color-divider: var(--tailwind-zinc-100, #f4f4f5);
  --color-divider-on-dark: var(--theme-primary-default, #ff3131);
  --color-border-accent: var(--theme-accent-default, #ffde59);
  --color-border-decent: var(--tailwind-zinc-100, #f4f4f5);
  --color-border-error: var(--tailwind-rose-200, #fecdd3);
  --color-border-focus: var(--theme-accent-dark, #fdc512);
  --color-border-notice: var(--tailwind-sky-200, #bae6fd);
  --color-border-primary: var(--theme-primary-dark, #c80d0d);
  --color-border-success: var(--tailwind-green-200, #bbf7d0);
  --color-border-warning: var(--tailwind-orange-200, #fed7aa);
  --color-border-box-default: var(--tailwind-zinc-50, #fafafa);
  --color-border-dropdown-default: var(--tailwind-zinc-100, #f4f4f5);
  --color-border-input-default: var(--tailwind-zinc-200, #e4e4e7);
  --color-border-input-disabled: var(--tailwind-zinc-100, #f4f4f5);
  --color-border-input-error: var(--tailwind-rose-600, #e11d48);
  --color-border-input-focus: var(--theme-accent-default, #ffde59);
  --color-border-input-hover: var(--theme-accent-lighter, #fff8c2);
  --color-button-accent-default: var(--theme-accent-default, #ffde59);
  --color-button-accent-text: var(--tailwind-white, #ffffff);
  --color-button-accent-active: var(--theme-accent-darker, #ecab06);
  --color-button-accent-disabled: var(--theme-accent-lighter, #fff8c2);
  --color-button-accent-focus: var(--theme-accent-dark, #fdc512);
  --color-button-accent-hover: var(--theme-accent-dark, #fdc512);
  --color-button-error-default: var(--tailwind-rose-50, #fff1f2);
  --color-button-error-active: var(--tailwind-rose-300, #fda4af);
  --color-button-error-active-border: var(--tailwind-rose-400, #fb7185);
  --color-button-error-border: var(--tailwind-rose-200, #fecdd3);
  --color-button-error-disabled: var(--tailwind-rose-50, #fff1f2);
  --color-button-error-focus: var(--tailwind-rose-200, #fecdd3);
  --color-button-error-focus-border: var(--tailwind-rose-300, #fda4af);
  --color-button-error-hover: var(--tailwind-rose-200, #fecdd3);
  --color-button-error-hover-border: var(--tailwind-rose-300, #fda4af);
  --color-button-gray-default: var(--tailwind-zinc-100, #f4f4f5);
  --color-button-gray-active: var(--tailwind-zinc-300, #d4d4d8);
  --color-button-gray-disabled: var(--tailwind-zinc-300, #d4d4d8);
  --color-button-gray-focus: var(--tailwind-zinc-200, #e4e4e7);
  --color-button-gray-hover: var(--tailwind-zinc-200, #e4e4e7);
  --color-button-neutral-default: var(--tailwind-white, #ffffff);
  --color-button-neutral-active: var(--tailwind-zinc-400, #a1a1aa);
  --color-button-neutral-disabled: var(--tailwind-zinc-400, #a1a1aa);
  --color-button-neutral-focus: var(--tailwind-zinc-100, #f4f4f5);
  --color-button-neutral-hover: var(--tailwind-zinc-300, #d4d4d8);
  --color-button-primary-default: var(--theme-primary-default, #ff3131);
  --color-button-primary-text: var(--tailwind-white, #ffffff);
  --color-button-primary-active: var(--theme-primary-darker, #a50f0f);
  --color-button-primary-disabled: var(--theme-primary-lightest, #fff1f1);
  --color-button-primary-focus: var(--theme-primary-dark, #c80d0d);
  --color-button-primary-hover: var(--theme-primary-dark, #c80d0d);
  --button-primary-default: var(--theme-primary-default, #ff3131);
  --button-primary-text: var(--tailwind-white, #ffffff);
  --button-primary-active: var(--theme-primary-darker, #a50f0f);
  --button-primary-disabled: var(--theme-primary-lightest, #fff1f1);
  --button-primary-focus: var(--theme-primary-dark, #c80d0d);
  --button-primary-hover: var(--theme-primary-dark, #c80d0d);
  --color-focus-ring: var(--theme-accent-dark, #fdc512);
  --color-focus-shadow: var(--theme-accent-light, #ffec89);
  --color-icon-highlight: var(--theme-accent-default, #ffde59);
  --color-icon-accent: var(--theme-accent-default, #ffde59);
  --color-icon-decent: var(--tailwind-zinc-300, #d4d4d8);
  --color-icon-decent-on-dark: var(--tailwind-zinc-200, #e4e4e7);
  --color-icon-error: var(--tailwind-rose-600, #e11d48);
  --color-icon-neutral: var(--tailwind-black, #000000);
  --color-icon-neutral-on-dark: var(--tailwind-white, #ffffff);
  --color-icon-neutral-on-disabled: var(--tailwind-zinc-400, #a1a1aa);
  --color-icon-notice: var(--tailwind-sky-500, #0ea5e9);
  --color-icon-primary: var(--theme-primary-default, #ff3131);
  --color-icon-secondary: var(--tailwind-violet-500, #8b5cf6);
  --color-icon-success: var(--tailwind-green-500, #22c55e);
  --color-icon-warning: var(--tailwind-orange-500, #f97316);
  --color-surface-accent: var(--theme-accent-default, #ffde59);
  --color-surface-accent-light: var(--theme-accent-lightest, #fefbe8);
  --color-surface-action: var(--theme-accent-default, #ffde59);
  --color-surface-action-hover: var(--theme-accent-dark, #fdc512);
  --color-surface-black: var(--tailwind-zinc-700, #3f3f46);
  --color-surface-decent: var(--tailwind-zinc-100, #f4f4f5);
  --color-surface-disabled: var(--tailwind-zinc-300, #d4d4d8);
  --color-surface-error: var(--tailwind-rose-50, #fff1f2);
  --color-surface-modal: var(--tailwind-zinc-50, #fafafa);
  --color-surface-notice: var(--tailwind-sky-50, #f0f9ff);
  --color-surface-page: var(--tailwind-white, #ffffff);
  --color-surface-page-inner: #131313;
  --color-surface-primary: var(--theme-primary-default, #ff3131);
  --color-surface-primary---dark: var(--theme-primary-dark, #c80d0d);
  --color-surface-primary-light: var(--theme-primary-lightest, #fff1f1);
  --color-surface-secondary: var(--tailwind-orange-600, #ea580c);
  --color-surface-secondary-light: var(--tailwind-violet-50, #f5f3ff);
  --color-surface-success: var(--tailwind-green-50, #f0fdf4);
  --color-surface-warning: var(--tailwind-orange-50, #fff7ed);
  --color-surface-box-default: var(--tailwind-zinc-100, #f4f4f5);
  --color-surface-dropdown-default: var(--tailwind-white, #ffffff);
  --color-surface-input-default: var(--tailwind-zinc-700, #3f3f46);
  --color-surface-input-disabled: var(--tailwind-zinc-50, #fafafa);
  --color-surface-input-error: var(--tailwind-rose-50, #fff1f2);
  --color-surface-input-focus: var(--tailwind-zinc-50, #fafafa);
  --color-surface-input-hover: var(--tailwind-zinc-50, #fafafa);
  --color-text-active: var(--theme-accent-dark, #fdc512);
  --color-text-active-active: var(--theme-accent-darker, #ecab06);
  --color-text-active-hover: var(--theme-accent-dark, #fdc512);
  --color-text-body: var(--tailwind-zinc-700, #3f3f46);
  --color-text-body-on-dark: var(--tailwind-zinc-300, #d4d4d8);
  --color-text-decent: var(--tailwind-zinc-400, #a1a1aa);
  --color-text-decent-on-dark: var(--tailwind-zinc-200, #e4e4e7);
  --color-text-error: var(--tailwind-rose-600, #e11d48);
  --color-text-error-decent: var(--tailwind-rose-300, #fda4af);
  --color-text-headings: var(--tailwind-black, #000000);
  --color-text-headings-on-dark: var(--tailwind-white, #ffffff);
  --color-text-highlight: var(--theme-accent-default, #ffde59);
  --color-text-highlight-on-dark: var(--theme-accent-light, #ffec89);
  --color-text-notice: var(--tailwind-sky-500, #0ea5e9);
  --color-text-success: var(--tailwind-green-500, #22c55e);
  --color-text-warning: var(--tailwind-orange-500, #f97316);
  /* number */
  --font-weight-regular: 500;
  --font-weight-medium: 550;
  --font-weight-bold: 600;
  /* string */
  --font-body: "Montserrat";
  --font-headings: "Montserrat";
}

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

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

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

  @param none

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

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

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

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

  @param none

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

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

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

  @param {Number} $variable - Breakpoint value
  @example
  @include bp-lower(768px) { ... }
\*------------------------------------*/
/*------------------------------------*/
/* SECTION - NEW */
/*------------------------------------*/
/*------------------------------------*/
/* SECTION - Editor */
/*------------------------------------*/
@keyframes dominoFall {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-9deg);
  }
}
@keyframes dominoBounce {
  0% {
    transform: translateY(0px);
  }
  55% {
    transform: translateY(-2px);
  }
  72% {
    transform: translateY(-4px);
  }
  84% {
    transform: translateY(-2px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes headlineBounce {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-20px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes dominoIn {
  0% {
    opacity: 0;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes swap {
  30% {
    transform: translate(calc(var(--x) - 250px), var(--y));
    opacity: 0;
  }
  100% {
    transform: translate(calc(var(--x) - 30px), var(--y)) scale(0.3);
    z-index: -1;
    opacity: 0;
  }
}
.hamburger {
  padding: 0px;
  display: inline-block;
  cursor: pointer;
  outline: none;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  cursor: pointer;
  float: right;
  margin-right: 0px;
  margin-top: 0px;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: var(--color-button-accent-DEFAULT, #ffde59);
}

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

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

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 32px;
  height: 1.8px;
  background-color: var(--color-button-accent-DEFAULT, #ffde59);
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

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

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

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

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

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

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

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

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

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

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

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

.alignright {
  float: right;
  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;
  }
}
/* montserrat-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: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/montserrat-v26-latin-300.woff2") format("woff2"), url("../fonts/montserrat-v26-latin-300.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-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: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/montserrat-v26-latin-regular.woff2") format("woff2"), url("../fonts/montserrat-v26-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* Montserrat 500 */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/montserrat-v26-latin-500.woff2") format("woff2"), url("../fonts/montserrat-v26-latin-500.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* Montserrat 600 */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/montserrat-v26-latin-600.woff2") format("woff2"), url("../fonts/montserrat-v26-latin-600.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* Montserrat 900 */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/MontserratThin-Black.woff2") format("woff2"), url("../fonts/MontserratThin-Black.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* Hurricane */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Hurricane";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Hurricane-Regular.woff2") format("woff2"), url("../fonts/Hurricane-Regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* VISBY CF  500*/
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "VISBY CF";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/VisbyMedium.woff2") format("woff2"), url("../fonts/VisbyMedium.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(12px + 4 * (100vw - 520px) / 670);
  color: var(--color-text-body-on-dark, #d4d4d8);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 170%; /* 27.2px */
}
@media screen and (max-width: 520px) {
  body {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  body {
    font-size: 16px;
  }
}

p {
  padding: var(--spacing-sm, 20px) 0 0;
  margin: 0px;
  line-height: 170%; /* 27.2px */
}

strong {
  font-weight: 600;
}

/*------------------------------------*/
/* SECTION - Headings */
/*------------------------------------*/
h1,
.h1,
.--show-as-h1 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(34px + 6 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  h1,
  .h1,
  .--show-as-h1 {
    font-size: 34px;
  }
}
@media screen and (min-width: 1190px) {
  h1,
  .h1,
  .--show-as-h1 {
    font-size: 40px;
  }
}

h2,
.h2,
.--show-as-h2 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(34px + -2 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  h2,
  .h2,
  .--show-as-h2 {
    font-size: 34px;
  }
}
@media screen and (min-width: 1190px) {
  h2,
  .h2,
  .--show-as-h2 {
    font-size: 32px;
  }
}

h3,
.h3,
.--show-as-h3 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(20px + 4 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  h3,
  .h3,
  .--show-as-h3 {
    font-size: 20px;
  }
}
@media screen and (min-width: 1190px) {
  h3,
  .h3,
  .--show-as-h3 {
    font-size: 24px;
  }
}

h4,
.h4,
.--show-as-h4 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(16px + 2 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  h4,
  .h4,
  .--show-as-h4 {
    font-size: 16px;
  }
}
@media screen and (min-width: 1190px) {
  h4,
  .h4,
  .--show-as-h4 {
    font-size: 18px;
  }
}

h5,
.h5,
.--show-as-h5 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(14px + 4 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  h5,
  .h5,
  .--show-as-h5 {
    font-size: 14px;
  }
}
@media screen and (min-width: 1190px) {
  h5,
  .h5,
  .--show-as-h5 {
    font-size: 18px;
  }
}

h6,
.h6,
.--show-as-h6 {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  h6,
  .h6,
  .--show-as-h6 {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  h6,
  .h6,
  .--show-as-h6 {
    font-size: 16px;
  }
}

.subline {
  color: var(--color-text-highlight, #ffde59);
  font-family: "Hurricane";
  font-size: calc(50px + 50 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-bold);
  line-height: 150%; /* 150px */
}
@media screen and (max-width: 520px) {
  .subline {
    font-size: 50px;
  }
}
@media screen and (min-width: 1190px) {
  .subline {
    font-size: 100px;
  }
}

.font-serif {
  font-family: "Hurricane";
  color: var(--color-text-highlight, #ffde59);
  font-weight: 400 !important;
}

/*------------------------------------*/
/* SECTION - Links */
/*------------------------------------*/
a {
  color: var(--color-button-accent-DEFAULT, #ffde59);
  text-decoration: underline;
  text-underline-position: under;
  transition: var(--transition);
}
a:hover {
  color: var(--color-button-accent-hover, #fdc512);
}
a:focus, a:hover, a:active {
  outline: 0;
}

/*------------------------------------*/
/* SECTION - Hyphens */
/*------------------------------------*/
@media (max-width: 768px) {
  h1,
  .h1,
  .--show-as-h1,
  h2,
  .h2,
  .--show-as-h2,
  h3,
  .h3,
  .--show-as-h3,
  h4,
  .h4,
  .--show-as-h4,
  h5,
  .h5,
  .--show-as-h5,
  h6,
  .h6,
  .--show-as-h6,
  p,
  a,
  b,
  span {
    hyphens: auto;
  }
}
/*------------------------------------*/
/* SECTION - Lists */
/*------------------------------------*/
.wp-block-group ul,
ul.ul {
  --wv-ul-marker-size: 10px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 20px;
  list-style: none;
}
@media (max-width: 768px) {
  .wp-block-group ul,
  ul.ul {
    gap: 10px;
  }
}
.wp-block-group ul li,
ul.ul li {
  font-family: var(--font-family-body);
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  color: var(--color-text-body-on-dark, #d4d4d8);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 170%; /* 27.2px */
  padding-left: calc(var(--wv-ul-marker-size) + 20px);
  position: relative;
  text-align: left;
}
@media screen and (max-width: 520px) {
  .wp-block-group ul li,
  ul.ul li {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .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");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Ccircle cx='5' cy='5' r='2' fill='%23FFDE59'/%3E%3Ccircle cx='5' cy='5' r='4.55' stroke='%23FFDE59' stroke-width='0.9'/%3E%3C/svg%3E") !important;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}

/*------------------------------------*/
/* SECTION - Text styles */
/*------------------------------------*/
.text-highlighted,
.highlight {
  color: var(--color-text-highlight, #ffde59);
}

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

html {
  font-size: 100%;
  background: var(--color-surface-page, #fff);
  color: var(--color-text-body-on-dark, #d4d4d8);
  padding: var(--components-box-padding-sm, 10px);
}

body {
  background: var(--color-surface-page-inner, #131313);
  border-radius: 10px 10px 0 0;
}

/* 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);
}
.space-small {
  margin-bottom: var(--components-abstand-small);
}
.space-medium {
  margin-bottom: var(--components-abstand-medium);
}
.space-large {
  margin-bottom: var(--components-abstand-large);
}
.space-extralarge {
  margin-bottom: var(--components-abstand-extralarge);
}

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

/*------------------------------------*\
    Grid elements
\*------------------------------------*/
.allcont {
  padding: 0px;
  display: block;
}
@media (min-width: 769px) {
  .allcont {
    padding-left: 40px;
  }
}
@media (min-width: 1025px) {
  .allcont {
    padding-left: 0;
  }
}

.inner,
.wp-block-group {
  width: calc(100% - 60px);
  max-width: 1190px;
  margin: 0 auto;
  position: relative;
}
.inner--small,
.wp-block-group--small {
  max-width: 950px;
}
@media (min-width: 769px) {
  .inner,
  .wp-block-group {
    width: calc(100% - 150px);
  }
}
@media (min-width: 1301px) {
  .inner,
  .wp-block-group {
    width: calc(100% - 60px);
  }
}

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

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

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

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

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

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

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

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

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

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

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

.acf-block-preview a.button,
.acf-block-preview button:not(.hamburger),
.acf-block-preview input[type=submit],
body.page a.button,
body.page button:not(.hamburger),
body.page input[type=submit] {
  all: unset;
  display: inline-block;
  text-decoration: none;
  font-family: var(--font-headings, Montserrat);
  font-size: var(--text-sm, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  text-align: center;
  outline: none;
  border: none;
  border-radius: 1000px;
  transition: var(--transition);
  transition-property: background;
  box-sizing: border-box;
  font-size: calc(15px + 1 * (100vw - 520px) / 670);
  padding: 16px 32px;
  background: var(--button-primary-default);
  color: var(--color-text-headings-on-dark, #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] {
    font-size: 15px;
  }
}
@media screen and (min-width: 1190px) {
  .acf-block-preview a.button,
  .acf-block-preview button:not(.hamburger),
  .acf-block-preview input[type=submit],
  body.page a.button,
  body.page button:not(.hamburger),
  body.page input[type=submit] {
    font-size: 16px;
  }
}
.acf-block-preview a.button:hover,
.acf-block-preview button:not(.hamburger):hover,
.acf-block-preview input[type=submit]:hover,
body.page a.button:hover,
body.page button:not(.hamburger):hover,
body.page input[type=submit]:hover {
  background-color: var(--button-primary-hover);
  cursor: pointer;
}
.acf-block-preview a.button:focus,
.acf-block-preview button:not(.hamburger):focus,
.acf-block-preview input[type=submit]:focus,
body.page a.button:focus,
body.page button:not(.hamburger):focus,
body.page input[type=submit]:focus {
  transition: none;
  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(0.5px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 49 49 / var(--tw-ring-opacity));
  --tw-ring-offset-width: 1px;
  --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 {
  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 {
  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 {
  background-color: var(--button-primary-default);
  color: var(--color-text-headings-on-dark, #fff);
}
.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 {
  background-color: var(--button-primary-hover);
}
.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 {
  background-color: var(--button-primary-action);
}
.acf-block-preview a.button.--color-main:disabled, .acf-block-preview a.button.--color-primary:disabled,
.acf-block-preview button:not(.hamburger).--color-main:disabled,
.acf-block-preview button:not(.hamburger).--color-primary:disabled,
.acf-block-preview input[type=submit].--color-main:disabled,
.acf-block-preview input[type=submit].--color-primary:disabled,
body.page a.button.--color-main:disabled,
body.page a.button.--color-primary:disabled,
body.page button:not(.hamburger).--color-main:disabled,
body.page button:not(.hamburger).--color-primary:disabled,
body.page input[type=submit].--color-main:disabled,
body.page input[type=submit].--color-primary:disabled {
  background-color: var(--button-primary-disabled);
}
.acf-block-preview a.button.--color-second, .acf-block-preview a.button.--color-accent,
.acf-block-preview button:not(.hamburger).--color-second,
.acf-block-preview button:not(.hamburger).--color-accent,
.acf-block-preview input[type=submit].--color-second,
.acf-block-preview input[type=submit].--color-accent,
body.page a.button.--color-second,
body.page a.button.--color-accent,
body.page button:not(.hamburger).--color-second,
body.page button:not(.hamburger).--color-accent,
body.page input[type=submit].--color-second,
body.page input[type=submit].--color-accent {
  background-color: var(--button-accent-default);
  color: var(--color-text-headings-on-dark, #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 {
  background-color: var(--button-accent-hover);
}
.acf-block-preview a.button.--color-second:active, .acf-block-preview a.button.--color-accent:active,
.acf-block-preview button:not(.hamburger).--color-second:active,
.acf-block-preview button:not(.hamburger).--color-accent:active,
.acf-block-preview input[type=submit].--color-second:active,
.acf-block-preview input[type=submit].--color-accent:active,
body.page a.button.--color-second:active,
body.page a.button.--color-accent:active,
body.page button:not(.hamburger).--color-second:active,
body.page button:not(.hamburger).--color-accent:active,
body.page input[type=submit].--color-second:active,
body.page input[type=submit].--color-accent:active {
  background-color: var(--button-accent-action);
}
.acf-block-preview a.button.--color-second:disabled, .acf-block-preview a.button.--color-accent:disabled,
.acf-block-preview button:not(.hamburger).--color-second:disabled,
.acf-block-preview button:not(.hamburger).--color-accent:disabled,
.acf-block-preview input[type=submit].--color-second:disabled,
.acf-block-preview input[type=submit].--color-accent:disabled,
body.page a.button.--color-second:disabled,
body.page a.button.--color-accent:disabled,
body.page button:not(.hamburger).--color-second:disabled,
body.page button:not(.hamburger).--color-accent:disabled,
body.page input[type=submit].--color-second:disabled,
body.page input[type=submit].--color-accent:disabled {
  background-color: var(--button-accent-disabled);
}
.acf-block-preview a.button.--color-white, .acf-block-preview a.button.--color-neutral,
.acf-block-preview button:not(.hamburger).--color-white,
.acf-block-preview button:not(.hamburger).--color-neutral,
.acf-block-preview input[type=submit].--color-white,
.acf-block-preview input[type=submit].--color-neutral,
body.page a.button.--color-white,
body.page a.button.--color-neutral,
body.page button:not(.hamburger).--color-white,
body.page button:not(.hamburger).--color-neutral,
body.page input[type=submit].--color-white,
body.page input[type=submit].--color-neutral {
  background-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 {
  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 {
  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 {
  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 {
  padding: 16px 32px;
}
.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 {
  padding: 10px 24px;
}
@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] {
    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 {
    padding: 16px 32px;
  }
  .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 {
    padding: 10px 24px;
  }
}

a.button-link {
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-sm);
  font-size: calc(15px + 1 * (100vw - 520px) / 670);
  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: 1190px) {
  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(--color-button-accent-DEFAULT, #ffde59);
}
a.button-link.--color-accent:hover, a.button-link.--color-accent:focus {
  color: var(--color-button-accent-DEFAULT, #ffde59);
}
a.button-link.--color-accent:active {
  color: var(--color-button-accent-DEFAULT, #ffde59);
}
a.button-link.--color-accent:disabled {
  color: var(--color-button-accent-DEFAULT, #ffde59);
  opacity: 0.7;
}
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);
}

.button-linkedin {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  text-decoration: none;
}
.button-linkedin > .icon {
  width: 16px;
}
.button-linkedin > .icon > svg {
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.button-linkedin > .icon.arrow {
  width: 24px;
}
.button-linkedin > .text {
  padding-left: 4px;
  color: var(--color-text-highlight, #ffde59);
  font-family: var(--font-headings, Montserrat);
  font-size: var(--text-sm, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
}

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

.headline-special h2 {
  text-align: left;
}
/*------------------------------------*\
    HEADER.SCSS
\*------------------------------------*/
.header {
  position: relative;
  z-index: 999;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
@media (max-width: 768px) {
  .header.sticky {
    position: sticky;
    top: 0;
  }
  .header.sticky.--shadow .logo {
    visibility: hidden;
    opacity: 0;
  }
  .header.sticky.--shadow .hamburger.open-nav {
    border-radius: 10px;
    background: var(--color-surface-page-inner, #131313);
    padding: 8px;
  }
  .header.sticky.--shadow .cta-container {
    visibility: hidden;
    opacity: 0;
  }
}
.header .wv-legal-menu ul {
  justify-content: center;
}
.header .wv-legal-menu ul li a {
  color: var(--color-text-body-on-dark, #d4d4d8);
  text-align: right;
  font-family: "Visby CF";
  font-size: var(--text-xs, 10px);
  font-style: normal;
  font-weight: 500;
  line-height: 180%; /* 18px */
}
.header > .inner {
  position: static;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-xl) 0px;
}
.header .logo {
  max-width: 72px;
  width: 100%;
}
.header .hamburger {
  margin-right: -5px;
}
.header .mobile-icon {
  display: flex;
}
.header a.button .text {
  font-size: calc(14px + 0 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  .header a.button .text {
    font-size: 14px;
  }
}
@media screen and (min-width: 1190px) {
  .header a.button .text {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .header a.button {
    background: var(--color-surface-input-DEFAULT, #3f3f46) !important;
    padding: 12px !important;
  }
  .header a.button .text {
    border: 1px solid red;
    display: none;
    color: var(--color-text-headings-on-dark, #fff);
    font-family: var(--font-headings, "Montserrat");
    font-size: calc(14px + 0 * (100vw - 520px) / 670);
    font-style: normal;
    font-weight: var(--font-weight-bold, 600);
    line-height: 150%; /* 21px */
  }
}
@media screen and (max-width: 768px) and (max-width: 520px) {
  .header a.button .text {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (min-width: 1190px) {
  .header a.button .text {
    font-size: 14px;
  }
}
.header .wrapper {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-direction: row;
}
@media (min-width: 769px) {
  .header .wrapper {
    flex-direction: row;
  }
  .header .mobile-icon {
    display: none;
  }
  .header .logo {
    max-width: 98px;
  }
  .header .meta {
    display: none;
  }
}

/*------------------------------------*/
/* NOTE - Footer */
/*------------------------------------*/
.footer {
  padding: 64px 0px;
  display: flex;
  justify-content: center;
  background-color: #191919;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.footer .inner {
  display: flex;
  flex-direction: column;
  gap: 32px;
  text-align: center;
}
.footer .footer-logo {
  width: 100%;
}
.footer .footer-logo img {
  max-width: 72px;
  aspect-ratio: 24/13;
}
.footer a {
  text-decoration: none;
  color: var(--color-text-body-on-dark, #d4d4d8);
  /* text/bold/sm */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-sm, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
}
.footer ul {
  padding: 0;
  list-style-type: none;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.footer .copyright {
  padding: 0;
  display: flex;
  min-height: var(--touch-height-aa, 24px);
  align-items: center;
  gap: 0px;
  justify-content: center;
  white-space: nowrap;
}
.footer .copyright a {
  white-space: nowrap;
  font-weight: var(--font-weight-regular, 500);
  text-decoration-line: underline;
}
.footer .footer-content,
.footer .meta {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.footer .footer-content h3,
.footer .footer-content h5 {
  padding: 0;
}
.footer .footer-content h3 {
  color: var(--color-text-body-on-dark, #d4d4d8);
}
.footer .meta {
  display: flex;
  flex-direction: column-reverse;
  padding: 0;
}
.footer .meta ul {
  align-items: center;
}
.footer .meta ul li a {
  color: var(--color-text-highlight, #ffde59);
}
.footer .wv-legal-menu ul {
  justify-content: center !important;
}
.footer .wv-legal-menu ul li a {
  color: var(--color-text-highlight, #ffde59);
  /* text/regular/sm */
  font-family: var(--font-body, "Montserrat");
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
}
@media screen and (max-width: 520px) {
  .footer .wv-legal-menu ul li a {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .footer .wv-legal-menu ul li a {
    font-size: 16px;
  }
}
@media (min-width: 769px) {
  .footer {
    padding: 80px 162px;
  }
  .footer .footer-content,
  .footer .meta {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
  .footer .inner,
  .footer .footer-content {
    gap: var(--spacing-md, 32px);
    justify-content: center;
    align-items: center;
  }
  .footer .footer-logo {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .footer ul,
  .footer .meta {
    flex-direction: row;
    justify-content: center;
    gap: 20px;
  }
  .footer .meta {
    gap: 40px;
    padding: 20px;
  }
  .footer .footer-logo img {
    max-width: 126px;
  }
  .footer .copyright a {
    color: var(--color-text-highlight, #ffde59);
  }
}

/*------------------------------------*/
/* 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;
  color: var(--text-headings);
  font-weight: 600;
  text-decoration: none;
  transition: var(--transition);
  text-transform: uppercase;
}
.header-menu a:hover {
  color: var(--color-button-accent-hover, #fdc512);
}
.header-menu > ul > li {
  /* Hover/active state */
}
.header-menu > ul > li a:hover, .header-menu > ul > li:hover > a, .header-menu > ul > li.current_page_item > a {
  color: var(--color-button-accent-hover, #fdc512);
}
.header-menu > ul > li a:active {
  color: var(--color-button-accent-focus, #fdc512);
  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: var(--text-action);
}
.header-menu > ul > li > ul > li a:active {
  color: var(--text-action-press);
  transition: none;
}

/*------------------------------------*/
/* NOTE - Mobile Navigation */
/*------------------------------------*/
@media (max-width: 1024px) {
  .hamburger {
    width: auto;
  }
  .hamburger:hover {
    background: transparent;
  }
  .hamburger .hamburger-box {
    scale: 0.8;
  }
  .meta {
    padding: 15px;
  }
  .meta ul {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
    row-gap: 5px;
  }
  .meta ul li a {
    text-transform: none;
    color: var(--color-text-body-on-dark, #d4d4d8);
    text-align: right;
    font-family: "Visby CF";
    font-size: var(--text-xs, 10px);
    font-style: normal;
    font-weight: 500;
    line-height: 180%; /* 18px */
  }
  .header-menu {
    display: none;
    max-height: calc(100dvh - 100%);
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0%;
    z-index: 999;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: var(--color-surface-page-inner, #131313);
    /* 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;
    padding: 32px 0;
    display: flex;
    padding: 32px 0;
    align-items: center;
    gap: -1px;
    align-self: stretch;
    /* shadow/box */
    box-shadow: 0 0 10px 0 rgba(23, 24, 24, 0.3);
  }
  .header-menu > ul > li.menu-item {
    width: 100%;
    border-top: 1px solid var(--border-input);
    /* Hover/active state */
  }
  .header-menu > ul > li.menu-item > a {
    padding: 15px 20px;
    position: relative;
    transition: var(--transition);
    text-align: center;
    color: var(--color-text-headings-on-dark, #fff) !important;
    font-family: var(--font-headings, Montserrat);
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 22.5px */
    letter-spacing: 0.45px;
    text-transform: uppercase;
  }
  .header-menu > ul > li.menu-item > a .toggle-submenu {
    height: 100%;
    aspect-ratio: 1;
    position: absolute;
    right: 15px;
    top: 50%;
    z-index: 10;
    transition: var(--transition);
    cursor: pointer;
    transform: translateY(-50%);
    display: flex;
    width: 39px;
    height: 39px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1/1;
    border-radius: 1000px;
    border: 1px solid var(--color-border-input-focus, #ffde59);
    background: var(--color-surface-input-DEFAULT, #3f3f46);
  }
  .header-menu > ul > li.menu-item > a .toggle-submenu:after {
    content: "";
    display: block;
    position: absolute;
    width: 12px;
    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");
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23FFDE59' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: var(--transition);
  }
  .header-menu > ul > li.menu-item > a .toggle-submenu.open:after {
    transform: rotate(-180deg) translate(50%, 50%);
  }
  .header-menu > ul > li.menu-item a:hover, .header-menu > ul > li.menu-item:hover > a, .header-menu > ul > li.menu-item.current_page_item > a {
    color: var(--color-border-input-focus, #ffde59);
  }
  .header-menu .meta {
    justify-content: center;
    display: flex;
  }
  .header-menu > ul > li.menu-item > ul {
    display: none;
    padding-bottom: 10px;
  }
  .header-menu > ul > li.menu-item > ul > li.menu-item > a {
    padding: 10px 20px;
    font-size: 16px;
  }
  .nav__background {
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 998;
    pointer-events: none;
    opacity: 0%;
    transition: var(--transition);
    transition-duration: 200ms;
  }
  .nav__background.is-active {
    opacity: 100%;
    pointer-events: all;
  }
}
/*------------------------------------*/
/* NOTE - Desktop Navigation */
/*------------------------------------*/
@media (min-width: 1025px) {
  .header-menu {
    /* 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 11px;
    font-size: 14px;
    transition: var(--transition);
    color: var(--color-text-headings-on-dark, #fff);
  }
  .header-menu > ul > li.menu-item > a:hover {
    color: var(--color-button-accent-hover, #fdc512);
  }
  .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: 12px;
    height: 6px;
    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");
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23FFDE59' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    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: 10px;
  height: 10px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  transition: var(--transition);
  position: relative;
}
.slider__pagination .slider__pagination__bullet.--active {
  border-radius: 16777200px;
  background: #ff3131;
  width: 30px;
}
.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: 25px !important;
    background-size: 16px !important;
  }
}
.sidenav {
  position: fixed;
  left: 20px;
  top: calc(100% - 170px);
  transform: translateY(-50%);
  z-index: 50;
  width: auto;
  height: auto;
  z-index: 1;
  opacity: 0;
  transition: var(--transition);
  width: fit-content;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.sidenav.show {
  opacity: 1;
}
.sidenav .a11y-controls__panel {
  margin-top: 5px;
}
.sidenav .container {
  padding: 10px;
  width: auto;
  height: auto;
  position: relative;
  border-radius: 50%;
  background: var(--color-surface-input-DEFAULT, #3f3f46);
}
.sidenav .a11y-controls,
.sidenav .links {
  display: flex;
  width: 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.sidenav .a11y-controls a,
.sidenav .links a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  transition: var(--transition);
  width: fit-content;
  white-space: nowrap;
  color: var(--color-text-decent-on-dark, #e4e4e7);
  /* text/bold/sm */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-sm, 16px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  text-decoration: none;
  padding-right: 160px;
}
.sidenav .a11y-controls a .title,
.sidenav .links a .title {
  opacity: 0;
  visibility: hidden;
  transition: var(--transition);
  display: block;
  position: absolute;
  left: 100%;
  opacity: 0;
  pointer-events: none;
  transition: var(--transition);
  white-space: nowrap;
  pointer-events: auto;
}
.sidenav .a11y-controls a:hover,
.sidenav .links a:hover {
  cursor: pointer;
}
.sidenav .a11y-controls a:hover svg path,
.sidenav .links a:hover svg path {
  stroke: var(--color-icon-accent, #ffde59);
  color: var(--color-icon-accent, #ffde59);
}
.sidenav .a11y-controls a:hover .title,
.sidenav .links a:hover .title {
  opacity: 1;
  visibility: visible;
}
.sidenav .link {
  margin-bottom: 20px;
}
.sidenav .links {
  display: none;
}
@media (min-width: 769px) {
  .sidenav {
    top: 50%;
  }
  .sidenav .container {
    padding: 20px;
    border-radius: 0;
    background: none;
  }
  .sidenav .links {
    display: block;
  }
}

/*------------------------------------*\
    BORLABS COOKIE BOX
    Styling for the Borlabs Cookie Plugin
\*------------------------------------*/
#BorlabsCookieBox ._brlbs-flex-center {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}
#BorlabsCookieBox ._brlbs-flex-center .cookie-logo {
  max-width: 120px;
  margin: 20px;
}

.back-to-top-container {
  position: fixed;
  right: 23px;
  bottom: 93px;
}

.back-to-top-link {
  display: flex;
  padding: 5px 10px;
  align-items: center;
  gap: 10px;
  transition: var(--transition);
  border-radius: 1000px;
  background: #2d2d2d;
  color: var(--color-text-decent, #a1a1aa);
  font-family: var(--font-headings, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
  text-decoration: none;
}
.back-to-top-link:hover {
  cursor: pointer;
  color: var(--color-text-decent, #a1a1aa);
}

/*------------------------------------*/
/* 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: 100px;
  background: var(--color-surface-input-DEFAULT, #3f3f46);
  border: 0px !important;
  outline: none !important;
  width: 100%;
  padding: var(--components-input-padding-y) var(--components-input-padding-x);
  appearance: none;
  letter-spacing: normal;
  transition: var(--transition-fast);
  color: var(--color-text-decent, #a1a1aa);
  /* Formular/Platzhalter */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
}
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(--color-text-decent, #a1a1aa);
}
form.wpcf7-form input[type=text] sup,
form.wpcf7-form input[type=email] sup,
form.wpcf7-form input[type=tel] sup,
form.wpcf7-form input[type=date] sup,
form.wpcf7-form input[type=url] sup,
form.wpcf7-form input[type=number] sup,
form.wpcf7-form textarea sup {
  color: var(--color-text-highlight, #ffde59);
  padding-left: 3px;
}
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(--color-surface-input-error, #fff1f2);
  border: 1px solid var(--color-border-input-error, #e11d48);
  border-color: var(--color-border-input-error, #e11d48);
  border-radius: 100px;
  color: var(--color-border-input-error, #e11d48);
}
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: 100px;
  background: var(--color-surface-input-DEFAULT, #3f3f46);
  border: 0px !important;
  outline: none !important;
  width: 100%;
  padding: var(--components-input-padding-y) var(--components-input-padding-x);
  appearance: none;
  letter-spacing: normal;
  transition: var(--transition-fast);
  color: var(--color-text-decent, #a1a1aa);
  /* Formular/Platzhalter */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
  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(--color-text-decent, #a1a1aa);
}
form.wpcf7-form select sup {
  color: var(--color-text-highlight, #ffde59);
  padding-left: 3px;
}
form.wpcf7-form select[aria-invalid=true] {
  background: var(--color-surface-input-error, #fff1f2);
  border: 1px solid var(--color-border-input-error, #e11d48);
  border-color: var(--color-border-input-error, #e11d48);
  border-radius: 100px;
  color: var(--color-border-input-error, #e11d48);
}
form.wpcf7-form select:disabled {
  opacity: 50%;
  cursor: not-allowed;
}
form.wpcf7-form textarea {
  height: 100px;
  border-radius: 10px;
  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;
  font-family: var(--font-body, "Montserrat");
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  color: var(--color-text-decent, #a1a1aa);
}
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;
  border-radius: var(--radius-sm, 4px);
  border: 1px solid var(--color-button-gray-active, #d4d4d8);
  background: var(--color-surface-input-DEFAULT, #3f3f46);
  transition: var(--transition-fast);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 4.00024L4.06471 6.95459L9.5 1.0459' stroke='%23EF6F2A' stroke-width='1.5'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8' viewBox='0 0 10 8' fill='none'%3E%3Cpath d='M9 1L3.5 6.5L1 4' stroke='%23ECAB06' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-size: 0;
  color: var(--color-text-decent, #a1a1aa);
  font-family: var(--font-body, "Montserrat");
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
  padding-top: 0;
}
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;
  border-radius: var(--radius-sm, 4px);
  border: 1px solid var(--color-button-gray-active, #d4d4d8);
  background: var(--color-surface-input-DEFAULT, #3f3f46);
  transition: var(--transition-fast);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 4.00024L4.06471 6.95459L9.5 1.0459' stroke='%23EF6F2A' stroke-width='1.5'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8' viewBox='0 0 10 8' fill='none'%3E%3Cpath d='M9 1L3.5 6.5L1 4' stroke='%23ECAB06' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-size: 0;
  color: var(--color-text-decent, #a1a1aa);
  font-family: var(--font-body, "Montserrat");
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
  padding-top: 0;
}
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 {
  padding: 0;
  color: var(--color-text-highlight, #ffde59);
  font-family: var(--font-body, "Montserrat");
  font-size: 10px;
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 15px */
}
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);
  padding: 20px;
  background: rgba(255, 255, 255, 0.07);
}
.standard-formular .button-link {
  color: var(--color-button-neutral-DEFAULT, #fff) !important;
}
.standard-formular sup {
  color: var(--color-text-highlight, #ffde59);
}
.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(--color-text-headings-on-dark, #fff);
  text-align: left;
  /* text/bold/2xs */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
}
.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;
  }
}
/*------------------------------------*/
/* ACCESSIBILITY - Focus */
/*------------------------------------*/
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible,
[role=button]:focus-visible {
  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(0.5px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 49 49 / var(--tw-ring-opacity));
  --tw-ring-offset-width: 1px;
  --tw-ring-offset-color: white;
  --tw-ring-inset: ;
}

/*------------------------------------*/
/* ACCESSIBILITY - Hidden jump content elemnts */
/*------------------------------------*/
.skip-links {
  position: fixed;
  top: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  z-index: 1001; /* über .header-menu (999) & .nav__background (998) */
  pointer-events: none;
}
.skip-links-item {
  position: relative;
  transform: translateY(-150%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  background: var(--theme-neutral-white, #fff);
  color: var(--text-headings, #111);
  border: 2px solid var(--border-accent, #000);
  padding: 5px 10px;
  text-decoration: none;
}
.skip-links-item:focus, .skip-links-item:focus-visible {
  transform: translateY(0);
  opacity: 1;
  outline: none;
}
@media (prefers-reduced-motion: reduce) {
  .skip-links-item {
    transition: none;
  }
}

/* ---------------------------------------------
   A11Y Controls – Zoom via CSS zoom + Fallback
   --------------------------------------------- */
:root {
  --a11y-zoom: 1;
}

/* Browser mit CSS zoom support */
html:not(.a11y-zoom-fallback) body {
  zoom: var(--a11y-zoom, 1);
}

/* Reduce motion */
html.a11y-reduce-motion *,
html.a11y-reduce-motion *::before,
html.a11y-reduce-motion *::after {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}

/* High contrast */
html.a11y-high-contrast,
html.a11y-high-contrast body {
  background: #fff !important;
  color: #000 !important;
}

html.a11y-high-contrast a {
  color: #000 !important;
  text-decoration: underline !important;
}
html.a11y-high-contrast * {
  border-color: #000 !important;
  box-shadow: none !important;
}

/* Firefox / ohne zoom: Fallback via transform */
html.a11y-zoom-fallback body {
  transform: scale(var(--a11y-zoom, 1));
  transform-origin: 0 0;
  width: calc(100% / var(--a11y-zoom, 1));
  overflow-x: hidden;
}

/* ---------------------------------------------
   UI
   --------------------------------------------- */
.a11y-controls {
  position: relative;
  display: inline-flex;
  /* Toggle */
  /* ---------------------------------------------
     Display Mode: inline (immer sichtbar)
     --------------------------------------------- */
  /* Optional: Floating (wie Screenshot am linken Rand) */
  /* ---------------------------------------------
     Position Klassen
     --------------------------------------------- */
  /* bottom (default) */
  /* top */
  /* center (vertikal zum Button zentriert) */
  /* right (Panel rechts vom Button, vertikal zentriert) */
  /* left (Panel links vom Button, vertikal zentriert) */
  /* ---------------------------------------------
     Align (nur relevant für top/bottom/center)
     --------------------------------------------- */
  /* ---------------------------------------------
     Responsive
     --------------------------------------------- */
}
.a11y-controls__button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: none !important;
  border-radius: 0 !important;
  padding: 0px !important;
  transition: var(--transistion);
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 15px !important;
  transition: var(--transition) !important;
  width: fit-content !important;
  white-space: nowrap !important;
  color: var(--color-text-decent-on-dark, #e4e4e7) !important;
  font-family: var(--font-body, Montserrat) !important;
  font-size: var(--text-sm, 16px) !important;
  font-style: normal !important;
  font-weight: var(--font-weight-bold, 600) !important;
  line-height: 150% !important;
  text-decoration: none !important;
}
.a11y-controls__button span {
  visibility: hidden;
  opacity: 0;
}
.a11y-controls__button svg {
  height: 24px;
  width: 24px;
}
.a11y-controls:hover button svg path {
  fill: var(--color-icon-accent, #ffde59);
}
.a11y-controls:hover button span {
  visibility: visible;
  opacity: 1;
}
.a11y-controls__arrow {
  margin-left: 6px;
}
.a11y-controls__panel {
  position: absolute;
  z-index: 1500;
  min-width: 260px;
  padding: 10px;
  background: rgb(0, 0, 0);
  top: var(--a11y-panel-top, calc(100% + 8px));
  bottom: var(--a11y-panel-bottom, auto);
  left: 0;
  transform: translate(var(--a11y-panel-tx, 0), var(--a11y-panel-ty, 0));
}
.a11y-controls__panel[hidden] {
  display: none;
}
.a11y-controls__group + .a11y-controls__group {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--color-border-input-default);
}
.a11y-controls__group-label {
  display: block;
  margin-bottom: 6px;
  color: var(--color-text-headings-on-dark, #fff);
  /* text/bold/2xs */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
}
.a11y-controls__zoom {
  display: inline-flex;
  gap: 6px;
}
.a11y-controls__zoom .button {
  padding: 0;
  border-radius: 0;
  line-height: 1.1;
  padding: 8px !important;
  transition: var(--transistion);
}
.a11y-controls__zoom .button:active, .a11y-controls__zoom .button:focus, .a11y-controls__zoom .button:hover {
  --tw-ring-offset-shadow: 0 0 #0000 !important;
  --tw-ring-color: var(--button-primary-default) !important;
}
.a11y-controls__zoom .button:active span, .a11y-controls__zoom .button:focus span, .a11y-controls__zoom .button:hover span {
  color: var(--color-text-highlight, #ffde59);
}
.a11y-controls .a11y-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--color-text-headings-on-dark, #fff);
  /* text/bold/2xs */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
  display: flex !important;
  position: relative;
  cursor: pointer;
}
.a11y-controls .a11y-toggle input {
  inline-size: 1.1rem;
  block-size: 1.1rem;
}
.a11y-controls .a11y-toggle input[type=checkbox],
.a11y-controls .a11y-toggle input[type=radio] {
  display: none;
}
.a11y-controls .a11y-toggle:before {
  content: "";
  display: block;
  margin: 4px var(--space-md) 0 0;
  height: 20px;
  width: 20px;
  min-width: 20px;
  border-radius: var(--radius-sm, 4px);
  border: 1px solid var(--color-button-gray-active, #d4d4d8);
  background: var(--color-surface-input-DEFAULT, #3f3f46);
  transition: var(--transition-fast);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 4.00024L4.06471 6.95459L9.5 1.0459' stroke='%23EF6F2A' stroke-width='1.5'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8' viewBox='0 0 10 8' fill='none'%3E%3Cpath d='M9 1L3.5 6.5L1 4' stroke='%23ECAB06' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-size: 0;
  color: var(--color-text-decent, #a1a1aa);
  font-family: var(--font-body, "Montserrat");
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
  padding-top: 0;
}
.a11y-controls .a11y-toggle:hover:before {
  background-color: var(--surface-selector-hover);
  border-color: var(--border-selector-active);
}
.a11y-controls .a11y-toggle:has(input:active):before {
  background-color: var(--surface-selector-press);
  border-color: var(--border-selector-active);
}
.a11y-controls .a11y-toggle:has(input:checked):before {
  border-color: var(--border-input-focus);
  background-size: 10px;
}
.a11y-controls .a11y-toggle:before {
  margin: 0 !important;
}
.a11y-controls--display-inline {
  padding: 10px;
  border-radius: 16px;
  background-color: var(--theme-neutral-white);
}
.a11y-controls--display-inline .a11y-controls__panel {
  position: static;
  min-width: 0;
  max-width: none;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
  transform: none;
}
.a11y-controls.is-floating {
  position: fixed;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2000;
}
.a11y-controls--pos-bottom {
  --a11y-panel-top: calc(100% + 8px);
  --a11y-panel-bottom: auto;
  --a11y-panel-ty: 0;
}
.a11y-controls--pos-top {
  --a11y-panel-top: auto;
  --a11y-panel-bottom: calc(100% + 8px);
  --a11y-panel-ty: 0;
}
.a11y-controls--pos-center {
  --a11y-panel-top: 50%;
  --a11y-panel-bottom: auto;
  --a11y-panel-ty: -50%;
}
.a11y-controls--pos-right {
  --a11y-panel-left: calc(100% + 8px);
  --a11y-panel-right: auto;
  --a11y-panel-top: 50%;
  --a11y-panel-ty: -50%;
}
.a11y-controls--pos-left {
  --a11y-panel-right: calc(100% + 8px);
  --a11y-panel-left: auto;
  --a11y-panel-top: 50%;
  --a11y-panel-ty: -50%;
}
.a11y-controls--align-right {
  --a11y-panel-right: 0;
  --a11y-panel-left: auto;
  --a11y-panel-tx: 0;
}
.a11y-controls--align-left {
  --a11y-panel-left: 0;
  --a11y-panel-right: auto;
  --a11y-panel-tx: 0;
}
.a11y-controls--align-center {
  --a11y-panel-left: 50%;
  --a11y-panel-right: auto;
  --a11y-panel-tx: -50%;
}
@media (max-width: 768px) {
  .a11y-controls__panel {
    right: 0;
    left: 0;
    min-width: 240px;
  }
}

/*------------------------------------*\
    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 - Ablauf */
/*------------------------------------*/
.steps {
  scroll-margin-top: 80px;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.steps .accordeon {
  padding: 0 20px;
  align-items: center;
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.steps .accordeon::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.steps .accordeon .item {
  opacity: 0.2;
  padding: 0;
  max-width: 794px;
  opacity: 0.25;
  transform: scale(0.9) translateY(18px);
  transition: transform 600ms ease, opacity 600ms ease, filter 600ms ease;
  z-index: 1;
  transform-origin: center;
}
.steps .accordeon .item .title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
}
.steps .accordeon .item .title .title__headline {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: calc(22px + 10 * (100vw - 520px) / 670);
  color: var(--color-text-headings-on-dark, #fff);
}
@media screen and (max-width: 520px) {
  .steps .accordeon .item .title .title__headline {
    font-size: 22px;
  }
}
@media screen and (min-width: 1190px) {
  .steps .accordeon .item .title .title__headline {
    font-size: 32px;
  }
}
.steps .accordeon .item .title .title__headline p.title__subline {
  font-family: var(--font-family-body);
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  color: var(--color-text-body-on-dark, #d4d4d8);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 170%; /* 27.2px */
  padding: 0;
}
@media screen and (max-width: 520px) {
  .steps .accordeon .item .title .title__headline p.title__subline {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .steps .accordeon .item .title .title__headline p.title__subline {
    font-size: 16px;
  }
}
.steps .accordeon .item .content-container {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-6px);
  transition: max-height 650ms ease, opacity 350ms ease, transform 450ms ease;
}
.steps .accordeon .item .content-container .content * {
  color: var(--color-text-highlight, #ffde59);
}
.steps .accordeon .item .content-container .content * p {
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  .steps .accordeon .item .content-container .content * p {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .steps .accordeon .item .content-container .content * p {
    font-size: 16px;
  }
}
.steps .accordeon .item.--open {
  /* Aktiv = vorne */
  opacity: 1;
  transform: scale(1) translateY(0);
  filter: none;
  z-index: 5;
}
.steps .accordeon .item.--open .title {
  color: var(--color-text-headings-on-dark, #fff);
  margin-bottom: 32px;
}
.steps .accordeon .item.--open .content-container {
  height: auto;
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  max-height: 600px;
}
.steps .accordeon .item .accordeon .item.--prev,
.steps .accordeon .item .accordeon .item.--next {
  opacity: 0.45;
  transform: scale(0.94) translateY(10px);
  filter: blur(0.2px);
  z-index: 3;
}
.steps .accordeon .item.is-inactive {
  transform: scale(0.5);
  opacity: 0.45;
  filter: saturate(0.9);
  pointer-events: none;
}
.steps .accordeon .item.is-active {
  transform: scale(1);
  opacity: 1;
  filter: none;
  pointer-events: auto;
  transform: scale(1);
}
.steps .accordeon .last-item-container {
  max-width: 712px;
  margin: 0 auto;
  margin-top: 44px;
}
.steps .accordeon .last-item-container .last-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0px;
  text-align: center;
}
.steps .item .title,
.steps .item .content-container {
  display: flex;
  justify-content: center;
}
@media (min-width: 769px) {
  .steps .accordeon {
    padding: 0;
  }
  .steps .steps {
    min-height: 100vh;
    display: flex;
    align-items: center;
  }
}

/*------------------------------------*/
/* ACF BLOCK -  Logo Slider  */
/*------------------------------------*/
.logo-slider {
  position: relative;
  overflow: hidden;
}
.logo-slider .js-marquee {
  display: flex;
  flex-direction: row;
}
.logo-slider .marquee-container {
  padding: 20px 0;
}
.logo-slider .marquee-container.static {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--space-800);
  width: 100%;
  flex-direction: column;
  padding: var(--components-box-padding-medium, 20px) 0;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.logo-slider .marquee-container.static .logo-slide {
  margin: 0;
  height: 58px;
  height: auto;
}
@media (min-width: 769px) {
  .logo-slider .marquee-container.static {
    flex-direction: row;
    justify-content: center;
  }
}
.logo-slider .marquee-container .logo-slide {
  display: inline-block;
  white-space: nowrap;
  margin-right: var(--space-800);
  width: auto;
  display: flex;
  padding: 7px 17px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.logo-slider .marquee-container .logo-slide img {
  max-height: 58px;
  width: 100%;
  height: 100%;
  object-fit: contain;
  max-width: 155px;
}
.logo-slider .marquee-container .marquee {
  overflow: hidden;
  white-space: nowrap;
}

/*------------------------------------*/
/* ACF BLOCK - Use Cases */
/*------------------------------------*/
.use-cases {
  padding: 0 30px;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.use-cases .mobile-only {
  display: block;
}
.use-cases .mobile-only h2 {
  margin-bottom: 0;
}
.use-cases h2 {
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-size: calc(50px + 50 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 100%; /* 50px */
  text-transform: uppercase;
  padding: 0;
  margin-bottom: 64px;
}
@media screen and (max-width: 520px) {
  .use-cases h2 {
    font-size: 50px;
  }
}
@media screen and (min-width: 1190px) {
  .use-cases h2 {
    font-size: 100px;
  }
}
.use-cases .use-case-item .top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
  margin-bottom: 20px;
}
.use-cases .use-case-item .top > .meta {
  padding: 0;
}
.use-cases .use-case-item .top > .meta h5,
.use-cases .use-case-item .top > .meta p {
  padding: 0;
}
.use-cases .use-case-item .top > .meta h5 {
  color: var(--color-text-highlight, #ffde59);
  font-family: var(--font-headings, Montserrat);
  font-size: var(--text-md, 18px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 27px */
}
.use-cases .use-case-item .top > .meta p {
  color: var(--color-text-decent, #a1a1aa);
  font-family: var(--font-headings, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 18px */
}
.use-cases .use-case-item .tags {
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  gap: 8px;
  align-self: stretch;
  flex-wrap: wrap;
}
.use-cases .use-case-item .tags .tag {
  border-radius: 1000px;
  background: rgba(250, 250, 250, 0.2);
  display: flex;
  padding: 2px 10px;
  justify-content: center;
  align-items: center;
  gap: 5px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, Montserrat);
  font-size: var(--text-2xs, 11px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 16.5px */
}
.use-cases .use-case-item .tags .tag.active {
  border: 1px solid var(--color-border-accent, #ffde59);
  color: var(--color-text-highlight, #ffde59);
}
.use-cases .use-case-item .content > .meta {
  border-top: 1px solid #fff;
  padding: 20px 0;
  padding-bottom: 0;
}
.use-cases .use-case-item .content > .meta h5 {
  padding: 0;
  color: var(--color-text-headings-on-dark, #fff);
  font-size: var(--text-md, 18px);
}
.use-cases .use-case-item .content .col {
  gap: 44px;
}
.use-cases .use-case-item .content .col > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.use-cases .use-case-item .content .wysiwyg * p {
  font-family: var(--font-body, "Montserrat");
  font-size: calc(12px + 2 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 21px */
}
@media screen and (max-width: 520px) {
  .use-cases .use-case-item .content .wysiwyg * p {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .use-cases .use-case-item .content .wysiwyg * p {
    font-size: 14px;
  }
}
.use-cases .use-case-item .content .button-linkedin {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.use-cases .use-case-item .content .button-linkedin:hover {
  color: var(--color-button-accent-DEFAULT, #ffde59);
}
.use-cases .swiper-slide {
  opacity: 0.5;
  filter: blur(2px);
  transition: var(--transition);
}
.use-cases .swiper-slide.swiper-slide-active {
  opacity: 1;
  filter: blur(0px);
}
.use-cases .slider__button {
  padding: 0 !important;
  width: 46px !important;
  aspect-ratio: 1 !important;
  background-size: 20px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.use-cases .slider__button.--prev {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='29' viewBox='0 0 27 29' fill='none'%3E%3Cpath d='M25.918 8.5L14.418 8.5L14.418 1L1.0013 14.125L14.418 27.25L14.418 19.75H25.918L25.918 8.5Z' stroke='%23FF3131' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.use-cases .slider__button.--next {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='29' viewBox='0 0 27 29' fill='none'%3E%3Cpath d='M1 8.5L12.25 8.5L12.25 1L25.375 14.125L12.25 27.25L12.25 19.75H1L1 8.5Z' stroke='%23FF3131' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.use-cases .slider__button.--disabled.--prev, .use-cases .slider__button:disabled.--prev {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='29' viewBox='0 0 27 29' fill='none'%3E%3Cpath d='M25.375 19.75L14.125 19.75L14.125 27.25L1 14.125L14.125 0.999999L14.125 8.5L25.375 8.5L25.375 19.75Z' stroke='%23D4D4D8' stroke-opacity='0.1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.use-cases .slider__button.--disabled.--next, .use-cases .slider__button:disabled.--next {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='29' viewBox='0 0 27 29' fill='none'%3E%3Cpath d='M1 19.75L12.25 19.75L12.25 27.25L25.375 14.125L12.25 0.999999L12.25 8.5L1 8.5L1 19.75Z' stroke='%23D4D4D8' stroke-opacity='0.1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.use-cases .slider__button:hover {
  cursor: pointer;
}
.use-cases .pagination-wrapper {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 17px;
}
.use-cases .wrapper > h2 {
  display: none;
}
@media (min-width: 769px) {
  .use-cases {
    margin-left: 75px;
  }
  .use-cases .swiper {
    padding-left: 20px;
  }
  .use-cases .mobile-only {
    display: none;
  }
  .use-cases .wrapper > h2 {
    display: block;
  }
  .use-cases .pagination-wrapper {
    justify-content: flex-end;
  }
  .use-cases .swiper-slide {
    width: 1021px;
    max-width: 1021px;
  }
  .use-cases .wrapper {
    display: flex;
    gap: 40px;
  }
  .use-cases .wrapper h2 {
    writing-mode: sideways-lr;
    justify-content: end;
    display: flex;
    margin-bottom: 0px;
  }
  .use-cases .use-case-item .top {
    flex-direction: row;
    justify-content: space-between;
  }
  .use-cases .use-case-item .top > .meta {
    padding: 0;
    display: flex;
    flex-direction: row;
    gap: 20px;
    align-items: center;
  }
  .use-cases .use-case-item .top > .meta h5,
  .use-cases .use-case-item .top > .meta p {
    padding: 0;
  }
  .use-cases .use-case-item .top > .meta h5 {
    color: var(--color-text-highlight, #ffde59);
    font-family: var(--font-headings, Montserrat);
    font-size: var(--text-md, 18px);
    font-style: normal;
    font-weight: var(--font-weight-bold, 600);
    line-height: 150%; /* 27px */
  }
  .use-cases .use-case-item .top > .meta p {
    color: var(--color-text-decent, #a1a1aa);
    font-family: var(--font-headings, Montserrat);
    font-size: var(--text-2xs, 12px);
    font-style: normal;
    font-weight: var(--font-weight-regular, 500);
    line-height: 150%; /* 18px */
  }
  .use-cases .use-case-item .top > .meta p.label {
    color: var(--color-text-highlight, #ffde59);
  }
  .use-cases .use-case-item .tags {
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    gap: 8px;
    align-self: stretch;
    flex-wrap: wrap;
  }
  .use-cases .use-case-item .tags .tag {
    border-radius: 1000px;
    background: rgba(250, 250, 250, 0.2);
    display: flex;
    padding: 2px 10px;
    justify-content: center;
    align-items: center;
    gap: 5px;
  }
  .use-cases .use-case-item .tags .tag.active {
    border: 1px solid var(--color-border-accent, #ffde59);
    color: var(--color-text-highlight, #ffde59);
  }
  .use-cases .use-case-item .wysiwyg ul {
    --wv-ul-marker-size: 10px;
    padding-left: 0;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
    flex-direction: column;
    gap: 20px;
    list-style: none;
  }
}
@media (min-width: 769px) and (max-width: 768px) {
  .use-cases .use-case-item .wysiwyg ul {
    gap: 10px;
  }
}
@media (min-width: 769px) {
  .use-cases .use-case-item .wysiwyg ul li {
    font-family: var(--font-family-body);
    font-size: calc(12px + 4 * (100vw - 520px) / 670);
    color: var(--color-text-body-on-dark, #d4d4d8);
    font-style: normal;
    font-weight: var(--font-weight-regular, 500);
    line-height: 170%; /* 27.2px */
    padding-left: calc(var(--wv-ul-marker-size) + 20px);
    position: relative;
    text-align: left;
  }
}
@media screen and (min-width: 769px) and (max-width: 520px) {
  .use-cases .use-case-item .wysiwyg ul li {
    font-size: 12px;
  }
}
@media screen and (min-width: 769px) and (min-width: 1190px) {
  .use-cases .use-case-item .wysiwyg ul li {
    font-size: 16px;
  }
}
@media (min-width: 769px) {
  .use-cases .use-case-item .wysiwyg ul li:before {
    content: "";
    display: block;
    position: absolute;
    width: var(--wv-ul-marker-size);
    aspect-ratio: 1/1;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Ccircle cx='5' cy='5' r='2' fill='%23FFDE59'/%3E%3Ccircle cx='5' cy='5' r='4.55' stroke='%23FFDE59' stroke-width='0.9'/%3E%3C/svg%3E") !important;
    left: 0;
    top: 50%;
    translate: 0 -50%;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Ereignisse */
/*------------------------------------*/
.results {
  overflow: hidden;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.results .js-reveal-up {
  opacity: 1;
  transform: translateY(100px);
  transition: transform 1200ms linear, opacity 1200ms ease;
}
.results .js-reveal-right {
  opacity: 1;
  transform: translateX(-60px);
  transition: transform 1200ms linear, opacity 1200ms ease;
}
.results .js-reveal-left {
  opacity: 1;
  transform: translateX(200px);
  transition: transform 1200ms linear, opacity 1200ms ease;
}
.results.is-inview .js-reveal-up,
.results.is-inview .js-reveal-right,
.results.is-inview .js-reveal-left {
  opacity: 1;
  transform: translate(0px, 0px);
}
.results.is-inview .top .js-reveal-up {
  transition-delay: 120ms;
}
.results.is-inview .content .js-reveal-right {
  transition-delay: 0ms;
}
.results.is-inview .content .image-container--big.js-reveal-up {
  transition-delay: 180ms;
}
.results .top {
  margin-bottom: 43px;
  display: flex;
  justify-content: flex-end;
  max-width: 1510px;
}
@media (max-width: 768px) {
  .results .top {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
  }
}
.results .top .image-container {
  width: calc(100vw - 170px);
  width: 273px;
}
.results .top .image-container img {
  width: 100%;
  height: auto;
  aspect-ratio: 375/225;
  object-fit: cover;
}
.results .content h2 {
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-size: calc(50px + 50 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%;
  text-transform: uppercase;
  z-index: 2;
  text-align: center;
  padding: 0;
  margin-bottom: -30px;
  z-index: 10;
  position: relative;
}
@media screen and (max-width: 520px) {
  .results .content h2 {
    font-size: 50px;
  }
}
@media screen and (min-width: 1190px) {
  .results .content h2 {
    font-size: 100px;
  }
}
.results .content .image-container {
  position: relative;
}
.results .content .image-container img {
  width: 100%;
  height: auto;
  aspect-ratio: 330/190;
  object-fit: cover;
}
.results .content .image-container .overlay {
  background: linear-gradient(54deg, rgba(0, 0, 0, 0) 7.89%, rgba(0, 0, 0, 0.2) 92.11%);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
@media (min-width: 769px) {
  .results .top {
    margin-bottom: 0px;
    margin-right: 0;
  }
  .results .top .image-container {
    width: 375px;
  }
  .results .top .image-container img {
    width: 100%;
    height: auto;
    aspect-ratio: 375/225;
  }
  .results .content {
    display: grid;
    grid-template-areas: "headline headline" "image text";
    gap: 20px;
    grid-template-columns: 1fr 1fr;
  }
  .results .content h2 {
    grid-area: headline;
    margin-bottom: -85px;
  }
  .results .content .image-container {
    grid-area: image;
  }
  .results .content .image-container img {
    width: auto;
    height: 100%;
    max-height: 460px;
    aspect-ratio: 580/460;
  }
  .results .content .text-container {
    grid-area: text;
    display: flex;
    padding: var(--spacing-lg, 44px) 32px var(--spacing-lg, 44px) var(--spacing-md, 32px);
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-md, 32px);
    flex: 1 0 0;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Prozesse */
/*------------------------------------*/
.processes {
  overflow: hidden;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.processes.is-inview .headline-special {
  animation: headlineBounce 1400ms ease-in-out 4;
}
.processes .headline-container h2 {
  font-size: calc(50px + 50 * (100vw - 520px) / 670);
  padding: 0;
}
@media screen and (max-width: 520px) {
  .processes .headline-container h2 {
    font-size: 50px;
  }
}
@media screen and (min-width: 1190px) {
  .processes .headline-container h2 {
    font-size: 100px;
  }
}
.processes .headline-container strong {
  font-family: "Hurricane";
  color: var(--color-text-highlight, #ffde59);
  font-weight: 400 !important;
}
.processes .wysiwyg {
  padding-bottom: 20px;
}
.processes .statements {
  border-top: 1px solid rgba(244, 244, 245, 0.25);
  padding-bottom: 20px;
}
.processes .statements .item {
  margin-top: 20px;
}
.processes .dominos-wrapper-hover {
  position: relative;
  height: 100%;
  width: 100%;
  height: 280px;
}
.processes .dominos-wrapper-hover .image-container {
  height: 100%;
  width: 100%;
}
.processes .dominos-wrapper-hover .image-container img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.processes .dominos-wrapper-hover .first,
.processes .dominos-wrapper-hover .hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.processes .dominos-wrapper-hover .first img,
.processes .dominos-wrapper-hover .hover img {
  width: auto;
  object-fit: cover;
  margin: 0 auto;
}
.processes .dominos-wrapper-hover .hover {
  z-index: 2;
  opacity: 0;
}
.processes .dominos-wrapper-hover:hover, .processes .dominos-wrapper-hover.is-active {
  cursor: pointer;
}
.processes .dominos-wrapper-hover:hover .first, .processes .dominos-wrapper-hover.is-active .first {
  display: none;
}
.processes .dominos-wrapper-hover:hover .hover, .processes .dominos-wrapper-hover.is-active .hover {
  display: block;
  opacity: 1;
}
.processes .item,
.processes .item .label,
.processes .item .label .icon {
  display: flex;
  justify-content: center;
  align-items: center;
}
.processes .item {
  justify-content: flex-start;
  gap: 20px;
}
.processes .item h6 {
  padding: 0;
}
.processes .item .label {
  display: flex;
  max-width: 86px;
  justify-content: flex-start;
  gap: 5px;
  white-space: nowrap;
}
.processes .item .text p {
  font-family: var(--font-body, "Montserrat");
  font-size: calc(12px + 2 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 21px */
  padding: 0;
  color: var(--color-text-headings-on-dark, #fff);
}
@media screen and (max-width: 520px) {
  .processes .item .text p {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .processes .item .text p {
    font-size: 14px;
  }
}
.processes .item.consequence, .processes .item.idea {
  padding: 20px 0;
  border-top: 1px solid rgba(244, 244, 245, 0.25);
}
.processes .item.consequence .text .label, .processes .item.idea .text .label {
  min-width: 86px;
}
.processes .item.consequence h6 {
  color: var(--button-primary-default);
}
.processes .item.idea h6 {
  color: var(--color-text-highlight, #ffde59);
}
.processes .item.consequence .label, .processes .item.idea .label {
  max-width: 87px;
  width: 25%;
}
.processes .item.consequence .text, .processes .item.idea .text {
  width: 75%;
}
.processes .animation-container {
  display: flex;
  flex-direction: column;
  margin-top: 32px;
}
.processes .animation-container .button-container {
  display: flex;
  justify-content: flex-end;
}
.processes .animation-container .dominos {
  height: 280px;
}
.processes .animation-container svg {
  width: 100%;
}
.processes .animation-container svg .domino--last {
  transform-box: fill-box;
  transform: rotate(0deg);
  transform-origin: 8% 96%;
}
.processes .animation-container svg .domino--in {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: 0;
}
.processes .animation-container svg .domino--fly {
  opacity: 0;
  transform: translateY(-40px);
}
.processes .animation-container.is-playing svg .domino--last {
  animation: dominoFall 1000ms linear forwards;
}
.processes .animation-container.is-playing svg .domino--in-2 {
  animation: dominoIn 1800ms ease-in forwards;
  animation-delay: 0ms;
}
.processes .animation-container.is-playing svg .domino--in-1 {
  animation: dominoIn 1800ms ease-in forwards;
  animation-delay: 350ms;
}
.processes .animation-container.is-playing svg .domino--fly-b {
  animation: dominoIn 1800ms ease-in forwards;
  animation-delay: 0ms;
}
.processes .animation-container.is-playing svg .domino--fly-a {
  animation: dominoIn 1800ms ease-in forwards;
  animation-delay: 500ms;
}
@media (hover: hover) and (pointer: fine) {
  .processes .animation-container:hover {
    cursor: pointer;
  }
  .processes .animation-container:hover svg .domino--last {
    animation: dominoFall 1000ms linear forwards;
  }
  .processes .animation-container:hover svg .domino--in-2 {
    animation: dominoIn 1800ms ease-in forwards;
    animation-delay: 0ms;
  }
  .processes .animation-container:hover svg .domino--in-1 {
    animation: dominoIn 1800ms ease-in forwards;
    animation-delay: 350ms;
  }
  .processes .animation-container:hover svg .domino--fly-b {
    animation: dominoIn 1800ms ease-in forwards;
    animation-delay: 0ms;
  }
  .processes .animation-container:hover svg .domino--fly-a {
    animation: dominoIn 1800ms ease-in forwards;
    animation-delay: 500ms;
  }
}
.processes .button-trigger-domino {
  max-width: 170px;
  align-self: self-end;
}
.processes .button-trigger-domino h6 {
  color: var(--color-text-headings-on-dark, #fff);
}
.processes .button-trigger-domino .icon {
  animation: dominoBounce 1000ms ease-in infinite;
}
@media (min-width: 769px) {
  .processes {
    padding-bottom: 80px;
  }
  .processes .dominos-wrapper-hover {
    height: 400px;
  }
  .processes .headline-container {
    margin-bottom: 75px;
  }
  .processes .headline-container h2 {
    text-align: center;
    text-transform: uppercase;
  }
  .processes.animation-text .wrapper {
    flex-direction: row-reverse;
  }
  .processes.animation-text .button-container {
    display: flex;
    justify-content: flex-start;
  }
  .processes .wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: auto;
  }
  .processes .wrapper .text-content {
    max-width: 580px;
  }
  .processes .wrapper .animation-container {
    margin-top: 0px;
    width: calc(40% - 50px);
    min-width: 50%;
    align-items: end;
  }
  .processes .wrapper .animation-container .dominos {
    transform: translateY(-50px);
  }
}
@media (min-width: 769px) and (min-width: 1025px) {
  .processes .wrapper .animation-container .dominos {
    height: 460px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Kontakt */
/*------------------------------------*/
.contact {
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.contact .headline-container h2 {
  font-size: calc(50px + 50 * (100vw - 520px) / 670);
  padding: 0;
}
@media screen and (max-width: 520px) {
  .contact .headline-container h2 {
    font-size: 50px;
  }
}
@media screen and (min-width: 1190px) {
  .contact .headline-container h2 {
    font-size: 100px;
  }
}
.contact .headline-container strong {
  font-family: "Hurricane";
  color: var(--color-text-highlight, #ffde59);
  font-weight: 400 !important;
}
.contact .links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}
.contact .links h6 {
  padding-bottom: 20px;
}
.contact .links a.icon-link {
  transition: var(--transition);
  font-family: var(--font-body, "Montserrat");
  font-size: calc(12px + 2 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 21px */
}
@media screen and (max-width: 520px) {
  .contact .links a.icon-link {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .contact .links a.icon-link {
    font-size: 14px;
  }
}
.contact .links a.icon-link:hover,
.contact .links a.icon-link .icon {
  color: var(--color-icon-accent, #ffde59);
}
.contact .links a.icon-link .icon {
  width: 16px;
  height: 16px;
}
.contact .wysiwyg {
  padding-top: 0px;
}
.contact .wysiwyg h2 {
  font-size: calc(22px + 10 * (100vw - 520px) / 670);
}
@media screen and (max-width: 520px) {
  .contact .wysiwyg h2 {
    font-size: 22px;
  }
}
@media screen and (min-width: 1190px) {
  .contact .wysiwyg h2 {
    font-size: 32px;
  }
}
.contact .wysiwyg ul {
  --wv-ul-marker-size: 10px;
  padding-left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: 20px;
  list-style: none;
  gap: 10px;
}
@media (max-width: 768px) {
  .contact .wysiwyg ul {
    gap: 10px;
  }
}
.contact .wysiwyg ul li {
  font-family: var(--font-family-body);
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  color: var(--color-text-body-on-dark, #d4d4d8);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 170%; /* 27.2px */
  padding-left: calc(var(--wv-ul-marker-size) + 20px);
  position: relative;
  text-align: left;
}
@media screen and (max-width: 520px) {
  .contact .wysiwyg ul li {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .contact .wysiwyg ul li {
    font-size: 16px;
  }
}
.contact .wysiwyg ul li:before {
  content: "";
  display: block;
  position: absolute;
  width: var(--wv-ul-marker-size);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='6' height='6' rx='3' fill='black' style='fill:black;fill-opacity:1;'/%3E%3C/svg%3E%0A");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Ccircle cx='5' cy='5' r='2' fill='%23FFDE59'/%3E%3Ccircle cx='5' cy='5' r='4.55' stroke='%23FFDE59' stroke-width='0.9'/%3E%3C/svg%3E") !important;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}
.contact .wysiwyg ul li {
  font-family: var(--font-body, "Montserrat");
  font-size: calc(12px + 2 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 21px */
}
@media screen and (max-width: 520px) {
  .contact .wysiwyg ul li {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .contact .wysiwyg ul li {
    font-size: 14px;
  }
}
.contact .form-content .button-container {
  margin: 32px 0;
}
.contact .form-content .button-container .switch-button {
  border-radius: 10px;
  background: #006bff;
  display: flex;
  padding: 10px 20px;
  max-width: 365px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  align-self: stretch;
  transition: var(--transition);
  color: var(--color-text-headings-on-dark, #fff);
  /* text/bold/2xs */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 12px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
}
.contact .form-content .button-container .switch-button:hover {
  cursor: pointer;
  filter: brightness(80%);
}
.contact .form-content button.button-link {
  appearance: none;
  background: none !important;
  border: 0;
  border-radius: 0;
  padding: 0 !important;
  font: inherit;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-sm);
  font-size: calc(15px + 1 * (100vw - 520px) / 670);
  font-weight: var(--font-weight-bold);
  line-height: 100%;
  text-decoration: none;
  transition: var(--transition);
  position: relative;
  color: var(--button-accent-default);
  display: flex;
  align-items: center;
}
@media screen and (max-width: 520px) {
  .contact .form-content button.button-link {
    font-size: 15px;
  }
}
@media screen and (min-width: 1190px) {
  .contact .form-content button.button-link {
    font-size: 16px;
  }
}
.contact .form-content button.button-link .arrow {
  transition: var(--transition);
}
.contact .form-content button.button-link:hover, .contact .form-content button.button-link:focus {
  color: var(--button-accent-hover);
  gap: var(--space-md);
}
.contact .form-content button.button-link:active {
  color: var(--button-accent-action);
}
.contact .form-content button.button-link:disabled {
  color: var(--button-accent-disabled);
}
.contact .form-content button.button-link.--color-accent {
  color: var(--button-accent-default);
}
.contact .form-content button.button-link.--color-accent:hover, .contact .form-content button.button-link.--color-accent:focus {
  color: var(--button-accent-hover);
}
.contact .form-content button.button-link.--color-accent:active {
  color: var(--button-accent-action);
}
.contact .form-content button.button-link.--color-accent:disabled {
  color: var(--button-accent-disabled);
}
.contact .form-content button.button-link.--color-neutral {
  color: var(--button-neutral-default);
}
.contact .form-content button.button-link.--color-neutral:hover, .contact .form-content button.button-link.--color-neutral:focus {
  color: var(--button-neutral-hover);
}
.contact .form-content button.button-link.--color-neutral:active {
  color: var(--button-neutral-action);
}
.contact .form-content button.button-link.--color-neutral:disabled {
  color: var(--button-neutral-disabled);
}
.contact .form-content button.button-link:hover {
  background: transparent;
}
@media (min-width: 769px) {
  .contact .headline-container {
    margin-bottom: 62px;
  }
  .contact .headline-container h2 {
    text-align: right;
    line-height: 100%;
    text-transform: uppercase;
  }
  .contact .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
  }
  .contact .wrapper > div {
    width: calc(50% - 60px);
  }
  .contact .form-content .button-container {
    margin: 24px 0;
  }
  .contact .wysiwyg {
    padding-top: 60px;
  }
}
.contact:not(.is-calendly) .calendly {
  display: none;
}
.contact:not(.is-calendly) .form-content {
  padding-top: 80px;
}

/*------------------------------------*/
/* ACF BLOCK - Über mich */
/*------------------------------------*/
.about {
  overflow: hidden;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.about .inner {
  max-width: 1250px;
}
@media (min-width: 1191px) {
  .about .inner {
    width: calc(1250px + 120px);
  }
}
.about .wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas: "image" "headline" "text" "values" "cta";
}
.about .desktop-container {
  display: none;
}
@media (min-width: 769px) {
  .about .desktop-container {
    display: block;
  }
}
.about .mobile-only {
  display: block;
}
@media (min-width: 769px) {
  .about .mobile-only {
    display: none;
  }
}
.about .swiper {
  overflow: visible;
}
.about .headline-container {
  grid-area: headline;
  margin-top: -40px;
  z-index: 2;
}
.about .headline-container h2 {
  font-size: calc(50px + 50 * (100vw - 520px) / 670);
  padding: 0;
}
@media screen and (max-width: 520px) {
  .about .headline-container h2 {
    font-size: 50px;
  }
}
@media screen and (min-width: 1190px) {
  .about .headline-container h2 {
    font-size: 100px;
  }
}
.about .headline-container strong {
  font-family: "Hurricane";
  color: var(--color-text-highlight, #ffde59);
  font-weight: 400 !important;
}
.about .image-container {
  grid-area: image;
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: calc(100% - 40px);
  margin: 0 auto;
  max-height: 277px;
}
.about .image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 1;
}
.about .values-container {
  grid-area: values;
  position: relative;
  width: 100%;
  overflow: visible;
  flex: 1 1 auto;
  min-width: 0;
  margin-top: 32px;
  margin-bottom: 460px;
  min-height: 500px;
}
.about .values-container .single-value {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  align-self: stretch;
}
.about .values-container .single-value .labels p {
  color: var(--color-text-body-on-dark, #d4d4d8);
  font-family: var(--font-body, "Montserrat");
  font-size: var(--text-xs, 10px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%;
  padding: 0;
}
.about .values-container .single-value .labels p.number {
  color: var(--color-text-headings-on-dark, #fff);
  /* Fließtext/Box */
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-xs, 14px);
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 21px */
}
.about .values-container .single-value .labels p.number.is-highlight {
  color: var(--color-text-highlight, #ffde59);
}
.about .values-container .single-value .bar {
  width: 100%;
  height: 8px;
  border-radius: 16777200px;
  background: var(--color-surface-accent-light, #fefbe8);
  overflow: hidden;
  position: relative;
}
.about .values-container .single-value .bar .fill {
  display: block;
  height: 100%;
  width: var(--pct, 0%);
  border-radius: 16777200px;
  background: var(--color-button-accent-active, #ecab06);
}
.about .values-container .single-value + .single-value {
  margin-top: 5px;
}
.about .values-container .stack {
  position: relative;
  width: 100%;
  overflow: visible;
  margin-left: auto;
  --stack-h: 520px;
}
.about .values-container .stack > .card {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  max-width: 475px;
  height: var(--stack-h);
  --x: -50%;
  --y: 0px;
  --s: 1;
  transform: translate(var(--x), var(--y)) scale(var(--s));
  transform-origin: top left;
  transition: transform 0.6s ease;
  user-select: none;
  will-change: transform;
  pointer-events: none;
  transition: transform 0.6s ease;
}
.about .values-container .stack > .card .value {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.about .values-container .stack > .card:nth-last-child(1) {
  --x: -50%;
  --y: 0px;
  opacity: 1;
  pointer-events: auto;
  background: linear-gradient(0deg, #000 0%, #000 100%), rgba(255, 255, 255, 0.1);
  border-color: #000;
}
.about .values-container .stack > .card:nth-last-child(2) {
  --x: calc(-50% + 10px);
  --y: calc(10px);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), rgba(255, 255, 255, 0.1);
  border: 1px solid #444444;
  padding-top: 50px;
}
.about .values-container .stack > .card:nth-last-child(2) .value {
  opacity: 0;
}
.about .values-container .stack > .card:nth-last-child(3) {
  --x: calc(-50% + 20px);
  --y: calc(20px);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), rgba(255, 255, 255, 0.1);
  border: 1px solid #444444;
  padding-top: 50px;
}
.about .values-container .stack > .card:nth-last-child(3) .value {
  opacity: 0;
}
.about .values-container .stack > .card:nth-last-child(4) {
  --x: calc(-50% + 30px);
  --y: calc(30px);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), rgba(255, 255, 255, 0.1);
  border: 1px solid #444444;
  padding-top: 50px;
}
.about .values-container .stack > .card:nth-last-child(4) .value {
  opacity: 0;
}
.about .values-container .stack > .card:nth-last-child(n+5) {
  --x: calc(-50% + 40px);
  --y: calc(40px);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)), rgba(255, 255, 255, 0.1);
  border: 1px solid #444444;
  padding-top: 50px;
}
.about .values-container .stack > .card:nth-last-child(n+5) .value {
  opacity: 0;
}
.about .values-container .swap {
  animation: swap 7s ease-out forwards;
}
.about .value {
  width: 100%;
  height: 100%;
  max-width: 475px;
  min-width: 200px;
  padding: 25px;
  display: flex;
  justify-content: space-between;
  color: rgba(255, 255, 255, 0.92);
}
.about .value h5 {
  padding: 0;
  padding-bottom: 20px;
  font-size: calc(14px + 4 * (100vw - 520px) / 670);
  color: var(--color-text-headings-on-dark, #fff);
}
@media screen and (max-width: 520px) {
  .about .value h5 {
    font-size: 14px;
  }
}
@media screen and (min-width: 1190px) {
  .about .value h5 {
    font-size: 18px;
  }
}
.about .value .single-value {
  width: 100%;
}
.about .value .single-value .labels {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.about .value .cta-grp {
  margin-top: 20px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
}
.about .text-container {
  grid-area: text;
  width: 100%;
}
.about .cta-grp {
  grid-area: cta;
}
.about .cta-grp > .arrow {
  width: 30px;
  height: 30px;
  transform: rotate(45deg);
}
.about .cta-grp > .arrow:hover {
  cursor: pointer;
}
.about .cta-grp > .arrow svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 769px) {
  .about .wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding-left: 0px;
    grid-template-areas: "headline headline" "text image" "text values" "cta values";
  }
  .about .image-container {
    flex-direction: row;
    align-items: center;
    gap: 40px;
    max-width: 462px;
    max-height: 524px;
    margin: unset;
    margin-top: -95px;
  }
  .about .image-container img {
    aspect-ratio: 462/524;
  }
  .about .values-container {
    margin-bottom: 0;
    margin: 0;
    margin-top: -160px;
    display: flex;
    justify-content: flex-end;
  }
}
@media (min-width: 1025px) {
  .about .wrapper {
    padding-left: 0px;
  }
}
@media (min-width: 1251px) {
  .about .wrapper {
    padding-left: 60px;
  }
  .about .values-container .stack {
    max-width: 520px;
  }
  .about .image-container {
    margin-left: 40px;
  }
  .about .image-container img {
    aspect-ratio: 462/524;
  }
}
@media (min-width: 1401px) {
  .about .wrapper {
    padding-left: 120px;
  }
  .about .values-container {
    margin-left: 100px;
  }
}

/*------------------------------------*/
/* ACF BLOCK - testimonials */
/*------------------------------------*/
.testimonials {
  overflow: hidden;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.testimonials .swiper {
  width: calc(100% - 60px);
}
.testimonials .swiper-wrapper {
  align-items: stretch;
}
.testimonials .swiper-slide {
  display: flex;
  flex-direction: column;
  height: auto;
}
.testimonials .arrows {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  z-index: 5;
}
.testimonials .arrows .slider__controls {
  display: flex;
  justify-content: space-between;
  margin: 0;
}
.testimonials .arrows .slider__controls .--next {
  position: relative;
}
.testimonials .arrows .slider__controls .--next:before {
  content: "";
  content: "";
  display: block;
  position: absolute;
  width: 7.5px;
  height: 15px;
  top: 50%;
  right: 10px;
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateY(-50%);
  opacity: 0;
  transition: var(--transition);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='17' viewBox='0 0 10 17' fill='none'%3E%3Cpath d='M1 16L8.5 8.5L1 1' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.testimonials .arrows .slider__controls .--next:hover:before {
  opacity: 1;
}
.testimonials .arrows .slider__controls .--prev {
  position: relative;
}
.testimonials .arrows .slider__controls .--prev:before {
  content: "";
  content: "";
  display: block;
  position: absolute;
  width: 7.5px;
  height: 15px;
  top: 50%;
  left: 10px;
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateY(-50%);
  opacity: 0;
  margin-top: 1.5px;
  transition: var(--transition);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='17' viewBox='0 0 10 17' fill='none'%3E%3Cpath d='M8.5 16L1 8.5L8.5 1' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.testimonials .arrows .slider__controls .--prev:hover:before {
  opacity: 1;
}
.testimonials .arrows .slider__controls .--disabled {
  opacity: 0.2;
  cursor: not-allowed;
}
.testimonials .testimonial {
  height: 100%;
  flex: 1;
  background: #fff;
  padding: 20px;
  min-height: 232px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  flex-shrink: 0;
  align-self: stretch;
  text-align: start;
}
.testimonials .testimonial .icon {
  width: 20px;
  height: 18px;
}
.testimonials .testimonial .text {
  color: rgba(63, 63, 70, 0.8);
  font-family: var(--font-body, Montserrat);
  font-size: var(--text-2xs, 11px);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 150%; /* 16.5px */
}
.testimonials .testimonial .info {
  border-top: 1px solid #dcdcdc;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  padding-top: 20px;
}
.testimonials .testimonial .name {
  color: var(--color-text-headings, #000);
  font-family: "Hurricane";
  font-size: var(--text-xl, 20px);
  font-style: normal;
  font-weight: var(--font-weight-bold, 400);
  line-height: 150%; /* 30px */
  font-weight: 400;
}
.testimonials .testimonial .position {
  color: var(--color-button-primary-hover, #c80d0d);
  font-family: var(--font-body, "Montserrat");
  font-size: var(--text-2xs, 11px);
  font-style: normal;
  line-height: 150%; /* 16.5px */
}
.testimonials .slider__controls {
  display: flex;
  justify-content: center;
  margin-top: 32px;
}
.testimonials .slider__controls:hover {
  cursor: pointer;
}
@media (min-width: 769px) {
  .testimonials .swiper {
    width: 100%;
  }
  .testimonials .arrows {
    left: 0;
    width: 100%;
  }
  .testimonials .slider__controls .--next:before {
    right: 13px;
  }
  .testimonials .slider__controls .--prev:before {
    left: 13px;
  }
}
@media (min-width: 1191px) {
  .testimonials .arrows {
    left: -70px;
    width: calc(100% + 140px);
  }
}

/*------------------------------------*/
/* ACF BLOCK - Change Process */
/*------------------------------------*/
.change-process {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  flex: 1 0 0;
  align-self: stretch;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.change-process .inner > .headline,
.change-process .inner > .subline,
.change-process .inner > .wysiwyg {
  text-align: center;
}
.change-process .sub {
  color: var(--color-text-decent, #a1a1aa);
  /* Überschrift/H2 */
  font-family: var(--font-headings, "Montserrat");
  font-size: calc(22px + 10 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: 600;
  line-height: 150%; /* 48px */
}
@media screen and (max-width: 520px) {
  .change-process .sub {
    font-size: 22px;
  }
}
@media screen and (min-width: 1190px) {
  .change-process .sub {
    font-size: 32px;
  }
}
.change-process h2 {
  font-size: calc(22px + 10 * (100vw - 520px) / 670);
  text-align: center;
}
@media screen and (max-width: 520px) {
  .change-process h2 {
    font-size: 22px;
  }
}
@media screen and (min-width: 1190px) {
  .change-process h2 {
    font-size: 32px;
  }
}
.change-process .inner--small .wysiwyg {
  margin-top: 12px;
}
.change-process .wysiwyg {
  font-family: var(--font-family-body);
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  color: var(--color-text-body-on-dark, #d4d4d8);
  font-style: normal;
  font-weight: var(--font-weight-regular, 500);
  line-height: 170%; /* 27.2px */
  color: var(--color-text-body-on-dark, #d4d4d8);
}
@media screen and (max-width: 520px) {
  .change-process .wysiwyg {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .change-process .wysiwyg {
    font-size: 16px;
  }
}
.change-process .item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-xs, 8px);
  align-self: stretch;
}
.change-process .item .icon {
  width: 20px;
  height: 20px;
}
.change-process .item h4 {
  padding: 0;
}
.change-process.gridrow .inner--small .headline,
.change-process.gridrow .inner--small .wysiwyg {
  text-align: left;
}
@media (min-width: 769px) {
  .change-process .inner--small .sub,
  .change-process .inner--small .headline {
    text-align: center;
  }
  .change-process .inner--small .wysiwyg {
    margin-top: 20px;
    text-align: center;
  }
  .change-process .gridrow {
    margin-top: 64px;
  }
  .change-process .item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-xs, 8px);
    align-self: stretch;
  }
  .change-process .item .icon {
    width: 24px;
    height: 24px;
  }
  .change-process.gridrow .inner--small .headline,
  .change-process.gridrow .inner--small .wysiwyg {
    text-align: center;
  }
}

/*------------------------------------*/
/* ACF BLOCK - CTA */
/*------------------------------------*/
.cta {
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.cta .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
.cta .image-container {
  position: relative;
  width: 100%;
}
.cta .image-container img {
  width: 100%;
  max-height: 320px;
  object-fit: cover;
  aspect-ratio: 340/440;
}
.cta .image-container .cta-container {
  display: flex;
  width: 120px;
  height: 120px;
  padding: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  border-radius: 1000px;
  background: rgba(36, 36, 36, 0.9);
  position: absolute;
  top: -60px;
  right: 34px;
  z-index: 5;
  transition: all 500ms ease-in-out;
}
.cta .image-container .cta-container .button-link {
  flex-direction: column;
  justify-content: center;
  display: flex;
  align-items: center;
  text-align: center;
  color: white;
  font-family: var(--font-headings, "Montserrat");
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 18px */
  width: 90px;
}
@media screen and (max-width: 520px) {
  .cta .image-container .cta-container .button-link {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .cta .image-container .cta-container .button-link {
    font-size: 16px;
  }
}
.cta .image-container .cta-container:hover {
  cursor: pointer;
  width: 140px;
  height: 140px;
}
.cta .text-container {
  width: 100%;
}
.cta .text-container .wysiwyg {
  text-align: center;
}
.cta .text-container p.cta-grp {
  display: flex;
  justify-content: center;
}
@media (min-width: 769px) {
  .cta .inner {
    flex-direction: row;
  }
  .cta .image-container {
    width: calc(50% - 140px);
  }
  .cta .image-container img {
    max-width: 340px;
    max-height: 440px;
  }
  .cta .image-container .cta-container {
    top: -60px;
    right: -60px;
  }
  .cta .text-container {
    width: calc(50% - 0px);
  }
  .cta .text-container .wysiwyg {
    text-align: left;
  }
  .cta .text-container p.cta-grp {
    display: flex;
    justify-content: flex-start;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Text */
/*------------------------------------*/
.text h2 {
  text-align: center;
}
.text .subline h2 {
  color: var(--color-text-decent, #a1a1aa);
  padding: 0;
}

/*------------------------------------*\
	ACF Block: Akkordeon
\*------------------------------------*/
.accordeon {
  width: calc(100% - 60px);
  max-width: 1190px;
  margin: 0 auto;
  position: relative;
  margin-top: var(--font-default-linegap);
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0px;
  flex-direction: column;
  gap: var(--space-md);
}
.accordeon--small {
  max-width: 950px;
}
@media (min-width: 769px) {
  .accordeon {
    width: calc(100% - 150px);
  }
}
@media (min-width: 1301px) {
  .accordeon {
    width: calc(100% - 60px);
  }
}
.accordeon .item {
  align-items: stretch;
  background: var(--surface-box);
}
.accordeon .item .title {
  margin: 0px;
  padding: var(--font-default-linegap) 0px 0px;
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-style: normal;
  font-weight: var(--font-weight-bold, 600);
  line-height: 150%; /* 24px */
  font-size: calc(12px + 4 * (100vw - 520px) / 670);
  margin: 0;
  padding: var(--space-xl) 70px var(--space-xl) var(--space-xl);
  position: relative;
  cursor: pointer;
  transition: all 0.25s ease-in-out;
}
@media screen and (max-width: 520px) {
  .accordeon .item .title {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .accordeon .item .title {
    font-size: 16px;
  }
}
.accordeon .item .title span {
  display: inline-block;
}
.accordeon .item .title:after {
  content: "";
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  aspect-ratio: 1;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 20H27' stroke='black' stroke-width='2'/%3E%3Cpath d='M20 13V27' stroke='black' stroke-width='2'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: all 0.25s ease-in-out;
}
.accordeon .item .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(12px + 2 * (100vw - 520px) / 670);
  font-size: calc(16px + 0 * (100vw - 520px) / 670);
  padding: 0px var(--space-xl) var(--space-xl) var(--space-xl);
  overflow: hidden;
  transition: padding 300ms linear;
}
.accordeon .item .content > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
@media screen and (max-width: 520px) {
  .accordeon .item .content {
    font-size: 12px;
  }
}
@media screen and (min-width: 1190px) {
  .accordeon .item .content {
    font-size: 14px;
  }
}
@media screen and (max-width: 520px) {
  .accordeon .item .content {
    font-size: 16px;
  }
}
@media screen and (min-width: 1190px) {
  .accordeon .item .content {
    font-size: 16px;
  }
}
.accordeon .item.--open .title:after {
  transform: translateY(-50%) rotate(180deg);
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 20H27' stroke='black' stroke-width='2'/%3E%3Cpath d='M27 20L13 20' stroke='black' stroke-width='2'/%3E%3C/svg%3E%0A");
}
.accordeon .item:not(.--open) .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 var(--space-2xl) var(--space-2xl) var(--space-2xl);
  }
}

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

/*------------------------------------*/
/* ACF Block: Hero Banner */
/*------------------------------------*/
.hero-banner {
  position: relative;
  overflow: hidden;
  padding-top: 80px;
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.hero-banner .headline-container {
  z-index: 2;
  position: relative;
  max-width: 947px;
  margin: 0 auto;
  margin-bottom: -20px;
}
.hero-banner .headline-container h1 {
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-size: calc(32px + 48 * (100vw - 520px) / 670);
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 96px */
  text-transform: uppercase;
  padding: 0;
  z-index: 2;
}
@media screen and (max-width: 520px) {
  .hero-banner .headline-container h1 {
    font-size: 32px;
  }
}
@media screen and (min-width: 1190px) {
  .hero-banner .headline-container h1 {
    font-size: 80px;
  }
}
.hero-banner .headline-container h1 strong {
  color: var(--color-text-headings-on-dark, #fff);
  font-family: var(--font-headings, "Montserrat");
  font-size: inherit;
  font-style: normal;
  font-weight: 900 !important;
  line-height: 120%;
  text-transform: uppercase;
}
.hero-banner .video-container {
  position: relative;
}
@media (max-width: 1024px) {
  .hero-banner .video-container {
    height: 244px;
    width: calc(100vw - 30px);
    position: relative;
    left: 50%;
    margin-left: -50vw;
  }
}
.hero-banner .video-container:hover .open-button,
.hero-banner .video-container:hover .sound-button {
  display: flex !important;
}
.hero-banner .video-container .overlay {
  background: linear-gradient(54deg, rgba(0, 0, 0, 0) 7.89%, rgba(0, 0, 0, 0.2) 92.11%);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
.hero-banner .video-container.fullwidth {
  position: fixed;
  inset: 30px;
  z-index: 9999;
  z-index: 10 !important;
  margin-left: 0;
  height: calc(100vh - 50px);
  width: auto;
}
.hero-banner .video-container.fullwidth video {
  border-radius: 10px;
}
.hero-banner .video-container.fullwidth .close-button,
.hero-banner .video-container.fullwidth .sound-button {
  display: flex !important;
}
.hero-banner .video-container.fullwidth .open-button {
  display: none;
}
.hero-banner .video-container.fullwidth:hover .open-button {
  display: none !important;
}
.hero-banner .video-wrapper {
  height: 244px;
  max-width: 360px;
}
.hero-banner .controls-container {
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.hero-banner .close-button,
.hero-banner .sound-button {
  display: none !important;
}
@media (max-width: 1024px) {
  .hero-banner .open-button {
    display: flex;
  }
}
.hero-banner .close-button,
.hero-banner .sound-button,
.hero-banner .open-button {
  border-radius: 10px !important;
  background-color: #fff !important;
  display: flex;
  padding: 10px !important;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 36px;
  height: 36px;
}
.hero-banner .close-button .icon,
.hero-banner .sound-button .icon,
.hero-banner .open-button .icon {
  display: flex;
  justify-content: center;
  align-items: center;
}
.hero-banner .close-button:hover,
.hero-banner .sound-button:hover,
.hero-banner .open-button:hover {
  cursor: pointer;
}
.hero-banner .close-button:focus,
.hero-banner .sound-button:focus,
.hero-banner .open-button: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(0.5px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 49 49 / var(--tw-ring-opacity));
  --tw-ring-offset-width: 1px;
  --tw-ring-offset-color: white;
  --tw-ring-inset: ;
}
.hero-banner video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.hero-banner .text {
  position: relative;
  padding-top: 130px;
}
.hero-banner .text:after {
  content: "";
  background-repeat: no-repeat;
  position: absolute;
  top: 40px;
  right: 40px;
  bottom: 0;
  z-index: 1;
  width: 68px;
  height: 68px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='69' height='69' viewBox='0 0 69 69' fill='none'%3E%3Cpath d='M11.4088 48.7729L60.5065 -0.000106111L68.5725 8.01256L19.4806 56.7856L62.7483 56.7856L62.7483 68.1189L3.8147e-05 68.1189L3.26613e-05 5.78557L11.4088 5.78557L11.4088 48.7729Z' fill='%23FF3131'/%3E%3C/svg%3E");
}
.hero-banner .text .wysiwyg {
  padding-left: 20px;
}
.hero-banner .text .wysiwyg a {
  text-decoration: none;
}
@media (min-width: 1025px) {
  .hero-banner {
    padding-top: 97px;
  }
  .hero-banner .open-button {
    display: none !important;
  }
  .hero-banner .hidden {
    display: none !important;
  }
  .hero-banner .video-container.fullwidth {
    width: auto;
    height: calc(100vh - 50px);
  }
  .hero-banner .controls-container {
    bottom: 40px;
    right: 40px;
  }
  .hero-banner .headline-container {
    text-align: left;
    margin: 0;
    margin-bottom: -30px;
  }
  .hero-banner .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .hero-banner .wrapper .video-wrapper {
    margin-left: calc(50% - 50vw);
    height: 544px;
    max-width: 867px;
    display: flex;
    justify-content: center;
  }
  .hero-banner .wrapper .text {
    padding-top: 0;
    width: calc(40% - 60px);
    padding-bottom: 80px;
  }
  .hero-banner .wrapper .text:after {
    content: "";
    background-repeat: no-repeat;
    position: absolute;
    top: unset;
    bottom: 0;
    right: -25%;
    z-index: 1;
  }
}

/*------------------------------------*/
/* ACF BLOCK - Image Text */
/*------------------------------------*/
.image-text {
  width: calc(100% - 60px);
  max-width: 1190px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-2xl);
  /*------------------------------------*/
  /* SECTION - Responsive */
  /*------------------------------------*/
}
.image-text--small {
  max-width: 950px;
}
@media (min-width: 769px) {
  .image-text {
    width: calc(100% - 150px);
  }
}
@media (min-width: 1301px) {
  .image-text {
    width: calc(100% - 60px);
  }
}
.image-text .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.image-text .text > *:is(h1, h2, h3, h4, h5, h6, p, a, ul):not(.button):first-child {
  margin-top: 0;
  padding-top: 0;
}
.image-text .image {
  position: relative;
  border: 1px solid red;
}
.image-text .image img {
  width: 100%;
  min-height: 200px;
  max-height: 350px;
  object-fit: cover;
  object-position: top;
  height: -webkit-fill-available;
}
@media (min-width: 769px) {
  .image-text {
    flex-direction: row;
    gap: var(--space-4xl);
  }
  .image-text .text,
  .image-text .image {
    flex: auto;
    width: 50%;
  }
  .image-text .text {
    padding: var(--space-3xl) 0;
  }
  .image-text .image img {
    max-height: 700px;
  }
  .image-text.--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 */
