/*!
 * Stadtwerke Zeitz-2022 0.13.1
 * https://www.ifabrik.de/
 *
 * Copyright 2022 i-fabrik GmbH
 *
 * Released on November 24, 2025
 * 
 * Author: i-fabrik GmbH
 * Contributor: Heiko Pfefferkorn <heiko.pfefferkorn@ifabrik.de>
 */
@charset "UTF-8";
/* @docs
label: Core Remedies
version: 0.1.0-beta.2

note: |
  These remedies are recommended
  as a starter for any project.

category: file
*/
/* @docs
label: Box Sizing

note: |
  Use border-box by default, globally.

category: global
*/
*, ::before, ::after {
  box-sizing: border-box;
}

/* @docs
label: Line Sizing

note: |
  Consistent line-spacing,
  even when inline elements have different line-heights.

links:
  - https://drafts.csswg.org/css-inline-3/#line-sizing-property

category: global
*/
html {
  line-sizing: normal;
}

/* @docs
label: Body Margins

note: |
  Remove the tiny space around the edge of the page.

category: global
*/
body {
  margin: 0;
}

/* @docs
label: Heading Sizes

note: |
  Switch to rem units for headings

category: typography
*/
h1 {
  font-size: 2rem;
}

h2 {
  font-size: 1.5rem;
}

h3 {
  font-size: 1.17rem;
}

h4 {
  font-size: 1rem;
}

h5 {
  font-size: 0.83rem;
}

h6 {
  font-size: 0.67rem;
}

/* @docs
label: H1 Margins

note: |
  Keep h1 margins consistent, even when nested.

category: typography
*/
h1 {
  margin: 0.67em 0;
}

/* @docs
label: Pre Wrapping

note: |
  Overflow by default is bad...

category: typography
*/
pre {
  white-space: pre-wrap;
}

/* @docs
label: Horizontal Rule

note: |
  1. Solid, thin horizontal rules
  2. Remove Firefox `color: gray`
  3. Remove default `1px` height, and common `overflow: hidden`

category: typography
*/
hr {
  border-style: solid;
  border-width: 1px 0 0;
  color: inherit;
  height: 0;
  overflow: visible;
}

/* @docs
label: Responsive Embeds

note: |
  1. Block display is usually what we want
  2. Remove strange space-below when inline
  3. Responsive by default

category: embedded elements
*/
img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  vertical-align: middle;
  max-width: 100%;
}

/* @docs
label: Aspect Ratios

note: |
  Maintain intrinsic aspect ratios when `max-width` is applied.
  `iframe`, `embed`, and `object` are also embedded,
  but have no intrinsic ratio,
  so their `height` needs to be set explicitly.

category: embedded elements
*/
img, svg, video, canvas {
  height: auto;
}

/* @docs
label: Audio Width

note: |
  There is no good reason elements default to 300px,
  and audio files are unlikely to come with a width attribute.

category: embedded elements
*/
audio {
  width: 100%;
}

/* @docs
label: Image Borders

note: |
  Remove the border on images inside links in IE 10 and earlier.

category: legacy browsers
*/
img {
  border-style: none;
}

/* @docs
label: SVG Overflow

note: |
  Hide the overflow in IE 10 and earlier.

category: legacy browsers
*/
svg {
  overflow: hidden;
}

/* @docs
label: HTML5 Elements

note: |
  Default block display on HTML5 elements

category: legacy browsers
*/
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

/* @docs
label: Checkbox & Radio Inputs

note: |
  1. Add the correct box sizing in IE 10
  2. Remove the padding in IE 10

category: legacy browsers
*/
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
.row {
  --bs-gutter-x: var(--wp-grid-gap-x);
  --bs-gutter-y: var(--wp-grid-gap-y);
}
.row:not(:last-child) {
  margin-bottom: var(--bs-gutter-y);
}

.modal-backdrop {
  --bs-backdrop-bg: var(--wp-backdrop-color);
  --bs-backdrop-opacity: var(--wp-backdrop-opacity);
  -webkit-backdrop-filter: var(--wp-backdrop-filter);
          backdrop-filter: var(--wp-backdrop-filter);
}

.sc-cookie {
  --sccookie-border-radius: var(--wp-border-radius);
  --sccookie-font-size: var(--wp-font-size-s);
  --sccookie-box-shadow: 0;
  --sccookie-color-ui: var(--wp-color-primary);
  --sccookie-duration-multiplier: var(--global-duration-multiplier);
  --sccookie-color-black-h: var(--wp-color-black-h);
  --sccookie-color-black-s: var(--wp-color-black-s);
  --sccookie-color-black-l: var(--wp-color-black-l);
  --sccookie-color-error-h: var(--wp-color-danger-h);
  --sccookie-color-error-s: var(--wp-color-danger-s);
  --sccookie-color-error-l: var(--wp-color-danger-l);
  --sccookie-color-primary-h: var(--wp-color-primary-h);
  --sccookie-color-primary-s: var(--wp-color-primary-s);
  --sccookie-color-primary-l: var(--wp-color-primary-l);
  --sccookie-color-success-h: var(--wp-color-success-h);
  --sccookie-color-success-s: var(--wp-color-success-s);
  --sccookie-color-success-l: var(--wp-color-success-l);
  --sccookie-category-background-color: transparent !important;
  --sccookie-focus-ring-alpha: 0;
  --sccookie-focus-ring-width: 0px; /* stylelint-disable-line length-zero-no-unit */
}
.sc-cookie-button {
  --sccookie-button-background-color: var(--ifabsh-input-background-color);
  --sccookie-button-color: var(--wp-color-text);
}
.sc-cookie-button.-edit, .sc-cookie-button.-essential, .sc-cookie-button.-save {
  --sccookie-button-border-color: var(--wp-color-primary);
  --sccookie-button-font-size: var(--wp-body-font-size);
}
.sc-cookie-button.-edit:focus:not([disabled]), .sc-cookie-button.-edit:hover:not([disabled]), .sc-cookie-button.-essential:focus:not([disabled]), .sc-cookie-button.-essential:hover:not([disabled]), .sc-cookie-button.-save:focus:not([disabled]), .sc-cookie-button.-save:hover:not([disabled]) {
  --sccookie-button-color: var(--wp-color-white);
}
.sc-cookie-button:not(.sc-cookie-category__trigger) {
  --sccookie-button-border-color: var(--wp-color-primary);
  --sccookie-button-border-width: var(--ifabsh-input-border-width);
  --sccookie-button-height: 52px;
  --sccookie-button-font-size: var(--wp-body-font-size);
  --sccookie-button-text-transform: uppercase;
}
.sc-cookie-button:not(.sc-cookie-category__trigger):focus:not([disabled]), .sc-cookie-button:not(.sc-cookie-category__trigger):hover:not([disabled]) {
  --_scc-bc: var(--wp-color-white);
  --sccookie-button-background-color: var(--wp-color-primary);
  --sccookie-button-border-color: var(--wp-color-primary);
  --sccookie-button-color: var(--wp-color-white);
}
.sc-cookie-category {
  --sccookie-category-background-color-event: transparent;
}
.sc-cookie__controls {
  display: grid;
  grid-gap: var(--sccookie-spacing);
}
.sc-cookie__footer {
  --sccookie-footer-background-color: var(--sccookie-color-white);
  --sccookie-footer-color: var(--sccookie-color-black);
}
.sc-cookie-banner {
  border: 1px solid var(--ifabsh-color-border);
}
.sc-cookie-banner .sc-cookie-btn.-accept {
  margin-bottom: 0;
}
.sc-cookie-preferences {
  border: 1px solid var(--ifabsh-color-border);
}
.sc-cookie-preferences .sc-cookie-btn.-close {
  background-color: transparent;
  border: 0 none;
  padding: var(--wp-spacing-s);
  right: var(--sccookie-scrollbar-size);
  top: var(--sccookie-scrollbar-size);
  width: auto;
}

button.sc-cookie-trigger {
  --sccookie-position-offset: var(--wp-spacing-s);
  --sccookie-trigger-color: var(--wp-color-text);
  --sccookie-trigger-color-hover: var(--wp-color-secondary) !important;
  --sccookie-trigger-color-event: var(--wp-color-secondary) !important;
  background: var(--wp-color-white);
  border-radius: 50%;
  padding: 2px;
}
.fancybox-custom {
  --wp-fancybox-backdrop-color: var(--wp-backdrop-color);
  --wp-fancybox-backdrop-opacity: var(--wp-backdrop-opacity);
  --wp-fancybox-toolbar-button-size: 1.5em;
  --wp-fancybox-toolbar-padding-x: var(--wp-spacing-s);
  --wp-fancybox-toolbar-padding-y: var(--wp-spacing-s);
  --wp-fancybox-caption-max-width: var(--wp-page-max-width);
  --wp-fancybox-caption-offset-top: var(--wp-spacing);
  -webkit-backdrop-filter: var(--wp-backdrop-filter);
          backdrop-filter: var(--wp-backdrop-filter);
  color: var(--wp-color-black);
}

.fancybox-custom.fancybox__container {
  --carousel-button-height: var(--wp-fancybox-toolbar-button-size);
  --carousel-button-width: var(--wp-fancybox-toolbar-button-size);
  --carousel-button-svg-width: 80%;
  --carousel-button-svg-height: 80%;
  --carousel-button-svg-stroke-width: 2;
  --carousel-button-svg-filter: none;
}
body:not(.is-using-mouse) .fancybox-custom.fancybox__container :focus {
  box-shadow: none;
}

.fancybox-custom .fancybox__backdrop {
  animation-name: none !important; /* stylelint-disable-line declaration-no-important */
  background-color: var(--wp-fancybox-backdrop-color);
  opacity: 0;
  transition: opacity 0.35s ease-in-out;
}
.fancybox-custom.is-animated .fancybox__backdrop {
  opacity: var(--wp-fancybox-backdrop-opacity);
}

.fancybox-custom .fancybox__caption {
  max-width: var(--wp-fancybox-caption-max-width);
  padding-top: var(--wp-fancybox-caption-offset-top);
  transition: opacity 0.35s ease-in-out;
}
.fancybox-custom .fancybox__caption > * {
  display: inline;
  margin: 0;
}
.fancybox-custom .fancybox__caption > * + *::before {
  content: " "; /* stylelint-disable-line string-quotes */
}

.fancybox-custom .carousel__button {
  --carousel-button-shadow: none;
  font-size: 1rem;
}
.fancybox-custom .carousel__button:focus {
  outline: var(--wp-focus-outline-width) var(--wp-focus-outline-style) var(--wp-focus-outline-color);
  outline-offset: var(--wp-focus-outline-offset);
}

.fancybox-custom .fancybox__toolbar {
  --carousel-button-svg-width: 80%;
  --carousel-button-svg-height: 80%;
  background: none;
  padding: var(--wp-fancybox-toolbar-padding-y) var(--wp-fancybox-toolbar-padding-x);
  text-shadow: none;
}
.fancybox-custom .fancybox__toolbar .fancybox__button--zoom, .fancybox-custom .fancybox__toolbar .fancybox__button--fullscreen, .fancybox-custom .fancybox__toolbar .fancybox__button--slideshow {
  display: none;
}

.fancybox-custom .fancybox__slide {
  padding: calc(var(--wp-fancybox-toolbar-padding-x) * 2 + var(--wp-fancybox-toolbar-button-size)) var(--wp-spacing) var(--wp-spacing);
}

/**
 * Calculator Widget
 */
.calculator .container {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}

[data-api-id=calculatorWidget] .container {
  max-width: none;
  padding: 0 !important;
  width: 100% !important;
}
[data-api-id=calculatorWidget] .row.content-calculator {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  color: var(--wp-color-text);
  margin: 0 !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .innerContainer {
  padding: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav {
  display: flex !important;
  font-size: var(--wp-font-size-s);
  font-weight: var(--wp-font-weight-normal);
  gap: 0;
  z-index: 2;
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li {
  background: transparent !important;
  flex-basis: 50%;
  height: 70px;
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a {
  background: #f1f1f1 !important;
  padding: var(--wp-spacing) var(--wp-spacing-l);
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a.active {
  background: var(--wp-color-white) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a.active:hover, [data-api-id=calculatorWidget] .row.content-calculator ul.nav li a.active:active, [data-api-id=calculatorWidget] .row.content-calculator ul.nav li a.active:focus {
  color: var(--wp-color-text);
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a.active span.title {
  color: var(--wp-color-text);
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a.active svg > * {
  fill: var(--wp-color-primary);
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a span.title {
  color: #828282;
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a svg > * {
  fill: #828282;
}
[data-api-id=calculatorWidget] .row.content-calculator ul.nav li a i {
  height: 2.5em;
  margin-right: var(--wp-spacing);
  padding: 0;
  width: 2.5em;
}
@media (max-width: 575px) {
  [data-api-id=calculatorWidget] .row.content-calculator ul.nav li a i {
    height: 2em;
    width: 2em;
  }
}
@media (max-width: 991px) {
  [data-api-id=calculatorWidget] .row.content-calculator ul.nav li {
    display: block;
    position: relative;
    width: 50%;
    top: auto !important;
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content {
  background-color: var(--wp-color-white);
  padding: var(--wp-spacing-s) var(--wp-spacing-l) var(--wp-spacing-l) var(--wp-spacing-l);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content form {
  margin-bottom: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .title,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentLeft {
  display: none;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentLeft ~ .calContentRight {
  flex-basis: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentLeft ~ .calContentRight .numberOfPersons,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentLeft ~ .calContentRight .flatSizes {
  margin-bottom: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentLeft ~ .calContentRight .inputField {
  flex-basis: 31%;
}
@media (max-width: 991px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentLeft ~ .calContentRight {
    padding: 0;
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentRight > * {
  margin-bottom: 0;
  margin-top: var(--wp-spacing);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent > .calContentRight > *:first-child {
  margin-top: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent #postcode-current,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes {
  margin-top: var(--wp-spacing-l) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes {
  flex-basis: 100%;
  margin-bottom: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .desc p,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .desc p {
  color: var(--wp-color-text);
  font-size: var(--wp-font-size-s);
  font-weight: 400;
  margin-bottom: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize {
  background: transparent;
  border: 2px solid var(--wp-color-primary);
  color: var(--wp-color-primary);
  margin-bottom: 0;
  margin-top: var(--wp-spacing-s);
  position: relative;
  padding-top: 4em;
  font-size: var(--wp-font-size-s);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons > [class^=icon-],
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize > [class^=icon-],
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons > [class^=icon-],
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize > [class^=icon-] {
  height: auto;
  left: 50%;
  margin: 0;
  position: absolute;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons > [class^=icon-] svg,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize > [class^=icon-] svg,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons > [class^=icon-] svg,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize > [class^=icon-] svg {
  width: 100%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize svg path {
  fill: var(--wp-color-primary) !important;
  stroke: var(--wp-color-primary) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons:hover,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize:hover,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons:hover,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize:hover {
  background: var(--wp-color-primary);
  border: 2px solid var(--wp-color-white);
  color: var(--wp-color-white);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons:hover svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize:hover svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons:hover svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize:hover svg path {
  fill: var(--wp-color-white) !important;
  stroke: var(--wp-color-white) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons.active,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize.active,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons.active,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize.active {
  background: var(--wp-color-secondary);
  border: 2px solid var(--wp-color-white);
  color: var(--wp-color-white);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons.active svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .flatsize.active svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons.active svg path,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize.active svg path {
  fill: var(--wp-color-white) !important;
  stroke: var(--wp-color-white) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons .icon-persons,
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .persons .icon-persons {
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 65%;
}
@media (max-width: 991px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons,
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes {
    display: flex;
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons .icon-persons {
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: 65%;
}
@media (max-width: 767px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .numberOfPersons .persons .icon-persons {
    width: 86%;
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize .sqm {
  display: block;
  left: 0;
  padding-top: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  font-size: var(--wp-font-size-s);
  font-weight: var(--wp-font-weight-normal);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize .icon-house {
  bottom: var(--wp-spacing-s);
  transform: translateX(-50%);
  width: 26%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize .icon-house > svg {
  display: none !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize .icon-house::after {
  content: "\f015";
  display: block;
  font-family: "Font Awesome 6 Pro";
  font-size: var(--wp-font-size-l);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="30"] .icon-house {
  width: 12%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="50"] .icon-house {
  width: 15%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="100"] .icon-house {
  width: 18%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="150"] .icon-house {
  width: 21%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="180"] .icon-house {
  width: 24%;
}
@media (max-width: 991px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="30"] .icon-house {
    width: 24%;
  }
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="50"] .icon-house {
    width: 30%;
  }
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="100"] .icon-house {
    width: 36%;
  }
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="150"] .icon-house {
    width: 42%;
  }
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize[data-size="180"] .icon-house {
    width: 48%;
  }
}
@media (max-width: 991px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .flatSizes .flatsize .sqm {
    font-size: var(--wp-font-size-s);
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent #postcode-gas {
  order: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField, [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button {
  flex-basis: 100%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button {
  flex-basis: 100%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button label {
  padding-top: 0 !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button label .labelTxt {
  display: none;
}
@media (min-width: 576px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField {
    flex-basis: 48.5%;
  }
}
@media (min-width: 768px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField, [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button {
    flex-basis: 31%;
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField input.postcode {
  padding: 5px 18px;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button {
  --ifabsh-button-border-background-color: var(--wp-color-secondary);
  --ifabsh-button-border-color: var(--ifabsh-button-border-background);
  align-self: end;
  background: var(--ifabsh-button-border-background-color);
  color: var(--wp-color-white) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button:hover {
  --ifabsh-button-border-background-color: var(--wp-color-primary);
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button > label {
  padding-top: 0 !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.button > label > input {
  border: none !important;
  color: inherit !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.unit {
  margin-top: var(--wp-spacing-l) !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.unit .consumption {
  width: 70%;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.unit .unit {
  font-size: var(--wp-font-size-s);
  padding-left: 5px;
  padding-right: 18px;
  text-align: right;
  width: 30%;
}
@media (max-width: 1199px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.unit .consumption {
    width: 65%;
  }
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField.unit .unit {
    width: 35%;
  }
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField label {
  position: relative;
  padding-top: 1.5rem;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField label .labelTxt {
  color: var(--wp-color-text);
  flex-basis: 100%;
  font-size: 16px;
  font-weight: 500;
  left: 0;
  line-height: 1.25;
  margin-bottom: 0;
  position: absolute;
  right: 0;
  top: 0;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField input {
  background: transparent !important;
  border: 2px solid #828282 !important;
  height: 52px;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField input.consumption {
  border-right: none !important;
}
[data-api-id=calculatorWidget] .row.content-calculator .tab-content .tab-pane .calculatorContent .inputField input.unit {
  border-left: none !important;
}
@media (max-width: 767px) {
  [data-api-id=calculatorWidget] .row.content-calculator .tab-content {
    margin-top: 0;
  }
}

/**
 * Calculator Result
 */
/**
 * Calculator Order Formular
 */
@font-face {
  font-weight: 400;
  font-display: swap;
  font-family: Merriweather Sans; /* stylelint-disable-line string-quotes */
  src: url('../default/media/fonts/merriweather-sans/merriweather-sans-regular.woff2') format('woff2'), url('../default/media/fonts/merriweather-sans/merriweather-sans-regular.woff') format('woff');
}
@font-face {
  font-weight: 300;
  font-display: swap;
  font-family: Merriweather Sans; /* stylelint-disable-line string-quotes */
  src: url('../default/media/fonts/merriweather-sans/merriweather-sans-light.woff2') format('woff2'), url('../default/media/fonts/merriweather-sans/merriweather-sans-light.woff') format('woff');
}
@font-face {
  font-weight: 700;
  font-display: swap;
  font-family: Merriweather Sans; /* stylelint-disable-line string-quotes */
  src: url('../default/media/fonts/merriweather-sans/merriweather-sans-bold.woff2') format('woff2'), url('../default/media/fonts/merriweather-sans/merriweather-sans-bold.woff') format('woff');
}
:root {
  --global-rootvar-prefix: wp-;
  --global-duration-multiplier: 1;
  --global-scroll-top-offset: 0px; /* stylelint-disable-line length-zero-no-unit */
  --wp-color-black-h: 0;
  --wp-color-black-s: 0%;
  --wp-color-black-l: 0%;
  --wp-color-black: hsl(var(--wp-color-black-h), var(--wp-color-black-s), var(--wp-color-black-l));
  --wp-color-black-lighten-h: var(--wp-color-black-h);
  --wp-color-black-lighten-s: var(--wp-color-black-s);
  --wp-color-black-lighten-l: 97%;
  --wp-color-black-lighten: hsl(var(--wp-color-black-lighten-h), var(--wp-color-black-lighten-s), var(--wp-color-black-lighten-l));
  --wp-color-black-contrast-h: 0;
  --wp-color-black-contrast-s: 0%;
  --wp-color-black-contrast-l: 100%;
  --wp-color-black-contrast: hsl(var(--wp-color-black-contrast-h), var(--wp-color-black-contrast-s), var(--wp-color-black-contrast-l));
  --wp-color-white-h: 0;
  --wp-color-white-s: 0%;
  --wp-color-white-l: 100%;
  --wp-color-white: hsl(var(--wp-color-white-h), var(--wp-color-white-s), var(--wp-color-white-l));
  --wp-color-white-contrast-h: 0;
  --wp-color-white-contrast-s: 0%;
  --wp-color-white-contrast-l: 0%;
  --wp-color-white-contrast: hsl(var(--wp-color-white-contrast-h), var(--wp-color-white-contrast-s), var(--wp-color-white-contrast-l));
  --wp-color-text-h: 0;
  --wp-color-text-s: 0%;
  --wp-color-text-l: 8%;
  --wp-color-text: hsl(var(--wp-color-text-h), var(--wp-color-text-s), var(--wp-color-text-l));
  --wp-color-primary-h: 209;
  --wp-color-primary-s: 86%;
  --wp-color-primary-l: 37%;
  --wp-color-primary: hsl(var(--wp-color-primary-h), var(--wp-color-primary-s), var(--wp-color-primary-l));
  --wp-color-primary-contrast-h: 0;
  --wp-color-primary-contrast-s: 0%;
  --wp-color-primary-contrast-l: 100%;
  --wp-color-primary-contrast: hsl(var(--wp-color-primary-contrast-h), var(--wp-color-primary-contrast-s), var(--wp-color-primary-contrast-l));
  --wp-color-primary-light-h: 204;
  --wp-color-primary-light-s: 100%;
  --wp-color-primary-light-l: 92%;
  --wp-color-primary-light: hsl(var(--wp-color-primary-light-h), var(--wp-color-primary-light-s), var(--wp-color-primary-light-l));
  --wp-color-primary-light-contrast-h: 0;
  --wp-color-primary-light-contrast-s: 0%;
  --wp-color-primary-light-contrast-l: 0%;
  --wp-color-primary-light-contrast: hsl(var(--wp-color-primary-light-contrast-h), var(--wp-color-primary-light-contrast-s), var(--wp-color-primary-light-contrast-l));
  --wp-color-grey-h: 208;
  --wp-color-grey-s: 45%;
  --wp-color-grey-l: 94%;
  --wp-color-grey: hsl(var(--wp-color-grey-h), var(--wp-color-grey-s), var(--wp-color-grey-l));
  --wp-color-grey-contrast-h: 0;
  --wp-color-grey-contrast-s: 0%;
  --wp-color-grey-contrast-l: 0%;
  --wp-color-grey-contrast: hsl(var(--wp-color-grey-contrast-h), var(--wp-color-grey-contrast-s), var(--wp-color-grey-contrast-l));
  --wp-color-grey-dark-h: 0;
  --wp-color-grey-dark-s: 0%;
  --wp-color-grey-dark-l: 85%;
  --wp-color-grey-dark: hsl(var(--wp-color-grey-dark-h), var(--wp-color-grey-dark-s), var(--wp-color-grey-dark-l));
  --wp-color-grey-dark-contrast-h: 0;
  --wp-color-grey-dark-contrast-s: 0%;
  --wp-color-grey-dark-contrast-l: 0%;
  --wp-color-grey-dark-contrast: hsl(var(--wp-color-grey-dark-contrast-h), var(--wp-color-grey-dark-contrast-s), var(--wp-color-grey-dark-contrast-l));
  --wp-color-grey-darker-h: 0;
  --wp-color-grey-darker-s: 0%;
  --wp-color-grey-darker-l: 7%;
  --wp-color-grey-darker: hsl(var(--wp-color-grey-darker-h), var(--wp-color-grey-darker-s), var(--wp-color-grey-darker-l));
  --wp-color-grey-darker-contrast-h: 0;
  --wp-color-grey-darker-contrast-s: 0%;
  --wp-color-grey-darker-contrast-l: 100%;
  --wp-color-grey-darker-contrast: hsl(var(--wp-color-grey-darker-contrast-h), var(--wp-color-grey-darker-contrast-s), var(--wp-color-grey-darker-contrast-l));
  --wp-color-secondary-h: 166;
  --wp-color-secondary-s: 89%;
  --wp-color-secondary-l: 26%;
  --wp-color-secondary: hsl(var(--wp-color-secondary-h), var(--wp-color-secondary-s), var(--wp-color-secondary-l));
  --wp-color-secondary-contrast-h: 0;
  --wp-color-secondary-contrast-s: 0%;
  --wp-color-secondary-contrast-l: 100%;
  --wp-color-secondary-contrast: hsl(var(--wp-color-secondary-contrast-h), var(--wp-color-secondary-contrast-s), var(--wp-color-secondary-contrast-l));
  --wp-color-secondary-light-h: 150;
  --wp-color-secondary-light-s: 35%;
  --wp-color-secondary-light-l: 92%;
  --wp-color-secondary-light: hsl(var(--wp-color-secondary-light-h), var(--wp-color-secondary-light-s), var(--wp-color-secondary-light-l));
  --wp-color-secondary-light-contrast-h: 0;
  --wp-color-secondary-light-contrast-s: 0%;
  --wp-color-secondary-light-contrast-l: 0%;
  --wp-color-secondary-light-contrast: hsl(var(--wp-color-secondary-light-contrast-h), var(--wp-color-secondary-light-contrast-s), var(--wp-color-secondary-light-contrast-l));
  --wp-color-danger-h: 355;
  --wp-color-danger-s: 96%;
  --wp-color-danger-l: 61%;
  --wp-color-danger: hsl(var(--wp-color-danger-h), var(--wp-color-danger-s), var(--wp-color-danger-l));
  --wp-color-danger-contrast-h: 0;
  --wp-color-danger-contrast-s: 0%;
  --wp-color-danger-contrast-l: 100%;
  --wp-color-danger-contrast: hsl(var(--wp-color-danger-contrast-h), var(--wp-color-danger-contrast-s), var(--wp-color-danger-contrast-l));
  --wp-color-success-h: 158;
  --wp-color-success-s: 80%;
  --wp-color-success-l: 42%;
  --wp-color-success: hsl(var(--wp-color-success-h), var(--wp-color-success-s), var(--wp-color-success-l));
  --wp-color-success-contrast-h: 0;
  --wp-color-success-contrast-s: 0%;
  --wp-color-success-contrast-l: 100%;
  --wp-color-success-contrast: hsl(var(--wp-color-success-contrast-h), var(--wp-color-success-contrast-s), var(--wp-color-success-contrast-l));
  --wp-color-warning-h: 37;
  --wp-color-warning-s: 98%;
  --wp-color-warning-l: 53%;
  --wp-color-warning: hsl(var(--wp-color-warning-h), var(--wp-color-warning-s), var(--wp-color-warning-l));
  --wp-color-warning-contrast-h: 0;
  --wp-color-warning-contrast-s: 0%;
  --wp-color-warning-contrast-l: 0%;
  --wp-color-warning-contrast: hsl(var(--wp-color-warning-contrast-h), var(--wp-color-warning-contrast-s), var(--wp-color-warning-contrast-l));
  --wp-color-info-h: 189;
  --wp-color-info-s: 64%;
  --wp-color-info-l: 49%;
  --wp-color-info: hsl(var(--wp-color-info-h), var(--wp-color-info-s), var(--wp-color-info-l));
  --wp-color-info-contrast-h: 0;
  --wp-color-info-contrast-s: 0%;
  --wp-color-info-contrast-l: 0%;
  --wp-color-info-contrast: hsl(var(--wp-color-info-contrast-h), var(--wp-color-info-contrast-s), var(--wp-color-info-contrast-l));
  --wp-font-family-sans: 'Merriweather Sans', Arial, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
  --wp-font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
  --wp-root-font-size: 16px;
  --wp-font-size-xs: calc(var(--wp-root-font-size) - 4px);
  --wp-font-size-s: calc(var(--wp-root-font-size) - 2px);
  --wp-font-size-l: calc(var(--wp-root-font-size) + 2px);
  --wp-h1-font-size: calc(var(--wp-root-font-size) + 27px);
  --wp-h2-font-size: calc(var(--wp-root-font-size) + 18px);
  --wp-h3-font-size: calc(var(--wp-root-font-size) + 12px);
  --wp-h4-font-size: calc(var(--wp-root-font-size) + 7px);
  --wp-h5-font-size: calc(var(--wp-root-font-size) + 2px);
  --wp-font-weight-light: 300;
  --wp-font-weight-normal: 400;
  --wp-font-weight-bold: 700;
  --wp-spacing: 16px;
  --wp-grid-gap-x: var(--wp-spacing);
  --wp-grid-gap-y: var(--wp-spacing);
  --wp-spacing-xxs: calc(16px / 8);
  --wp-spacing-xs: calc(16px / 4);
  --wp-spacing-s: calc(16px / 2);
  --wp-spacing-l: calc(16px * 2);
  --wp-spacing-xl: calc(16px * 4);
  --wp-spacing-xxl: calc(16px * 8);
  --wp-breakpoint-xs: 0;
  --wp-breakpoint-s: 576px;
  --wp-breakpoint-m: 768px;
  --wp-breakpoint-l: 992px;
  --wp-breakpoint-xl: 1200px;
  --wp-breakpoint-xxl: 1400px;
  --wp-breakpoint-xxxl: 1600px;
  --wp-zindex-page-header: 20;
  --wp-zindex-page-search: 15;
  --wp-zindex-page-scroll-top: 50;
  --wp-zindex-page-menu: 100;
  --wp-zindex-page-footer: 10;
  --wp-zindex-page-loader: 9000;
  --wp-zindex-scroll-progress: 90;
  --wp-body-background-color: var(--wp-color-white);
  --wp-body-color: var(--wp-color-text);
  --wp-body-font-family: var(--wp-font-family-sans);
  --wp-body-font-size: 1rem;
  --wp-body-font-weight: 300;
  --wp-body-line-height: 1.75;
  --wp-page-max-width: 1350px;
  --wp-page-padding-x: calc(var(--wp-spacing) + var(--wp-spacing-xs));
  --wp-page-offset: 1rem;
  --wp-content-element-margin: var(--wp-spacing-l);
  --wp-block-element-margin: var(--wp-spacing-l);
  --wp-paragraph-margin: var(--wp-spacing);
  --wp-link-color: currentColor;
  --wp-link-color-hover: var(--wp-color-primary);
  --wp-selection-background-color: var(--wp-color-secondary);
  --wp-selection-color: var(--wp-color-secondary-contrast);
  --wp-backdrop-color-h: var(--wp-color-white-h);
  --wp-backdrop-color-s: var(--wp-color-white-s);
  --wp-backdrop-color-l: var(--wp-color-white-l);
  --wp-backdrop-color: hsl(var(--wp-color-white-h), var(--wp-color-white-s), var(--wp-color-white-l));
  --wp-backdrop-filter: none;
  --wp-backdrop-opacity: 0.75;
  --wp-focus-ring-h: var(--wp-color-secondary-h);
  --wp-focus-ring-s: var(--wp-color-secondary-s);
  --wp-focus-ring-l: var(--wp-color-secondary-l);
  --wp-focus-ring-alpha: 0.25;
  --wp-focus-ring-width: 3px;
  --wp-focus-ring-box-shadow: 0 0 0 var(--wp-focus-ring-width) hsla(var(--wp-focus-ring-h), var(--wp-focus-ring-s), var(--wp-focus-ring-l), var(--wp-focus-ring-alpha));
  --wp-focus-ring-box-shadow-inset: inset 0 0 0 var(--wp-focus-ring-width) hsla(var(--wp-focus-ring-h), var(--wp-focus-ring-s), var(--wp-focus-ring-l), var(--wp-focus-ring-alpha));
  --wp-focus-outline-color: currentColor;
  --wp-focus-outline-offset: 2px;
  --wp-focus-outline-style: dotted;
  --wp-focus-outline-width: 1px;
  --wp-ratio-16x9: calc(9 / 16 * 100%);
  --wp-ratio-4x3: calc(3 / 4 * 100%);
  --wp-ratio-3x4: calc(4 / 3 * 100%);
  --wp-ratio-3x2: calc(2 / 3 * 100%);
  --wp-ratio-2x3: calc(3 / 2 * 100%);
  --wp-ratio-1x1: calc(1 / 1 * 100%);
  --wp-border-radius: 0;
  --wp-border-width: 2px;
  --wp-border-radius-xs: 2px;
  --wp-border-radius-s: 4px;
  --wp-border-radius-m: 8px;
  --wp-border-radius-l: 16px;
  --wp-transition: 0.2s;
  --wp-transition-average: calc(var(--global-duration-multiplier, 1) * 0.25s);
  --wp-transition-complex: calc(var(--global-duration-multiplier, 1) * 0.5s);
  --wp-transition-check: calc(var(--global-duration-multiplier, 1) * 0.15s);
  --wp-transition-expand: calc(var(--global-duration-multiplier, 1) * 0.3s);
  --wp-transition-collape: calc(var(--global-duration-multiplier, 1) * 0.25s);
  --wp-transition-open: calc(var(--global-duration-multiplier, 1) * 0.25s);
  --wp-transition-close: calc(var(--global-duration-multiplier, 1) * 0.2s);
  --wp-scrollbar-size: 6px;
  --wp-scrollbar-color: var(--wp-color-black);
  --wp-scrollbar-track-color: var(--wp-color-white);
  --wp-datetime-separator: ', ';
}

@media (min-width: 768px) {
  :root {
    --wp-page-padding-x: calc(var(--wp-spacing-l) + var(--wp-spacing-s));
    --wp-page-offset: 2rem;
  }
}
@media (min-width: 992px) {
  :root {
    --wp-root-font-size: 18px;
    --wp-grid-gap-x: var(--wp-spacing-l);
    --wp-grid-gap-y: var(--wp-spacing-l);
    --wp-content-element-margin: var(--wp-spacing-xl);
    --wp-block-element-margin: calc(var(--wp-spacing-xl) - var(--wp-spacing-s));
  }
}
@media (prefers-reduced-motion: reduce) {
  :root {
    --global-duration-multiplier: 0.0; /* stylelint-disable-line number-no-trailing-zeros */
  }
}
:root {
  font-size: var(--wp-root-font-size);
}
@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

html {
  background-color: var(--wp-body-background-color);
  box-sizing: border-box;
  min-height: 100%;
  scroll-behavior: smooth;
  -webkit-scroll-snap-type: y mandatory;
          scroll-snap-type: y mandatory;
}
html.browser-not-supported {
  background-color: #fff !important; /* stylelint-disable-line declaration-no-important */
}
html.browser-not-supported .browser-not-supported__info {
  background-color: #000;
  color: #fff;
  display: block;
  left: 50%;
  max-width: 32rem;
  padding: 16px 32px;
  position: fixed;
  text-align: center;
  top: 1rem;
  transform: translateX(-50%);
  width: 90%;
}

body {
  background-color: transparent;
  color: var(--wp-body-color);
  font-family: var(--wp-body-font-family);
  font-size: var(--wp-body-font-size);
  font-style: normal;
  font-variant: normal;
  font-weight: var(--wp-body-font-weight);
  line-height: var(--wp-body-line-height);
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
}
body::-webkit-scrollbar {
  height: var(--wp-scrollbar-size, 6px);
  width: var(--wp-scrollbar-size, 6px);
}
body::-webkit-scrollbar-thumb {
  background: var(--wp-scrollbar-color, #000);
}
body::-webkit-scrollbar-track {
  background: var(--wp-scrollbar-track-color, #fff);
}
body {
  scrollbar-face-color: var(--wp-scrollbar-color, #000);
  scrollbar-track-color: var(--wp-scrollbar-track-color, #fff);
}
.page-complete body {
  overflow-y: auto;
  pointer-events: all;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

::-moz-selection {
  background-color: var(--wp-selection-background-color);
  color: var(--wp-selection-color);
}

::selection {
  background-color: var(--wp-selection-background-color);
  color: var(--wp-selection-color);
}

svg:not(:root) {
  overflow: hidden;
}

:focus-visible {
  outline: var(--wp-focus-outline-width) var(--wp-focus-outline-style) var(--focus-outline-color, var(--wp-focus-outline-color));
  outline-offset: var(--wp-focus-outline-offset);
}

/* stylelint-disable string-quotes */
a:focus,
button:focus,
[type=submit]:focus,
[type=button]:focus {
  box-shadow: none;
  outline: none;
}
a._focus-visible:focus, a.focus-visible:focus, a:focus-visible:focus,
button._focus-visible:focus,
button.focus-visible:focus,
button:focus-visible:focus,
[type=submit]._focus-visible:focus,
[type=submit].focus-visible:focus,
[type=submit]:focus-visible:focus,
[type=button]._focus-visible:focus,
[type=button].focus-visible:focus,
[type=button]:focus-visible:focus {
  outline: var(--wp-focus-outline-width) var(--wp-focus-outline-style) var(--focus-outline-color, var(--wp-focus-outline-color));
  outline-offset: var(--wp-focus-outline-offset);
}

/* stylelint-enable string-quotes */
:-webkit-any-link {
  --wp-link-color: currentColor;
  --wp-link-color-hover: var(--wp-link-color);
  --wp-link-icon-color: var(--wp-link-color);
  --wp-link-icon-color-hover: var(--wp-link-color-hover);
  --wp-focus-outline-color: currentColor;
  --dnm-link-color: var(--wp-link-color);
  --dnm-link-icon-color: var(--wp-link-icon-color);
  --dnm-link-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition));
  color: var(--dnm-link-color) !important; /* stylelint-disable-line declaration-no-important */
  font-weight: var(--wp-link-font-weight, 400);
  -webkit-text-decoration-line: var(--wp-link-text-decoration-line, none);
          text-decoration-line: var(--wp-link-text-decoration-line, none);
  text-decoration-thickness: var(--wp-link-text-decoration-thickness, 1px);
  -webkit-text-decoration-style: var(--wp-link-text-decoration-style, solid);
          text-decoration-style: var(--wp-link-text-decoration-style, solid);
  -webkit-text-decoration-color: var(--wp-link-text-decoration-color, currentColor);
          text-decoration-color: var(--wp-link-text-decoration-color, currentColor);
  -webkit-transition: color var(--dnm-link-duration), background-color var(--wp-transition), border-color var(--wp-transition);
  transition: color var(--dnm-link-duration), background-color var(--wp-transition), border-color var(--wp-transition);
}
:-moz-any-link {
  --wp-link-color: currentColor;
  --wp-link-color-hover: var(--wp-link-color);
  --wp-link-icon-color: var(--wp-link-color);
  --wp-link-icon-color-hover: var(--wp-link-color-hover);
  --wp-focus-outline-color: currentColor;
  --dnm-link-color: var(--wp-link-color);
  --dnm-link-icon-color: var(--wp-link-icon-color);
  --dnm-link-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition));
  color: var(--dnm-link-color) !important; /* stylelint-disable-line declaration-no-important */
  font-weight: var(--wp-link-font-weight, 400);
  text-decoration-line: var(--wp-link-text-decoration-line, none);
  text-decoration-thickness: var(--wp-link-text-decoration-thickness, 1px);
  text-decoration-style: var(--wp-link-text-decoration-style, solid);
  text-decoration-color: var(--wp-link-text-decoration-color, currentColor);
  -moz-transition: color var(--dnm-link-duration), background-color var(--wp-transition), border-color var(--wp-transition);
  transition: color var(--dnm-link-duration), background-color var(--wp-transition), border-color var(--wp-transition);
}
:any-link {
  --wp-link-color: currentColor;
  --wp-link-color-hover: var(--wp-link-color);
  --wp-link-icon-color: var(--wp-link-color);
  --wp-link-icon-color-hover: var(--wp-link-color-hover);
  --wp-focus-outline-color: currentColor;
  --dnm-link-color: var(--wp-link-color);
  --dnm-link-icon-color: var(--wp-link-icon-color);
  --dnm-link-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition));
  color: var(--dnm-link-color) !important; /* stylelint-disable-line declaration-no-important */
  font-weight: var(--wp-link-font-weight, 400);
  -webkit-text-decoration-line: var(--wp-link-text-decoration-line, none);
          text-decoration-line: var(--wp-link-text-decoration-line, none);
  text-decoration-thickness: var(--wp-link-text-decoration-thickness, 1px);
  -webkit-text-decoration-style: var(--wp-link-text-decoration-style, solid);
          text-decoration-style: var(--wp-link-text-decoration-style, solid);
  -webkit-text-decoration-color: var(--wp-link-text-decoration-color, currentColor);
          text-decoration-color: var(--wp-link-text-decoration-color, currentColor);
  transition: color var(--dnm-link-duration), background-color var(--wp-transition), border-color var(--wp-transition);
}
:-webkit-any-link > i {
  color: var(--dnm-link-icon-color);
  margin-right: var(--wp-spacing-s);
}
:-moz-any-link > i {
  color: var(--dnm-link-icon-color);
  margin-right: var(--wp-spacing-s);
}
:any-link > i {
  color: var(--dnm-link-icon-color);
  margin-right: var(--wp-spacing-s);
}
:-webkit-any-link[href*="tel:"] { /* stylelint-disable-line string-quotes */
  --wp-link-text-decoration-line: none;
  color: inherit;
}
:-moz-any-link[href*="tel:"] { /* stylelint-disable-line string-quotes */
  --wp-link-text-decoration-line: none;
  color: inherit;
}
:any-link[href*="tel:"] { /* stylelint-disable-line string-quotes */
  --wp-link-text-decoration-line: none;
  color: inherit;
}
:-webkit-any-link:hover, :-webkit-any-link:active, :-webkit-any-link:focus, :-webkit-any-link:focus-visible {
  --dnm-link-color: var(--wp-link-color-hover);
  --dnm-link-icon-color: var(--wp-link-icon-color-hover);
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}
:-moz-any-link:hover, :-moz-any-link:active, :-moz-any-link:focus, :-moz-any-link:focus-visible {
  --dnm-link-color: var(--wp-link-color-hover);
  --dnm-link-icon-color: var(--wp-link-icon-color-hover);
  text-decoration-line: underline;
}
:any-link:hover, :any-link:active, :any-link:focus, :any-link:focus-visible {
  --dnm-link-color: var(--wp-link-color-hover);
  --dnm-link-icon-color: var(--wp-link-icon-color-hover);
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}
:-webkit-any-link:hover, :-webkit-any-link:focus {
  cursor: pointer;
}
:-moz-any-link:hover, :-moz-any-link:focus {
  cursor: pointer;
}
:any-link:hover, :any-link:focus {
  cursor: pointer;
}
:-webkit-any-link._disabled {
  --wp-link-text-decoration-style: line-through;
  color: var(--wp-link-color);
  pointer-events: none;
}
:-moz-any-link._disabled {
  --wp-link-text-decoration-style: line-through;
  color: var(--wp-link-color);
  pointer-events: none;
}
:any-link._disabled {
  --wp-link-text-decoration-style: line-through;
  color: var(--wp-link-color);
  pointer-events: none;
}
:-webkit-any-link._disabled * {
  pointer-events: none;
}
:-moz-any-link._disabled * {
  pointer-events: none;
}
:any-link._disabled * {
  pointer-events: none;
}

hr {
  background-color: currentColor;
  border: 0;
  color: var(--wp-color-black);
  margin: var(--wp-spacing) 0;
}
hr:not([size]) {
  height: 1px;
}

p {
  margin: 0 0 var(--wp-paragraph-margin, var(--wp-block-element-margin));
}

blockquote {
  margin: 0 0 var(--wp-blockquote-margin, var(--wp-block-element-margin));
}

table {
  width: 100%;
}

iframe {
  border: 0 none;
  min-width: 100%;
}

figure,
.figure,
picture,
.picture {
  background-color: transparent;
  border: 0 none;
  border-radius: 0;
  display: block;
  padding: 0;
  position: relative;
  width: 100%;
}

img {
  border: 0;
  display: block;
  height: auto;
  max-width: 100%;
}

.time__time {
  display: none;
}
.time__time::before {
  content: ', ';
}

.application-context-bar {
  display: none !important;
  background-color: var(--wp-color-warning);
  bottom: 0;
  color: var(--wp-color-warning-contrast);
  font-size: 12px;
  left: 50%;
  padding: 0.125rem 0.25rem;
  pointer-events: none;
  position: fixed;
  text-align: center;
  transform: translateX(-50%);
  z-index: 9999;
}
.application-context-bar > span {
  text-transform: uppercase;
}
.application-context-bar.-staging {
  width: 100%;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  --wp-heading-margin: var(--wp-spacing);
  color: var(--wp-heading-color, var(--wp-color-black));
  display: block;
  font-family: var(--wp-heading-font-family, var(--wp-font-family-sans));
  font-size: var(--wp-heading-font-size, 1rem);
  font-weight: var(--wp-heading-font-weight, var(--wp-font-weight-bold));
  -webkit-hyphens: manual;
  hyphens: manual;
  line-height: var(--wp-heading-line-height, 1.375);
  margin: 0 0 var(--wp-heading-margin, 1.125em);
  overflow-wrap: break-word;
  width: 100%;
  word-wrap: break-word;
}
h1 > a, .h1 > a, h2 > a, .h2 > a, h3 > a, .h3 > a, h4 > a, .h4 > a, h5 > a, .h5 > a, h6 > a, .h6 > a {
  color: inherit !important;
  text-decoration: none !important;
}
h1:first-child, .h1:first-child, h2:first-child, .h2:first-child, h3:first-child, .h3:first-child, h4:first-child, .h4:first-child, h5:first-child, .h5:first-child, h6:first-child, .h6:first-child {
  margin-top: 0;
}
h1:last-child, .h1:last-child, h2:last-child, .h2:last-child, h3:last-child, .h3:last-child, h4:last-child, .h4:last-child, h5:last-child, .h5:last-child, h6:last-child, .h6:last-child {
  margin-bottom: 0;
}

h1,
.h1 {
  --wp-heading-font-size: var(--wp-h1-font-size);
}

h2,
.h2 {
  --wp-heading-font-size: var(--wp-h2-font-size);
}

h3,
.h3 {
  --wp-heading-font-size: var(--wp-h3-font-size);
}

h4,
.h4 {
  --wp-heading-font-size: var(--wp-h4-font-size);
}

h5,
.h5 {
  --wp-heading-font-size: var(--wp-h5-font-size);
}

@media (max-width: 1399px) {
  h1,
  .h1 {
    --wp-h1-font-size: 30px;
  }
}

@media (max-width: 1399px) {
  h2,
  .h2 {
    --wp-h2-font-size: 28px;
  }
}

@media (max-width: 1399px) {
  h3,
  .h3 {
    --wp-h3-font-size: 26px;
  }
}

h2,
.h2,
h3,
.h3 {
  --wp-heading-font-weight: var(--wp-font-weight-normal);
}

h6,
.h6 {
  --wp-heading-color: var(--wp-color-primary);
}

em,
.em {
  font-style: italic;
}

small,
.small,
.text-small {
  font-size: var(--wp-font-size-s);
}

mark,
.mark {
  background-color: var(--wp-mark-background-color, var(--wp-color-secondary));
  color: var(--wp-mark-color, var(--wp-color-secondary-contrast));
  padding: 0 var(--wp-spacing-xs);
}

del,
s {
  -webkit-text-decoration-line: line-through;
          text-decoration-line: line-through;
}

del {
  color: var(--wp-del-color, hsl(var(--wp-color-black-h), var(--wp-color-black-s), 70%));
}

b,
strong,
.strong {
  font-weight: var(--wp-font-weight-bold);
}

.text-color-primary {
  color: var(--wp-color-primary);
}
.text-color-primary a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color-secondary {
  color: var(--wp-color-secondary);
}
.text-color-secondary a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color-grey {
  color: var(--wp-color-grey);
}
.text-color-grey a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color-danger {
  color: var(--wp-color-danger);
}
.text-color-danger a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color-success {
  color: var(--wp-color-success);
}
.text-color-success a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color-warning {
  color: var(--wp-color-warning);
}
.text-color-warning a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color-info {
  color: var(--wp-color-info);
}
.text-color-info a:not(.button) {
  --wp-link-color: currentColor;
}
.text-color- {
  color: var(--wp-color-);
}
.text-color- a:not(.button) {
  --wp-link-color: currentColor;
}
.text-align-left {
  text-align: left;
}
.text-align-right {
  text-align: right;
}
.text-align-center {
  text-align: center;
}
.text-align-justify {
  text-align: justify;
}
.text-size-xs {
  font-size: var(--wp-font-size-xs);
}
.text-size-s {
  font-size: var(--wp-font-size-s);
}
.text-size-l {
  font-size: var(--wp-font-size-l);
}
.text-size-teaser {
  --wp-body-font-weight: 400;
}

.text-teaser,
.subtext {
  font-weight: var(--wp-font-weight-normal);
}

.subtitle::before {
  content: "("; /* stylelint-disable-line string-quotes */
  padding-right: 0.125em;
}
.subtitle::after {
  content: ")"; /* stylelint-disable-line string-quotes */
  padding-left: 0.125em;
}

.link-social {
  align-items: center;
  display: flex;
  text-decoration: none !important;
}
.link-social > i {
  font-size: 1.5em;
}
.link-social.-facebook:hover > i {
  color: #3b5998;
}
.link-social.-youtube:hover > i {
  color: #FF0000;
}
.link-social.-instagram:hover > i {
  background-image: linear-gradient(72.44deg, #ff7a00 11.92%, #ff0169 51.56%, #d300c5 85.69%);
  -webkit-background-clip: text;
  background-repeat: no-repeat;
  color: transparent;
}

a[href]:not([class]), a[class^=link-]:not(.button) {
  text-decoration: underline;
}

.article {
  --wp-article-gap: var(--wp-spacing-l);
  --wp-article-sidebar-gap: var(--wp-spacing-l);
  --wp-article-sidebar-sidebar-width: 33%;
  display: flex;
  flex-direction: column;
  gap: var(--wp-article-gap);
  position: relative;
}
.article-header {
  display: flex;
  flex-direction: column;
  gap: var(--wp-article-header-gap, var(--wp-spacing));
}
.article-header > * {
  margin: 0;
}
.article-body {
  display: flex;
  flex-wrap: wrap;
  gap: var(--wp-article-sidebar-gap);
}
.article-body > .content {
  flex-basis: 100%;
  flex-grow: 666;
  min-width: 100%;
  order: 1;
}
.article-body > .sidebar {
  flex-basis: 100%;
  flex-grow: 1;
  min-width: 0;
  order: 2;
  width: 100%;
}
@media (min-width: 768px) {
  .article-body {
    --dnm-article-sidebar-width: calc(var(--wp-article-sidebar-sidebar-width) + var(--wp-article-sidebar-gap));
    align-items: flex-start;
    flex-wrap: nowrap;
  }
  .article-body > .content,
  .article-body > .sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: var(--global-scroll-top-offset);
  }
  .article-body > .content {
    flex-basis: calc(100% - var(--dnm-article-sidebar-width));
    min-width: calc(100% - var(--dnm-article-sidebar-width));
  }
  .article-body > .sidebar {
    flex-basis: var(--dnm-article-sidebar-width);
    width: var(--dnm-article-sidebar-width);
  }
}
.article-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .article {
    --wp-article-header-gap: var(--wp-spacing-l);
    --wp-article-teaser-padding: var(--wp-spacing-l);
  }
}
@media (min-width: 992px) {
  .article {
    --wp-article-gap: var(--wp-spacing-xl);
    --wp-article-sidebar-gap: var(--wp-spacing-xl);
  }
}

.article-header__teaser {
  background-color: var(--wp-color-black-lighten);
  padding: var(--wp-article-teaser-padding, var(--wp-spacing));
}
.article-header__meta {
  align-items: center;
  color: hsl(var(--wp-color-black-h), var(--wp-color-black-s), 50%);
  display: flex;
  font-size: var(--wp-font-size-s);
  justify-content: space-between;
}
.article-header__meta .time__time {
  display: none;
}
.article-header__meta .article-category + .time {
  margin-right: auto;
}
.article-header__meta .article-category + .time::before {
  content: "·"; /* stylelint-disable-line string-quotes */
  margin: 0 var(--wp-spacing-s);
}

.article-section > * {
  margin-bottom: 0;
  margin-top: 0;
}
.article-section > *:not(:first-child) {
  margin-top: var(--wp-block-element-margin);
}
.article-section > .ce:not(:first-child) {
  margin-top: var(--wp-content-element-margin);
}
.article-section + .article-section {
  border-top: 1px solid hsl(var(--wp-color-black-h), var(--wp-color-black-s), 90%);
  padding-top: var(--wp-article-gap);
}

.audio .player {
  --ifabsh-player-audio-border-color: var(--wp-color-grey);
  --ifabsh-player-audio-control-icon-color: var(--wp-color-white);
  --ifabsh-player-audio-control-icon-color-hover: var(--wp-color-white);
  --ifabsh-player-audio-control-icon-background-color: var(--wp-color-secondary);
  --ifabsh-player-audio-control-icon-background-color-hover: var(--wp-color-primary);
  --ifabsh-player-audio-control-icon-dimenson: calc(var(--wp-spacing) * 3);
}
.audio .player .plyr__control {
  align-items: center;
  background: var(--ifabsh-player-audio-control-icon-background-color);
  border-radius: 50%;
  color: var(--ifabsh-player-audio-control-icon-color);
  display: inline-flex;
  height: var(--ifabsh-player-audio-control-icon-dimenson);
  justify-content: center;
  padding: var(--ifabsh-player-audio-control-icons-padding);
  width: var(--ifabsh-player-audio-control-icon-dimenson);
}
.audio .player .plyr__control:hover {
  --ifabsh-player-audio-control-icon-color: var(--ifabsh-player-audio-control-icon-color-hover);
  --ifabsh-player-audio-control-icon-background-color: var(--ifabsh-player-audio-control-icon-background-color-hover);
}

.ci-shape {
  --_deg: 25deg;
  --_degFactor: -1;
  background-color: var(--wp-ci-shape-color, var(--wp-color-secondary));
  content: "";
  display: block;
  font-size: var(--wp-ci-shape-size, 11rem);
  height: 1em !important; /* stylelint-disable-line declaration-no-important */
  pointer-events: none;
  transform: skewX(calc(var(--_deg) * var(--_degFactor)));
  transform-origin: left bottom;
  width: 1em !important; /* stylelint-disable-line declaration-no-important */
  z-index: 10;
}

.contact {
  --wp-contact-border-color: var(--wp-color-primary);
  --wp-contact-border-radius: var(--wp-border-radius);
  --wp-contact-border-width: 0;
  --wp-contact-color: var(--wp-color-primary-contrast);
  --wp-contact-communication-icon-offset: 1.75em;
  --wp-contact-padding: var(--wp-spacing);
  background-color: var(--wp-contact-background-color, var(--wp-color-primary));
  border: var(--wp-contact-border-width) solid var(--wp-contact-border-color);
  border-radius: var(--wp-contact-border-radius);
  color: var(--wp-contact-color);
  display: grid;
  font-size: var(--wp-contact-font-size, var(--wp-font-size-l));
  grid: auto auto 1fr auto/auto;
  grid-template-areas: "media" "header" "body" "footer"; /* stylelint-disable-line string-quotes */
}
.contact a {
  --wp-link-color-hover: currentColor;
}
.contact a.-telephone, .contact a.-telefax, .contact a.-cellphone {
  --wp-link-text-decoration-line: none;
}
.contact-title {
  font-size: var(--wp-contact-title-font-size, var(--wp-h4-font-size));
  font-weight: var(--wp-contact-title-font-weight, var(--wp-font-weight-bold));
  -webkit-hyphens: manual;
  hyphens: manual;
  overflow-wrap: break-word;
}
.contact-communication {
  display: block;
  margin: 0;
  padding-left: var(--wp-contact-communication-icon-offset);
}
.contact-communication i {
  color: var(--wp-contact-communication-icon-color, var(--wp-color-white));
  margin: 0 0 0 calc(-1 * var(--wp-contact-communication-icon-offset));
  width: var(--wp-contact-communication-icon-offset);
}
@media (min-width: 992px) {
  .contact {
    --wp-contact-padding: var(--wp-spacing-l);
  }
}

.contact__media {
  border-top-left-radius: var(--wp-contact-border-radius);
  border-top-right-radius: var(--wp-contact-border-radius);
  display: none;
  grid-area: media;
  overflow: hidden;
}
.contact__media img {
  aspect-ratio: 4/3;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  width: 100%;
}
.contact.-has-media .contact__media {
  display: block;
}

.contact__header {
  background-color: var(--wp-contact-header-background-color, var(--wp-color-primary-mid));
  border-bottom: var(--wp-contact-border-width) solid var(--wp-contact-border-color);
  flex-wrap: wrap;
  grid-area: header;
  padding: var(--wp-contact-padding);
}
.contact__header > * {
  margin: 0;
}
.contact__header > * + * {
  margin-top: var(--wp-contact-header-gap, 0);
}
.contact__header + .contact__body {
  padding-top: 0;
}

.contact__body {
  grid-area: body;
  padding: var(--wp-contact-padding);
}

.contact__footer {
  align-items: center;
  border-top: var(--wp-contact-border-width) solid var(--wp-contact-border-color);
  display: flex;
  grid-area: footer;
  justify-content: space-between;
  padding: var(--wp-contact-padding);
}
.contact__footer:empty {
  display: none;
}

.contact-single {
  display: flex;
  flex-direction: column;
}
.contact-single > .contact {
  flex: 1 0 auto;
}

@media (min-width: 768px) {
  .contact.-horizontal {
    --wp-contact-padding: var(--wp-spacing-xl);
    grid: auto 1fr auto/1fr 1fr;
    grid-template-areas: "media header" "media body" "media footer"; /* stylelint-disable-line string-quotes */
  }
  .contact.-horizontal .contact__media img {
    min-height: 100%;
  }
  .contact.-horizontal .contact__header {
    padding-bottom: calc(var(--wp-contact-padding) / 2);
  }
}

@media (min-width: 992px) {
  .deck[data-columns="2"] .contact.-horizontal {
    --wp-contact-padding: var(--wp-spacing-xl);
    grid: auto 1fr auto/1fr 1fr;
    grid-template-areas: "media header" "media body" "media footer"; /* stylelint-disable-line string-quotes */
  }
  .deck[data-columns="2"] .contact.-horizontal .contact__media img {
    min-height: 100%;
  }
  .deck[data-columns="2"] .contact.-horizontal .contact__header {
    padding-bottom: calc(var(--wp-contact-padding) / 2);
  }
}

.header {
  --wp-header-margin: var(--wp-spacing-l);
  color: var(--wp-header-color, currentColor);
  display: flex;
  flex-direction: column;
  font-size: var(--wp-header-font-size, 1rem);
  gap: var(--wp-header-gap, var(--wp-spacing-xs));
}
.header > time {
  color: var(--wp-header-time-color, currentColor);
  display: none;
  font-size: var(--wp-header-time-font-size, inherit);
  order: 3;
}
.header__title {
  margin: 0;
  order: 1;
}
.header__subtext {
  color: var(--wp-header-subtext-color, currentColor);
  font-size: var(--wp-header-subtext-font-size, inherit);
  margin: 0;
  order: 2;
}
.header:not(:first-child) {
  margin-top: var(--wp-header-margin);
}
.header:not(:last-child) {
  margin-bottom: var(--wp-header-margin);
}

.header.-left {
  text-align: left;
}
.header.-center {
  text-align: center;
}
.header.-right {
  text-align: right;
}

.ce-hero {
  --wp-hero-offset: 0;
  --wp-hero-shape-display: none;
  --wp-hero-text-background: var(--wp-color-primary);
  --wp-hero-text-color: var(--wp-color-white);
  --wp-hero-text-padding: calc(var(--wp-spacing-s) * 3);
}
@media (min-width: 768px) {
  .ce-hero {
    --wp-hero-text-padding: calc(var(--wp-spacing-s) * 3) calc(var(--wp-spacing-l) * 3);
  }
}
@media (min-width: 1400px) {
  .ce-hero {
    --wp-hero-offset: calc(var(--wp-spacing) + var(--wp-spacing-s) + var(--wp-spacing-xs));
    --wp-hero-shape-display: block;
    --wp-hero-text-padding: var(--wp-spacing-l);
  }
}
.ce-hero .hero {
  position: relative;
}
.ce-hero .hero-text {
  position: relative;
  z-index: 1;
}
@media (min-width: 1400px) {
  .ce-hero .hero-text {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--wp-page-max-width);
    width: 100%;
  }
}
.ce-hero .hero-text__inner {
  background: var(--wp-hero-text-background);
  color: var(--wp-hero-text-color);
  padding: var(--wp-hero-text-padding);
}
@media (min-width: 1400px) {
  .ce-hero .hero-text__inner {
    bottom: 0;
    position: absolute;
    transform: translateY(40px);
    display: inline-block;
    width: auto;
  }
}
.ce-hero .hero-text__inner > * {
  color: inherit !important;
  margin: 0;
}
@media (max-width: 767px) {
  .ce-hero .hero-text__inner > * {
    line-height: 1.2;
  }
}
.ce-hero .hero-text__inner > * + * {
  margin-top: var(--wp-spacing-s);
}
.ce-hero .hero-text__inner .subtitle {
  font-weight: var(--wp-font-weight-normal);
}
.ce-hero .hero-text__inner .subtitle::before, .ce-hero .hero-text__inner .subtitle::after {
  display: none !important;
}

.ce-hero.-small .hero {
  background: var(--wp-color-primary);
}
.ce-hero.-small .hero__inner {
  display: flex;
  flex-direction: column;
  gap: var(--wp-spacing-l);
  padding: var(--wp-spacing-l) calc(var(--wp-spacing-s) * 3);
}
@media (min-width: 992px) {
  .ce-hero.-small .hero__inner {
    gap: calc(var(--wp-spacing) * 3);
    padding: var(--wp-spacing-xl) calc(var(--wp-spacing-l) * 3);
  }
}
@media (min-width: 1200px) {
  .ce-hero.-small .hero__inner {
    flex-direction: row;
    gap: var(--wp-spacing-l);
    padding: 0;
  }
}
@media (min-width: 1400px) {
  .ce-hero.-small .hero__inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
.ce-hero.-small .hero-media {
  width: 100%;
  order: 2;
}
@media (min-width: 1200px) {
  .ce-hero.-small .hero-media {
    width: 60%;
  }
}
@media (min-width: 1400px) {
  .ce-hero.-small .hero-media {
    width: 60%;
  }
}
.ce-hero.-small .hero-text {
  align-items: center;
  display: flex;
  flex: 1 0 auto;
  order: 1;
  width: auto !important;
}
@media (min-width: 1200px) {
  .ce-hero.-small .hero-text {
    justify-content: center;
    padding-left: var(--wp-spacing-xl);
  }
}
.ce-hero.-small .hero-text__inner {
  padding: 0;
  position: relative;
  transform: none;
}
@media (max-width: 1399px) {
  .ce-hero.-small .hero-text__inner > h1,
  .ce-hero.-small .hero-text__inner > .h1 {
    --wp-h1-font-size: 30px;
  }
}
.ce-hero.-small.-showcalc .hero-media {
  align-items: center;
  background: var(--wp-color-primary);
  display: flex;
  justify-content: center;
  width: 100%;
}
@media (min-width: 1200px) {
  .ce-hero.-small.-showcalc .hero-media .calculator {
    padding: var(--wp-spacing-xl);
  }
}
@media (min-width: 1400px) {
  .ce-hero.-small.-showcalc .hero-media .calculator {
    padding: var(--wp-spacing-xl);
  }
}
@media (max-width: 1599px) {
  .ce-hero.-small + .ci-shape {
    display: none;
  }
}

.icon-box {
  --wp-icon-box-background-color: var(--wp-color-grey);
  --wp-icon-box-color: var(--wp-force-text-color, currentColor);
  --wp-icon-box-padding-x: var(--wp-icon-box-padding, var(--wp-spacing));
  --wp-icon-box-padding-y: var(--wp-icon-box-padding-x);
  --wp-icon-box-title-font-size: var(--wp-h4-font-size);
  align-items: center;
  background-color: var(--wp-icon-box-background-color);
  border: var(--wp-icon-box-border-width, var(--wp-border-width)) solid var(--wp-icon-box-border-color, var(--wp-icon-box-background-color));
  border-radius: var(--wp-icon-box-border-radius, 7px);
  color: var(--wp-icon-box-color);
  padding: var(--wp-icon-box-padding-y) var(--wp-icon-box-padding-x);
  position: relative;
}
.icon-box > * {
  margin: 0;
}
.icon-box-title {
  color: inherit;
  font-size: var(--wp-icon-box-title-font-size);
  font-weight: var(--wp-font-weight-bold);
  margin: 0;
  order: 2;
  width: auto;
}
.icon-box-title a {
  --wp-link-color: currentColor;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.icon-box-title a::after {
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.icon-box-title a:focus {
  outline: none;
}
.icon-box-title span {
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.icon-box-icon {
  background: var(--wp-icon-box-icon-background-color, var(--wp-color-primary));
  border-radius: 50%;
  color: var(--wp-icon-box-icon-color, var(--wp-color-primary-contrast));
  font-size: var(--wp-icon-box-icon-size, var(--wp-icon-box-title-font-size));
  height: var(--wp-icon-box-icon-dim, 84px);
  line-height: 1;
  order: 1;
  position: relative;
  width: var(--wp-icon-box-icon-dim, 84px);
}
.icon-box-icon > i {
  font-weight: var(--wp-font-weight-light);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.icon-box__header {
  display: flex;
  flex-direction: column;
  gap: var(--wp-icon-box-header-gap, var(--wp-spacing));
}
.icon-box:focus-within {
  outline: var(--wp-focus-outline-width) var(--wp-focus-outline-style) var(--focus-outline-color, var(--wp-focus-outline-color));
  outline-offset: var(--wp-focus-outline-offset);
}
.section.-colored.-grey .icon-box {
  --wp-icon-box-background-color: var(--wp-color-white);
}

.icon-box:not(.-with-text) {
  --wp-icon-box-icon-size: 1.5rem;
  --wp-icon-box-padding-y: var(--wp-spacing-l);
}
@media (min-width: 768px) {
  .icon-box:not(.-with-text) {
    --wp-icon-box-icon-size: 1.5rem;
  }
}
@media (min-width: 1200px) {
  .icon-box:not(.-with-text) {
    --wp-icon-box-icon-size: 2rem;
  }
}
.icon-box:not(.-with-text) .icon-box__header > * {
  align-self: center;
}

.icon-box.-with-text {
  --wp-icon-box-icon-size: calc(var(--wp-icon-box-title-font-size) * 1.25);
  --wp-icon-box-icon-background-color: var(--wp-color-secondary);
  --wp-icon-box-icon-dim: 72px;
  display: flex;
  flex-direction: column;
  row-gap: var(--wp-icon-box-content-gap, var(--wp-spacing));
}
.icon-box.-with-text > * {
  align-self: start;
}
.icon-box.-with-text .icon-button {
  --ifabsh-icon-button-color: var(--wp-color-primary);
  --ifabsh-icon-button-font-size: calc(var(--wp-icon-box-title-font-size) * 1.5);
  align-self: end;
}
.icon-box.-with-text .icon-button::after {
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.icon-box.-with-text .icon-button:focus {
  outline: none;
}
.icon-box.-with-text .icon-box-text {
  flex: 1 0 auto;
}
.icon-box.-with-text .icon-box__header {
  flex-direction: column;
}
@media (min-width: 768px) {
  .icon-box.-with-text {
    --wp-icon-box-padding: var(--wp-spacing-l);
  }
}

.iframe__inner {
  background: var(--wp-iframe-background-color, var(--wp-color-grey));
  position: relative;
}
.iframe__inner > iframe[data-src] {
  min-height: var(--wp-iframe-height, 300px);
}
.iframe__inner > .privacy-info {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.card.-info .card__header {
  background: var(--wp-color-secondary) !important;
  padding: var(--wp-spacing) var(--wp-spacing-l);
}
.card.-info .card__header > .title {
  --wp-heading-color: var(--wp-color-secondary-contrast);
}

.mapView {
  --wp-map-height: 90vh;
  --wp-map-legend-bg-color: var(--wp-color-grey-light);
  --wp-map-legend-border-radius: 10px;
  --wp-map-legend-offset: calc(var(--wp-spacing) * 3);
  --wp-map-legend-padding: calc(var(--wp-spacing) * 3) calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
  --wp-map-marker-border-color: hsla(var(--wp-color-dark-h), var(--wp-color-dark-s), var(--wp-color-dark-l), 0.12);
  --wp-map-marker-border-width: 2px;
  --wp-map-marker-offset: calc(var(--wp-spacing-s) * 3);
  --wp-map-marker-icon-color: var(--wp-color-primary);
  --wp-map-marker-icon-font-size: 18px;
  --wp-map-marker-icon-offset: calc(var(--wp-spacing-s) * 3);
  gap: var(--wp-map-legend-offset);
  height: auto;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media (min-width: 768px) {
  .mapView {
    --wp-map-height: 90vh;
  }
}
@media (min-width: 1200px) {
  .mapView {
    --wp-map-height: 800px;
  }
}
@media (min-width: 1200px) {
  .mapView {
    display: flex !important;
  }
}
.mapView > .privacy-info {
  background: var(--wp-color-secondary);
  bottom: 0;
  display: none;
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
}
.mapView[data-privacy] > .privacy-info {
  display: flex;
  justify-content: center;
  pointer-events: all;
  z-index: 3;
}
.mapView > * {
  flex: 100% 1;
  width: 100%;
}
@media (min-width: 1200px) {
  .mapView > * {
    flex: 50% 1;
  }
}
.mapView__map-viewer {
  flex-grow: 1;
  height: var(--wp-map-height);
}
.mapView.-with-legend {
  align-items: center;
}
.mapView.-with-legend .mapView__map-viewer {
  margin-bottom: calc(var(--wp-map-legend-offset) / 2);
}
@media (min-width: 1200px) {
  .mapView.-with-legend .mapView__map-viewer {
    height: 0;
    margin-bottom: 0;
    padding-top: 50%;
  }
}
.mapView__map-legend {
  background: var(--wp-map-legend-bg-color);
  border-radius: var(--wp-map-legend-border-radius);
  padding: var(--wp-map-legend-padding);
}
.mapView__map-legend > .mapView__map-marker + .mapView__map-marker {
  border-top: var(--wp-map-marker-border-width) solid var(--wp-map-marker-border-color);
  margin-top: var(--wp-map-marker-offset);
  padding-top: var(--wp-map-marker-offset);
}
.mapView__map-legend > .mapView__map-marker:hover {
  cursor: pointer;
}
.mapView__map-legend > .mapView__map-marker:hover .title {
  color: var(--wp-color-primary);
}
.mapView__map-legend > .mapView__map-marker i {
  color: var(--wp-map-marker-icon-color);
  font-size: var(--wp-map-marker-icon-font-size);
  line-height: 1;
  margin-right: var(--wp-map-marker-icon-offset);
  margin-top: 4px;
  width: var(--wp-map-marker-icon-font-size);
}
.mapView__map-legend > .mapView__map-marker .content {
  display: flex;
}
.mapView__map-legend > .mapView__map-marker .content .text {
  --wp-block-element-margin: var(--wp-spacing-s);
}
.mapView__map-legend > .mapView__map-marker .content .text > *:last-child {
  margin-bottom: 0;
}
.mapView__map-legend > .mapView__map-marker .contact {
  --wp-list-spacing: var(--wp-spacing-s);
  margin-top: var(--wp-spacing);
}
.mapView__map-legend > .mapView__map-marker .contact > li {
  display: flex;
  padding: 0;
}
.mapView__map-legend > .mapView__map-marker .contact > li::before {
  content: "";
  display: none;
}
.mapView.-is-waiting::before {
  background: var(--wp-color-secondary);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.mapView.-is-waiting::after {
  animation: pulse-black 2s infinite;
  background: var(--wp-color-dark);
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgb(0, 0, 0);
  content: "";
  display: block;
  height: 40px;
  left: 50%;
  position: absolute;
  transform: scale(1);
  top: 50%;
  width: 40px;
  z-index: 2;
}
@keyframes pulse-black {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
  }
}

/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-container {
  overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::-moz-selection {
  background: transparent;
}
.leaflet-tile::selection {
  background: transparent;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg,
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
  max-width: none !important;
  max-height: none !important;
}

.leaflet-container.leaflet-touch-zoom {
  touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
  /* Fallback for FF which doesn't support pinch-zoom */
  touch-action: none;
  touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  touch-action: none;
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
  filter: inherit;
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  box-sizing: border-box;
  z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none;
}

.leaflet-pane {
  z-index: 400;
}

.leaflet-tile-pane {
  z-index: 200;
}

.leaflet-overlay-pane {
  z-index: 400;
}

.leaflet-shadow-pane {
  z-index: 500;
}

.leaflet-marker-pane {
  z-index: 600;
}

.leaflet-tooltip-pane {
  z-index: 650;
}

.leaflet-popup-pane {
  z-index: 700;
}

.leaflet-map-pane canvas {
  z-index: 100;
}

.leaflet-map-pane svg {
  z-index: 200;
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top {
  top: 0;
}

.leaflet-right {
  right: 0;
}

.leaflet-bottom {
  bottom: 0;
}

.leaflet-left {
  left: 0;
}

.leaflet-control {
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile {
  will-change: opacity;
}

.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}

.leaflet-zoom-animated {
  transform-origin: 0 0;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}

/* cursors */
.leaflet-interactive {
  cursor: pointer;
}

.leaflet-grab {
  cursor: -webkit-grab;
  cursor: grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline: 0;
}

.leaflet-container a {
  color: #0078A8;
}

.leaflet-container a.leaflet-active {
  outline: 2px solid orange;
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}

.leaflet-bar a,
.leaflet-bar a:hover {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}

.leaflet-bar a:hover {
  background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px "Lucida Console", Monaco, monospace;
  text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}

.leaflet-control-layers-toggle {
  background-image: url(images/layers.png);
  width: 36px;
  height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(images/layers-2x.png);
  background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}

.leaflet-control-layers label {
  display: block;
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
  background-image: url(images/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
}

.leaflet-control-attribution a {
  text-decoration: none;
}

.leaflet-control-attribution a:hover {
  text-decoration: underline;
}

.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
  font-size: 11px;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}

.leaflet-popup-content {
  margin: 13px 19px;
  line-height: 1.4;
}

.leaflet-popup-content p {
  margin: 18px 0;
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px 0 0;
  border: none;
  text-align: center;
  width: 18px;
  height: 14px;
  font: 16px/14px Tahoma, Verdana, sans-serif;
  color: #c3c3c3;
  text-decoration: none;
  font-weight: bold;
  background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover {
  color: #999;
}

.leaflet-popup-scrolled {
  overflow: auto;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-popup-tip-container {
  margin-top: -1px;
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-clickable {
  cursor: pointer;
  pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}

.leaflet-tooltip-top {
  margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}

.leaflet-tooltip-left {
  margin-left: -6px;
}

.leaflet-tooltip-right {
  margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}

.leaflet-container {
  --wp-leaflet-popup-border-radius: var(--wp-spacing);
  --wp-leaflet-popup-font-color: var(--wp-color-dark);
  --wp-leaflet-popup-font-size: 18px;
  --wp-leaflet-popup-line-height: 30px;
  --wp-leaflet-popup-link-color: var(--wp-color-dark);
  --wp-leaflet-popup-link-hover-color: var(--wp-color-primary);
  --wp-leaflet-popup-link-icon-color: var(--wp-color-primary);
  --wp-leaflet-marker-cluster-bgcolor: var(--wp-color-primary);
  --wp-leaflet-marker-cluster-border-color: var(--wp-color-white);
  --wp-leaflet-marker-cluster-color: var(--wp-color-white);
}
.leaflet-container .leaflet {
  font-family: var(--wp-font-family-text) !important;
}
.leaflet-container .leaflet-pane.leaflet-tile-pane {
  opacity: 1;
  transition: all 0.45s ease-in-out;
}
.leaflet-container .leaflet-pane.leaflet-tile-pane.-blurred {
  opacity: 0.4;
}
.leaflet-container .leaflet-default-icon, .leaflet-container .leaflet-custom-icon {
  background: var(--wp-color-white);
  border-radius: 50%;
  box-shadow: 1px 1px 5px #464444;
  height: 100%;
}
.leaflet-container .leaflet-default-icon.-hover .leaflet-custom-icon__inner, .leaflet-container .leaflet-custom-icon.-hover .leaflet-custom-icon__inner {
  background-color: var(--wp-color-primary) !important;
}
.leaflet-container .leaflet-default-icon.disabled, .leaflet-container .leaflet-custom-icon.disabled {
  cursor: -webkit-grab !important;
  cursor: grab !important;
  opacity: 0;
  pointer-events: none !important;
  transform: scale(0);
}
.leaflet-container .leaflet-default-icon__inner, .leaflet-container .leaflet-custom-icon__inner {
  border-radius: 50%;
  display: block;
  height: calc(100% - 8px);
  left: 4px;
  position: relative;
  top: 4px;
  width: calc(100% - 8px);
}
.leaflet-container .leaflet-marker-icon {
  border-radius: 50%;
  cursor: -webkit-grab;
  cursor: grab;
  opacity: 1;
  transition: all 0.25s ease-in-out;
}
.leaflet-container .leaflet-marker-icon.-with-popup {
  cursor: pointer;
}
.leaflet-container .leaflet-marker-icon.disabled {
  cursor: -webkit-grab !important;
  cursor: grab !important;
  opacity: 0;
  pointer-events: none !important;
}
.leaflet-container .leaflet-marker-icon.marker-cluster {
  align-items: center;
  background-color: var(--wp-leaflet-marker-cluster-bgcolor);
  border: var(--wp-spacing-xs) solid var(--wp-color-white);
  box-shadow: 1px 1px 5px #464444;
  color: var(--wp-leaflet-marker-cluster-color);
  cursor: pointer;
  display: flex;
  justify-content: center;
  font-family: var(--wp-font-family-text);
  font-size: 0.9rem;
  font-weight: 700;
}
.leaflet-container .leaflet-popup {
  margin-bottom: 24px;
}
.leaflet-container .leaflet-popup-tip-container, .leaflet-container .leaflet-popup-close-button {
  display: none;
}
.leaflet-container .leaflet-popup-content-wrapper {
  border-radius: var(--wp-leaflet-popup-border-radius);
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.08) !important;
  color: var(--wp-leaflet-popup-font-color);
  font-family: var(--wp-font-family-text);
  font-size: var(--wp-leaflet-popup-font-size);
  line-height: 1.666667;
  overflow: hidden;
}
.leaflet-container .leaflet-popup-content-wrapper .popup {
  display: flex;
  flex-direction: column;
  padding: 0 0 var(--wp-spacing) 0;
}
.leaflet-container .leaflet-popup-content-wrapper .popup__header, .leaflet-container .leaflet-popup-content-wrapper .popup__body {
  padding: 0 var(--wp-spacing);
}
.leaflet-container .leaflet-popup-content-wrapper .popup__header {
  order: 2;
  padding-bottom: var(--wp-spacing);
  padding-top: var(--wp-spacing);
}
.leaflet-container .leaflet-popup-content-wrapper .popup__header > h6 {
  --wp-heading-color: inherit;
}
.leaflet-container .leaflet-popup-content-wrapper .popup__body {
  order: 3;
}
.leaflet-container .leaflet-popup-content-wrapper .popup__body > * + * {
  margin-top: var(--wp-spacing-s);
}
.leaflet-container .leaflet-popup-content-wrapper .popup__body > * > p {
  display: flex;
  flex-direction: row;
  gap: var(--wp-spacing-s);
  line-height: normal;
  margin: 0;
}
.leaflet-container .leaflet-popup-content-wrapper .popup__body > * > p > i {
  color: var(--wp-color-primary);
}
.leaflet-container .leaflet-popup-content-wrapper .popup__media {
  order: 1;
}
.leaflet-container .leaflet-popup-content {
  margin: 0 !important;
}

.mapView [role=dialog] {
  font-family: var(--wp-font-family-sans);
  padding: calc(var(--wp-spacing) - var(--wp-spacing-xs)) !important;
}
.mapView [role=dialog] > * {
  overflow: auto !important;
  padding: 0 !important;
}
.mapView [role=dialog] > * > * > * {
  margin: 0 !important;
}
.mapView [role=dialog] > * > * > * + * {
  margin-top: var(--wp-spacing-xs) !important;
}
.mapView [role=dialog] .gm-ui-hover-effect {
  opacity: 1 !important;
}

.mediabluebox {
  --wp-mediabluebox-gap: var(--wp-spacing);
  --wp-mediabluebox-media-width: 100%;
  --wp-mediabluebox-text-background: var(--wp-color-primary);
  --wp-mediabluebox-text-color: var(--wp-color-white);
  --wp-mediabluebox-text-padding: calc(var(--wp-spacing-s) * 3);
  --wp-mediabluebox-text-width: var(--wp-mediabluebox-media-width);
  --wp-mediabluebox-text-iconlink-font-size: 30px;
}
.mediabluebox__inner {
  display: flex;
  flex-direction: column;
  gap: var(--wp-mediabluebox-gap);
}
@media (min-width: 768px) {
  .mediabluebox__inner {
    --wp-mediabluebox-media-width: 50%;
    --wp-mediabluebox-text-width: calc(100% - var(--wp-mediabluebox-media-width) - var(--wp-mediabluebox-gap));
    flex-direction: row;
  }
}
@media (min-width: 1200px) {
  .mediabluebox__inner {
    --wp-mediabluebox-gap: var(--wp-spacing-l);
    --wp-mediabluebox-media-width: 66%;
    --wp-mediabluebox-text-padding: calc(var(--wp-spacing) * 3);
    --wp-mediabluebox-text-iconlink-font-size: 40px;
    align-items: center;
  }
}
.mediabluebox__inner .list {
  --ifabsh-ul-marker-color: var(--wp-mediabluebox-text-color);
}
.mediabluebox-media {
  max-width: var(--wp-mediabluebox-media-width);
  min-width: var(--wp-mediabluebox-media-width);
  order: 1;
  position: relative;
}
.mediabluebox-media .swiper-button-prev, .mediabluebox-media .swiper-button-next {
  --ifabsh-icon-button-background-color: var(--wp-color-white);
}
.mediabluebox-media .swiper-button-prev {
  left: var(--wp-spacing-xs);
}
.mediabluebox-media .swiper-button-next {
  right: var(--wp-spacing-xs);
}
.mediabluebox-media .button {
  --ifabsh-button-font-size: var(--wp-font-size-l);
  --ifabsh-button-height: 80px;
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  bottom: 0;
  left: 0;
  position: absolute;
  text-transform: none;
}
.mediabluebox-text {
  color: var(--wp-mediabluebox-text-color);
  max-width: var(--wp-mediabluebox-text-width);
  min-width: var(--wp-mediabluebox-text-width);
  order: 2;
  position: relative;
}
.mediabluebox-text__inner {
  background: var(--wp-mediabluebox-text-background);
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  padding: var(--wp-mediabluebox-text-padding);
  width: 100%;
}
@media (min-width: 1200px) {
  .mediabluebox-text__inner {
    height: auto;
    left: 0;
    max-height: 100%;
  }
}
.mediabluebox-text__inner .icon-link {
  display: inline-block;
  font-size: var(--wp-mediabluebox-text-iconlink-font-size);
  margin: auto 0 0 auto;
}
.mediabluebox-text__inner .icon-link:hover {
  color: var(--wp-color-secondary);
}
.mediabluebox-text__inner > *:first-child {
  margin-top: 0;
}
.mediabluebox-text__inner > *:last-child {
  margin-bottom: 0;
}
.mediabluebox-text h1,
.mediabluebox-text h2,
.mediabluebox-text h3,
.mediabluebox-text h4,
.mediabluebox-text h5,
.mediabluebox-text h6 {
  --wp-heading-color: var(--wp-mediabluebox-text-color);
}
.mediabluebox.-media-right .mediabluebox-media {
  order: 2;
}
.mediabluebox.-media-right .mediabluebox-text {
  order: 1;
}

.page-submenu.drawer .main-nav .nav {
  -moz-column-count: 2;
       column-count: 2;
  display: inline-block;
  gap: var(--wp-spacing-l);
}
@media (min-width: 1200px) {
  .page-submenu.drawer .main-nav .nav {
    gap: calc(var(--wp-spacing-xl) * 2);
  }
}
.page-submenu.drawer .main-nav .nav > * {
  margin-bottom: calc(var(--wp-spacing-s) * 3);
}
.page-submenu.drawer .main-nav .nav-link {
  --wp-link-font-weight: var(--wp-font-weight-bold);
  font-size: 20px;
  line-height: 1.65;
}
.page-submenu.drawer .main-nav .nav-link._active > span.nav-link__label {
  border-bottom: 2px solid var(--wp-color-primary);
}
.page-submenu.drawer .drawer__header {
  height: 40px;
}
.page-submenu.drawer .drawer__close {
  display: none;
}

.numbers {
  -moz-column-gap: var(--wp-numbers-gap-x, calc(var(--wp-spacing-s) * 3));
       column-gap: var(--wp-numbers-gap-x, calc(var(--wp-spacing-s) * 3));
  display: grid;
  grid-template-areas: "icon value" "icon info";
  grid-template-columns: -webkit-max-content -webkit-max-content;
  grid-template-columns: max-content max-content;
  grid-template-rows: -webkit-min-content -webkit-max-content;
  grid-template-rows: min-content max-content;
  row-gap: var(--wp-numbers-gap-y, var(--wp-spacing-s));
}
.numbers__icon {
  background: var(--wp-numbers-icon-background-color, var(--wp-color-secondary));
  border-radius: var(--wp-numbers-icon-border-radius, 50%);
  color: var(--wp-numbers-icon-color, var(--wp-color-secondary-contrast));
  font-size: var(--wp-numbers-icon-font-size, 30px);
  height: var(--wp-numbers-icon-dim, calc(var(--wp-spacing) * 5));
  line-height: 1;
  padding: var(--wp-numbers-icon-padding, calc(var(--wp-spacing-s) * 3));
  position: relative;
  grid-area: icon;
  width: var(--wp-numbers-icon-dim, calc(var(--wp-spacing) * 5));
}
.numbers__icon > i {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.numbers__value {
  align-self: flex-end;
  display: flex;
  gap: var(--wp-spacing-xs);
  grid-area: value;
  margin: 0;
}
.numbers__info {
  grid-area: info;
}

.text-box {
  --wp-text-box-border-color: var(--ifabsh-color-border);
  --wp-text-box-border-width: var(--wp-border-width);
  --wp-text-box-color: var(--wp-force-text-color, currentColor);
  --wp-text-box-padding-x: var(--wp-text-box-padding, var(--wp-spacing));
  --wp-text-box-padding-y: var(--wp-text-box-padding, var(--wp-text-box-padding-x));
  background-color: var(--wp-text-box-background-color, transparent);
  border: var(--wp-text-box-border-width) solid var(--wp-text-box-border-color);
  border-radius: var(--wp-text-box-border-radius, 0);
  color: var(--wp-text-box-color);
  display: flex;
  flex-direction: column;
  gap: var(--wp-spacing);
  padding: var(--wp-text-box-padding-y) var(--wp-text-box-padding-x);
  position: relative;
}
.text-box .title {
  font-family: var(--wp-heading-font-family);
  font-size: var(--wp-text-box-title-font-size, var(--wp-h4-font-size));
  font-weight: var(--wp-text-box-title-font-weight, var(--wp-font-weight-bold));
}
.text-box__header > * {
  margin: 0;
}
.text-box__body {
  flex: 1 0 auto;
}
.text-box__body > *:not(.row) {
  margin-bottom: 0;
  margin-top: 0;
}
.text-box__body > *:not(.row) + *:not(.row) {
  margin-top: var(--wp-spacing);
}
.text-box__footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.section.-colored.-grey .text-box {
  --wp-text-box-border-color: var(--wp-color-white);
}

@media (min-width: 992px) {
  .text-box {
    --wp-text-box-padding: var(--wp-spacing-l);
  }
}

.text-box.-title-size-m {
  --wp-text-box-title-font-size: var(--wp-h3-font-size);
}
.text-box.-title-size-s {
  --wp-text-box-title-font-size: var(--wp-h5-font-size);
}
.text-box.-title-size-xs {
  --wp-text-box-title-font-size: 1rem;
}

.text-box.-full-colored {
  --wp-text-box-background-color: var(--wp-color-grey);
  --wp-text-box-border-color: var(--wp-text-box-background-color);
  border-radius: 6px;
}
.section.-colored.-grey .text-box.-full-colored {
  --wp-text-box-background-color: var(--wp-color-white);
}

.video {
  --wp-video-content-max-width: 36rem;
}
.video-media, .video-body {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--wp-video-content-max-width);
}
.video-body {
  padding-top: var(--wp-spacing-xl);
}
.video-body > :last-child {
  margin-bottom: 0;
}
.video-media .player-video .player-media {
  --dnm-video-ply-width: var(--dnm-video-ply-width-overwrite, 100vw);
  left: 50%;
  margin-left: calc(var(--dnm-video-ply-width) / 2 * -1);
  position: relative;
  width: var(--dnm-video-ply-width);
}
.video-media .player-video .plyr__controls {
  margin: 0 auto;
  max-width: var(--wp-video-content-max-width);
  padding: var(--wp-spacing) 0;
  width: calc(100% - var(--wp-page-offset) * 2);
}
.video .player {
  --ifabsh-player-control-font-size: 20px;
}
.video .player-media__play {
  --ifabsh-icon-button-background-color: var(--wp-color-secondary);
  --ifabsh-icon-button-background-color-hover: var(--wp-color-primary);
  --ifabsh-icon-button-color: var(--wp-color-white);
  --ifabsh-icon-button-color-hover: var(--wp-color-white);
  --wp-icon-button-dimension: 67px;
  border-radius: 50%;
  height: var(--wp-icon-button-dimension);
  width: var(--wp-icon-button-dimension);
}

.section.-video {
  --fs-section-background-color: var(--wp-color-primary);
  color: var(--wp-color-primary-contrast);
  padding-bottom: var(--wp-spacing-xl);
  padding-top: 0;
}
.section.-video::before {
  display: none;
}

/* stylelint-disable-line length-zero-no-unit */
:root {
  --ifabsh-color-black-h: 0;
  --ifabsh-color-black-s: 0%;
  --ifabsh-color-black-l: 0%;
  --ifabsh-color-black: hsl(var(--ifabsh-color-black-h), var(--ifabsh-color-black-s), var(--ifabsh-color-black-l));
  --ifabsh-color-white-h: 0;
  --ifabsh-color-white-s: 0%;
  --ifabsh-color-white-l: 100%;
  --ifabsh-color-white: hsl(var(--ifabsh-color-white-h), var(--ifabsh-color-white-s), var(--ifabsh-color-white-l));
  --ifabsh-color-grey-h: 0;
  --ifabsh-color-grey-s: 0%;
  --ifabsh-color-grey-l: 91%;
  --ifabsh-color-grey: hsl(var(--ifabsh-color-grey-h), var(--ifabsh-color-grey-s), var(--ifabsh-color-grey-l));
  --ifabsh-color-grey-light-h: 0;
  --ifabsh-color-grey-light-s: 0%;
  --ifabsh-color-grey-light-l: 95%;
  --ifabsh-color-grey-light: hsl(var(--ifabsh-color-grey-light-h), var(--ifabsh-color-grey-light-s), var(--ifabsh-color-grey-light-l));
  --ifabsh-color-border-h: 0;
  --ifabsh-color-border-s: 0%;
  --ifabsh-color-border-l: 91%;
  --ifabsh-color-border: hsl(var(--ifabsh-color-border-h), var(--ifabsh-color-border-s), var(--ifabsh-color-border-l));
  --ifabsh-color-placeholder-h: 0;
  --ifabsh-color-placeholder-s: 0%;
  --ifabsh-color-placeholder-l: 58%;
  --ifabsh-color-placeholder: hsl(var(--ifabsh-color-placeholder-h), var(--ifabsh-color-placeholder-s), var(--ifabsh-color-placeholder-l));
  --ifabsh-color-text-h: 0;
  --ifabsh-color-text-s: 0%;
  --ifabsh-color-text-l: 24%;
  --ifabsh-color-text: hsl(var(--ifabsh-color-text-h), var(--ifabsh-color-text-s), var(--ifabsh-color-text-l));
  --ifabsh-color-ui-h: 232;
  --ifabsh-color-ui-s: 100%;
  --ifabsh-color-ui-l: 69%;
  --ifabsh-color-ui: hsl(var(--ifabsh-color-ui-h), var(--ifabsh-color-ui-s), var(--ifabsh-color-ui-l));
  --ifabsh-color-ui-contrast-h: 0;
  --ifabsh-color-ui-contrast-s: 0%;
  --ifabsh-color-ui-contrast-l: 100%;
  --ifabsh-color-ui-contrast: hsl(var(--ifabsh-color-ui-contrast-h), var(--ifabsh-color-ui-contrast-s), var(--ifabsh-color-ui-contrast-l));
  --ifabsh-color-danger-h: 355;
  --ifabsh-color-danger-s: 96%;
  --ifabsh-color-danger-l: 61%;
  --ifabsh-color-danger: hsl(var(--ifabsh-color-danger-h), var(--ifabsh-color-danger-s), var(--ifabsh-color-danger-l));
  --ifabsh-color-danger-contrast-h: 0;
  --ifabsh-color-danger-contrast-s: 0%;
  --ifabsh-color-danger-contrast-l: 100%;
  --ifabsh-color-danger-contrast: hsl(var(--ifabsh-color-danger-contrast-h), var(--ifabsh-color-danger-contrast-s), var(--ifabsh-color-danger-contrast-l));
  --ifabsh-color-success-h: 158;
  --ifabsh-color-success-s: 80%;
  --ifabsh-color-success-l: 42%;
  --ifabsh-color-success: hsl(var(--ifabsh-color-success-h), var(--ifabsh-color-success-s), var(--ifabsh-color-success-l));
  --ifabsh-color-success-contrast-h: 0;
  --ifabsh-color-success-contrast-s: 0%;
  --ifabsh-color-success-contrast-l: 100%;
  --ifabsh-color-success-contrast: hsl(var(--ifabsh-color-success-contrast-h), var(--ifabsh-color-success-contrast-s), var(--ifabsh-color-success-contrast-l));
  --ifabsh-color-warning-h: 37;
  --ifabsh-color-warning-s: 98%;
  --ifabsh-color-warning-l: 53%;
  --ifabsh-color-warning: hsl(var(--ifabsh-color-warning-h), var(--ifabsh-color-warning-s), var(--ifabsh-color-warning-l));
  --ifabsh-color-warning-contrast-h: 0;
  --ifabsh-color-warning-contrast-s: 0%;
  --ifabsh-color-warning-contrast-l: 0%;
  --ifabsh-color-warning-contrast: hsl(var(--ifabsh-color-warning-contrast-h), var(--ifabsh-color-warning-contrast-s), var(--ifabsh-color-warning-contrast-l));
  --ifabsh-color-info-h: 189;
  --ifabsh-color-info-s: 64%;
  --ifabsh-color-info-l: 49%;
  --ifabsh-color-info: hsl(var(--ifabsh-color-info-h), var(--ifabsh-color-info-s), var(--ifabsh-color-info-l));
  --ifabsh-color-info-contrast-h: 0;
  --ifabsh-color-info-contrast-s: 0%;
  --ifabsh-color-info-contrast-l: 0%;
  --ifabsh-color-info-contrast: hsl(var(--ifabsh-color-info-contrast-h), var(--ifabsh-color-info-contrast-s), var(--ifabsh-color-info-contrast-l));
  --ifabsh-focus-outline-width: 1px;
  --ifabsh-focus-outline-style: dotted;
  --ifabsh-focus-outline-color: currentColor;
  --ifabsh-focus-outline-offset: 2px;
  --ifabsh-backdrop-color: var(--ifabsh-color-black);
  --ifabsh-backdrop-filter: none;
  --ifabsh-backdrop-opacity: 0.5;
  --ifabsh-font-size: 1rem;
  --ifabsh-font-size-xs: 0.5rem;
  --ifabsh-font-size-s: 0.75rem;
  --ifabsh-font-size-l: 1.25rem;
  --ifabsh-spacing: 1rem;
  --ifabsh-spacing-xxs: 0.125rem;
  --ifabsh-spacing-xs: 0.25rem;
  --ifabsh-spacing-s: 0.5rem;
  --ifabsh-spacing-l: 1.25rem;
  --ifabsh-breakpoint-xs: 0;
  --ifabsh-breakpoint-s: 576px;
  --ifabsh-breakpoint-m: 768px;
  --ifabsh-breakpoint-l: 992px;
  --ifabsh-breakpoint-xl: 1200px;
  --ifabsh-border-radius: 0px;
  --ifabsh-border-width: 1px;
  --ifabsh-input-background-color: var(--ifabsh-color-white);
  --ifabsh-input-color: var(--ifabsh-color-black);
  --ifabsh-input-border-color: var(--ifabsh-color-border);
  --ifabsh-input-border-width: var(--ifabsh-border-width);
  --ifabsh-input-disabled-background-color: var(--ifabsh-color-white);
  --ifabsh-input-disabled-opacity: var(--ifabsh-disabled-opacity, 0.4);
  --ifabsh-input-readonly-background-color: var(--ifabsh-color-grey-light);
  --ifabsh-input-readonly-opacity: var(--ifabsh-readonly-opacity, 1);
  --ifabsh-input-height: 40px;
  --ifabsh-input-height-s: 30px;
  --ifabsh-input-height-l: 50px;
}

:root {
  --ifabsh-color-border-h: var(--wp-color-black-h);
  --ifabsh-color-border-s: var(--wp-color-black-s);
  --ifabsh-color-border-l: 85%;
  --ifabsh-color-text-h: var(--wp-color-text-h);
  --ifabsh-color-text-s: var(--wp-color-text-s);
  --ifabsh-color-text-l: var(--wp-color-text-l);
  --ifabsh-color-ui-h: var(--wp-color-primary-h);
  --ifabsh-color-ui-s: var(--wp-color-primary-s);
  --ifabsh-color-ui-l: var(--wp-color-primary-l);
  --ifabsh-color-ui-contrast-h: var(--wp-color-primary-contrast-h);
  --ifabsh-color-ui-contrast-s: var(--wp-color-primary-contrast-s);
  --ifabsh-color-ui-contrast-l: var(--wp-color-primary-contrast-l);
  --ifabsh-color-danger-h: var(--wp-color-danger-h);
  --ifabsh-color-danger-s: var(--wp-color-danger-s);
  --ifabsh-color-danger-l: var(--wp-color-danger-l);
  --ifabsh-color-danger-contrast-h: var(--wp-color-danger-contrast-h);
  --ifabsh-color-danger-contrast-s: var(--wp-color-danger-contrast-s);
  --ifabsh-color-danger-contrast-l: var(--wp-color-danger-contrast-l);
  --ifabsh-color-success-h: var(--wp-color-success-h);
  --ifabsh-color-success-s: var(--wp-color-success-s);
  --ifabsh-color-success-l: var(--wp-color-success-l);
  --ifabsh-color-success-contrast-h: var(--wp-color-success-contrast-h);
  --ifabsh-color-success-contrast-s: var(--wp-color-success-contrast-s);
  --ifabsh-color-success-contrast-l: var(--wp-color-success-contrast-l);
  --ifabsh-color-warning-h: var(--wp-color-warning-h);
  --ifabsh-color-warning-s: var(--wp-color-warning-s);
  --ifabsh-color-warning-l: var(--wp-color-warning-l);
  --ifabsh-color-warning-contrast-h: var(--wp-color-warning-contrast-h);
  --ifabsh-color-warning-contrast-s: var(--wp-color-warning-contrast-s);
  --ifabsh-color-warning-contrast-l: var(--wp-color-warning-contrast-l);
  --ifabsh-color-info-h: var(--wp-color-info-h);
  --ifabsh-color-info-s: var(--wp-color-info-s);
  --ifabsh-color-info-l: var(--wp-color-info-l);
  --ifabsh-color-info-contrast-h: var(--wp-color-info-contrast-h);
  --ifabsh-color-info-contrast-s: var(--wp-color-info-contrast-s);
  --ifabsh-color-info-contrast-l: var(--wp-color-info-contrast-l);
  --ifabsh-color-placeholder: var(--wp-color-black);
  --ifabsh-focus-outline-width: var(--wp-focus-outline-width);
  --ifabsh-focus-outline-style: var(--wp-focus-outline-style);
  --ifabsh-focus-outline-color: var(--wp-focus-outline-color);
  --ifabsh-focus-outline-offset: var(--wp-focus-outline-offset);
  --ifabsh-backdrop-color: var(--wp-backdrop-color);
  --ifabsh-backdrop-filter: var(--wp-backdrop-filter);
  --ifabsh-backdrop-opacity: var(--wp-backdrop-opacity);
  --ifabsh-font-size-xs: var(--wp-font-size-xs);
  --ifabsh-font-size-s: var(--wp-font-size-s);
  --ifabsh-font-size-l: var(--wp-font-size-l);
  --ifabsh-spacing: var(--wp-spacing);
  --ifabsh-spacing-xxs: var(--wp-spacing-xxs);
  --ifabsh-spacing-xs: var(--wp-spacing-xs);
  --ifabsh-spacing-s: var(--wp-spacing-s);
  --ifabsh-spacing-l: var(--wp-spacing-l);
  --ifabsh-border-radius: var(--wp-border-radius);
  --ifabsh-border-width: var(--wp-border-width);
  --ifabsh-input-border-color: hsl(var(--wp-color-black-h), var(--wp-color-black-s), 50%);
  --ifabsh-input-color: var(--wp-color-black);
  --ifabsh-input-height: 52px;
  --ifabsh-input-height-s: 40px;
  --ifabsh-input-height-l: 62px;
}

.alert {
  --ifabsh-alert-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-alert-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-alert-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-alert-font-size: var(--ifabsh-font-size-s, 0.75rem);
  --ifabsh-alert-icon-font-size: var(--ifabsh-alert-font-size);
  --ifabsh-alert-padding-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-alert-padding-y: var(--ifabsh-spacing, 1rem);
  --ifabsh-alert-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-alert-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --ifabsh-alert-accent-color: var(--ifabsh-alert-color);
  --dnm-al-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-alert-duration));
  align-items: stretch;
  background-color: var(--ifabsh-alert-background-color, transparent);
  border: var(--ifabsh-alert-border-width) solid var(--ifabsh-alert-border-color, var(--ifabsh-border-color, #e8e8e8));
  border-radius: var(--ifabsh-alert-border-radius);
  color: var(--ifabsh-alert-color);
  display: flex;
  padding: 0;
  position: relative;
  transition: all var(--dnm-tabgroup-duration) var(--ifabsh-alert-timing-function);
}
.alert::before {
  --dnm-al-offset: calc(var(--ifabsh-alert-border-width) * -1);
  background-color: var(--ifabsh-alert-accent-color);
  border-top-left-radius: var(--ifabsh-alert-border-radius);
  border-top-right-radius: var(--ifabsh-alert-border-radius);
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: var(--ifabsh-alert-accent-size, calc(var(--ifabsh-alert-border-width) * 2));
  left: var(--dnm-al-offset);
  position: absolute;
  right: var(--dnm-al-offset);
  top: var(--dnm-al-offset);
  z-index: 3;
}
.alert__message {
  flex: 1 1 auto;
  font-size: var(--ifabsh-alert-font-size);
  order: 2;
  overflow: hidden;
  padding: var(--ifabsh-alert-padding-y) var(--ifabsh-alert-padding-x);
}
.alert__icon {
  align-items: center;
  color: var(--ifabsh-alert-accent-color);
  display: flex;
  flex: 0 0 auto;
  font-size: var(--ifabsh-alert-icon-font-size);
  margin-left: var(--ifabsh-alert-padding-x);
  order: 1;
}
.alert__close {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  font-size: var(--ifabsh-alert-icon-font-size);
  order: 3;
  padding-right: calc(var(--ifabsh-alert-padding-x) / 2);
}
.alert__close > .icon-button {
  --ifabsh-icon-button-color-hover: var(--ifabsh-alert-color);
}
[dir=rtl] .alert { /* stylelint-disable-line string-quotes */ }
[dir=rtl] .alert__message {
  text-align: right;
}
[dir=rtl] .alert__icon {
  margin-left: 0;
  margin-right: var(--ifabsh-alert-padding-x);
}

.alert.-primary {
  --ifabsh-alert-accent-color: var(--ifabsh-color-ui, #6176ff);
}

.alert.-info {
  --ifabsh-alert-accent-color: var(--ifabsh-color-info, #2db5cd);
}

.alert.-success {
  --ifabsh-alert-accent-color: var(--ifabsh-color-success, #15c182);
}

.alert.-warning {
  --ifabsh-alert-accent-color: var(--ifabsh-color-warning, #fca311);
}

.alert.-danger {
  --ifabsh-alert-accent-color: var(--ifabsh-color-danger, #fb3e4e);
}

.badge {
  align-items: center;
  background-color: var(--ifabsh-badge-background-color, transparent);
  border: var(--ifabsh-badge-border-width, var(--ifabsh-border-width, 1px)) solid var(--ifabsh-badge-border-color, var(--ifabsh-badge-background-color));
  border-radius: var(--ifabsh-badge-border-radius, var(--ifabsh-border-radius, 0px));
  color: var(--ifabsh-badge-color, inherit);
  cursor: inherit;
  display: inline-flex;
  font-size: var(--ifabsh-badge-font-size, var(--ifabsh-font-size-s, 0.75rem));
  font-weight: var(--ifabsh-badge-font-weight, normal);
  justify-content: center;
  line-height: 1;
  padding: var(--ifabsh-badge-padding-y, var(--ifabsh-spacing-xs, 0.25rem)) var(--ifabsh-badge-padding-x, var(--ifabsh-spacing-s, 0.5rem));
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
}
a.badge {
  pointer-events: all;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
a.badge:link, a.badge:visited, a.badge:hover, a.badge:focus, a.badge:active {
  color: var(--ifabsh-badge-color);
}
a.badge:focus {
  box-shadow: none;
  outline: none;
}

.badge.-default {
  --ifabsh-badge-background-color: var(--ifabsh-color-grey, #e8e8e8);
  --ifabsh-badge-color: var(--ifabsh-color-text, #3e3e3e);
}

.badge.-primary {
  --ifabsh-badge-background-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-badge-color: var(--ifabsh-color-ui-contrast, #fff);
}

.badge.-danger {
  --ifabsh-badge-background-color: var(--ifabsh-color-danger, #fb3e4e);
  --ifabsh-badge-color: var(--ifabsh-color-danger-contrast, #fff);
}

.badge.-info {
  --ifabsh-badge-background-color: var(--ifabsh-color-info, #2db5cd);
  --ifabsh-badge-color: var(--ifabsh-color-info-contrast, #000);
}

.badge.-success {
  --ifabsh-badge-background-color: var(--ifabsh-color-success, #15c182);
  --ifabsh-badge-color: var(--ifabsh-color-success-contrast, #fff);
}

.badge.-warning {
  --ifabsh-badge-background-color: var(--ifabsh-color-warning, #fca311);
  --ifabsh-badge-color: var(--ifabsh-color-warning-contrast, #000);
}

.badge.-pill {
  --ifabsh-badge-border-radius: 10rem;
}

.badge.-outline {
  background-color: transparent;
}
.badge.-outline:not(.-default) {
  --ifabsh-badge-color: var(--ifabsh-badge-background-color);
}

@keyframes badge-pulse {
  0% {
    box-shadow: 0 0 0 0 var(--dnm-badge-pulse-color);
  }
  70% {
    box-shadow: 0 0 0 var(--dnm-badge-pulse-size) transparent;
  }
  100% {
    box-shadow: 0 0 0 0 transparent;
  }
}
.badge.-pulse {
  --dnm-badge-pulse-color: var(--ifabsh-badge-pulse-color, var(--ifabsh-badge-background-color));
  --dnm-badge-pulse-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-badge-pulse-duration, 1.5s));
  --dnm-badge-pulse-size: var(--ifabsh-badge-pulse-size, 0.5em);
  animation: badge-pulse var(--dnm-badge-pulse-duration) infinite;
}

.badge-group {
  align-content: flex-start;
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--ifabsh-badge-group-gap, var(--ifabsh-spacing-s, 0.5rem));
}
.badge-group .badge {
  align-self: flex-start;
}

.badge {
  --ifabsh-badge-border-radius: 3px;
  --ifabsh-badge-border-width: 1px;
  --ifabsh-badge-font-size: var(--wp-font-size-xs);
}
.badge.-default {
  --ifabsh-badge-background-color: var(--wp-color-grey-darker);
  --ifabsh-badge-color: var(--wp-color-grey-darker-contrast);
}
.badge.-primary {
  --ifabsh-badge-background-color: var(--wp-color-primary);
  --ifabsh-badge-color: var(--wp-color-primary-contrast);
}
.badge.-secondary {
  --ifabsh-badge-background-color: var(--wp-color-secondary);
  --ifabsh-badge-color: var(--wp-color-secondary-contrast);
}
.badge.-primary-light {
  --ifabsh-badge-background-color: var(--wp-color-primary-light);
  --ifabsh-badge-color: var(--wp-color-primary-light-contrast);
}
.badge.-secondary-light {
  --ifabsh-badge-background-color: var(--wp-color-secondary-light);
  --ifabsh-badge-color: var(--wp-color-secondary-light-contrast);
}
.badge.-outline {
  --ifabsh-badge-color: var(--ifabsh-badge-background-color);
  background-color: transparent;
}

.breadcrumb {
  --ifabsh-breadcrumb-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-breadcrumb-font-weight: normal;
  --ifabsh-breadcrumb-gap-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-breadcrumb-gap-y: calc(var(--ifabsh-breadcrumb-gap-x) / 2);
  --ifabsh-breadcrumb-label-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-breadcrumb-label-color-hover: var(--ifabsh-breadcrumb-label-color);
  --ifabsh-breadcrumb-label-color-active: var(--ifabsh-breadcrumb-color);
  --ifabsh-breadcrumb-label-text-decoration: none;
  --ifabsh-breadcrumb-label-text-decoration-hover: none;
  --ifabsh-breadcrumb-prefix-suffix-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-breadcrumb-prefix-suffix-font-size: var(--ifabsh-font-size-s, 0.75rem);
  --ifabsh-breadcrumb-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-breadcrumb-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-brcr-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-breadcrumb-duration));
  background-color: var(--ifabsh-breadcrumb-background-color, transparent);
  color: var(--ifabsh-breadcrumb-color);
  display: block;
  font-size: var(--ifabsh-breadcrumb-font-size, var(--ifabsh-font-size, 1rem));
  font-weight: var(--ifabsh-breadcrumb-font-weight);
  margin: 0;
  padding: var(--ifabsh-breadcrumb-padding-y, 0) var(--ifabsh-breadcrumb-padding-x, 0);
}
.breadcrumb-list {
  align-items: center;
  -moz-column-gap: var(--ifabsh-breadcrumb-gap-x);
       column-gap: var(--ifabsh-breadcrumb-gap-x);
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--ifabsh-breadrumb-align, center);
  row-gap: var(--ifabsh-breadcrumb-gap-y);
}
.breadcrumb-item {
  align-items: center;
  display: inline-flex;
  white-space: nowrap;
}
.breadcrumb-item i,
.breadcrumb-item .icon {
  pointer-events: none;
  position: relative;
}
.breadcrumb-item__prefix, .breadcrumb-item__suffix {
  align-items: center;
  color: var(--ifabsh-breadcrumb-prefix-suffix-color, var(--ifabsh-breadcrumb-color));
  display: flex;
  flex: 0 0 auto;
  font-size: var(--ifabsh-breadcrumb-prefix-suffix-font-size);
}
.breadcrumb-item__prefix:empty, .breadcrumb-item__suffix:empty {
  display: none;
}
.breadcrumb-item__prefix {
  margin-right: var(--ifabsh-breadcrumb-prefix-suffix-gap);
  order: 1;
}
.breadcrumb-item__suffix {
  margin-left: var(--ifabsh-breadcrumb-prefix-suffix-gap);
  order: 3;
}
.breadcrumb-item__label {
  order: 3;
}
a.breadcrumb-item__label {
  --dnm-brcr-label-color: var(--ifabsh-breadcrumb-label-color);
  --dnm-brcr-label-text-decoration: var(--ifabsh-breadcrumb-label-text-decoration);
  background: none;
  border: none;
  color: var(--dnm-brcr-label-color);
  cursor: pointer;
  display: inline-block;
  font-family: inherit;
  font-size: inherit;
  font-weight: var(--ifabsh-breadcrumb-font-weight);
  line-height: inherit;
  margin: 0;
  padding: 0;
  -webkit-text-decoration: var(--dnm-brcr-label-text-decoration);
          text-decoration: var(--dnm-brcr-label-text-decoration);
  transition-duration: var(--dnm-brcr-duration);
  transition-property: color;
  transition-timing-function: var(--ifabsh-brcr-timing-function);
}
a.breadcrumb-item__label:focus {
  box-shadow: none;
  outline: none;
}
a.breadcrumb-item__label:hover {
  --dnm-brcr-label-color: var(--ifabsh-breadcrumb-label-color-hover);
  --dnm-brcr-label-text-decoration: var(--ifabsh-breadcrumb-label-text-decoration-hover);
}
a.breadcrumb-item__label[aria-current=page] { /* stylelint-disable-line string-quotes */
  --dnm-brcr-label-color: var(--ifabsh-breadcrumb-label-color-active);
}

.breadcrumb-item__separator {
  align-items: center;
  color: var(--ifabsh-breadcrumb-separator-color, var(--ifabsh-breadcrumb-color));
  display: inline-flex;
  font-size: var(--ifabsh-breadcrumb-separator-font-size, var(--ifabsh-breadcrumb-prefix-suffix-font-size));
  margin: 0 0 0 var(--ifabsh-breadcrumb-gap-x);
  order: 4;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.breadcrumb-item__separator:empty::before {
  content: var(--ifabsh-breadcrumb-separator, "·"); /* stylelint-disable-line string-quotes */
}
.breadcrumb-item:last-of-type .breadcrumb-item__separator {
  display: none;
}
.breadcrumb-item::before {
  display: none;
}
.breadcrumb-item + .breadcrumb-item {
  padding: 0;
}

.button {
  --ifabsh-button-background-color: var(--ifabsh-input-background-color, #fff);
  --ifabsh-button-background-color-hover: var(--ifabsh-button-background-color);
  --ifabsh-button-border-color: var(--ifabsh-input-border-color, #e8e8e8);
  --ifabsh-button-border-color-hover: var(--ifabsh-button-border-color);
  --ifabsh-button-border-width: var(--ifabsh-input-border-width, var(--ifabsh-border-width, 1px));
  --ifabsh-button-color: var(--ifabsh-input-color, #000);
  --ifabsh-button-color-hover: var(--ifabsh-button-color);
  --ifabsh-button-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-button-font-size: var(--ifabsh-input-font-size, var(--ifabsh-font-size, 1rem));
  --ifabsh-button-height: var(--ifabsh-input-height, 40px);
  --ifabsh-button-prefix-suffix-gap: calc(var(--ifabsh-button-font-size) / 2);
  --ifabsh-button-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-bt-background-color: var(--ifabsh-button-background-color);
  --dnm-bt-border-color: var(--ifabsh-button-border-color);
  --dnm-bt-color: var(--ifabsh-button-color);
  --dnm-bt-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-button-duration));
  --focus-outline-color: var(--dnm-bt-border-color);
  align-items: stretch;
  background-color: var(--dnm-bt-background-color);
  border: var(--ifabsh-button-border-width) solid var(--dnm-bt-border-color);
  border-radius: var(--ifabsh-button-border-radius, var(--ifabsh-input-border-radius, var(--ifabsh-border-radius, 0px)));
  color: var(--dnm-bt-color) !important; /* stylelint-disable-line declaration-no-important */
  display: inline-flex;
  font-size: var(--ifabsh-button-font-size);
  font-style: var(--ifabsh-button-font-style, normal);
  font-weight: var(--ifabsh-button-font-weight, normal);
  gap: var(--ifabsh-button-prefix-suffix-gap);
  height: var(--ifabsh-button-height);
  justify-content: center;
  line-height: calc(var(--ifabsh-button-height) - var(--ifabsh-button-border-width) * 2);
  max-width: 100%;
  min-width: var(--ifabsh-button-height);
  overflow: hidden;
  padding: 0 var(--ifabsh-button-padding, var(--ifabsh-input-padding, var(--ifabsh-spacing, 1rem)));
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  text-transform: var(--ifabsh-button-text-transform, var(--ifabsh-input-text-transform, none));
  transition-duration: var(--dnm-bt-duration);
  transition-property: background-color, border-color, color;
  transition-timing-function: var(--ifabsh-button-timing-function);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  width: auto;
}
.button i,
.button .icon,
.button svg {
  pointer-events: none;
  position: relative;
}
.button i:not(.far):not(.fa):not(.fas):not(.fab):not(.fal),
.button .icon:not(.far):not(.fa):not(.fas):not(.fab):not(.fal),
.button svg:not(.far):not(.fa):not(.fas):not(.fab):not(.fal) {
  font-weight: normal;
}
.button__label {
  align-items: center;
  order: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.button__prefix, .button__suffix, .button__caret {
  align-items: center;
  color: var(--ifabsh-button-prefix-suffix-color, currentColor);
  display: flex;
  flex: 0 0 auto;
}
.button__prefix {
  order: 1;
}
.button__suffix {
  order: 3;
}
.button__caret {
  order: 4;
}
.button:focus {
  box-shadow: none;
  outline: none;
}
.button:hover, .button:focus {
  --dnm-bt-background-color: var(--ifabsh-button-background-color-hover, var(--ifabsh-button-background-color));
  --dnm-bt-border-color: var(--ifabsh-button-border-color-hover, var(--ifabsh-button-border-color));
  --dnm-bt-color: var(--ifabsh-button-color-hover, var(--ifabsh-button-color));
  cursor: pointer;
}
.button:hover:not(.-text), .button:focus:not(.-text) {
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.button._focus-visible:focus, .button:focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--focus-outline-color);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.button:disabled, .button[disabled], .button._disabled {
  cursor: not-allowed !important; /* stylelint-disable-line declaration-no-important */
  opacity: var(--ifabsh-button-disabled-opacity, var(--ifabsh-input-disabled-opacity, var(--0.4disabled-opacity, 0.4))) !important; /* stylelint-disable-line declaration-no-important */
}
.button:disabled *, .button[disabled] *, .button._disabled * {
  pointer-events: none;
}

.button.-default {
  --ifabsh-button-background-color: var(--ifabsh-color-grey, #e8e8e8);
  --ifabsh-button-border-color: var(--ifabsh-color-grey, #e8e8e8);
  --ifabsh-button-color: var(--ifabsh-color-text, #3e3e3e);
  --focus-outline-color: var(--ifabsh-button-color);
}

.button.-primary {
  --ifabsh-button-background-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-button-border-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-button-color: var(--ifabsh-color-ui-contrast, #fff);
}

.button.-info {
  --ifabsh-button-background-color: var(--ifabsh-color-info, #2db5cd);
  --ifabsh-button-border-color: var(--ifabsh-color-info, #2db5cd);
  --ifabsh-button-color: var(--ifabsh-color-info-contrast, #000);
}

.button.-success {
  --ifabsh-button-background-color: var(--ifabsh-color-success, #15c182);
  --ifabsh-button-border-color: var(--ifabsh-color-success, #15c182);
  --ifabsh-button-color: var(--ifabsh-color-success-contrast, #fff);
}

.button.-warning {
  --ifabsh-button-background-color: var(--ifabsh-color-warning, #fca311);
  --ifabsh-button-border-color: var(--ifabsh-color-warning, #fca311);
  --ifabsh-button-color: var(--ifabsh-color-warning-contrast, #000);
}

.button.-danger {
  --ifabsh-button-background-color: var(--ifabsh-color-danger, #fb3e4e);
  --ifabsh-button-border-color: var(--ifabsh-color-danger, #fb3e4e);
  --ifabsh-button-color: var(--ifabsh-color-danger-contrast, #fff);
}

.button.-l {
  --ifabsh-button-font-size: var(--ifabsh-input-font-size-l, var(--ifabsh-font-size-l, 1.25rem));
  --ifabsh-button-height: var(--ifabsh-input-height-l, 50px);
  --ifabsh-button-padding: var(--ifabsh-input-padding-l, var(--ifabsh-spacing-l, 1.25rem));
}

.button.-s {
  --ifabsh-button-font-size: var(--ifabsh-input-font-size-s, var(--ifabsh-font-size-s, 0.75rem));
  --ifabsh-button-height: var(--ifabsh-input-height-s, 30px);
  --ifabsh-button-padding: var(--ifabsh-input-padding-s, var(--ifabsh-spacing-s, 0.5rem));
}

.button.-pill {
  border-radius: var(--ifabsh-button-height);
}

.button.-outline {
  --dnm-bt-background-color: transparent;
  --dnm-bt-color: var(--ifabsh-button-background-color);
  --focus-outline-color: var(--dnm-bt-color);
}

.button.-circle, .button.-square {
  --ifabsh-button-padding: 0;
  border-radius: 50%;
  width: var(--ifabsh-button-height);
}
.button.-circle .button__prefix, .button.-square .button__prefix, .button.-circle .button__suffix, .button.-square .button__suffix {
  display: none;
}
.button.-text {
  --dnm-bt-background-color: transparent;
  --dnm-bt-border-color: transparent;
  --dnm-bt-color: inherit;
  --focus-outline-color: var(--dnm-bt-color);
}
.button.-text:not(:disabled):hover, .button.-text:not(:disabled)._hover, .button.-text:not(:disabled):focus, .button.-text:not(:disabled)._focus, .button.-text:not(._disabled):hover, .button.-text:not(._disabled)._hover, .button.-text:not(._disabled):focus, .button.-text:not(._disabled)._focus {
  --dnm-bt-color: inherit;
}

.button[data-caret] {
  --dnm-bt-caret-size: var(--ifabsh-button-caret-size, 1em);
}
.button[data-caret] .button__suffix {
  display: none;
}
.button[data-caret] .button__caret svg {
  height: var(--dnm-bt-caret-size);
  width: var(--dnm-bt-caret-size);
}

.button[data-loading] {
  cursor: wait;
  pointer-events: none;
  position: relative;
}
.button > .spinner {
  display: none;
}

.button[data-loading] .button__label, .button[data-loading] .button__prefix, .button[data-loading] .button__suffix {
  visibility: hidden;
}
.button[data-loading] > .spinner {
  --dnm-sp-pos: calc(50% - (var(--ifabsh-spinner-size) / 2));
  display: inline-block;
  left: var(--dnm-sp-pos);
  position: absolute;
  top: var(--dnm-sp-pos);
  z-index: 5;
}

.button {
  --ifabsh-button-border-radius: 5px;
  --ifabsh-button-font-size: 16px;
  --ifabsh-button-height: 50px;
  --ifabsh-button-padding: 18px;
  --ifabsh-button-prefix-suffix-gap: var(--wp-spacing);
  --wp-button-icon-font-size: 16px;
  text-transform: uppercase;
}
.button, .button.-outline {
  background: var(--ifabsh-button-background-color);
  border-color: var(--ifabsh-button-border-color);
  color: var(--ifabsh-button-color);
}
.button.-outline {
  --dnm-bt-color: var(--ifabsh-button-color);
}
.button i {
  font-size: var(--wp-button-icon-font-size);
}

.button.-white {
  --ifabsh-button-background-color: var(--wp-color-white, #fff);
  --ifabsh-button-border-color: var(--wp-color-white, #fff);
  --ifabsh-button-color: var(--wp-color-white-contrast, #000);
}
.button.-white:hover, .button.-white:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-white-h), var(--wp-color-white-s), var(--wp-color-white-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-white-h), var(--wp-color-white-s), var(--wp-color-white-l), 90%);
  --ifabsh-button-color: var(--wp-color-white-contrast, #000);
}
.button.-white.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-white, #fff);
  --ifabsh-button-color: var(--wp-color-black, #fff);
  --ifabsh-button-color: var(--wp-color-white, #fff);
}
.button.-white.-outline:hover, .button.-white.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-white, #fff) !important;
  --ifabsh-button-border-color: var(--wp-color-white, #fff) !important;
  --ifabsh-button-color: var(--wp-color-white-contrast, #000) !important;
}

.button.-black {
  --ifabsh-button-background-color: var(--wp-color-black, #000);
  --ifabsh-button-border-color: var(--wp-color-black, #000);
  --ifabsh-button-color: var(--wp-color-black-contrast, #fff);
}
.button.-black:hover, .button.-black:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-black-h), var(--wp-color-black-s), var(--wp-color-black-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-black-h), var(--wp-color-black-s), var(--wp-color-black-l), 90%);
  --ifabsh-button-color: var(--wp-color-black-contrast, #fff);
}
.button.-black.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-black, #000);
  --ifabsh-button-color: var(--wp-color-black, #000);
}
.button.-black.-outline:hover, .button.-black.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-black, #000) !important;
  --ifabsh-button-border-color: var(--wp-color-black, #000) !important;
  --ifabsh-button-color: var(--wp-color-black-contrast, #fff) !important;
}

.button.-danger {
  --ifabsh-button-background-color: var(--wp-color-danger, #fb3e4e);
  --ifabsh-button-border-color: var(--wp-color-danger, #fb3e4e);
  --ifabsh-button-color: var(--wp-color-danger-contrast, #fff);
}
.button.-danger:hover, .button.-danger:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-danger-h), var(--wp-color-danger-s), var(--wp-color-danger-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-danger-h), var(--wp-color-danger-s), var(--wp-color-danger-l), 90%);
  --ifabsh-button-color: var(--wp-color-danger-contrast, #fff);
}
.button.-danger.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-danger, #fb3e4e);
  --ifabsh-button-color: var(--wp-color-black, #fb3e4e);
}
.button.-danger.-outline:hover, .button.-danger.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-danger, #fb3e4e) !important;
  --ifabsh-button-border-color: var(--wp-color-danger, #fb3e4e) !important;
  --ifabsh-button-color: var(--wp-color-danger-contrast, #fff) !important;
}

.button.-success {
  --ifabsh-button-background-color: var(--wp-color-success, #15c182);
  --ifabsh-button-border-color: var(--wp-color-success, #15c182);
  --ifabsh-button-color: var(--wp-color-success-contrast, #fff);
}
.button.-success:hover, .button.-success:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-success-h), var(--wp-color-success-s), var(--wp-color-success-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-success-h), var(--wp-color-success-s), var(--wp-color-success-l), 90%);
  --ifabsh-button-color: var(--wp-color-success-contrast, #fff);
}
.button.-success.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-success, #15c182);
  --ifabsh-button-color: var(--wp-color-black, #15c182);
}
.button.-success.-outline:hover, .button.-success.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-success, #15c182) !important;
  --ifabsh-button-border-color: var(--wp-color-success, #15c182) !important;
  --ifabsh-button-color: var(--wp-color-success-contrast, #fff) !important;
}

.button.-warning {
  --ifabsh-button-background-color: var(--wp-color-warning, #fca311);
  --ifabsh-button-border-color: var(--wp-color-warning, #fca311);
  --ifabsh-button-color: var(--wp-color-warning-contrast, #000);
}
.button.-warning:hover, .button.-warning:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-warning-h), var(--wp-color-warning-s), var(--wp-color-warning-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-warning-h), var(--wp-color-warning-s), var(--wp-color-warning-l), 90%);
  --ifabsh-button-color: var(--wp-color-warning-contrast, #000);
}
.button.-warning.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-warning, #fca311);
  --ifabsh-button-color: var(--wp-color-black, #fca311);
}
.button.-warning.-outline:hover, .button.-warning.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-warning, #fca311) !important;
  --ifabsh-button-border-color: var(--wp-color-warning, #fca311) !important;
  --ifabsh-button-color: var(--wp-color-warning-contrast, #000) !important;
}

.button.-info {
  --ifabsh-button-background-color: var(--wp-color-info, #2db5cd);
  --ifabsh-button-border-color: var(--wp-color-info, #2db5cd);
  --ifabsh-button-color: var(--wp-color-info-contrast, #000);
}
.button.-info:hover, .button.-info:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-info-h), var(--wp-color-info-s), var(--wp-color-info-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-info-h), var(--wp-color-info-s), var(--wp-color-info-l), 90%);
  --ifabsh-button-color: var(--wp-color-info-contrast, #000);
}
.button.-info.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-info, #2db5cd);
  --ifabsh-button-color: var(--wp-color-black, #2db5cd);
}
.button.-info.-outline:hover, .button.-info.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-info, #2db5cd) !important;
  --ifabsh-button-border-color: var(--wp-color-info, #2db5cd) !important;
  --ifabsh-button-color: var(--wp-color-info-contrast, #000) !important;
}

.button.-primary {
  --ifabsh-button-background-color: var(--wp-color-primary, #0d60b0);
  --ifabsh-button-border-color: var(--wp-color-primary, #0d60b0);
  --ifabsh-button-color: var(--wp-color-primary-contrast, #fff);
}
.button.-primary:hover, .button.-primary:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-primary-h), var(--wp-color-primary-s), var(--wp-color-primary-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-primary-h), var(--wp-color-primary-s), var(--wp-color-primary-l), 90%);
  --ifabsh-button-color: var(--wp-color-primary-contrast, #fff);
}
.button.-primary.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-primary, #0d60b0);
  --ifabsh-button-color: var(--wp-color-black, #0d60b0);
}
.button.-primary.-outline:hover, .button.-primary.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-primary, #0d60b0) !important;
  --ifabsh-button-border-color: var(--wp-color-primary, #0d60b0) !important;
  --ifabsh-button-color: var(--wp-color-primary-contrast, #fff) !important;
}

.button.-secondary {
  --ifabsh-button-background-color: var(--wp-color-secondary, #077d61);
  --ifabsh-button-border-color: var(--wp-color-secondary, #077d61);
  --ifabsh-button-color: var(--wp-color-secondary-contrast, #fff);
}
.button.-secondary:hover, .button.-secondary:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-secondary-h), var(--wp-color-secondary-s), var(--wp-color-secondary-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-secondary-h), var(--wp-color-secondary-s), var(--wp-color-secondary-l), 90%);
  --ifabsh-button-color: var(--wp-color-secondary-contrast, #fff);
}
.button.-secondary.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-secondary, #077d61);
  --ifabsh-button-color: var(--wp-color-black, #077d61);
}
.button.-secondary.-outline:hover, .button.-secondary.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-secondary, #077d61) !important;
  --ifabsh-button-border-color: var(--wp-color-secondary, #077d61) !important;
  --ifabsh-button-color: var(--wp-color-secondary-contrast, #fff) !important;
}

.button.-grey {
  --ifabsh-button-background-color: var(--wp-color-grey, #eaf1f7);
  --ifabsh-button-border-color: var(--wp-color-grey, #eaf1f7);
  --ifabsh-button-color: var(--wp-color-grey-contrast, #000);
}
.button.-grey:hover, .button.-grey:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-grey-h), var(--wp-color-grey-s), var(--wp-color-grey-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-grey-h), var(--wp-color-grey-s), var(--wp-color-grey-l), 90%);
  --ifabsh-button-color: var(--wp-color-grey-contrast, #000);
}
.button.-grey.-outline {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-grey, #eaf1f7);
  --ifabsh-button-color: var(--wp-color-black, #eaf1f7);
}
.button.-grey.-outline:hover, .button.-grey.-outline:focus {
  --ifabsh-button-background-color: var(--wp-color-grey, #eaf1f7) !important;
  --ifabsh-button-border-color: var(--wp-color-grey, #eaf1f7) !important;
  --ifabsh-button-color: var(--wp-color-grey-contrast, #000) !important;
}

.button.-grey-dark, .button.-default {
  --ifabsh-button-background-color: var(--wp-color-grey-dark, #d9d9d9);
  --ifabsh-button-border-color: var(--wp-color-grey-dark, #d9d9d9);
  --ifabsh-button-color: var(--wp-color-grey-dark-contrast, #000);
}
.button.-grey-dark:hover, .button.-default:hover, .button.-grey-dark:focus, .button.-default:focus {
  --ifabsh-button-background-color: hsla(var(--wp-color-grey-dark-h), var(--wp-color-grey-dark-s), var(--wp-color-grey-dark-l), 90%);
  --ifabsh-button-border-color: hsla(var(--wp-color-grey-dark-h), var(--wp-color-grey-dark-s), var(--wp-color-grey-dark-l), 90%);
  --ifabsh-button-color: var(--wp-color-grey-dark-contrast, #000);
}
.button.-grey-dark.-outline, .button.-outline.-default {
  --ifabsh-button-background-color: transparent;
  --ifabsh-button-border-color: var(--wp-color-grey-dark, #d9d9d9);
  --ifabsh-button-color: var(--wp-color-black, #d9d9d9);
}
.button.-grey-dark.-outline:hover, .button.-outline.-default:hover, .button.-grey-dark.-outline:focus, .button.-outline.-default:focus {
  --ifabsh-button-background-color: var(--wp-color-grey-dark, #d9d9d9) !important;
  --ifabsh-button-border-color: var(--wp-color-grey-dark, #d9d9d9) !important;
  --ifabsh-button-color: var(--wp-color-grey-dark-contrast, #000) !important;
}

.button.-grey, .button.-grey-dark, .button.-default {
  --ifabsh-button-color: var(--wp-color-grey-contrast) !important;
}
.button.-circle, .button.-square {
  --ifabsh-button-padding: 0 !important;
  max-width: var(--ifabsh-button-height);
  width: var(--ifabsh-button-height);
}
.button.-square {
  border-radius: 5px;
}

.button.-s {
  --ifabsh-button-height: 30px;
  --ifabsh-button-padding: calc(var(--wp-spacing-s) * 3);
  text-transform: none;
}
.button:not(.-s) {
  letter-spacing: 0.89px;
}

.list {
  --ifabsh-list-marker-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-list-marker-font-size: 1em;
  --ifabsh-list-marker-gap: var(--ifabsh-spacing-xs, 0.25rem);
  --ifabsh-list-item-margin: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-list-nested-margin: var(--ifabsh-spacing-s, 0.5rem);
}
.list,
.list ul,
.list ol {
  padding: 0;
}
.list li {
  list-style-type: none;
  margin: var(--ifabsh-list-item-margin) 0;
  position: relative;
}
.list li:first-child {
  margin-top: 0;
}
.list li:last-child {
  margin-bottom: 0;
}
.list li ul,
.list li ol {
  margin: var(--ifabsh-list-nested-margin) 0;
}

ul.list {
  --ifabsh-ul-marker-color: var(--ifabsh-list-marker-color);
  --ifabsh-ul-marker-font-size: var(--ifabsh-list-marker-font-size);
  --ifabsh-ul-marker-gap: var(--ifabsh-list-marker-gap);
  --ifabsh-ul-marker-icon: "•"; /* stylelint-disable-line string-quotes */
  --ifabsh-ul-nested-marker-font-size: var(--ifabsh-ul-marker-font-size);
  --ifabsh-ul-nested-marker-gap: var(--ifabsh-ul-marker-gap);
}
ul.list > li,
ul.list ul > li {
  --dnm-ul-marker-gap: calc(var(--ifabsh-ul-marker-font-size) + var(--ifabsh-ul-marker-gap));
  padding-left: var(--dnm-ul-marker-gap);
}
ul.list > li::before,
ul.list ul > li::before {
  color: var(--dnm-ul-marker-color, var(--ifabsh-ul-marker-color));
  content: var(--dnm-ul-marker-icon, var(--ifabsh-ul-marker-icon));
  display: block;
  font-size: var(--dnm-ul-marker-font-size, var(--ifabsh-ul-marker-font-size));
  left: 0;
  overflow: hidden;
  position: absolute;
}
ul.list ul > li {
  --dnm-ul-marker-color: var(--ifabsh-ul-nested-marker-color, var(--ifabsh-ul-marker-color));
  --dnm-ul-marker-font-size: var(--ifabsh-ul-nested-marker-font-size, var(--ifabsh-ul-marker-font-size));
  --dnm-ul-marker-icon: var(--ifabsh-ul-nested-marker-icon, var(--ifabsh-ul-marker-icon));
  --dnm-ul-marker-gap: calc(var(--ifabsh-ul-nested-marker-font-size) + var(--ifabsh-ul-nested-marker-gap));
}

ol.list {
  --ifabsh-ol-marker-color: var(--ifabsh-list-marker-color);
  --ifabsh-ol-marker-font-size: var(--ifabsh-list-marker-font-size);
  --ifabsh-ol-marker-gap: var(--ifabsh-list-marker-gap);
  --dnm-ol-nested-index: 0.0; /* stylelint-disable-line number-no-trailing-zeros */
  --dnm-ol-nested-index-add: 0.0; /* stylelint-disable-line number-no-trailing-zeros */
}
ol.list,
ol.list ol {
  counter-reset: count-ol;
}
ol.list > li,
ol.list ol > li {
  counter-increment: count-ol;
  display: flex;
  flex-wrap: nowrap;
  gap: var(--ifabsh-ol-marker-gap);
  justify-content: flex-start;
}
ol.list > li::before,
ol.list ol > li::before {
  color: var(--dnm-ol-marker-color, var(--ifabsh-ol-marker-color));
  content: counters(count-ol, ".") ". "; /* stylelint-disable-line string-quotes */
  display: flex;
  flex: 0 0 auto;
  font-size: var(--dnm-ol-marker-font-size, var(--ifabsh-ol-marker-font-size));
  text-align: left;
}
ol.list ol > li {
  --dnm-ol-marker-color: var(--ifabsh-ol-nested-marker-color, var(--ifabsh-ol-marker-color));
  --dnm-ol-marker-font-size: var(--ifabsh-ol-nested-marker-font-size, var(--ifabsh-ol-marker-font-size));
}

ul.list,
ol.list {
  --wp--li-color: inherit;
}
ul.list > li,
ol.list > li {
  color: var(--wp--li-color);
}

ul.list {
  --ifabsh-ul-marker-icon: "";
  --ifabsh-ul-marker-color: var(--wp-color-secondary);
  --ifabsh-ul-marker-gap: var(--wp-spacing-xs);
  --ifabsh-ul-marker-font-size: var(--wp-body-font-size);
  --wp-ul-marker-font-weight: var(--wp-font-weight-normal);
}
ul.list li::before {
  font-family: "Font Awesome 6 Pro"; /* stylelint-disable-line string-quotes */
  font-weight: var(--wp-ul-marker-font-weight);
  top: 0.0625rem;
}
ul.list.-check {
  --ifabsh-ul-marker-gap: var(--wp-spacing-s);
  --ifabsh-ul-marker-icon: "";
  --wp-ul-marker-font-weight: 700;
}

ol.list {
  --ifabsh-ol-marker-color: var(--wp-color-secondary);
}

.details {
  --ifabsh-details-background-color: transparent;
  --ifabsh-details-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-details-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-details-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-details-padding-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-details-padding-y: var(--ifabsh-spacing, 1rem);
  --ifabsh-details-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-details-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --ifabsh-details-toggle-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-details-toggle-color-active: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-details-toggle-padding-x: var(--ifabsh-details-padding-x);
  --ifabsh-details-toggle-padding-y: var(--ifabsh-details-padding-y);
  --dnm-de-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-details-duration));
  background-color: var(--ifabsh-details-background-color);
  border: var(--ifabsh-details-border-width) solid var(--ifabsh-details-border-color);
  border-radius: var(--ifabsh-details-border-radius);
  overflow-anchor: auto;
}

.details__header {
  align-items: center;
  background-color: transparent;
  border: 0 none;
  border-radius: inherit;
  color: var(--ifabsh-details-toggle-color-active);
  cursor: pointer;
  display: flex;
  font-size: var(--ifabsh-details-toggle-font-size, 1rem);
  gap: var(--ifabsh-details-toggle-gap, 1em);
  height: auto;
  line-height: normal;
  padding: var(--ifabsh-details-toggle-padding-y, var(--ifabsh-details-padding-y)) var(--ifabsh-details-toggle-padding-x, var(--ifabsh-details-padding-x));
  text-align: left;
  transition: all var(--dnm-de-duration) var(--ifabsh-details-timing-function);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  width: 100%;
}
.details__header-summary {
  align-items: center;
  flex: 1 1 auto;
}
.details__header-icon {
  align-items: center;
  color: var(--ifabsh-details-toggle-icon-color-active, var(--ifabsh-details-toggle-color-active));
  display: flex;
  flex: 0 0 auto;
  font-size: var(--ifabsh-details-toggle-icon-size, 0.5em);
  height: 1em;
  position: relative;
  transform: rotate(135deg);
  transition: all var(--dnm-de-duration) var(--ifabsh-details-timing-function);
  width: 1em;
}
.details__header-icon::before {
  border: var(--ifabsh-details-toggle-icon-stroke, 1px) solid currentColor;
  border-bottom: 0;
  border-left: 0;
  content: ""; /* stylelint-disable-line string-quotes */
  height: 1em;
  width: 1em;
}
.details__header[aria-expanded=false] {
  color: var(--ifabsh-details-toggle-color);
}
.details__header[aria-expanded=false] .details__header-icon {
  color: var(--ifabsh-details-toggle-icon-color, var(--ifabsh-details-toggle-color));
  transform: rotate(45deg);
}
.details__header:focus {
  box-shadow: none;
  outline: none;
}
[dir=rtl] .details__header {
  text-align: right;
}
[dir=rtl] .details__header[aria-expanded=false] .details__header-icon {
  transform: rotate(225deg);
}

.details__body {
  overflow: hidden;
}
.details__body.collapse {
  display: none;
}
.details__body.collapse.show {
  display: block;
}
.details__body.collapsing {
  height: 0;
  overflow: hidden;
  position: relative;
  transition: height var(--dnm-de-duration) var(--ifabsh-details-timing-function);
}
.details__body.show {
  display: block;
}

.details__content {
  padding: var(--ifabsh-details-panel-padding-y, var(--ifabsh-details-padding-y)) var(--ifabsh-details-panel-padding-x, var(--ifabsh-details-padding-x));
}
.details__content > *:first-child:not(div) {
  margin-top: 0;
}
.details__content > *:last-child:not(div) {
  margin-bottom: 0;
}

.details-group {
  --ifabsh-details-group-gap: var(--ifabsh-spacing-s, 0.5rem);
}
.details-group .details + .details {
  margin-top: var(--ifabsh-details-group-gap);
}

.details {
  --ifabsh-details-border-color: var(--wp-color-grey);
  --ifabsh-details-border-width: 2px;
  --ifabsh-details-toggle-color: var(--wp-color-text);
  --ifabsh-details-toggle-color-active: var(--wp-color-text);
  --ifabsh-details-toggle-icon-size: 1rem;
  --ifabsh-details-toggle-padding-x: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
  --ifabsh-details-toggle-padding-y: 14px;
  --ifabsh-details-panel-padding-x: calc(var(--wp-spacing) + var(--wp-spacing-s));
  --ifabsh-details-panel-padding-y: var(--wp-spacing-l);
  --ifabsh-details-group-gap: calc(var(--wp-spacing) + var(--wp-spacing-xs));
  border: none;
}
.details__header {
  border: var(--ifabsh-details-border-width) solid var(--ifabsh-details-border-color);
  border-radius: 5px;
}
.details__header-summary {
  letter-spacing: 0.89px;
  text-transform: uppercase;
}
.details__header-icon {
  color: var(--wp-color-primary) !important;
  font-size: var(--wp-font-size-s);
  transform: rotate(180deg);
  width: auto;
}
.details__header-icon::before {
  border: none;
  content: "\f13a";
  font-family: "Font Awesome 6 Pro";
  font-weight: var(--wp-font-weight-bold);
  height: auto;
  width: auto;
}
.details__header[aria-expanded=false] .details__header-icon {
  transform: rotate(0);
}
.details__body.show[hidden] {
  display: block !important;
}
.details__content {
  padding: calc(var(--ifabsh-details-panel-padding-y) / 2) var(--ifabsh-details-panel-padding-x) var(--ifabsh-details-panel-padding-y) var(--ifabsh-details-panel-padding-x);
}

.card {
  --ifabsh-card-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-card-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-card-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-card-padding: var(--ifabsh-spacing, 1rem);
  --ifabsh-card-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-card-timing-function: var(--ifabsh-timing-function, ease-in-out);
  background-color: var(--ifabsh-card-background-color, transparent);
  border: var(--ifabsh-card-border-width) solid var(--ifabsh-card-border-color);
  border-radius: var(--ifabsh-card-border-radius);
  display: flex;
  flex-direction: column;
  transition-duration: var(--ifabsh-card-duration);
  transition-property: border-color, box-shadow;
  transition-timing-function: var(--ifabsh-card-timing-function);
}
.card .card-title {
  font-weight: var(--ifabsh-card-title-font-weight, bold);
  -webkit-hyphens: manual;
  hyphens: manual;
  margin: 0;
  overflow-wrap: break-word;
}
.card__media {
  border-top-left-radius: var(--ifabsh-card-border-radius);
  border-top-right-radius: var(--ifabsh-card-border-radius);
  margin: calc(var(--ifabsh-card-border-width) * -1);
  overflow: hidden;
}
.card__media .figure__caption {
  display: none;
}
.card__media > * {
  display: block;
  margin: 0;
  width: 100%;
}
.card__header, .card__body, .card__footer {
  transition-duration: var(--ifabsh-card-duration);
  transition-property: border-color;
  transition-timing-function: var(--ifabsh-card-timing-function);
}
.card__header, .card__footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.card__header {
  border-bottom: var(--ifabsh-card-border-width) solid var(--ifabsh-card-border-color);
  flex-wrap: wrap;
  gap: calc(var(--ifabsh-card-padding) / 2);
  padding: var(--ifabsh-card-padding);
}
.card__body {
  flex-grow: 1;
  padding: var(--ifabsh-card-padding);
}
.card__body > * {
  margin: 0;
}
.card__body > * + * {
  margin-top: var(--ifabsh-card-content-gap, var(--ifabsh-spacing-s, 0.5rem));
}
.card__body > :first-child {
  margin-top: 0;
}
.card__body > :last-child {
  margin-bottom: 0;
}
.card__footer {
  border-top: var(--ifabsh-card-border-width) solid var(--ifabsh-card-border-color);
  padding: var(--ifabsh-card-padding);
}

.card {
  --ifabsh-card-border-color: transparent;
  --ifabsh-card-border-radius: 5px;
  --ifabsh-card-border-width: 0;
  border-radius: var(--ifabsh-card-border-radius);
  overflow: hidden;
}
.card__media + .card__header {
  border-top-left-radius: var(--ifabsh-card-border-radius);
  border-top-right-radius: var(--ifabsh-card-border-radius);
  margin-top: calc(var(--ifabsh-card-border-radius) * -1);
  z-index: 1;
}
.card__header, .card__body {
  background: var(--wp-color-grey);
}
.card__header {
  border-bottom: 0;
  -moz-column-gap: calc(var(--ifabsh-card-padding) / 2);
       column-gap: calc(var(--ifabsh-card-padding) / 2);
  padding-bottom: 0;
  row-gap: calc(var(--ifabsh-card-padding) / 4);
}
.card__footer {
  border-top: 0;
  padding-top: 0;
}
@media (min-width: 992px) {
  .card {
    --ifabsh-card-padding: var(--wp-spacing-l);
  }
}

.section.-colored .card__header, .section.-colored .card__body {
  background: var(--wp-color-white);
}

/**
 * Inhalte visuell ausblenden aber für unterstützende Technologien zugänglich
 * halten.
 */
/**
 * Zeige Inhalt nur wenn er fokussiert wird/wurde.
 */
.drawer {
  --ifabsh-drawer-size: 25rem;
  --ifabsh-drawer-padding-x: var(--ifabsh-drawer-padding, var(--ifabsh-spacing, 1rem));
  --ifabsh-drawer-padding-y: var(--ifabsh-drawer-padding-x);
  --ifabsh-drawer-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-drawer-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-drawer-duration: 0.35s;
  --ifabsh-drawer-timing-function: ease-in-out;
  --dnm-dr-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-drawer-duration));
  -webkit-backdrop-filter: var(--ifabsh-drawer-backdrop-filter, var(--ifabsh-backdrop-filter, none));
          backdrop-filter: var(--ifabsh-drawer-backdrop-filter, var(--ifabsh-backdrop-filter, none));
  display: none;
  height: 100%;
  left: 0;
  overflow: hidden;
  pointer-events: none;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: var(--ifabsh-drawer-zindex, 500);
}
.drawer__title {
  font-size: var(--ifabsh-drawer-title-font-size, inherit);
  -webkit-hyphens: manual;
  hyphens: manual;
  margin: 0;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.drawer__close {
  font-size: var(--ifabsh-drawer-close-font-size, inherit);
}
.drawer__header {
  align-items: center;
  border-bottom: var(--ifabsh-drawer-border-width) solid var(--ifabsh-drawer-border-color);
  color: var(--ifabsh-drawer-header-color, currentColor);
  display: flex;
  font-size: var(--ifabsh-drawer-header-font-size, inherit);
  padding: var(--ifabsh-drawer-padding-y) var(--ifabsh-drawer-padding-x);
}
.drawer__header .drawer__close {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}
.drawer__body {
  flex: 1 1 auto;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: none;
  padding: var(--ifabsh-drawer-padding-y) var(--ifabsh-drawer-padding-x);
  position: relative;
}
.drawer__footer {
  align-items: center;
  border-top: var(--ifabsh-drawer-border-width) solid var(--ifabsh-drawer-border-color);
  color: var(--ifabsh-drawer-footer-color, currentColor);
  display: flex;
  font-size: var(--ifabsh-drawer-footer-font-size, inherit);
  padding: var(--ifabsh-drawer-padding-y) var(--ifabsh-drawer-padding-x);
}
.drawer__panel {
  background-color: var(--ifabsh-drawer-background-color, var(--ifabsh-color-white, #fff));
  border: 0 solid var(--ifabsh-drawer-border-color);
  display: flex;
  flex-direction: column;
  max-height: 100%;
  max-width: 100%;
  overflow: auto;
  pointer-events: all;
  position: absolute;
  transition: var(--dnm-dr-duration) transform var(--ifabsh-drawer-timing-function);
  z-index: 2;
}
.drawer__panel:focus {
  outline: none;
}
.drawer.-initialized {
  display: block;
}

.drawer__overlay {
  background-color: var(--ifabsh-drawer-backdrop-color, var(--ifabsh-backdrop-color, #000));
  bottom: 0;
  display: block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  right: 0;
  top: 0;
  transition: var(--dnm-dr-duration) opacity var(--ifabsh-drawer-timing-function);
}
.drawer.-open .drawer__overlay {
  opacity: var(--ifabsh-drawer-backdrop-opacity, var(--ifabsh-backdrop-opacity, 0.5));
  pointer-events: all;
}

.drawer.-contained {
  position: absolute;
  z-index: initial;
}
.drawer.-contained .drawer__overlay {
  position: absolute;
}

.contains-drawer {
  position: relative;
}

.drawer[data-placement=top] .drawer__panel { /* stylelint-disable-line string-quotes */
  border-bottom-width: var(--ifabsh-drawer-border-width);
  bottom: auto;
  height: var(--ifabsh-drawer-size);
  left: 0;
  right: auto;
  top: 0;
  transform: translate(0, -100%);
  width: 100%;
}

.drawer[data-placement=bottom] .drawer__panel { /* stylelint-disable-line string-quotes */
  border-top-width: var(--ifabsh-drawer-border-width);
  bottom: 0;
  height: var(--ifabsh-drawer-size);
  left: 0;
  right: auto;
  top: auto;
  transform: translate(0, 100%);
  width: 100%;
}

.drawer[data-placement=start] .drawer__panel { /* stylelint-disable-line string-quotes */
  border-right-width: var(--ifabsh-drawer-border-width);
  bottom: auto;
  height: 100%;
  left: 0;
  right: auto;
  top: 0;
  transform: translate(-100%, 0);
  width: var(--ifabsh-drawer-size);
}

.drawer[data-placement=end] .drawer__panel { /* stylelint-disable-line string-quotes */
  border-left-width: var(--ifabsh-drawer-border-width);
  bottom: auto;
  height: 100%;
  left: auto;
  right: 0;
  top: 0;
  transform: translate(100%, 0);
  width: var(--ifabsh-drawer-size);
}

.drawer.-open .drawer__panel {
  transform: translate(0, 0);
}

.drawer {
  --ifabsh-drawer-border-color: hsl(var(--wp-color-black-h), var(--wp-color-black-s), 90%);
  --ifabsh-drawer-title-font-size: var(--wp-font-size-l);
  --ifabsh-drawer-size: 100%;
  --ifabsh-drawer-padding-x: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
  --ifabsh-drawer-padding-y: calc(var(--wp-spacing-s) * 7);
  --wp-drawer-body-background-color: var(--wp-color-primary);
  --wp-drawer-body-color: var(--wp-color-white);
  --wp-drawer-header-padding-y: var(--wp-spacing);
  --wp-drawer-header-padding-x: var(--wp-page-padding-x);
}
@media (min-width: 768px) {
  .drawer {
    --ifabsh-drawer-padding-x: calc(var(--wp-spacing) * 6);
    --ifabsh-drawer-padding-y: calc(var(--wp-spacing) * 5);
    --wp-drawer-header-padding-y: var(--wp-spacing-l);
  }
}
.drawer__header {
  padding: var(--wp-page-header-padding-y) var(--wp-page-header-padding-x) !important;
}
.drawer__body {
  background: var(--wp-drawer-body-background-color);
  color: var(--wp-drawer-body-color);
  --wp-scrollbar-track-color: transparent;
}
.drawer__body > :first-child:not(.row) {
  margin-top: 0;
}
.drawer__body > :last-child:not(.row) {
  margin-bottom: 0;
}
.drawer__body::-webkit-scrollbar {
  height: var(--wp-scrollbar-size, 6px);
  width: var(--wp-scrollbar-size, 6px);
}
.drawer__body::-webkit-scrollbar-thumb {
  background: var(--wp-scrollbar-color, #000);
}
.drawer__body::-webkit-scrollbar-track {
  background: var(--wp-scrollbar-track-color, #fff);
}
.drawer__body {
  scrollbar-face-color: var(--wp-scrollbar-color, #000);
  scrollbar-track-color: var(--wp-scrollbar-track-color, #fff);
}
.drawer__close {
  --ifabsh-icon-button-font-size: 20px;
}
@media (min-width: 768px) {
  .drawer__close {
    --ifabsh-icon-button-font-size: 25px;
  }
}

.drawer.-small {
  top: 88px;
  z-index: 19;
  --ifabsh-drawer-backdrop-color: var(--wp-color-black);
  --ifabsh-drawer-backdrop-opacity: 0.8;
  --ifabsh-drawer-footer-padding-x: calc(var(--wp-spacing-s) * 3);
  --ifabsh-drawer-padding-y: calc(var(--wp-spacing) + var(--wp-spacing-xs));
  --ifabsh-drawer-padding-x: calc(var(--wp-spacing-xl) * 3);
  --ifabsh-drawer-size: var(--wp-page-max-width);
  --wp-drawer-body-background-color: var(--wp-color-grey);
  --wp-drawer-body-color: var(--wp-color-black);
}
@media (min-width: 992px) {
  .drawer.-small {
    top: 163px;
  }
}
.drawer.-small .drawer__overlay {
  transition: none;
}
.drawer.-small .drawer__panel {
  background: transparent;
  border-left-width: 0;
  height: auto;
  transition: none;
}
.drawer.-small .drawer__header, .drawer.-small .drawer__body, .drawer.-small .drawer__footer {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--wp-page-max-width);
  width: 100%;
  background: var(--wp-drawer-body-background-color);
}
.drawer.-small .drawer__header {
  border-bottom: 0;
  padding: 0 !important;
}
.drawer.-small .drawer__body {
  flex: none;
  padding: var(--wp-spacing-l) var(--wp-spacing);
}
@media (min-width: 992px) {
  .drawer.-small .drawer__body {
    padding: var(--wp-spacing-xs) var(--ifabsh-drawer-padding-x) var(--ifabsh-drawer-padding-y) var(--ifabsh-drawer-padding-x);
  }
}
.drawer.-small .drawer__footer {
  border-top: none;
  display: flex;
  justify-content: flex-end;
  padding: 0 var(--ifabsh-drawer-footer-padding-x);
}
.drawer.-small .drawer__close {
  padding: 0;
}
.drawer.-small .drawer__close > .icon-button__icon {
  background: var(--wp-color-primary);
  color: var(--wp-color-white);
  font-size: 1rem;
  height: 40px;
  line-height: 1;
  width: 40px;
}
.drawer.-small .drawer__close > .icon-button__icon:hover, .drawer.-small .drawer__close > .icon-button__icon:focus {
  background: var(--wp-color-secondary);
}
.drawer.-small .drawer__close > .icon-button__icon > svg {
  height: 1em;
}
.drawer.-small.-open .drawer__panel {
  left: 50%;
  transform: translate(-50%, 0);
}

.drawer[data-placement=bottom] {
  --ifabsh-drawer-border-width: 0;
}
.drawer[data-placement=bottom].-small {
  top: 0;
}
.drawer[data-placement=bottom] .drawer__panel {
  bottom: 0;
  top: auto;
}

.social-links {
  align-items: center;
  display: flex;
  justify-content: center;
}
.social-links__inner {
  display: flex;
  flex-direction: column;
  gap: var(--wp-spacing);
}
@media (min-width: 576px) {
  .social-links__inner {
    flex-direction: row;
    gap: var(--wp-spacing-l);
  }
}

.file {
  --ifabsh-file-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-file-color-hover: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-file-background-color: transparent;
  --ifabsh-file-background-color-hover: var(--ifabsh-file-background-color);
  --ifabsh-file-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-file-border-color-hover: var(--ifabsh-file-border-color);
  --ifabsh-file-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-file-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-file-gap: var(--ifabsh-spacing, 1rem);
  --ifabsh-file-padding-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-file-padding-y: var(--ifabsh-spacing, 1rem);
  --ifabsh-file-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-file-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-fi-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-file-duration));
  --dnm-fi-color: var(--ifabsh-file-color);
  --dnm-fi-bg-color: var(--ifabsh-file-background-color);
  --dnm-fi-border-color: var(--ifabsh-file-border-color);
  --dnm-fi-desc-color: var(--ifabsh-file-description-color, var(--ifabsh-file-color));
  --dnm-fi-prefix-color: var(--ifabsh-file-prefix-color, var(--ifabsh-file-color));
  --dnm-fi-suffix-color: var(--ifabsh-file-suffix-color, var(--ifabsh-file-color));
  align-items: center;
  background-color: var(--dnm-fi-bg-color);
  border: var(--ifabsh-file-border-width) solid var(--dnm-fi-border-color);
  border-radius: var(--ifabsh-file-border-radius);
  color: var(--dnm-fi-color);
  display: flex;
  font-size: var(--ifabsh-file-font-size, 1rem);
  gap: var(--ifabsh-file-gap);
  justify-content: flex-start;
  line-height: 1;
  list-style: none;
  overflow: hidden;
  padding: var(--ifabsh-file-padding-y) var(--ifabsh-file-padding-x);
  pointer-events: none;
  position: relative;
  transition: all var(--dnm-fi-duration) var(--ifabsh-file-timing-function);
}
.file i,
.file .icon {
  pointer-events: none;
  position: relative;
}
.file i:not(.far):not(.fa):not(.fas):not(.fab):not(.fal),
.file .icon:not(.far):not(.fa):not(.fas):not(.fab):not(.fal) {
  font-weight: normal;
}
.file:hover {
  --dnm-fi-color: var(--ifabsh-file-color-hover);
  --dnm-fi-bg-color: var(--ifabsh-file-background-color-hover);
  --dnm-fi-border-color: var(--ifabsh-file-border-color-hover);
  --dnm-fi-prefix-color: var(--ifabsh-file-prefix-color-hover, var(--ifabsh-file-color));
  --dnm-fi-desc-color: var(--ifabsh-file-description-color-hover, var(--ifabsh-file-color));
  --dnm-fi-suffix-color: var(--ifabsh-file-suffix-color-hover, var(--ifabsh-file-color));
}
.file__label {
  align-self: center;
  color: currentColor;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: none;
  white-space: nowrap;
  z-index: 2;
}
.file__label .title {
  display: block;
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.file__label .description {
  color: var(--dnm-fi-desc-color);
  display: block;
  font-size: var(--ifabsh-file-description-font-size, var(--ifabsh-font-size-xs, 0.5rem));
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
a.file__label {
  color: inherit;
  pointer-events: auto;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
a.file__label::after {
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.file__prefix, .file__suffix {
  align-items: center;
  align-self: center;
  display: flex;
  flex: 0 0 auto;
}
.file__prefix {
  color: var(--dnm-fi-prefix-color);
  font-size: var(--ifabsh-file-prefix-font-size, 1em);
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  z-index: 1;
}
.file__prefix > i::before {
  content: "\f15b"; /* stylelint-disable-line string-quotes */
}
.file__suffix {
  color: var(--dnm-fi-suffix-color);
  font-size: var(--ifabsh-file-suffix-font-size, var(--ifabsh-font-size-xs, 0.5rem));
  margin-left: auto;
  text-transform: uppercase;
  white-space: nowrap;
  z-index: 3;
}
.file__suffix > * + *::before {
  content: ", "; /* stylelint-disable-line string-quotes */
}
.file:focus-within {
  outline: var(--ifabsh-focus-outline-width) var(--ifabsh-focus-outline-style) var(--focus-outline-color, var(--ifabsh-focus-outline-color));
  outline-offset: var(--ifabsh-focus-outline-offset);
}
.file:focus-within a.file__label, .file:focus-within a.file__label:focus {
  box-shadow: none;
  outline: none;
}

.file.-compact {
  --ifabsh-file-compact-gap: calc(var(--ifabsh-file-gap) / 2);
  --ifabsh-file-compact-padding-x: calc(var(--ifabsh-file-padding-x) / 2);
  --ifabsh-file-compact-padding-y: calc(var(--ifabsh-file-padding-y) / 2);
  gap: var(--ifabsh-file-compact-gap);
  padding: var(--ifabsh-file-compact-padding-y) var(--ifabsh-file-compact-padding-x);
}
.file.-compact .file__label .description {
  /* stylelint-disable declaration-no-important */
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  /* stylelint-enable declaration-no-important */
}

.file-group {
  --ifabsh-file-group-gap: var(--ifabsh-spacing-s, 0.5rem);
}
.file-group .file + .file {
  margin-top: var(--ifabsh-file-group-gap);
}

.file-group.-stacked {
  --ifabsh-file-group-gap: 0;
}
.file-group.-stacked .file {
  z-index: 1;
}
.file-group.-stacked .file:hover {
  z-index: 2;
}
.file-group.-stacked .file:first-child:not(:last-child) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.file-group.-stacked .file:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.file-group.-stacked .file:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.file-group.-stacked .file:not(:first-child) {
  margin-top: calc(var(--ifabsh-file-border-width) * -1);
}

.file {
  --ifabsh-file-padding-x: 0;
  --ifabsh-file-padding-y: calc(var(--wp-spacing-s) + var(--wp-spacing-xs));
  --ifabsh-file-color-hover: var(--wp-color-secondary);
  --ifabsh-file-prefix-color: var(--wp-color-secondary);
  --ifabsh-file-prefix-color-hover: var(--ifabsh-file-color-hover);
  --ifabsh-file-suffix-color: var(--ifabsh-file-prefix-color);
  --ifabsh-file-suffix-color-hover: var(--ifabsh-file-prefix-color-hove);
  --ifabsh-file-suffix-font-size: 0.75em;
  border-left: none;
  border-right: none;
  border-top: none;
  /* stylelint-disable string-quotes */
  /* stylelint-enable string-quotes */
}
.file__label .description {
  display: none;
}
.file__prefix > i {
  font-weight: 400;
}
.file__prefix > i::before {
  content: "\e094";
}
.file__prefix > i.-pdf::before {
  content: "\f1c1";
}
.file__prefix > i.-csv::before {
  content: "\f6dd";
}
.file__prefix > i.-txt::before {
  content: "\f15c";
}
.file__prefix > i[class*=-doc]::before, .file__prefix > i[class*=-dot]::before, .file__prefix > i.-odt::before {
  content: "\f1c2";
}
.file__prefix > i[class*=-xls]::before, .file__prefix > i[class*=-xlt]::before {
  content: "\f1c3";
}
.file__prefix > i[class*=-ppt]::before {
  content: "\f1c4";
}
.file__prefix > i[class*=-jp]::before, .file__prefix > i.-png::before, .file__prefix > i.-gif::before {
  content: "\f1c5";
}
.file__prefix > i.-vimeo::before, .file__prefix > i.-youtube::before, .file__prefix > i.-mp4::before {
  content: "\f1c8";
}
.file__prefix > i.-mp3::before, .file__prefix > i.-ogg::before, .file__prefix > i.-wav::before {
  content: "\f1c7";
}
.file__prefix > i.-ace::before, .file__prefix > i.-bin::before, .file__prefix > i.-cab::before, .file__prefix > i.-zip::before, .file__prefix > i.-rar::before {
  content: "\f1c6";
}
.file__suffix {
  margin-left: 0;
}

.file-group {
  --ifabsh-file-group-gap: 0;
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form {
  --ifabsh-form-control-background-color: var(--ifabsh-input-background-color, #fff);
  --ifabsh-form-control-background-color-hover: var(--ifabsh-form-control-background-color);
  --ifabsh-form-control-background-color-focus: var(--ifabsh-form-control-background-color);
  --ifabsh-form-control-border-color: var(--ifabsh-input-border-color, #e8e8e8);
  --ifabsh-form-control-border-color-hover: var(--ifabsh-form-control-border-color);
  --ifabsh-form-control-border-color-focus: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-form-control-border-width: var(--ifabsh-input-border-width, var(--ifabsh-border-width, 1px));
  --ifabsh-form-control-border-radius: var(--ifabsh-input-border-radius, var(--ifabsh-border-radius, 0px));
  --ifabsh-form-control-color: var(--ifabsh-input-color, #000);
  --ifabsh-form-control-color-hover: var(--ifabsh-form-control-color);
  --ifabsh-form-control-color-focus: var(--ifabsh-form-control-color);
  --ifabsh-form-control-font-size: var(--ifabsh-input-font-size, 1rem);
  --ifabsh-form-control-font-style: var(--ifabsh-input-font-style, normal);
  --ifabsh-form-control-font-weight: var(--ifabsh-input-font-weight, normal);
  --ifabsh-form-control-height: var(--ifabsh-input-height, var(--ifabsh-font-size, 40px));
  --ifabsh-form-control-padding: var(--ifabsh-input-padding, var(--ifabsh-spacing, 1rem));
  --ifabsh-form-control-duration: var(--ifabsh-input-duration, var(--ifabsh-duration, 0.15s));
  --ifabsh-form-control-timing-function: var(--ifabsh-input-timing-function, var(--ifabsh-timing-function, ease-in-out));
  --ifabsh-form-control-disabled-background-color: var(--ifabsh-input-disabled-background-color, #fff);
  --ifabsh-form-control-disabled-opacity: var(--ifabsh-input-disabled-opacity, var(--ifabsh-disabled-opacity, 0.4));
  --ifabsh-form-control-readonly-background-color: var(--ifabsh-input-readonly-background-color, #f1f1f1);
  --ifabsh-form-control-readonly-opacity: var(--ifabsh-input-readonly-opacity, var(--ifabsh-readonly-opacity, 1));
  --ifabsh-form-invalid-border-color: var(--ifabsh-color-invalid, #fb3e4e);
  --ifabsh-form-invalid-label-color: var(--ifabsh-color-invalid, #fb3e4e);
  --ifabsh-form-label-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-form-label-font-size: var(--ifabsh-font-size-s, 0.75rem);
  --ifabsh-form-label-font-style: normal;
  --ifabsh-form-label-font-weight: normal;
  --ifabsh-form-label-margin: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-form-text-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-form-text-font-size: var(--ifabsh-font-size-xs, 0.5rem);
  --ifabsh-form-text-font-style: normal;
  --ifabsh-form-text-font-weight: normal;
  --ifabsh-form-text-margin: var(--ifabsh-spacing-s, 0.5rem);
}

.form-control, .form-select {
  --dnm-foco-background-color: var(--ifabsh-form-control-background-color);
  --dnm-foco-border-color: var(--ifabsh-form-control-border-color);
  --dnm-foco-color: var(--ifabsh-form-control-color);
  --dnm-foco-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-form-control-duration));
  --dnm-foco-line-height: calc(var(--ifabsh-form-control-height) - calc(var(--ifabsh-form-control-border-width) * 2));
  --dnm-poco-padding-left: var(--ifabsh-form-control-padding-left, var(--ifabsh-form-control-padding));
  --dnm-poco-padding-right: var(--ifabsh-form-control-padding-right, var(--ifabsh-form-control-padding));
  background-color: var(--dnm-foco-background-color) !important; /* stylelint-disable-line declaration-no-important */
  border: var(--ifabsh-form-control-border-width) solid var(--dnm-foco-border-color) !important; /* stylelint-disable-line declaration-no-important */
  border-radius: var(--ifabsh-form-control-border-radius);
  color: var(--dnm-foco-color) !important; /* stylelint-disable-line declaration-no-important */
  font-size: var(--ifabsh-form-control-font-size);
  font-style: var(--ifabsh-form-control-font-style);
  font-weight: var(--ifabsh-form-control-font-weight);
  line-height: var(--dnm-foco-line-height);
  padding-bottom: 0;
  padding-left: var(--dnm-poco-padding-left) !important; /* stylelint-disable-line declaration-no-important */
  padding-right: var(--dnm-poco-padding-right) !important; /* stylelint-disable-line declaration-no-important */
  padding-top: 0; /* stylelint-disable-line declaration-block-no-redundant-longhand-properties */
  text-transform: var(--ifabsh-form-control-text-transform, var(--ifabsh-input-text-transform, none));
  transition-duration: var(--dnm-foco-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-form-control-timing-function);
}
.form-control:hover:not(:disabled), .form-control:hover:not([disabled]), .form-control:hover:not(._disabled), .form-select:hover:not(:disabled), .form-select:hover:not([disabled]), .form-select:hover:not(._disabled) {
  --dnm-foco-background-color: var(--ifabsh-form-control-background-color-hover);
  --dnm-foco-border-color: var(--ifabsh-form-control-border-color-hover);
  --dnm-foco-color: var(--ifabsh-form-control-color-hover);
  box-shadow: none;
}
.form-control:focus, .form-select:focus {
  outline: none;
}
.form-control:focus:not(:disabled), .form-control:focus:not([disabled]), .form-control:focus:not(._disabled), .form-select:focus:not(:disabled), .form-select:focus:not([disabled]), .form-select:focus:not(._disabled) {
  --dnm-foco-background-color: var(--ifabsh-form-control-background-color-focus);
  --dnm-foco-border-color: var(--ifabsh-form-control-border-color-focus);
  --dnm-foco-color: var(--ifabsh-form-control-color-focus);
  box-shadow: none;
}
.form-control._focus-visible:focus, .form-control:focus-visible:focus, .form-select._focus-visible:focus, .form-select:focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--ifabsh-focus-outline-color, currentColor);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.form-control:disabled, .form-control[disabled], .form-control._disabled, .form-select:disabled, .form-select[disabled], .form-select._disabled {
  --dnm-foco-background-color: var(--ifabsh-form-control-disabled-background-color);
  opacity: var(--ifabsh-form-control-disabled-opacity);
  pointer-events: none;
}
.form-control:-moz-read-only[readonly], .form-select:-moz-read-only[readonly] {
  --dnm-foco-background-color: var(--ifabsh-form-control-readonly-background-color);
  opacity: var(--ifabsh-form-control-readonly-opacity);
}
.form-control:read-only[readonly], .form-control[readonly], .form-control._readonly, .form-select:read-only[readonly], .form-select[readonly], .form-select._readonly {
  --dnm-foco-background-color: var(--ifabsh-form-control-readonly-background-color);
  opacity: var(--ifabsh-form-control-readonly-opacity);
}

.form-control.-s,
.form-select.-s,
[class*=form-control-sm] { /* stylelint-disable-line string-quotes */
  --ifabsh-form-control-height: var(--ifabsh-input-height-s, 30px);
  --ifabsh-form-control-font-size: var(--ifabsh-input-font-size-s, var(--ifabsh-font-size-s, 0.75rem));
  --ifabsh-form-control-padding: var(--ifabsh-input-padding-s, var(--ifabsh-spacing-s, 0.5rem));
}

.form-control.-l,
.form-select.-l,
[class*=form-control-lg] { /* stylelint-disable-line string-quotes */
  --ifabsh-form-control-height: var(--ifabsh-input-height-l, 50px);
  --ifabsh-form-control-font-size: var(--ifabsh-input-font-size-l, var(--ifabsh-font-size-l, 1.25rem));
  --ifabsh-form-control-padding: var(--ifabsh-input-padding-l, var(--ifabsh-spacing-l, 1.25rem));
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-text {
  color: var(--ifabsh-form-text-color);
  font-size: var(--ifabsh-form-text-font-size);
  font-style: var(--ifabsh-form-text-font-style);
  font-weight: var(--ifabsh-form-text-font-weight);
  margin-top: var(--ifabsh-form-text-margin);
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-fieldset {
  margin: 0;
}
.form-fieldset ~ fieldset {
  margin-top: var(--ifabsh-form-fieldset-margin, var(--ifabsh-spacing, 1rem));
}

.form-legend {
  color: var(--ifabsh-form-legend-color, var(--ifabsh-color-text, #3e3e3e));
  float: none;
  font-size: var(--ifabsh-form-legend-font-size, var(--ifabsh-font-size, 1rem));
  font-weight: var(--ifabsh-form-legend-font-weight, normal);
}
.form-legend:not(:last-child) {
  margin-bottom: var(--ifabsh-form-legend-margin, var(--ifabsh-spacing, 1rem));
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-label {
  color: var(--ifabsh-form-label-color);
  font-size: var(--ifabsh-form-label-font-size);
  font-style: var(--ifabsh-form-label-font-style);
  font-weight: var(--ifabsh-form-label-font-weight);
  margin-bottom: var(--ifabsh-form-label-margin);
}
.form-label__required {
  color: var(--ifabsh-form-label-required-color, currentColor);
  padding-left: var(--ifabsh-form-label-required-margin, var(--ifabsh-spacing-xxs, 0.125rem));
}

.form-label.-match-form-control,
[class*=col-form-label] { /* stylelint-disable-line string-quotes */
  --dnm-lb-height: var(--ifabsh-form-input-height, 40px);
  align-items: center;
  display: inline-flex;
  line-height: normal;
  margin-bottom: 0;
  min-height: var(--dnm-lb-height);
  padding-bottom: 0;
  padding-top: 0;
}

.form-label.-match-form-control.-l,
[class*=col-form-label-lg] { /* stylelint-disable-line string-quotes */
  --dnm-lb-height: var(--ifabsh-form-input-height-l, 50px);
}

.form-label.-match-form-control.-s,
[class*=col-form-label-sm] { /* stylelint-disable-line string-quotes */
  --dnm-lb-height: var(--ifabsh-form-input-height-s, 30px);
}

.form-label.-s,
[class*=col-form-label-sm] { /* stylelint-disable-line string-quotes */
  --ifabsh-form-label-font-size: var(--ifabsh-input-font-size-s, var(--ifabsh-font-size-s, 0.75rem));
}

.form-label.-l,
[class*=col-form-label-lg] { /* stylelint-disable-line string-quotes */
  --ifabsh-form-label-font-size: var(--ifabsh-input-font-size-l, var(--ifabsh-font-size-l, 1.25rem));
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-control {
  height: var(--ifabsh-form-control-height);
}
.form-control::-webkit-input-placeholder {
  color: var(--ifabsh-form-control-placeholder-color, var(--ifabsh-color-placeholder, #959595));
}
.form-control::-moz-placeholder {
  color: var(--ifabsh-form-control-placeholder-color, var(--ifabsh-color-placeholder, #959595));
}
.form-control::placeholder {
  color: var(--ifabsh-form-control-placeholder-color, var(--ifabsh-color-placeholder, #959595));
}
.form-control.-plaintext {
  --ifabsh-form-control-padding: var(--ifabsh-form-control-plaintext-padding, 0);
}
.form-control.-plaintext, .form-control.-plaintext:hover {
  --dnm-foco-background-color: transparent;
  --dnm-foco-border-color: transparent;
  padding: 0;
}

/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-select {
  --ifabsh-form-select-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='black' stroke-linecap='square' stroke-linejoin='miter' stroke-width='3' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
  --ifabsh-form-select-multiple-padding-y: calc(var(--ifabsh-form-control-padding) / 2);
  background-image: var(--ifabsh-form-select-icon) !important; /* stylelint-disable-line declaration-no-important */
}
.form-select:not([multiple]) {
  --ifabsh-form-control-padding-right: calc(var(--ifabsh-form-control-padding) * var(--ifabsh-form-select-icon-gap-factor, 2.5));
}
.form-select option {
  padding: var(--ifabsh-form-option-pading-y, var(--ifabsh-spacing-xxs, 0.125rem)) var(--ifabsh-form-option-pading-x, 0);
}
.form-select[multiple], .form-select[size]:not([size="1"]) { /* stylelint-disable-line string-quotes */
  background-image: none !important; /* stylelint-disable-line declaration-no-important */
  height: var(--ifabsh-form-select-height, "auto");
  min-height: var(--ifabsh-form-control-height);
  padding-bottom: var(--ifabsh-form-select-multiple-padding-y);
  padding-top: var(--ifabsh-form-select-multiple-padding-y);
}
.form-select:-moz-focusring {
  text-shadow: none;
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
textarea.form-control {
  --ifabsh-form-textarea-padding-y: calc(var(--ifabsh-form-control-padding) / 2);
  height: var(--ifabsh-form-textarea-height, calc(var(--ifabsh-form-control-height) * 2));
  line-height: inherit;
  min-height: var(--ifabsh-form-textarea-min-height, var(--ifabsh-form-control-height)) !important; /* stylelint-disable-line declaration-no-important */
  padding-bottom: var(--ifabsh-form-textarea-padding-y);
  padding-top: var(--ifabsh-form-textarea-padding-y);
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-control {
  --dnm-foup-button-offset: calc(var(--ifabsh-form-control-padding) * -1);
}
.form-control::-webkit-file-upload-button {
  background-color: var(--ifabsh-form-upload-button-background-color, var(--ifabsh-color-grey-light, #f1f1f1));
  border-inline-end-width: var(--ifabsh-form-control-border-width);
  color: var(--ifabsh-form-upload-button-border-color, var(--ifabsh-form-control-color));
  line-height: var(--dnm-foco-line-height);
  margin: 0 var(--dnm-foup-button-offset);
  -webkit-margin-end: var(--ifabsh-form-control-padding);
          margin-inline-end: var(--ifabsh-form-control-padding);
  padding: 0 var(--ifabsh-form-control-padding);
  transition-duration: var(--dnm-foco-duration);
  -webkit-transition-property: all;
  transition-property: all;
  transition-timing-function: var(--ifabsh-form-control-timing-function);
}
.form-control::file-selector-button {
  background-color: var(--ifabsh-form-upload-button-background-color, var(--ifabsh-color-grey-light, #f1f1f1));
  border-inline-end-width: var(--ifabsh-form-control-border-width);
  color: var(--ifabsh-form-upload-button-border-color, var(--ifabsh-form-control-color));
  line-height: var(--dnm-foco-line-height);
  margin: 0 var(--dnm-foup-button-offset);
  -webkit-margin-end: var(--ifabsh-form-control-padding);
          margin-inline-end: var(--ifabsh-form-control-padding);
  padding: 0 var(--ifabsh-form-control-padding);
  transition-duration: var(--dnm-foco-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-form-control-timing-function);
}
.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: var(--ifabsh-form-upload-button-background-color-hover, var(--ifabsh-color-grey, #e8e8e8));
  color: var(--ifabsh-form-upload-button-border-color-hover, var(--ifabsh-form-control-color-hover));
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--ifabsh-form-upload-button-background-color-hover, var(--ifabsh-color-grey, #e8e8e8));
  color: var(--ifabsh-form-upload-button-border-color-hover, var(--ifabsh-form-control-color-hover));
}
.form-control:focus:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: var(--ifabsh-form-upload-button-background-color-focus, var(--ifabsh-color-grey, #e8e8e8));
  color: var(--ifabsh-form-upload-button-color-focus, var(--ifabsh-form-control-color-focus));
}
.form-control:focus:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--ifabsh-form-upload-button-background-color-focus, var(--ifabsh-color-grey, #e8e8e8));
  color: var(--ifabsh-form-upload-button-color-focus, var(--ifabsh-form-control-color-focus));
}

/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-check {
  --ifabsh-form-check-accent-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-form-check-accent-color-contrast: var(--ifabsh-color-ui-contrast, #fff);
  --ifabsh-form-check-background-color: var(--ifabsh-form-control-background-color);
  --ifabsh-form-check-border-color: var(--ifabsh-form-control-border-color);
  --ifabsh-form-check-border-radius: var(--ifabsh-form-control-border-radius);
  --ifabsh-form-check-border-width: var(--ifabsh-form-control-border-width);
  --ifabsh-form-check-label-color: var(--ifabsh-form-label-color);
  --ifabsh-form-check-control-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-form-check-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-form-check-gap-inline: var(--ifabsh-spacing, 1rem);
  --ifabsh-form-check-padding: 0;
  --ifabsh-form-check-size: 1em;
  --ifabsh-form-check-duration: 0.15s;
  --ifabsh-form-check-timing-function: ease-in-out;
  --ifabsh-form-check-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='square' stroke-linejoin='miter' stroke-width='3' d='M6 10l3 3l6-6'/%3E%3C/svg%3E");
  --ifabsh-form-check-icon-check-indeterminate: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='square' stroke-linejoin='miter' stroke-width='3' d='M6 10h8'/%3E%3C/svg%3E");
  --ifabsh-form-check-icon-radio: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='-10 -10 20 20'%3E%3Ccircle r='4' fill='%23fff'/%3E%3C/svg%3E");
  --dnm-foch-label-color: var(--ifabsh-form-check-label-color);
  --dnm-foch-border-color: var(--ifabsh-form-check-border-color);
  --dnm-foch-background-color: var(--ifabsh-form-check-background-color);
  --dnm-foch-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-form-check-duration));
  align-items: center;
  display: flex;
  gap: var(--ifabsh-form-check-control-gap);
  margin: 0;
  min-height: auto;
  padding: var(--ifabsh-form-check-padding);
}
.form-check-label {
  color: var(--dnm-foch-label-color) !important; /* stylelint-disable-line declaration-no-important */
  cursor: pointer;
}
.form-check + .form-check {
  margin-top: var(--ifabsh-form-check-gap);
}
.form-check-inline {
  display: inline-flex;
  margin: 0 var(--ifabsh-form-check-gap) var(--ifabsh-form-check-gap) 0;
}

.form-check .form-check-input {
  background-color: var(--dnm-foch-background-color) !important; /* stylelint-disable-line declaration-no-important */
  border-color: var(--dnm-foch-border-color) !important; /* stylelint-disable-line declaration-no-important */
  border-style: solid;
  border-width: var(--ifabsh-form-check-border-width);
  flex-shrink: 0;
  float: none;
  height: var(--ifabsh-form-check-size);
  margin: 0;
  transition: all var(--dnm-foch-duration) var(--ifabsh-form-check-timing-function);
  width: var(--ifabsh-form-check-size);
}
.form-check .form-check-input[type=checkbox] { /* stylelint-disable-line string-quotes */
  border-radius: var(--ifabsh-form-check-border-radius);
}
.form-check .form-check-input[type=radio] { /* stylelint-disable-line string-quotes */
  border-radius: 100%;
}
.form-check .form-check-input:active {
  filter: none;
}
.form-check .form-check-input:focus {
  --dnm-foch-border-color: var(--ifabsh-form-check-accent-color);
  box-shadow: none;
}
.form-check .form-check-input._focus-visible:focus, .form-check .form-check-input:focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--ifabsh-focus-outline-color, currentColor);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.form-check .form-check-input:checked {
  --dnm-foch-background-color: var(--ifabsh-form-check-accent-color);
  --dnm-foch-border-color: var(--ifabsh-form-check-accent-color);
}
.form-check .form-check-input:checked[type=checkbox] { /* stylelint-disable-line string-quotes */
  background-image: var(--ifabsh-form-check-icon-check);
}
.form-check .form-check-input:checked[type=radio] { /* stylelint-disable-line string-quotes */
  background-image: var(--ifabsh-form-check-icon-radio);
}
.form-check .form-check-input[type=checkbox]:indeterminate { /* stylelint-disable-line string-quotes */
  --dnm-foch-background-color: var(--ifabsh-form-check-accent-color);
  --dnm-foch-border-color: var(--ifabsh-form-check-accent-color);
  background-image: var(--ifabsh-form-check-icon-check-indeterminate);
}
.form-check .form-check-input:disabled, .form-check .form-check-input[disabled], .form-check .form-check-input._disabled {
  opacity: var(--ifabsh-form-check-disabled-opacity, var(--ifabsh-input-disabled-opacity, 0.4));
  pointer-events: none;
}
.form-check .form-check-input:disabled ~ .form-check-label, .form-check .form-check-input[disabled] ~ .form-check-label, .form-check .form-check-input._disabled ~ .form-check-label {
  opacity: var(--ifabsh-form-check-disabled-opacity, var(--ifabsh-input-disabled-opacity, 0.4));
  pointer-events: none;
}

.form-check.form-switch {
  --ifabsh-form-check-icon-switch-off: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='-10 -10 20 20'%3E%3Ccircle r='8' fill='%23e8e8e8'/%3E%3C/svg%3E");
  --ifabsh-form-check-icon-switch-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='-10 -10 20 20'%3E%3Ccircle r='8' fill='%23fff'/%3E%3C/svg%3E");
}
.form-check.form-switch .form-check-input {
  background-image: var(--ifabsh-form-check-icon-switch-off);
  border-radius: var(--ifabsh-form-check-size);
  margin-left: 0;
  transition: all var(--dnm-foch-duration) var(--ifabsh-form-check-timing-function);
  width: calc(var(--ifabsh-form-check-size) * 2);
}
.form-check.form-switch .form-check-input:focus {
  background-image: var(--ifabsh-form-check-icon-switch-off);
}
.form-check.form-switch .form-check-input:checked {
  background-image: var(--ifabsh-form-check-icon-switch-on);
}

.form-check-group {
  display: flex;
  flex-flow: column wrap;
  gap: var(--ifabsh-form-check-group-gap, var(--ifabsh-spacing-s, 0.5rem));
}
.form-check-group > .form-check {
  margin: 0;
}
.form-check-group.-inline {
  flex-direction: row;
  gap: var(--ifabsh-form-check-group-gap-inline, var(--ifabsh-spacing, 1rem));
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.form-control-color {
  --ifabsh-form-color-swatch-size: 1em;
  padding: 0 var(--ifabsh-form-color-padding, 0);
  width: var(--ifabsh-form-color-width, var(--ifabsh-form-control-height));
}
.form-control-color::-moz-color-swatch {
  border: 0 none;
  border-radius: var(--ifabsh-form-control-border-radius);
  height: var(--ifabsh-form-color-swatch-size);
  width: var(--ifabsh-form-color-swatch-size);
}
.form-control-color::-webkit-color-swatch-wrapper {
  position: relative;
}
.form-control-color::-webkit-color-swatch {
  border: 0 none;
  border-radius: var(--ifabsh-form-control-border-radius);
  height: var(--ifabsh-form-color-swatch-size);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: var(--ifabsh-form-color-swatch-size);
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.input-group > *:not(label):not(:first-child) {
  margin-left: calc(var(--ifabsh-form-control-border-width) * -1) !important; /* stylelint-disable-line declaration-no-important */
}
.input-group > *:not(label):hover, .input-group > *:not(label):focus {
  z-index: 2;
}

.input-group-text {
  --ifabsh-form-input-group-text-border-width: var(--ifabsh-form-control-border-width);
  --ifabsh-form-input-group-text-border-color: var(--ifabsh-form-control-border-color);
  --ifabsh-form-input-group-text-color: var(--ifabsh-form-label-color);
  background-color: var(--ifabsh-form-input-group-text-background-color, var(--ifabsh-color-grey-light, #f1f1f1));
  border: var(--ifabsh-form-input-group-text-border-width) solid var(--ifabsh-form-input-group-text-border-color);
  border-radius: var(--ifabsh-form-input-group-text-border-radius, var(--ifabsh-form-control-border-radius));
  color: var(--ifabsh-form-input-group-text-color);
  font-size: var(--ifabsh-form-input-group-text-font-size, var(--ifabsh-form-label-font-size));
  padding: 0 var(--ifabsh-form-input-group-text-padding, var(--ifabsh-form-control-padding));
}
.input-group-text:not(:first-child):not(:last-child) {
  border-left: 0 none;
  border-right: 0 none;
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.button-group {
  gap: var(--ifabsh-button-group-gap, 0);
}

.button-group, .button-group-toolbar {
  display: flex;
  flex-wrap: wrap;
}

.button-group > * {
  margin: 0;
}

.button-group > *:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.button-group > *:last-child:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.button-group > *:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.button-group-toolbar {
  gap: var(--ifabsh-button-group-toolbar-gap, var(--ifabsh-spacing, 1rem));
}

.form-navigation {
  --ifabsh-form-navigation-gap: var(--ifabsh-spacing, 1rem);
  --ifabsh-form-navigation-margin: var(--ifabsh-spacing-l, 1.25rem);
}
.form-navigation:not(:first-child) {
  margin-top: var(--ifabsh-form-navigation-margin);
}
.form-navigation .button-group {
  --ifabsh-button-group-gap: var(--ifabsh-form-navigation-gap);
}

/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
.was-validated .form-control:invalid, .form-control.is-invalid {
  --dnm-foco-background-color: var(--ifabsh-form-invalid-background-color, var(--ifabsh-form-control-background-color));
  --dnm-foco-border-color: var(--ifabsh-form-invalid-border-color, var(--ifabsh-form-control-border-color));
  --dnm-foco-color: var(--ifabsh-form-invalid-color, var(--ifabsh-form-control-color));
  background-image: none;
  padding-right: var(--ifabsh-form-control-padding);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  box-shadow: none;
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: var(--ifabsh-form-control-padding);
}

.was-validated .form-select:invalid, .form-select.is-invalid {
  --dnm-foco-background-color: var(--ifabsh-form-invalid-background-color, var(--ifabsh-form-control-background-color));
  --dnm-foco-border-color: var(--ifabsh-form-invalid-border-color, var(--ifabsh-form-control-border-color));
  --dnm-foco-color: var(--ifabsh-form-invalid-color, var(--ifabsh-form-control-color));
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  padding-right: var(--ifabsh-form-control-padding);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  box-shadow: none;
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  --dnm-foch-background-color: var(--ifabsh-form-invalid-background-color, var(--ifabsh-form-check-background-color));
  --dnm-foch-border-color: var(--ifabsh-form-invalid-border-color, var(--ifabsh-form-check-border-color));
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  --dnm-foch-background-color: var(--ifabsh-form-invalid-background-color, var(--ifabsh-form-check-accent-color));
  --dnm-foch-border-color: var(--ifabsh-form-invalid-border-color, var(--ifabsh-form-check-accent-color));
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: none;
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  --dnm-foch-label-color: var(--ifabsh-form-invalid-label-color, var(--ifabsh-form-check-label-color));
}

.was-validated .form-control:valid, .form-control.is-valid {
  background-image: none;
  padding-right: var(--ifabsh-form-control-padding);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  box-shadow: none;
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: var(--ifabsh-form-control-padding);
}

.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  padding-right: var(--ifabsh-form-control-padding);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  box-shadow: none;
}

.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: none;
}

.form {
  --ifabsh-form-upload-button-border-color: var(--wp-color-primary);
  --ifabsh-form-upload-button-background-color: var(--wp-color-white);
  --ifabsh-form-upload-button-color: var(--wp-color-primary);
  --ifabsh-form-upload-button-border-color-hover: var(--wp-color-primary);
  --ifabsh-form-upload-button-background-color-hover: var(--wp-color-primary);
  --ifabsh-form-upload-button-color-hover: var(--wp-color-white);
  --ifabsh-form-upload-button-color-focus: var(--ifabsh-form-upload-button-color-hover);
}

.form-check {
  --ifabsh-form-check-accent-color: var(--wp-color-white);
  --ifabsh-form-check-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%230d60b0' stroke-linecap='square' stroke-linejoin='miter' stroke-width='2' d='M5 11l4 4l6-9'/%3E%3C/svg%3E");
  --ifabsh-form-check-icon-check-indeterminate: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%230d60b0' stroke-linecap='square' stroke-linejoin='miter' stroke-width='2' d='M6 10h8'/%3E%3C/svg%3E");
  --ifabsh-form-check-icon-radio: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='-10 -10 20 20'%3E%3Ccircle r='4' fill='%230d60b0'/%3E%3C/svg%3E");
}
.form-check .form-check-input {
  border-color: var(--wp-color-primary) !important;
}
.form-check.form-switch {
  --ifabsh-form-check-icon-switch-off: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='-10 -10 20 20'%3E%3Ccircle r='8' fill='%23e4F2eb'/%3E%3C/svg%3E");
  --ifabsh-form-check-icon-switch-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='-10 -10 20 20'%3E%3Ccircle r='8' fill='%230d60b0'/%3E%3C/svg%3E");
}

.form-navigation > .button + .button {
  margin-left: var(--ifabsh-form-navigation-gap);
}

.icon-button {
  --ifabsh-icon-button-background-color: transparent;
  --ifabsh-icon-button-background-color-hover: var(--ifabsh-icon-button-background-color);
  --ifabsh-icon-button-color: inherit;
  --ifabsh-icon-button-color-hover: var(--ifabsh-icon-button-color);
  --ifabsh-icon-button-color-active: var(--ifabsh-icon-button-color-hover);
  --ifabsh-icon-button-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-icon-button-padding: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-icon-button-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-icbt-background-color: var(--ifabsh-icon-button-background-color);
  --dnm-icbt-color: var(--ifabsh-icon-button-color);
  --dnm-icbt-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-icon-button-duration));
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: var(--dnm-icbt-background-color);
  border: none;
  border-radius: 0;
  color: var(--dnm-icbt-color) !important; /* stylelint-disable-line declaration-no-important */
  display: inline-flex;
  flex: 0 0 auto;
  font-size: var(--ifabsh-icon-button-font-size, inherit);
  height: auto;
  justify-content: center;
  line-height: 1;
  padding: var(--ifabsh-icon-button-padding);
  position: relative;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  transition-duration: var(--dnm-icbt-duration);
  transition-property: background-color, border-color, color, opacity;
  transition-timing-function: var(--ifabsh-icon-button-timing-function);
}
.icon-button__icon {
  align-items: center;
  display: flex;
  height: 1em;
  justify-content: center;
  width: 1em;
}
.icon-button:focus:not(:focus-visible), .icon-button:focus:not(._focus-visible) {
  box-shadow: none;
  outline: none;
}
.icon-button:not(:disabled):focus, .icon-button:not(:disabled):hover, .icon-button:not(:disabled):active, .icon-button:not(.-disabled):focus, .icon-button:not(.-disabled):hover, .icon-button:not(.-disabled):active {
  --dnm-icbt-background-color: var(--ifabsh-icon-button-background-color-hover);
  --dnm-icbt-color: var(--ifabsh-icon-button-color-hover);
  cursor: pointer;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.icon-button:not(:disabled):active, .icon-button:not(.-disabled):active {
  --dnm-icbt-color: var(--ifabsh-icon-button-color-active);
}
.icon-button:disabled, .icon-button[disabled], .icon-button._disabled {
  box-shadow: none;
  cursor: not-allowed;
  opacity: var(--ifabsh-icon-button-disabled-opacity, 0.4);
  outline: none;
  pointer-events: none;
}

.icon-button[data-is-loading] {
  cursor: wait;
  pointer-events: none;
}
.icon-button > .spinner {
  display: none;
}

.icon-button[data-is-loading] .icon-button__icon {
  visibility: hidden;
}
.icon-button[data-is-loading] > .spinner {
  --dnm-sp-pos: calc(50% - (var(--ifabsh-spinner-size) / 2));
  display: inline-block;
  left: var(--dnm-sp-pos);
  position: absolute;
  top: var(--dnm-sp-pos);
  z-index: 5;
}

.figure {
  margin: 0;
}
.figure img {
  max-width: none;
  width: 100%;
}
.figure > a {
  display: block;
  position: relative;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  width: 100%;
}
.figure__caption {
  background-color: var(--ifabsh-figure-caption-background-color, transparent);
  color: var(--ifabsh-figure-caption-color, inherit);
  font-size: var(--ifabsh-figure-caption-font-size, var(--ifabsh-font-size-s, 0.75rem));
  margin: var(--ifabsh-figure-caption-margin, var(--ifabsh-spacing-s, 0.5rem)) 0 0;
  padding: var(--ifabsh-figure-caption-padding, 0);
}
.figure__caption > * {
  display: inline;
  margin: 0;
}
.figure__caption > * + * {
  margin-left: var(--ifabsh-figure-caption-copyright-gap, var(--ifabsh-spacing-s, 0.5rem));
}
.figure__caption > .copyright::before {
  content: "("; /* stylelint-disable-line string-quotes */
}
.figure__caption > .copyright::after {
  content: ")"; /* stylelint-disable-line string-quotes */
}

.figure {
  --ifabsh-figure-caption-background-color: var(--wp-color-grey);
  --ifabsh-figure-caption-font-size: var(--wp-root-font-size);
  --ifabsh-figure-caption-margin: 0;
  --ifabsh-figure-caption-padding: var(--wp-spacing-s) calc(var(--wp-spacing-s) * 3);
  --wp-figure-caption-font-weight: var(--wp-font-weight-normal);
  --wp-figure-link-icon-bg-color: var(--wp-color-secondary);
  --wp-figure-link-icon-color: var(--wp-color-white);
  --wp-figure-link-icon-dim: 40px;
  --wp-figure-link-icon-offset: calc(var(--wp-spacing) - var(--wp-spacing-xs));
  text-align: right;
}
.figure:not(:first-child:last-child) {
  margin: 0 0 var(--wp-figure-margin, var(--wp-block-element-margin));
}
.figure a[data-zoomable]::before {
  align-items: center;
  background: var(--wp-figure-link-icon-bg-color);
  border-radius: 5px;
  color: var(--wp-figure-link-icon-color);
  content: "\f424";
  display: inline-flex;
  font-family: "Font Awesome 6 Pro";
  font-size: var(--wp-root-font-size);
  font-weight: var(--wp-font-weight-light);
  height: var(--wp-figure-link-icon-dim);
  justify-content: center;
  position: absolute;
  right: var(--wp-figure-link-icon-offset);
  top: var(--wp-figure-link-icon-offset);
  width: var(--wp-figure-link-icon-dim);
  z-index: 1;
}
.figure a[data-zoomable]:hover {
  --wp-figure-link-icon-bg-color: var(--wp-color-primary);
}
.figure__caption {
  display: inline-block;
  font-weight: var(--wp-figure-caption-font-weight);
}

.jumplist {
  --ifabsh-jumplist-link-background-color: transparent;
  --ifabsh-jumplist-link-background-color-hover: transparent;
  --ifabsh-jumplist-link-background-color-active: var(--ifabsh-jumplist-link-background-color-hover);
  --ifabsh-jumplist-link-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-jumplist-link-color-hover: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-jumplist-link-color-active: var(--ifabsh-jumplist-link-color-hover);
  --ifabsh-jumplist-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-jumplist-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-jl-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-jumplist-duration));
  background-color: var(--ifabsh-jumplist-background-color, transparent);
  font-size: var(--ifabsh-jumplist-font-size, var(--ifabsh-font-size, 1rem));
  overflow-x: auto;
  padding: var(--ifabsh-jumplist-padding-y, 0) var(--ifabsh-jumplist-padding-x, 0);
}
.jumplist.-refresh {
  pointer-events: none;
}

.jumplist-menu {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--ifabsh-jumplist-menu-gap, 0);
}
.jumplist-menu .jumplist-menu__link {
  --dnm-jl-link-background-color: var(--ifabsh-jumplist-link-background-color);
  --dnm-jl-link-color: var(--ifabsh-jumplist-link-color);
  background-color: var(--dnm-jl-link-background-color);
  color: var(--dnm-jl-link-color);
  display: block;
  font-weight: var(--ifabsh-jumplist-link-font-weight, normal);
  padding: var(--ifabsh-jumplist-link-padding-y, 0) var(--ifabsh-jumplist-link-padding-x, 0);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  transition-duration: var(--dnm-jl-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-jumplist-timing-function);
  white-space: nowrap;
}
.jumplist-menu .jumplist-menu__link__text {
  display: block;
}
.jumplist-menu .jumplist-menu__link * {
  color: currentColor;
}
.jumplist-menu .jumplist-menu__link:focus, .jumplist-menu .jumplist-menu__link:active {
  --dnm-jl-link-background-color: var(--ifabsh-jumplist-link-background-color);
  --dnm-jl-link-color: var(--ifabsh-jumplist-link-color);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.jumplist-menu .jumplist-menu__link:hover {
  --dnm-jl-link-background-color: var(--ifabsh-jumplist-link-background-color-hover);
  --dnm-jl-link-color: var(--ifabsh-jumplist-link-color-hover);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.jumplist-menu .jumplist-menu__link._active {
  --dnm-jl-link-background-color: var(--ifabsh-jumplist-link-background-color-active);
  --dnm-jl-link-color: var(--ifabsh-jumplist-link-color-active);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.jumplist-menu:empty {
  display: none;
}

.language-picker {
  --ifabsh-language-picker-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-language-picker-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --ifabsh-language-picker-background-color: transparent;
  --ifabsh-language-picker-background-color-hover: transparent;
  --ifabsh-language-picker-background-color-active: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-language-picker-color: inherit;
  --ifabsh-language-picker-color-hover: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-language-picker-color-active: var(--ifabsh-color-ui-contrast, #fff);
  --ifabsh-language-picker-item-gap: 0;
  --ifabsh-language-picker-padding-x: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-language-picker-padding-y: var(--ifabsh-spacing-xxs, 0.125rem);
  --ifabsh-language-picker-toggle-background-color: transparent;
  --ifabsh-language-picker-toggle-background-color-hover: transparent;
  --ifabsh-language-picker-toggle-color: inherit;
  --ifabsh-language-picker-toggle-color-hover: var(--ifabsh-language-picker-toggle-color);
  --ifabsh-language-picker-toggle-duration: var(--ifabsh-language-picker-duration);
  --ifabsh-language-picker-menu-background-color: var(--ifabsh-color-white, #fff);
  --ifabsh-language-picker-menu-border-color: var(--ifabsh-color-grey, #e8e8e8);
  --ifabsh-language-picker-menu-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-language-picker-menu-border-width: var(--ifabsh-border-width, 1px);
  --dnm-lp-menu-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-language-picker-duration));
  display: inline-block;
  position: relative;
}
.language-picker__desc {
  /* stylelint-disable declaration-no-important */
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  /* stylelint-enable declaration-no-important */
}

.language-picker-toggle {
  --dnm-lp-toggle-background-color: var(--ifabsh-language-picker-toggle-background-color, transparent);
  --dnm-lp-toggle-color: var(--ifabsh-language-picker-toggle-color, inherit);
  --dnm-lp-toggle-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-language-picker-toggle-duration));
  align-items: center;
  -webkit-appearance: none;
  background-color: var(--dnm-lp-toggle-background-color);
  border: none;
  border-radius: 0;
  color: var(--dnm-lp-toggle-color);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: inherit;
  height: auto;
  justify-content: center;
  line-height: 1;
  padding: var(--ifabsh-language-picker-toggle-padding, var(--ifabsh-spacing-s, 0.5rem));
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  transition: all var(--dnm-lp-toggle-duration) var(--ifabsh-language-picker-timing-function);
}
.language-picker-toggle:focus:not(:focus-visible), .language-picker-toggle:focus:not(._focus-visible) {
  box-shadow: none;
  outline: none;
}
.language-picker-toggle:not(:disabled):hover, .language-picker-toggle:not(:disabled):active, .language-picker-toggle:not(:disabled)[aria-expanded=true], .language-picker-toggle:not(.-disabled):hover, .language-picker-toggle:not(.-disabled):active, .language-picker-toggle:not(.-disabled)[aria-expanded=true] { /* stylelint-disable-line string-quotes */
  --dnm-lp-toggle-background-color: var(--ifabsh-language-picker-toggle-background-color-hover, transparent);
  --dnm-lp-toggle-color: var(--ifabsh-language-picker-toggle-color-hover, inherit);
  cursor: pointer;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.language-picker-toggle:not(:disabled)[aria-expanded=true] + .language-picker-menu, .language-picker-toggle:not(.-disabled)[aria-expanded=true] + .language-picker-menu { /* stylelint-disable-line string-quotes */
  opacity: 1;
  pointer-events: all;
  transition: visibility 0s, opacity var(--dnm-lp-menu-duration) var(--ifabsh-language-picker-timing-function);
  visibility: visible;
}

.language-picker-menu {
  background-color: var(--ifabsh-language-picker-menu-background-color);
  border: var(--ifabsh-language-picker-menu-border-width) solid var(--ifabsh-language-picker-menu-border-color);
  border-radius: var(--ifabsh-language-picker-menu-border-radius);
  color: var(--ifabsh-language-picker-color);
  display: block;
  opacity: 0;
  padding: var(--ifabsh-language-picker-padding-y) 0;
  pointer-events: none;
  transition: visibility 0s var(--ifabsh-language-picker-timing-function) var(--dnm-lp-menu-duration), opacity var(--dnm-lp-menu-duration) var(--ifabsh-language-picker-timing-function);
  visibility: hidden;
}

.language-picker-lang {
  color: currentColor;
  display: block;
  padding: var(--ifabsh-language-picker-padding-y) var(--ifabsh-language-picker-padding-x);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.language-picker-lang__label {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.language-picker-lang:focus, .language-picker-lang:hover, .language-picker-lang:active {
  background-color: var(--ifabsh-language-picker-background-color-hover);
  color: var(--ifabsh-language-picker-color-hover);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.language-picker-lang[aria-checked=true] { /* stylelint-disable-line string-quotes */
  background-color: var(--ifabsh-language-picker-background-color-active);
  color: var(--ifabsh-language-picker-color-active);
}

.language-picker.-list {
  display: flex;
  gap: var(--ifabsh-language-picker-item-gap);
}

.swiper {
  --swiper-theme-color: var(--ifabsh-slider-theme-color);
  --swiper-preloader-color: var(--ifabsh-slider-preloader-color, var(--ifabsh-slider-theme-color));
  opacity: 0;
  transition-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-slider-init-duration, 0.25s));
  transition-property: opacity;
}
.swiper.swiper-initialized {
  opacity: 1;
}
.swiper-lazy-preloader {
  border-width: 0.125em;
  font-size: var(--ifabsh-slider-preloader-size, 1rem);
  height: 1em;
  margin-left: -0.5em;
  margin-top: -0.5em;
  width: 1em;
}
.swiper-button-lock {
  display: none;
  pointer-events: none;
}
.swiper-button-next, .swiper-button-prev {
  --ifabsh-icon-button-color: var(--ifabsh-slider-button-color);
  font-size: var(--ifabsh-slider-button-font-size);
  margin: 0;
  opacity: var(--ifabsh-slider-button-opacity, 1);
  position: absolute;
  transform: translateY(-50%);
  width: auto;
}
.swiper-button-next[aria-disabled=true], .swiper-button-prev[aria-disabled=true] { /* stylelint-disable-line string-quotes */
  opacity: var(--ifabsh-slider-button-disabled-opacity, 0);
}
.swiper-button-next::after, .swiper-button-prev::after {
  display: none;
}
.swiper-button-next {
  right: 0;
}
.swiper-button-prev {
  left: 0;
}
.swiper-pagination {
  --swiper-pagination-color: var(--ifabsh-slider-theme-color);
  background-color: var(--ifabsh-slider-pagination-background-color);
  display: flex;
  gap: var(--ifabsh-slider-pagination-gap);
  padding: var(--ifabsh-slider-pagination-padding);
}
.swiper-pagination-bullet {
  --swiper-pagination-bullet-color: var(--ifabsh-slider-pagination-item-color-active);
  --swiper-pagination-bullet-height: var(--ifabsh-slider-pagination-item-size);
  --swiper-pagination-bullet-inactive-color: var(--ifabsh-slider-pagination-item-color);
  --swiper-pagination-bullet-inactive-opacity: var(--ifabsh-slider-pagination-item-opacity, var(--ifabsh-disabled-opacity, 0.4));
  --swiper-pagination-bullet-opacity: var(--ifabsh-slider-pagination-item-opacity-active, 1);
  --swiper-pagination-bullet-width: var(--ifabsh-slider-pagination-item-size);
  --swiper-pagination-bullet-horizontal-gap: 0;
  --swiper-pagination-bullet-vertival-gap: 0;
  border-radius: var(--ifabsh-slider-pagination-item-border-radius, 50%);
}
.swiper-pagination-bullet:focus {
  box-shadow: none;
  outline: none;
}
.swiper-pagination-bullet._focus-visible:focus, .swiper-pagination-bullet:focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--ifabsh-focus-outline-color, currentColor);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.swiper-pagination.swiper-pagination-lock {
  display: none;
  pointer-events: none;
}
.swiper-pagination.swiper-pagination-horizontal {
  bottom: auto;
  justify-content: flex-end;
  line-height: 1;
  right: 0;
  top: 0;
  width: auto;
}

.slider {
  --ifabsh-slider-theme-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-slider-slide-size: 100%;
  --ifabsh-slider-button-color: var(--ifabsh-slider-theme-color);
  --ifabsh-slider-button-font-size: var(--ifabsh-font-size, 1rem);
  --ifabsh-slider-pagination-item-size: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-slider-pagination-item-color: var(--ifabsh-color-black, #000);
  --ifabsh-slider-pagination-item-color-active: var(--ifabsh-slider-theme-color);
  --ifabsh-slider-pagination-background-color: transparent;
  --ifabsh-slider-pagination-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-slider-pagination-padding: 0;
  position: relative;
}
.slider-item__inner {
  position: relative;
}
.slider-item__inner > *:not(.swiper-lazy-preloader) {
  margin: 0;
}

.media-gallery {
  --ifabsh-media-gallery-gap-column: var(--ifabsh-media-gallery-gap, var(--ifabsh-spacing, 1rem));
  --ifabsh-media-gallery-gap-row: var(--ifabsh-media-gallery-gap-column);
}
@media (min-width: 768px) {
  .media-gallery {
    /* stylelint-disable string-quotes */
    /* stylelint-enable string-quotes */
  }
  .media-gallery[data-columns="2"].-grid .media-gallery__inner, .media-gallery[data-columns="3"].-grid .media-gallery__inner, .media-gallery[data-columns="4"].-grid .media-gallery__inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .media-gallery[data-columns="2"].-slider .slider-item, .media-gallery[data-columns="3"].-slider .slider-item, .media-gallery[data-columns="4"].-slider .slider-item {
    width: 50%;
  }
}
@media (min-width: 992px) {
  .media-gallery {
    /* stylelint-disable string-quotes */
    /* stylelint-enable string-quotes */
  }
  .media-gallery[data-columns="3"].-grid .media-gallery__inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
  .media-gallery[data-columns="3"].-slider .slider-item {
    width: 33.3333333333%;
  }
  .media-gallery[data-columns="4"].-grid .media-gallery__inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
  .media-gallery[data-columns="4"].-slider .slider-item {
    width: 25%;
  }
}

.media-gallery.-grid .media-gallery__inner {
  display: grid;
  grid-gap: var(--ifabsh-media-gallery-gap-row) var(--ifabsh-media-gallery-gap-column);
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto;
}
.media-gallery.-grid .media-gallery__inner > * {
  margin: 0 !important; /* stylelint-disable-line declaration-no-important */
  width: 100%;
}
.media-gallery.-grid .media-gallery__inner > * + * {
  margin: 0;
}

.media-gallery.-slider {
  --dnm-mg-calc-gap: calc(var(--ifabsh-media-gallery-gap-column) / 2);
}
.media-gallery.-slider .slider-container {
  margin-left: calc(var(--dnm-mg-calc-gap) * -1);
  margin-right: calc(var(--dnm-mg-calc-gap) * -1);
}
.media-gallery.-slider .slider-item__inner {
  padding-left: var(--dnm-mg-calc-gap);
  padding-right: var(--dnm-mg-calc-gap);
}

.media-gallery {
  --ifabsh-media-gallery-gap-column: var(--wp-grid-gap-x);
  --ifabsh-media-gallery-gap-row: var(--wp-grid-gap-y);
}
.media-gallery.-slider .figure__caption {
  display: none;
}
.media-gallery.-tile .media-gallery__inner > .media-gallery-item {
  grid-row: span 1;
}
.media-gallery.-tile .media-gallery__inner > .media-gallery-item:nth-child(6n), .media-gallery.-tile .media-gallery__inner > .media-gallery-item:nth-child(6n+1) {
  grid-row: span 2;
}
.media-gallery img {
  border-radius: 5px;
}

.media-placeholder {
  --ifabsh-media-placeholder-background-color: var(--ifabsh-color-grey-light, #f1f1f1);
  --ifabsh-media-placeholder-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-media-placeholder-color: var(--ifabsh-color-grey, #e8e8e8);
  --ifabsh-media-placeholder-size: 3rem;
  align-items: center;
  background-color: var(--ifabsh-media-placeholder-background-color);
  border-radius: var(--ifabsh-media-placeholder-border-radius);
  color: var(--ifabsh-media-placeholder-color);
  display: flex;
  font-size: var(--ifabsh-media-placeholder-size);
  height: 1em;
  justify-content: center;
  overflow: hidden;
  pointer-events: none;
  width: 1em;
}
img.media-placeholder__image {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

svg.media-placeholder__image {
  --placeholder-color: var(--ifabsh-media-placeholder-color);
  max-height: 100%;
  max-width: 100%;
}

.media-placeholder__text {
  color: var(--ifabsh-media-placeholder-text-color, var(--ifabsh-color-placeholder, #959595));
  font-size: var(--ifabsh-media-placeholder-text-font-size, var(--ifabsh-font-size-s, 0.75rem));
}

.nav {
  --ifabsh-nav-link-color: inherit;
  --ifabsh-nav-link-color-hover: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-nav-link-color-active: var(--ifabsh-nav-link-color-hover);
  --ifabsh-nav-link-background-color: transparent;
  --ifabsh-nav-link-background-color-active: transparent;
  --ifabsh-nav-link-background-color-hover: transparent;
  --ifabsh-nav-link-icon-margin: var(--ifabsh-spacing, 1rem);
  --ifabsh-nav-link-padding-x: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-nav-link-padding-y: var(--ifabsh-spacing-xxs, 0.125rem);
  --ifabsh-nav-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-nav-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-nv-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-nav-duration));
  background-color: var(--ifabsh-nav-background-color, transparent);
  flex-wrap: nowrap;
  font-size: var(--ifabsh-nav-font-size, inherit);
  gap: var(--ifabsh-nav-gap, var(--ifabsh-spacing-s, 0.5rem));
}
.nav,
.nav ul,
.nav li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav-desc {
  /* stylelint-disable declaration-no-important */
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  /* stylelint-enable declaration-no-important */
}
.nav-item {
  margin: 0;
  position: relative;
}
.nav-item:hover > .nav, .nav-item.focus-within > .nav, .nav-item._opened > .nav, .nav-item._touched > .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}
.nav-item:focus-within > .nav-link:not(._active) {
  background-color: var(--ifabsh-nav-link-background-color-hover);
  color: var(--ifabsh-nav-link-color-hover);
}
.nav-item:focus-within > .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}
.nav-link {
  align-items: center;
  background-color: var(--ifabsh-nav-link-background-color);
  color: var(--ifabsh-nav-link-color);
  display: flex;
  gap: var(--ifabsh-nav-link-icon-margin);
  padding: var(--ifabsh-nav-link-padding-y) var(--ifabsh-nav-link-padding-x);
  position: relative;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  transition: all var(--dnm-nv-duration) var(--ifabsh-nav-timing-function);
}
.nav-link__icon {
  color: currentColor;
  line-height: 1;
  margin: 0;
  transition: all var(--dnm-nv-duration) var(--ifabsh-nav-timing-function);
}
.nav-link:hover, .nav-link:focus, .nav-link._touched {
  background-color: var(--ifabsh-nav-link-background-color-hover);
  color: var(--ifabsh-nav-link-color-hover);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.nav-link:hover + .nav, .nav-link:focus + .nav, .nav-link._touched + .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}
.nav-link._active {
  background-color: var(--ifabsh-nav-link-background-color-active);
  color: var(--ifabsh-nav-link-color-active);
}
.nav .nav {
  flex-direction: column;
  left: 0;
  margin: 0;
  min-width: 100%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  transform: translate3d(0, -1rem, 0);
  transition-duration: var(--dnm-nv-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-nav-timing-function);
  white-space: nowrap;
}

.pagination {
  --ifabsh-pagination-background-color: transparent;
  --ifabsh-pagination-background-color-hover: var(--ifabsh-pagination-background-color);
  --ifabsh-pagination-background-color-active: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-pagination-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-pagination-color-hover: var(--ifabsh-pagination-color);
  --ifabsh-pagination-color-active: var(--ifabsh-color-white, #fff);
  --ifabsh-pagination-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-pagination-border-color-hover: var(--ifabsh-pagination-border-color);
  --ifabsh-pagination-border-color-active: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-pagination-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-pagination-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-pagination-font-size: var(--ifabsh-font-size, 1rem);
  --ifabsh-pagination-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-pagination-height: var(--ifabsh-input-height, 40px);
  --ifabsh-pagination-padding: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-pagination-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-pagination-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-pg-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-pagination-duration));
  background-color: transparent;
  color: var(--ifabsh-pagination-color);
  display: flex;
  flex-flow: row nowrap;
  font-size: var(--ifabsh-pagination-font-size);
  gap: var(--ifabsh-pagination-gap);
  justify-content: var(--ifabsh-pagination-align, center);
  padding: 0;
}
.pagination-list {
  display: inline-flex;
  flex-flow: row wrap;
  gap: var(--ifabsh-pagination-gap);
  justify-content: center;
  list-style: none;
  margin: 0;
  order: 3;
  padding: 0;
  z-index: 1;
}
.pagination-list > li {
  align-self: center;
  line-height: 1;
  margin: 0;
  padding: 0;
  z-index: 1;
}
.pagination-list > li::after, .pagination-list > li::before {
  display: none;
}
.pagination-list > li:hover, .pagination-list > li:focus-within {
  z-index: 2;
}
.pagination-list > li.pagination-list__delimiter .pagination-item {
  --dnm-pg-border-color: var(--ifabsh-pagination-info-border-color, transparent);
}
.pagination-item {
  --_pg-background-color: var(--ifabsh-pagination-background-color);
  --_pg-border-color: var(--ifabsh-pagination-border-color);
  --_pg-color: var(--ifabsh-pagination-color);
  align-items: stretch;
  background-color: var(--_pg-background-color) !important; /* stylelint-disable-line declaration-no-important */
  border: solid var(--ifabsh-pagination-border-width) var(--_pg-border-color) !important; /* stylelint-disable-line declaration-no-important */
  border-radius: var(--ifabsh-pagination-border-radius);
  color: var(--_pg-color) !important; /* stylelint-disable-line declaration-no-important */
  display: inline-flex;
  gap: var(--ifabsh-pagination-icon-margin, calc(var(--ifabsh-pagination-font-size) / 2));
  height: var(--ifabsh-pagination-height);
  justify-content: center;
  line-height: calc(var(--ifabsh-pagination-height) - var(--ifabsh-pagination-border-width) * 2);
  min-width: var(--ifabsh-pagination-height);
  padding: 0 var(--ifabsh-pagination-padding);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}
.pagination-item__label {
  align-items: center;
}
.pagination-item.-prev {
  order: 1;
}
.pagination-item.-prev::before {
  content: var(--ifabsh-pagination-icon-prev, "❮");
}
.pagination-item.-next {
  order: 4;
}
.pagination-item.-next::after {
  content: var(--ifabsh-pagination-icon-next, "❯");
}
.pagination-item.-info {
  --dnm-pg-border-color: var(--ifabsh-pagination-info-border-color, transparent);
  display: none;
  order: 2;
}
.pagination-item:not([aria-disabled]) {
  transition: all var(--_pg-duration) var(--ifabsh-pagination-timing-function);
}
.pagination-item:not([aria-disabled]):hover, .pagination-item:not([aria-disabled]):active {
  --_pg-background-color: var(--ifabsh-pagination-background-color-hover);
  --_pg-border-color: var(--ifabsh-pagination-border-color-hover);
  --_pg-color: var(--ifabsh-pagination-color-hover);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  z-index: 2;
}
.pagination-item:not([aria-disabled]):focus:not(:focus-visible), .pagination-item:not([aria-disabled]):focus:not(._focus-visible) {
  box-shadow: none;
  outline: none;
}
.pagination-item[aria-current=true] { /* stylelint-disable-line string-quotes */ }
.pagination-item[aria-current=true], .pagination-item[aria-current=true]:hover, .pagination-item[aria-current=true]:active {
  --_pg-background-color: var(--ifabsh-pagination-background-color-active);
  --_pg-border-color: var(--ifabsh-pagination-border-color-active);
  --_pg-color: var(--ifabsh-pagination-color-active);
}
.pagination-item[aria-disabled] {
  opacity: var(--ifabsh-pagination-disabled-opacity, var(--ifabsh-disabled-opacity, 0.4));
  pointer-events: none;
}

.pagination.-l {
  --ifabsh-pagination-font-size: var(--ifabsh-input-font-size-l, var(--ifabsh-font-size-l, 1.25rem));
  --ifabsh-pagination-height: var(--ifabsh-input-height-l, 50px);
}

.pagination.-s {
  --ifabsh-pagination-font-size: var(--ifabsh-input-font-size-s, var(--ifabsh-font-size-s, 0.75rem));
  --ifabsh-pagination-height: var(--ifabsh-input-height-s, 30px);
}

.pagination.-compact .pagination-item.-prev .pagination-item__label, .pagination.-compact .pagination-item.-next .pagination-item__label,
.pagination.-minimal .pagination-item.-prev .pagination-item__label,
.pagination.-minimal .pagination-item.-next .pagination-item__label {
  display: none;
}

.pagination.-compact {
  --ifabsh-pagination-gap: 0;
}
.pagination.-compact > .pagination-item:not(:first-child),
.pagination.-compact .pagination-list,
.pagination.-compact .pagination-list > li:not(:first-child) {
  margin-left: calc(var(--ifabsh-pagination-border-width) * -1);
}
.pagination.-compact .pagination-item:not(.-prev):not(.-next) {
  border-radius: 0;
}
.pagination.-compact .pagination-item.-prev {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.pagination.-compact .pagination-item.-next {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.pagination.-minimal .pagination-list {
  display: none;
}
.pagination.-minimal .pagination-item.-info {
  display: list-item;
}

.pagination {
  --ifabsh-pagination-border-color: transparent;
  --ifabsh-pagination-border-radius: 50%;
  --ifabsh-pagination-border-color-active: var(--wp-color-white);
  --ifabsh-pagination-border-color-hover: var(--wp-color-white);
  --ifabsh-pagination-background-color-active: var(--wp-color-white);
  --ifabsh-pagination-color: var(--wp-color-secondary-contrast);
  --ifabsh-pagination-color-hover: var(--wp-color-white);
  --ifabsh-pagination-color-active: var(--wp-color-black);
  --ifabsh-pagination-font-size: 16px;
  --ifabsh-pagination-height: 28px;
  background: var(--wp-color-secondary);
  border-radius: 5px;
  display: inline-flex;
  overflow: hidden;
  padding: var(--wp-spacing);
  place-self: center;
}
@media (min-width: 992px) {
  .pagination {
    --ifabsh-pagination-gap: var(--wp-spacing);
  }
}
.pagination-item[aria-current=true] {
  font-weight: 700;
}
.pagination-item.-next, .pagination-item.-prev {
  border: none !important;
  font-size: 18px;
  line-height: normal;
  position: relative;
  top: 2px;
}
.pagination-item.-next::before, .pagination-item.-next::after, .pagination-item.-prev::before, .pagination-item.-prev::after {
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  position: relative;
  top: 3px;
}
.pagination-item.-next::after {
  content: "\f054";
}
.pagination-item.-prev::before {
  content: "\f053";
}

.privacy-info {
  --ifabsh-privacy-info-background-color: var(--ifabsh-color-grey, #e8e8e8);
  --ifabsh-privacy-info-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-privacy-info-font-size: var(--ifabsh-font-size-s, 0.75rem);
  --ifabsh-privacy-info-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-privacy-info-padding: var(--ifabsh-spacing, 1rem);
  align-items: center;
  display: flex;
  justify-content: center;
}
.privacy-info__container {
  align-items: center;
  background-color: var(--ifabsh-privacy-info-background-color);
  color: var(--ifabsh-privacy-info-color);
  display: flex;
  flex-direction: column;
  gap: var(--ifabsh-privacy-info-gap);
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  padding: var(--ifabsh-privacy-info-padding);
  text-align: center;
}
.privacy-info__text {
  font-size: var(--ifabsh-privacy-info-font-size);
}
.privacy-info__text, .privacy-info__text a {
  color: currentColor;
  margin: 0;
}

.player .plyr {
  --plyr-color-main: var(--ifabsh-player-theme-color);
  --plyr-control-radius: var(--ifabsh-player-control-border-radius);
  --plyr-control-icon-size: var(--ifabsh-player-control-icon-size);
  --plyr-control-spacing: var(--ifabsh-player-control-gap);
  --plyr-progress-loading-size: var(--ifabsh-player-progress-loading-size);
  --plyr-range-thumb-height: var(--ifabsh-player-range-thumb-height);
  --plyr-range-thumb-shadow: none;
  --plyr-range-track-height: var(--ifabsh-player-range-track-height);
  --plyr-audio-controls-background: var(--ifabsh-player-audio-background-color);
  --plyr-audio-control-color: var(--ifabsh-player-audio-control-color);
  --plyr-video-background: var(--ifabsh-player-video-background-color);
  --plyr-video-controls-background: var(--ifabsh-player-video-controls-background-color);
  --plyr-video-control-color: var(--ifabsh-player-video-control-color);
  --plyr-video-control-color-hover: var(--ifabsh-player-video-control-color-hover);
  --plyr-video-control-background-hover: var(--ifabsh-player-video-control-background-color-hover);
}
.player .plyr__controls {
  gap: var(--plyr-control-spacing);
}
.player .plyr__controls__item {
  flex-grow: 0;
  margin-left: 0;
  margin-right: 0;
  padding: 0 var(--ifabsh-player-control-padding);
}
.player .plyr__controls__item.plyr__volume {
  max-width: none;
  min-width: 0;
  position: relative;
  width: auto;
}
.player .plyr__controls__item.plyr__progress__container {
  flex-grow: 1;
  padding: 0 var(--ifabsh-player-control-padding);
}
.player .plyr__controls__item.plyr__time {
  padding: 0 var(--ifabsh-player-control-padding);
}
.player .plyr__controls .plyr__control {
  font-size: var(--ifabsh-player-control-font-size);
  padding: var(--ifabsh-player-control-padding);
}
.player .plyr__progress__buffer::-webkit-progress-value {
  border-radius: var(--ifabsh-player-range-border-radius);
}
.player .plyr--full-ui input[type=range] { /* stylelint-disable-line string-quotes */ }
.player .plyr--full-ui input[type=range]::-webkit-slider-runnable-track {
  border-radius: var(--ifabsh-player-range-border-radius);
}
.player .plyr--full-ui input[type=range]::-webkit-slider-thumb {
  border-radius: var(--ifabsh-player-range-thumb-border-radius);
}
.player .plyr--full-ui input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--ifabsh-focus-outline-color, currentColor);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.player .plyr--audio {
  --plyr-range-thumb-background: var(--plyr-audio-control-color);
}
.player .plyr--audio .plyr__controls {
  border: var(--ifabsh-player-audio-border-width) solid var(--ifabsh-player-audio-border-color);
  padding: var(--ifabsh-player-audio-controls-padding);
}
.player .plyr--audio .plyr__controls__item.plyr__progress__container {
  padding: 0 var(--ifabsh-player-control-padding);
}
.player .plyr--video {
  --plyr-range-thumb-background: var(--plyr-video-control-color);
}
.player .plyr--video .plyr__controls {
  padding: var(--ifabsh-player-video-controls-padding);
}
.player .plyr--video .plyr__controls__item.plyr__time {
  text-shadow: 0 0 0.25em #000;
}

.player {
  --ifabsh-player-theme-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-player-controls-padding: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-player-control-border-radius: 0px;
  --ifabsh-player-control-font-size: 1rem;
  --ifabsh-player-control-gap: 0;
  --ifabsh-player-control-icon-size: 1em;
  --ifabsh-player-control-padding: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-player-progress-loading-size: 1rem;
  --ifabsh-player-range-border-radius: var(--ifabsh-player-control-border-radius);
  --ifabsh-player-range-thumb-border-radius: var(--ifabsh-player-control-border-radius);
  --ifabsh-player-range-thumb-height: 0.5rem;
  --ifabsh-player-range-track-height: 0.5rem;
  --ifabsh-player-audio-background-color: transparent;
  --ifabsh-player-audio-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-player-audio-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-player-audio-controls-padding: var(--ifabsh-player-controls-padding);
  --ifabsh-player-audio-control-color: var(--ifabsh-color-black, #000);
  --ifabsh-player-audio-control-color-hover: var(--ifabsh-player-audio-control-color);
  --ifabsh-player-audio-control-background-color-hover: var(--ifabsh-player-theme-color);
  --ifabsh-player-video-background-color: transparent;
  --ifabsh-player-video-controls-padding: var(--ifabsh-player-controls-padding);
  --ifabsh-player-video-controls-background-color: transparent;
  --ifabsh-player-video-control-color: var(--ifabsh-color-white, #fff);
  --ifabsh-player-video-control-color-hover: var(--ifabsh-player-video-control-color);
  --ifabsh-player-video-control-background-color-hover: var(--ifabsh-player-theme-color);
}
.player-caption {
  background-color: var(--ifabsh-player-caption-background-color, transparent);
  color: var(--ifabsh-player-caption-color, inherit);
  font-size: var(--ifabsh-player-caption-font-size, var(--ifabsh-font-size-s, 0.75rem));
  margin: var(--ifabsh-player-caption-margin, var(--ifabsh-spacing-s, 0.5rem)) 0 0;
  padding: var(--ifabsh-player-caption-padding, 0);
}
.player-caption > * {
  display: inline;
  margin: 0;
}
.player-caption > * + * {
  margin-left: var(--ifabsh-player-caption-copyright-gap, var(--ifabsh-spacing-s, 0.5rem));
}
.player-caption > .copyright::before {
  content: "("; /* stylelint-disable-line string-quotes */
}
.player-caption > .copyright::after {
  content: ")"; /* stylelint-disable-line string-quotes */
}

.player-video {
  --_plvi-poster-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-player-video-poster-duration, 0.15s));
}
.player-video .player-media {
  display: block;
  overflow: hidden;
  padding: 0;
  position: relative;
  width: 100%;
}
.player-video .player-media::before {
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  padding-top: var(--ifabsh-player-video-ratio, calc((9 / 16) * 100%));
}
.player-video .player-media [data-player-media], .player-video .player-media__poster, .player-video .player-media__player {
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 1;
}
.player-video .player-media__player > .plyr {
  height: 100%;
  width: 100%;
}
.player-video .player-media__poster {
  background-color: var(--ifabsh-player-video-background-color);
  opacity: 1;
  transition: var(--_plvi-poster-duration) opacity var(--_plvi-poster-duration) ease-in-out;
  z-index: 2;
}
.player-video .player-media__poster > *:not(.player-media__play) {
  height: 100%;
  width: 100%;
}
.player-video .player-media__poster > img {
  -o-object-fit: cover;
     object-fit: cover;
}
.player-video .player-media__play {
  --ifabsh-icon-button-color: var(--ifabsh-player-video-control-color);
  --ifabsh-icon-button-color-hover: var(--ifabsh-player-video-control-color-hover);
  font-size: var(--ifabsh-player-control-font-size);
  left: 50%;
  opacity: 1;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  z-index: 2;
}
.player-video .player-media__play::after {
  --_offset: calc(var(--ifabsh-player-control-font-size) * -1);
  --_size: calc(100% + var(--ifabsh-player-control-font-size) * 2);
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: var(--_size);
  left: var(--_offset);
  position: absolute;
  top: var(--_offset);
  width: var(--_size);
}
.player-video .player-media__play:focus {
  box-shadow: none;
  outline: none;
}
.player-video .player-media__play:focus, .player-video .player-media__play:hover {
  background-color: var(--ifabsh-player-video-control-background-color-hover);
}
.player-video .player-media__play._focus-visible:focus, .player-video .player-media__play:focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--ifabsh-focus-outline-color, currentColor);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.player-video .privacy-info {
  bottom: 0;
  display: none;
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  z-index: 5;
}
.player-video[data-privacy] .player-media__play {
  display: none;
  pointer-events: none;
}
.player-video[data-privacy] .privacy-info {
  display: block;
  pointer-events: all;
}
.player-video.-initialized .player-media__poster {
  opacity: 0;
  pointer-events: none;
}
.player-video.-initialized .player-media .plyr__control--overlaid[data-plyr=play] { /* stylelint-disable-line string-quotes */
  display: none;
}

.player {
  text-align: right;
}
.player-caption {
  --ifabsh-player-caption-background-color: var(--wp-color-grey);
  --ifabsh-player-caption-font-size: var(--wp-root-font-size);
  --ifabsh-player-caption-margin: 0;
  --ifabsh-player-caption-padding: var(--wp-spacing-s) calc(var(--wp-spacing-s) * 3);
  display: inline-block;
  font-weight: var(--wp-font-weight-normal);
}

.progress-bar {
  --ifabsh-progress-bar-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-progress-bar-height: var(--height, 1rem);
  --ifabsh-progress-bar-duration: 0.35s;
  --ifabsh-progress-bar-timing-function: cubic-bezier(0.36, 0.9, 0.35, 1);
  --dnm-prba-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-progress-bar-duration, var(--ifabsh-duration, 0.15s)));
  background-color: var(--ifabsh-progress-bar-track-color, var(--ifabsh-color-grey-light, #f1f1f1));
  border-radius: var(--ifabsh-progress-bar-border-radius);
  display: block;
  height: var(--ifabsh-progress-bar-height);
  overflow: hidden;
  position: relative;
}
.progress-bar__indicator {
  background-color: var(--ifabsh-progress-bar-color, var(--ifabsh-color-ui, #6176ff));
  border-radius: var(--ifabsh-progress-bar-border-radius);
  color: var(--ifabsh-progress-bar-label-color, var(--ifabsh-color-ui-contrast, #fff));
  font-size: var(--ifabsh-progress-bar-label-font-size, var(--ifabsh-font-size-xs, 0.5rem));
  height: 100%;
  line-height: var(--ifabsh-progress-bar-height);
  overflow: hidden;
  text-align: center;
  transition-duration: var(--dnm-prba-duration);
  transition-property: background-color, color, width;
  transition-timing-function: var(--ifabsh-progress-bar-timing-function);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
}

.progress-bar[data-indeterminate] .progress-bar__indicator {
  animation: progress-bar-indeterminate var(--ifabsh-progress-bar-indeterminate-duration, 2s) infinite var(--ifabsh-progress-bar-indeterminate-timing-function, linear);
  position: absolute;
}
.progress-bar[data-indeterminate] .progress-bar__label {
  display: none;
}

@keyframes progress-bar-indeterminate {
  0% {
    inset-inline-start: -50%;
    width: 50%;
  }
  75%, 100% {
    inset-inline-start: 100%;
    width: 50%;
  }
}
.progress-ring {
  --ifabsh-progress-ring-size: var(--size, 8rem);
  --ifabsh-progress-ring-track-width: 0.5rem;
  --ifabsh-progress-ring-timing-function: cubic-bezier(0.36, 0.9, 0.35, 1);
  --dnm-prri-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-progress-ring-duration, 0.35s));
  align-items: center;
  display: flex;
  height: var(--ifabsh-progress-ring-size);
  justify-content: center;
  position: relative;
  width: var(--ifabsh-progress-ring-size);
}
.progress-ring__image {
  height: 100%;
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
  width: 100%;
}
.progress-ring__track, .progress-ring__indicator {
  --radius: calc(var(--ifabsh-progress-ring-size) / 2 - var(--ifabsh-progress-ring-track-width) * 0.5);
  --circumference: calc(var(--radius) * 2 * 3.141592654); /* stylelint-disable-line number-max-precision */
  cx: calc(var(--ifabsh-progress-ring-size) / 2);
  cy: calc(var(--ifabsh-progress-ring-size) / 2);
  fill: none;
  r: var(--radius);
  stroke-width: var(--ifabsh-progress-ring-track-width);
}
.progress-ring__track {
  stroke: var(--ifabsh-progress-ring-track-color, var(--ifabsh-color-grey-light, #f1f1f1));
}
.progress-ring__indicator {
  stroke: var(--ifabsh-progress-ring-color, var(--ifabsh-color-ui, #6176ff));
  stroke-dasharray: var(--circumference) var(--circumference);
  stroke-dashoffset: calc(var(--circumference) - var(--percentage) * var(--circumference));
  stroke-linecap: var(--ifabsh-progress-ring-linecap, square);
  transition-duration: var(--dnm-prri-duration);
  transition-property: stroke-dashoffset;
  transition-timing-function: var(--ifabsh-progress-ring-timing-function);
}
.progress-ring__label {
  align-items: center;
  color: var(--ifabsh-progress-ring-label-color, currentColor);
  display: flex;
  font-size: var(--ifabsh-progress-ring-label-font-size, var(--ifabsh-font-size-s, 0.75rem));
  height: 100%;
  justify-content: center;
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  width: 100%;
}

.reveal-password {
  --ifabsh-reveal-password-background-color: transparent;
  --ifabsh-reveal-password-background-color-active: var(--ifabsh-reveal-password-background-color);
  --ifabsh-reveal-password-color: var(--ifabsh-form-control-color, var(--ifabsh-input-color, #000));
  --ifabsh-reveal-password-color-active: var(--ifabsh-reveal-password-color);
  --ifabsh-reveal-password-font-size: var(--ifabsh-font-size-s);
  --ifabsh-reveal-password-offset: var(--ifabsh-input-padding, var(--ifabsh-spacing, 1rem));
  --ifabsh-reveal-password-opacity: 0.5;
  --ifabsh-reveal-password-opacity-active: 1;
  --dnm-repa-background-color: var(--ifabsh-reveal-password-background-color);
  --dnm-repa-color: var(--ifabsh-reveal-password-color);
  --dnm-repa-opacity: var(--ifabsh-reveal-password-opacity);
  display: block;
  position: relative;
  width: 100%;
}
.reveal-password .form-control {
  padding-right: calc(var(--ifabsh-reveal-password-offset) * 2 + var(--ifabsh-reveal-password-font-size)) !important; /* stylelint-disable-line declaration-no-important */
}
.reveal-password .icon-button {
  --ifabsh-icon-button-background-color: var(--ifabsh-reveal-password-background-color);
  --ifabsh-icon-button-color: var(--ifabsh-reveal-password-color);
  --ifabsh-icon-button-font-size: var(--ifabsh-reveal-password-font-size);
  opacity: var(--dnm-repa-opacity);
  position: absolute;
  right: calc(var(--ifabsh-reveal-password-offset) - var(--ifabsh-icon-button-padding));
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  /* stylelint-disable string-quotes */
  /* stylelint-enable string-quotes */
}
.reveal-password .icon-button i::before {
  content: "\f070";
}
.reveal-password .icon-button[aria-pressed=true] {
  --dnm-repa-background-color: var(--ifabsh-reveal-password-background-color-active);
  --dnm-repa-color: var(--ifabsh-reveal-password-color-active);
  --dnm-repa-opacity: var(--ifabsh-reveal-password-opacity-active);
}
.reveal-password .icon-button[aria-pressed=true] i::before {
  content: "\f06e";
}
.input-group > .reveal-password {
  flex: 1 1 auto;
  min-width: 0;
  width: 1%;
}

.scroll-progress {
  background-color: var(--ifabsh-scroll-progress-track-color, transparent);
  display: block;
  height: var(--ifabsh-scroll-progress-height, 1px);
  left: 0;
  overflow: hidden;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: var(--ifabsh-scroll-progress-zindex, 50);
}
.scroll-progress > span {
  --dnm-scpr-calc-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-scroll-progress-duration, 0.15s));
  background: var(--ifabsh-scroll-progress-color, var(--ifabsh-color-ui, #6176ff));
  display: block;
  height: 100%;
  transform: scaleX(0);
  transform-origin: 0 0 0;
  transition: transform var(--dnm-scpr-calc-duration) var(--ifabsh-scroll-progress-timing-function, ease);
  width: 100%;
}

.skip-to {
  --ifabsh-skip-to-background-color: var(--ifabsh-color-black, #000);
  --ifabsh-skip-to-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-skip-to-color: var(--ifabsh-color-white, #fff);
  --ifabsh-skip-to-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-skip-to-font-size: var(--ifabsh-font-size, 1rem);
  --ifabsh-skip-to-opacity: 0.75;
  --ifabsh-skip-to-padding-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-skip-to-padding-y: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-skip-to-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-skto-calc-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-skipt-to-duration));
  background-color: var(--ifabsh-skip-to-background-color);
  border-radius: var(--ifabsh-skip-to-border-radius);
  color: var(--ifabsh-skip-to-color);
  left: 0;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  text-align: center;
  top: 0;
  transform: translate3d(-50%, -50%, 0);
  transition: var(--dnm-skto-calc-duration) opacity var(--ifabsh-skip-to-timing-function);
  z-index: var(--ifabsh-skip-to-zindex, 510);
}
.skip-to, .skip-to__link {
  clip: rect(0, 0, 0, 0);
  height: 1px;
  line-height: 1;
  width: 1px;
}
.skip-to__link {
  color: inherit;
  position: absolute;
}
.skip-to__link:focus {
  clip: auto;
  color: inherit;
  display: inline-block;
  height: auto;
  padding: var(--ifabsh-skip-to-padding-y) var(--ifabsh-skip-to-padding-x);
  position: relative;
  text-decoration: none;
  width: auto;
}
.skip-to:focus-within {
  clip: auto;
  height: auto;
  left: 50%;
  opacity: var(--ifabsh-skip-to-opacity);
  top: 50%;
  white-space: normal;
  width: auto;
}

.spinner {
  --ifabsh-spinner-color: currentColor;
  --ifabsh-spinner-size: 1em;
  animation: 1s linear infinite spin;
  border: var(--ifabsh-spinner-stroke-width, 2px) solid var(--ifabsh-spinner-track-color, transparent);
  border-radius: 50%;
  border-right-color: var(--ifabsh-spinner-color);
  border-top-color: var(--ifabsh-spinner-color);
  display: inline-block;
  height: var(--ifabsh-spinner-size);
  width: var(--ifabsh-spinner-size);
}
p .spinner {
  vertical-align: middle;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tag {
  --ifabsh-tag-background-color-alpha: 0.1;
  --ifabsh-tag-background-color: hsla(var(--ifabsh-color-black-h), var(--ifabsh-color-black-s), var(--ifabsh-color-black-l), var(--ifabsh-tag-background-color-alpha));
  --ifabsh-tag-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-tag-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-tag-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-tag-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-tag-font-size: var(--ifabsh-font-size-s, 0.75rem);
  --ifabsh-tag-font-weight: normal;
  --ifabsh-tag-gap: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-tag-height: calc(var(--ifabsh-input-height, 40px) * 0.8);
  --ifabsh-tag-padding: var(--ifabsh-spacing, 1rem);
  --ifabsh-tag-duration: 0.125s;
  --ifabsh-tag-timing-function: ease-in-out;
  --dnm-tag-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-tag-duration));
  align-items: center;
  background-color: var(--ifabsh-tag-background-color);
  border: var(--ifabsh-tag-border-width) solid var(--ifabsh-tag-border-color);
  border-radius: var(--ifabsh-tag-border-radius);
  color: var(--ifabsh-tag-color);
  cursor: default;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: var(--ifabsh-tag-font-size);
  gap: var(--ifabsh-tag-gap);
  height: var(--ifabsh-tag-height);
  line-height: calc(var(--ifabsh-tag-height) - var(--ifabsh-tag-border-width) * 2);
  overflow: hidden;
  padding: 0 var(--ifabsh-tag-padding);
  transition-duration: var(--dnm-tag-duration);
  transition-property: background-color, border, color, opacity;
  transition-timing-function: var(--ifabsh-tag-timing-function);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
}
.tag:focus-within, .tag.focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width) var(--ifabsh-focus-outline-style) var(--focus-outline-color, var(--ifabsh-focus-outline-color));
  outline-offset: var(--ifabsh-focus-outline-offset);
  pointer-events: auto;
}
.tag__label {
  order: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tag > .icon-button {
  --ifabsh-icon-button-color: var(--ifabsh-tag-button-color, inherit);
  --ifabsh-icon-button-color-hover: var(--ifabsh-tag-button-color-hover, inherit);
  --ifabsh-icon-button-padding: 0;
  order: 2;
}
.tag > .icon-button:focus, .tag > .icon-button._focus-visible {
  outline: none;
}
.tag > .icon-button::after {
  content: ""; /* stylelint-disable-line string-quotes */
  height: var(--ifabsh-tag-height);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  width: var(--ifabsh-tag-height);
}
.tag.-remove {
  opacity: 0;
}

.tag.-primary {
  --ifabsh-tag-background-color: hsla(var(--ifabsh-color-ui-h), var(--ifabsh-color-ui-s), var(--ifabsh-color-ui-l), var(--ifabsh-tag-background-color-alpha));
  --ifabsh-tag-border-color: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-tag-color: var(--ifabsh-color-ui, #6176ff);
}

.tag.-success {
  --ifabsh-tag-background-color: hsla(var(--ifabsh-color-success-h), var(--ifabsh-color-success-s), var(--ifabsh-color-success-l), var(--ifabsh-tag-background-color-alpha));
  --ifabsh-tag-border-color: var(--ifabsh-color-success, #15c182);
  --ifabsh-tag-color: var(--ifabsh-color-success, #15c182);
}

.tag.-info {
  --ifabsh-tag-background-color: hsla(var(--ifabsh-color-info-h), var(--ifabsh-color-info-s), var(--ifabsh-color-info-l), var(--ifabsh-tag-background-color-alpha));
  --ifabsh-tag-border-color: var(--ifabsh-color-info, #2db5cd);
  --ifabsh-tag-color: var(--ifabsh-color-info, #2db5cd);
}

.tag.-warning {
  --ifabsh-tag-background-color: hsla(var(--ifabsh-color-warning-h), var(--ifabsh-color-warning-s), var(--ifabsh-color-warning-l), var(--ifabsh-tag-background-color-alpha));
  --ifabsh-tag-border-color: var(--ifabsh-color-warning, #fca311);
  --ifabsh-tag-color: var(--ifabsh-color-warning, #fca311);
}

.tag.-danger {
  --ifabsh-tag-background-color: hsla(var(--ifabsh-color-danger-h), var(--ifabsh-color-danger-s), var(--ifabsh-color-danger-l), var(--ifabsh-tag-background-color-alpha));
  --ifabsh-tag-border-color: var(--ifabsh-color-danger, #fb3e4e);
  --ifabsh-tag-color: var(--ifabsh-color-danger, #fb3e4e);
}

.tag.-l {
  --ifabsh-tag-font-size: var(--ifabsh-font-size, 1rem);
  --ifabsh-tag-height: calc(var(--ifabsh-input-height-l) * 0.8);
  --ifabsh-tag-padding: calc(var(--ifabsh-spacing, 1rem) * 1.25);
}

.tag.-s {
  --ifabsh-tag-font-size: var(--ifabsh-font-size-xs, 0.5rem);
  --ifabsh-tag-height: calc(var(--ifabsh-input-height-s, 30px) * 0.8);
  --ifabsh-tag-padding: var(--ifabsh-spacing-s, 0.5rem);
}

.tag.-pill {
  --ifabsh-tag-border-radius: 10rem;
}

.tag-group {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--ifabsh-tag-group-gap, var(--ifabsh-spacing-s, 0.5rem));
}

.table {
  --ifabsh-table-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-table-border-style: solid;
  --ifabsh-table-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-table-color: currentColor;
  --ifabsh-table-header-border-width: calc(var(--ifabsh-table-border-width) * 2);
  --ifabsh-table-cell-padding-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-table-cell-padding-y: var(--ifabsh-spacing, 1rem);
  --ifabsh-table-striped-background-color: var(--ifabsh-color-grey-light, #f1f1f1);
  --ifabsh-table-striped-color: var(--ifabsh-table-color);
  border-collapse: collapse;
  border-color: var(--ifabsh-table-border-color);
  caption-side: bottom;
  color: var(--ifabsh-table-color);
  width: 100%;
}
.table > :not(:first-child) {
  border-top: initial;
}
.table > :not(caption) > * > * {
  box-shadow: inset 0 0 0 9999px var(--ifabsh-table-accent-background-color, transparent);
  color: var(--ifabsh-table-accent-color, currentColor);
}
.table tr {
  border-color: var(--ifabsh-table-border-color);
}
.table th,
.table td {
  padding: var(--dnm-tabl-cell-padding-y, var(--ifabsh-table-cell-padding-y)) var(--dnm-tabl-cell-padding-x, var(--ifabsh-table-cell-padding-x));
}
.table > caption {
  font-size: var(--ifabsh-table-caption-font-size, var(--ifabsh-font-size-s, 0.75rem));
  padding: var(--ifabsh-table-caption-padding-y, var(--ifabsh-table-cell-padding-y)) var(--ifabsh-table-caption-padding-x, var(--ifabsh-table-cell-padding-x));
  text-align: center;
}
.table > thead > tr > * {
  background-color: var(--ifabsh-table-header-background-color, transparent);
  color: var(--ifabsh-table-header-color, var(--ifabsh-color-ui, #6176ff));
  font-size: var(--ifabsh-table-header-font-size, 1rem);
  font-weight: var(--ifabsh-table-header-font-weight, normal);
}
.table > thead > tr:last-child {
  border-bottom-color: var(--ifabsh-table-header-border-color, var(--ifabsh-color-ui, #6176ff));
  border-bottom-style: var(--ifabsh-table-header-border-style, var(--ifabsh-table-border-style));
  border-bottom-width: var(--ifabsh-table-header-border-width); /* stylelint-disable-line */
}
.table > tfoot > tr > * {
  background-color: var(--ifabsh-table-footer-background-color, transparent);
  color: var(--ifabsh-table-footer-color, var(--ifabsh-table-color));
  font-size: var(--ifabsh-table-footer-font-size, 1rem);
  font-weight: var(--ifabsh-table-footer-font-weight, normal);
}
.table > tfoot > tr:first-child {
  border-top-color: var(--ifabsh-table-footer-border-color, var(--ifabsh-color-ui, #6176ff));
  border-top-style: var(--ifabsh-table-footer-border-style, var(--ifabsh-table-border-style));
  border-top-width: var(--ifabsh-table-footer-border-width, var(--ifabsh-table-header-border-width)); /* stylelint-disable-line */
}

.table.-s {
  --dnm-tabl-cell-padding-x: calc(var(--ifabsh-table-cell-padding-x) / 2);
  --dnm-tabl-cell-padding-y: calc(var(--ifabsh-table-cell-padding-y) / 2);
}

.table.-bordered > :not(caption) > * {
  border-width: var(--ifabsh-table-border-width) 0;
}
.table.-bordered > :not(caption) > * > * {
  border-width: 0 1px;
}

.table.-striped > tbody > tr:nth-of-type(odd) > * {
  --ifabsh-table-accent-background-color: var(--ifabsh-table-striped-background-color);
  color: var(--ifabsh-table-striped-color);
}

.table-container {
  overflow-x: auto;
  scrollbar-width: none;
}
.table-container > table {
  margin: 0;
}

.table-container {
  --wp-scrollbar-track-color: transparent;
}
.table-container::-webkit-scrollbar {
  height: var(--wp-scrollbar-size, 6px);
  width: var(--wp-scrollbar-size, 6px);
}
.table-container::-webkit-scrollbar-thumb {
  background: var(--wp-scrollbar-color, #000);
}
.table-container::-webkit-scrollbar-track {
  background: var(--wp-scrollbar-track-color, #fff);
}
.table-container {
  scrollbar-face-color: var(--wp-scrollbar-color, #000);
  scrollbar-track-color: var(--wp-scrollbar-track-color, #fff);
}

.tab-group {
  --ifabsh-tabgroup-background-color: transparent;
  --ifabsh-tabgroup-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-tabgroup-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-tabgroup-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-tabgroup-padding-x: var(--ifabsh-spacing, 1rem);
  --ifabsh-tabgroup-padding-y: var(--ifabsh-spacing, 1rem);
  --ifabsh-tabgroup-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-tabgroup-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --ifabsh-tabgroup-tab-background-color: transparent;
  --ifabsh-tabgroup-tab-background-color-active: transparent;
  --ifabsh-tabgroup-tab-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-tabgroup-tab-color-active: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-tabgroup-tab-font-size: var(--ifabsh-font-size, 1rem);
  --ifabsh-tabgroup-tab-gap: var(--ifabsh-spacing-s, 0.5rem);
  --dnm-tagr-calc-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-tabgroup-duration));
  background-color: var(--ifabsh-tabgroup-background-color);
  display: flex;
  flex-direction: column;
}
.tab-group__nav {
  display: flex;
  overflow-x: scroll;
  scrollbar-width: none;
}
.tab-group__nav::-webkit-scrollbar {
  height: 0;
  width: 0;
}
.tab-group__nav-container {
  order: 1;
}
.tab-group__body {
  border: solid var(--ifabsh-tabgroup-border-width) var(--ifabsh-tabgroup-border-color);
  border-radius: var(--ifabsh-tabgroup-border-radius);
  order: 2;
}
.tab-group__tabs {
  display: flex;
  flex: 1 1 auto;
  flex-flow: row nowrap;
  font-size: var(--ifabsh-tabgroup-tab-font-size);
  gap: var(--ifabsh-tabgroup-tab-gap);
  position: relative;
}
.tab-group__tabs.nav {
  --ifabsh-nav-gap: var(--ifabsh-tabgroup-tab-gap);
}
.tab-group__indicator {
  position: absolute;
  transition: var(--dnm-tagr-calc-duration) transform var(--ifabsh-tabgroup-timing-function), var(--dnm-tagr-calc-duration) width var(--ifabsh-tabgroup-timing-function);
}

.tab-group .tab {
  align-items: center;
  background-color: var(--ifabsh-tabgroup-tab-background-color);
  border: 0 none;
  border-radius: var(--ifabsh-tabgroup-border-radius);
  color: var(--ifabsh-tabgroup-tab-color);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--ifabsh-tabgroup-tab-font-size);
  height: auto;
  line-height: normal;
  padding: var(--ifabsh-tabgroup-tab-padding-y, var(--ifabsh-tabgroup-padding-y)) var(--ifabsh-tabgroup-tab-padding-x, var(--ifabsh-tabgroup-padding-x));
  transition: all var(--dnm-tagr-calc-duration) var(--ifabsh-tabgroup-timing-function);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
}
.tab-group .tab[aria-selected=true] { /* stylelint-disable-line string-quotes */
  background-color: var(--ifabsh-tabgroup-tab-background-color-active);
  color: var(--ifabsh-tabgroup-tab-color-active);
}
.tab-group .tab:focus {
  box-shadow: none;
  outline: none;
}

.tab-group .tab-panel {
  transition: opacity var(--dnm-tagr-calc-duration) var(--ifabsh-tabgroup-timing-function);
}
.tab-group .tab-panel__content {
  padding: var(--ifabsh-tabgroup-panel-padding-y, var(--ifabsh-tabgroup-padding-y)) var(--ifabsh-tabgroup-panel-padding-x, var(--ifabsh-tabgroup-padding-x));
}
.tab-group .tab-panel__content > :first-child:not(.row) {
  margin-top: 0;
}
.tab-group .tab-panel__content > :last-child:not(.row) {
  margin-bottom: 0;
}

.tab-group.-tabs-top .tab-group__indicator, .tab-group.-tabs-bottom .tab-group__indicator {
  left: 0;
  width: 0;
}
.tab-group.-tabs-top .tab {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.tab-group.-tabs-top .tab-group__nav-container {
  order: 1;
}
.tab-group.-tabs-top .tab-group__body {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top-width: 0;
  order: 2;
}
.tab-group.-tabs-top .tab-group__tabs {
  border-bottom: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-border-color);
}
.tab-group.-tabs-top .tab-group__indicator {
  border-bottom: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-tab-color-active);
  bottom: calc(var(--ifabsh-tabgroup-border-width) * -1);
}
.tab-group.-tabs-bottom .tab {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.tab-group.-tabs-bottom .tab-group__nav-container {
  order: 2;
}
.tab-group.-tabs-bottom .tab-group__body {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-width: 0;
  order: 1;
}
.tab-group.-tabs-bottom .tab-group__tabs {
  border-top: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-border-color);
}
.tab-group.-tabs-bottom .tab-group__indicator {
  border-top: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-tab-color-active);
  top: calc(var(--ifabsh-tabgroup-border-width) * -1);
}
.tab-group.-tabs-left, .tab-group.-tabs-right {
  flex-direction: row;
}
.tab-group.-tabs-left .tab-group__nav, .tab-group.-tabs-right .tab-group__nav {
  min-height: 100%;
  overflow-x: auto;
}
.tab-group.-tabs-left .tab-group__body, .tab-group.-tabs-right .tab-group__body {
  flex: 1 1 auto;
}
.tab-group.-tabs-left .tab-group__indicator, .tab-group.-tabs-right .tab-group__indicator {
  height: 0;
  top: 0;
}
.tab-group.-tabs-left .tab-group__tabs, .tab-group.-tabs-right .tab-group__tabs {
  border: 0 none;
  flex: 0 0 auto;
  flex-direction: column;
}
.tab-group.-tabs-left .tab {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.tab-group.-tabs-left .tab-group__nav-container {
  order: 1;
}
.tab-group.-tabs-left .tab-group__body {
  border-bottom-left-radius: 0;
  border-left-width: 0;
  border-top-left-radius: 0;
  order: 2;
}
.tab-group.-tabs-left .tab-group__tabs {
  border-right: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-border-color);
}
.tab-group.-tabs-left .tab-group__indicator {
  border-right: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-tab-color-active);
  right: calc(var(--ifabsh-tabgroup-border-width) * -1);
}
.tab-group.-tabs-right .tab {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.tab-group.-tabs-right .tab-group__nav-container {
  order: 2;
}
.tab-group.-tabs-right .tab-group__body {
  border-bottom-right-radius: 0;
  border-right-width: 0;
  border-top-right-radius: 0;
  order: 1;
}
.tab-group.-tabs-right .tab-group__tabs {
  border-left: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-border-color);
}
.tab-group.-tabs-right .tab-group__indicator {
  border-left: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-tab-color-active);
  left: calc(var(--ifabsh-tabgroup-border-width) * -1);
}

.tab-group {
  --ifabsh-tabgroup-border-color: var(--wp-color-black);
  --ifabsh-tabgroup-border-color-active: var(--wp-color-primary);
  --ifabsh-tabgroup-border-width: 2px;
  --ifabsh-tabgroup-panel-padding-x: 0;
  --ifabsh-tabgroup-tab-color: var(--wp-color-black);
  --ifabsh-tabgroup-tab-color-active: var(--wp-color-primary);
}
.tab-group__nav {
  overflow-y: hidden;
}
.tab-group__body {
  border: none;
}
.tab-group__body .tab-panel.show {
  display: block !important;
}
.tab-group__body .tab-panel:not(.show) {
  display: none !important;
}
.tab-group__tabs {
  border-bottom: none !important;
}
.tab-group__tabs .tab {
  border: var(--ifabsh-tabgroup-border-width) solid var(--ifabsh-tabgroup-border-color);
}
.tab-group__tabs .tab-summary {
  text-transform: uppercase;
}
.tab-group__tabs .tab[aria-selected=true] { /* stylelint-disable-line string-quotes */
  --ifabsh-tabgroup-border-color: var(--ifabsh-tabgroup-border-color-active);
}

.text-block {
  --ifabsh-text-block-gap: var(--ifabsh-spacing, 1rem);
  --ifabsh-text-block-column-media-size: 100%;
  background-color: var(--ifabsh-text-block-background-color, transparent);
  padding: var(--ifabsh-text-block-padding, 0);
  position: relative;
}
.text-block-text {
  -webkit-hyphens: manual;
          hyphens: manual;
  order: 2;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.text-block-text > :first-child {
  margin-top: 0;
}
.text-block-text > :last-child {
  margin-bottom: 0;
}
.text-block-media {
  order: 1;
}
.text-block-media > * {
  display: block;
  margin: 0 auto;
  width: 100%;
}
@media (min-width: 768px) {
  .text-block {
    --ifabsh-text-block-column-media-size: 50%;
  }
}

.text-block[class*=-media] { /* stylelint-disable-line string-quotes */ }
.text-block[class*=-media] > .text-block__inner {
  align-items: var(--ifabsh-text-block-align-items, flex-start);
  display: flex;
  flex-wrap: wrap;
  gap: var(--ifabsh-text-block-gap);
}

/* stylelint-disable string-quotes */
.text-block[class*=-media-left] .text-block-text, .text-block[class*=-media-left] .text-block-media,
.text-block[class*=-media-right] .text-block-text,
.text-block[class*=-media-right] .text-block-media {
  flex-grow: 1;
  flex-shrink: 0;
}
.text-block[class*=-media-left] .text-block-text,
.text-block[class*=-media-right] .text-block-text {
  flex-basis: calc(100% - var(--ifabsh-text-block-column-media-size) - var(--ifabsh-text-block-gap));
}
.text-block[class*=-media-left] .text-block-media,
.text-block[class*=-media-right] .text-block-media {
  flex-basis: calc(var(--ifabsh-text-block-column-media-size) - var(--ifabsh-text-block-gap));
  min-width: var(--ifabsh-text-block-column-media-min-width, 0);
}

/* stylelint-enable string-quotes */
/* stylelint-disable string-quotes */
.text-block[class*=-media-above] > .text-block__inner,
.text-block[class*=-media-below] > .text-block__inner {
  flex-direction: column;
}
.text-block[class*=-media-above] .text-block-text, .text-block[class*=-media-above] .text-block-media,
.text-block[class*=-media-below] .text-block-text,
.text-block[class*=-media-below] .text-block-media {
  width: 100%;
}
.text-block[class*=-media-above] .text-block-media > *,
.text-block[class*=-media-below] .text-block-media > * {
  max-width: var(--ifabsh-text-block-vertical-media-max-width, none);
}

/* stylelint-enable string-quotes */
/* stylelint-disable string-quotes */
.text-block[class*=-media-right] .text-block-text,
.text-block[class*=-media-below] .text-block-text {
  order: 1;
}
.text-block[class*=-media-right] .text-block-media,
.text-block[class*=-media-below] .text-block-media {
  order: 2;
}

/* stylelint-enable string-quotes */
.text-block {
  --ifabsh-text-block-gap: var(--wp-block-element-margin);
}
.text-block .swiper-button-prev, .text-block .swiper-button-next {
  display: none;
}
.text-block-text > * + .heading {
  margin-top: var(--wp-spacing-l);
}
.text-block img {
  border-radius: 5px;
}

.form {
  --ifabsh-form-control-background-color: var(--ifabsh-input-background-color, #fff);
  --ifabsh-form-control-background-color-hover: var(--ifabsh-form-control-background-color);
  --ifabsh-form-control-background-color-focus: var(--ifabsh-form-control-background-color);
  --ifabsh-form-control-border-color: var(--ifabsh-input-border-color, #e8e8e8);
  --ifabsh-form-control-border-color-hover: var(--ifabsh-form-control-border-color);
  --ifabsh-form-control-border-color-focus: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-form-control-border-width: var(--ifabsh-input-border-width, var(--ifabsh-border-width, 1px));
  --ifabsh-form-control-border-radius: var(--ifabsh-input-border-radius, var(--ifabsh-border-radius, 0px));
  --ifabsh-form-control-color: var(--ifabsh-input-color, #000);
  --ifabsh-form-control-color-hover: var(--ifabsh-form-control-color);
  --ifabsh-form-control-color-focus: var(--ifabsh-form-control-color);
  --ifabsh-form-control-font-size: var(--ifabsh-input-font-size, 1rem);
  --ifabsh-form-control-font-style: var(--ifabsh-input-font-style, normal);
  --ifabsh-form-control-font-weight: var(--ifabsh-input-font-weight, normal);
  --ifabsh-form-control-height: var(--ifabsh-input-height, var(--ifabsh-font-size, 40px));
  --ifabsh-form-control-padding: var(--ifabsh-input-padding, var(--ifabsh-spacing, 1rem));
  --ifabsh-form-control-duration: var(--ifabsh-input-duration, var(--ifabsh-duration, 0.15s));
  --ifabsh-form-control-timing-function: var(--ifabsh-input-timing-function, var(--ifabsh-timing-function, ease-in-out));
  --ifabsh-form-control-disabled-background-color: var(--ifabsh-input-disabled-background-color, #fff);
  --ifabsh-form-control-disabled-opacity: var(--ifabsh-input-disabled-opacity, var(--ifabsh-disabled-opacity, 0.4));
  --ifabsh-form-control-readonly-background-color: var(--ifabsh-input-readonly-background-color, #f1f1f1);
  --ifabsh-form-control-readonly-opacity: var(--ifabsh-input-readonly-opacity, var(--ifabsh-readonly-opacity, 1));
  --ifabsh-form-invalid-border-color: var(--ifabsh-color-invalid, #fb3e4e);
  --ifabsh-form-invalid-label-color: var(--ifabsh-color-invalid, #fb3e4e);
  --ifabsh-form-label-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-form-label-font-size: var(--ifabsh-font-size-s, 0.75rem);
  --ifabsh-form-label-font-style: normal;
  --ifabsh-form-label-font-weight: normal;
  --ifabsh-form-label-margin: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-form-text-color: var(--ifabsh-color-text, #3e3e3e);
  --ifabsh-form-text-font-size: var(--ifabsh-font-size-xs, 0.5rem);
  --ifabsh-form-text-font-style: normal;
  --ifabsh-form-text-font-weight: normal;
  --ifabsh-form-text-margin: var(--ifabsh-spacing-s, 0.5rem);
}

.form-control, .form-select {
  --dnm-foco-background-color: var(--ifabsh-form-control-background-color);
  --dnm-foco-border-color: var(--ifabsh-form-control-border-color);
  --dnm-foco-color: var(--ifabsh-form-control-color);
  --dnm-foco-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-form-control-duration));
  --dnm-foco-line-height: calc(var(--ifabsh-form-control-height) - calc(var(--ifabsh-form-control-border-width) * 2));
  --dnm-poco-padding-left: var(--ifabsh-form-control-padding-left, var(--ifabsh-form-control-padding));
  --dnm-poco-padding-right: var(--ifabsh-form-control-padding-right, var(--ifabsh-form-control-padding));
  background-color: var(--dnm-foco-background-color) !important; /* stylelint-disable-line declaration-no-important */
  border: var(--ifabsh-form-control-border-width) solid var(--dnm-foco-border-color) !important; /* stylelint-disable-line declaration-no-important */
  border-radius: var(--ifabsh-form-control-border-radius);
  color: var(--dnm-foco-color) !important; /* stylelint-disable-line declaration-no-important */
  font-size: var(--ifabsh-form-control-font-size);
  font-style: var(--ifabsh-form-control-font-style);
  font-weight: var(--ifabsh-form-control-font-weight);
  line-height: var(--dnm-foco-line-height);
  padding-bottom: 0;
  padding-left: var(--dnm-poco-padding-left) !important; /* stylelint-disable-line declaration-no-important */
  padding-right: var(--dnm-poco-padding-right) !important; /* stylelint-disable-line declaration-no-important */
  padding-top: 0; /* stylelint-disable-line declaration-block-no-redundant-longhand-properties */
  text-transform: var(--ifabsh-form-control-text-transform, var(--ifabsh-input-text-transform, none));
  transition-duration: var(--dnm-foco-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-form-control-timing-function);
}
.form-control:hover:not(:disabled), .form-control:hover:not([disabled]), .form-control:hover:not(._disabled), .form-select:hover:not(:disabled), .form-select:hover:not([disabled]), .form-select:hover:not(._disabled) {
  --dnm-foco-background-color: var(--ifabsh-form-control-background-color-hover);
  --dnm-foco-border-color: var(--ifabsh-form-control-border-color-hover);
  --dnm-foco-color: var(--ifabsh-form-control-color-hover);
  box-shadow: none;
}
.form-control:focus, .form-select:focus {
  outline: none;
}
.form-control:focus:not(:disabled), .form-control:focus:not([disabled]), .form-control:focus:not(._disabled), .form-select:focus:not(:disabled), .form-select:focus:not([disabled]), .form-select:focus:not(._disabled) {
  --dnm-foco-background-color: var(--ifabsh-form-control-background-color-focus);
  --dnm-foco-border-color: var(--ifabsh-form-control-border-color-focus);
  --dnm-foco-color: var(--ifabsh-form-control-color-focus);
  box-shadow: none;
}
.form-control._focus-visible:focus, .form-control:focus-visible:focus, .form-select._focus-visible:focus, .form-select:focus-visible:focus {
  outline: var(--ifabsh-focus-outline-width, 1px) var(--ifabsh-focus-outline-style, dotted) var(--ifabsh-focus-outline-color, currentColor);
  outline-offset: var(--ifabsh-focus-outline-offset, 2px);
}
.form-control:disabled, .form-control[disabled], .form-control._disabled, .form-select:disabled, .form-select[disabled], .form-select._disabled {
  --dnm-foco-background-color: var(--ifabsh-form-control-disabled-background-color);
  opacity: var(--ifabsh-form-control-disabled-opacity);
  pointer-events: none;
}
.form-control:-moz-read-only[readonly], .form-select:-moz-read-only[readonly] {
  --dnm-foco-background-color: var(--ifabsh-form-control-readonly-background-color);
  opacity: var(--ifabsh-form-control-readonly-opacity);
}
.form-control:read-only[readonly], .form-control[readonly], .form-control._readonly, .form-select:read-only[readonly], .form-select[readonly], .form-select._readonly {
  --dnm-foco-background-color: var(--ifabsh-form-control-readonly-background-color);
  opacity: var(--ifabsh-form-control-readonly-opacity);
}

.form-control.-s,
.form-select.-s,
[class*=form-control-sm] { /* stylelint-disable-line string-quotes */
  --ifabsh-form-control-height: var(--ifabsh-input-height-s, 30px);
  --ifabsh-form-control-font-size: var(--ifabsh-input-font-size-s, var(--ifabsh-font-size-s, 0.75rem));
  --ifabsh-form-control-padding: var(--ifabsh-input-padding-s, var(--ifabsh-spacing-s, 0.5rem));
}

.form-control.-l,
.form-select.-l,
[class*=form-control-lg] { /* stylelint-disable-line string-quotes */
  --ifabsh-form-control-height: var(--ifabsh-input-height-l, 50px);
  --ifabsh-form-control-font-size: var(--ifabsh-input-font-size-l, var(--ifabsh-font-size-l, 1.25rem));
  --ifabsh-form-control-padding: var(--ifabsh-input-padding-l, var(--ifabsh-spacing-l, 1.25rem));
}

#page-search-drawer .drawer__body {
  padding-bottom: var(--wp-spacing-l);
}
@media (min-width: 992px) {
  #page-search-drawer .drawer__body {
    padding-bottom: calc(var(--wp-spacing-l) * 3);
  }
}

.search-box__form {
  --ifabsh-form-control-border-color-focus: var(--wp-color-secondary);
}
.search-box__form .input-group {
  gap: var(--wp-spacing-l);
}
.search-box__submit .button__label {
  display: none;
}
@media (min-width: 576px) {
  .search-box__submit .button__label {
    display: block;
  }
}

.deck {
  --ifabsh-deck-border-color: transparent;
  --ifabsh-deck-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-deck-border-width: 0px; /* stylelint-disable-line length-zero-no-unit */
  --ifabsh-deck-gap-column: var(--ifabsh-deck-gap, var(--ifabsh-spacing, 1rem));
  --ifabsh-deck-gap-row: var(--ifabsh-deck-gap-column);
  background-color: var(--ifabsh-deck-background-color, transparent);
  border: var(--ifabsh-deck-border-width) solid var(--ifabsh-deck-border-color);
  border-radius: var(--ifabsh-deck-border-radius);
  padding: var(--ifabsh-deck-padding-y, 0) var(--ifabsh-deck-padding-x, 0);
}
.deck__container {
  display: grid;
  grid-gap: var(--ifabsh-deck-gap-row) var(--ifabsh-deck-gap-column);
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto;
}
.deck__container > * {
  margin: 0 !important; /* stylelint-disable-line declaration-no-important */
  width: 100%;
}
.deck__container > * + * {
  margin: 0;
}
@media (min-width: 768px) {
  .deck {
    /* stylelint-disable string-quotes */
    /* stylelint-enable string-quotes */
  }
  .deck[data-columns="2"] .deck__container, .deck[data-columns="3"] .deck__container, .deck[data-columns="4"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (min-width: 992px) {
  .deck {
    /* stylelint-disable string-quotes */
    /* stylelint-enable string-quotes */
  }
  .deck[data-columns="3"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
  .deck[data-columns="4"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}

.ce.ce-deck .deck.-bordered, .ce.ce-deck .deck.-filled {
  --wp-deck-element-bg-color: var(--wp-color-grey);
  --wp-deck-element-border-color: var(--wp-color-grey-dark);
  --wp-deck-element-border-width: 2px;
}
.ce.ce-deck .deck.-bordered .deck__container > *:not(.ce-text-block.-textmedia), .ce.ce-deck .deck.-filled .deck__container > *:not(.ce-text-block.-textmedia) {
  padding: var(--wp-spacing);
}
@media (min-width: 992px) {
  .ce.ce-deck .deck.-bordered .deck__container > *:not(.ce-text-block.-textmedia), .ce.ce-deck .deck.-filled .deck__container > *:not(.ce-text-block.-textmedia) {
    padding: calc(var(--wp-spacing-s) * 3);
  }
}
.ce.ce-deck .deck.-bordered .deck__container > *.ce-text-block.-textmedia .text-block, .ce.ce-deck .deck.-filled .deck__container > *.ce-text-block.-textmedia .text-block {
  --ifabsh-text-block-gap: var(--ifabsh-deck-gap);
}
.ce.ce-deck .deck.-bordered .deck__container > *.ce-text-block.-textmedia .text-block, .ce.ce-deck .deck.-bordered .deck__container > *.ce-text-block.-textmedia .text-block__inner, .ce.ce-deck .deck.-filled .deck__container > *.ce-text-block.-textmedia .text-block, .ce.ce-deck .deck.-filled .deck__container > *.ce-text-block.-textmedia .text-block__inner {
  height: 100%;
}
.ce.ce-deck .deck.-bordered .deck__container > *.ce-text-block.-textmedia .text-block-text, .ce.ce-deck .deck.-filled .deck__container > *.ce-text-block.-textmedia .text-block-text {
  flex: 1 0 auto;
  padding: var(--wp-spacing);
}
@media (min-width: 992px) {
  .ce.ce-deck .deck.-bordered .deck__container > *.ce-text-block.-textmedia .text-block-text, .ce.ce-deck .deck.-filled .deck__container > *.ce-text-block.-textmedia .text-block-text {
    padding: calc(var(--wp-spacing-s) * 3);
  }
}
.ce.ce-deck .deck.-filled .deck__container > *:not(.ce-text-block.-textmedia) {
  background: var(--wp-deck-element-bg-color);
}
.ce.ce-deck .deck.-filled .deck__container > *.ce-text-block.-textmedia .text-block-text {
  background: var(--wp-deck-element-bg-color);
}
.ce.ce-deck .deck.-bordered .deck__container > *:not(.ce-text-block.-textmedia) {
  border: var(--wp-deck-element-border-width) solid var(--wp-deck-element-border-color);
}
.ce.ce-deck .deck.-bordered .deck__container > *.ce-text-block.-textmedia .text-block-text {
  border: var(--wp-deck-element-border-width) solid var(--wp-deck-element-border-color);
}

.section.-colored .deck.-bordered, .section.-colored .deck.-filled {
  --wp-deck-element-bg-color: var(--wp-color-white);
  --wp-deck-element-border-color: var(--wp-color-white);
}

.deck {
  --ifabsh-deck-gap: var(--wp-spacing);
}
@media (min-width: 768px) {
  .deck {
    /* stylelint-disable string-quotes */
    /* stylelint-enable string-quotes */
  }
  .deck[data-columns="2"] .deck__container, .deck[data-columns="3"] .deck__container, .deck[data-columns="4"] .deck__container, .deck[data-columns="6"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (min-width: 992px) {
  .deck {
    --ifabsh-deck-gap: var(--wp-spacing-l);
    /* stylelint-disable string-quotes */
    /* stylelint-enable string-quotes */
  }
  .deck[data-columns="3"] .deck__container, .deck[data-columns="6"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (min-width: 1400px) {
  .deck[data-columns="4"] { /* stylelint-disable-line string-quotes */ }
  .deck[data-columns="4"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (min-width: 1600px) {
  .deck[data-columns="6"] { /* stylelint-disable-line string-quotes */ }
  .deck[data-columns="6"] .deck__container {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}

.stack {
  --ifabsh-stack-background-color: transparent;
  --ifabsh-stack-border-color: var(--ifabsh-color-border, #e8e8e8);
  --ifabsh-stack-border-width: var(--ifabsh-border-width, 1px);
  --ifabsh-stack-border-radius: var(--ifabsh-border-radius, 0px);
  --ifabsh-stack-gap: var(--ifabsh-spacing, 1rem);
  --ifabsh-stack-padding: var(--ifabsh-stack-gap);
  background-color: var(--ifabsh-stack-background-color);
}
.stack__container {
  border: var(--ifabsh-stack-border-width) solid var(--ifabsh-stack-border-color);
  border-radius: var(--ifabsh-stack-border-radius);
  padding: var(--ifabsh-stack-padding);
}
.stack__container > * {
  border: 0 none;
  border-radius: 0;
  margin: 0;
  max-width: none;
  padding: 0;
  width: 100%;
}
.stack__container > * + * {
  margin-top: calc(var(--ifabsh-stack-gap) * 2);
  position: relative;
}
.stack__container > * + *::before {
  background-color: var(--ifabsh-stack-border-color);
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: var(--ifabsh-stack-border-width);
  left: calc(var(--ifabsh-stack-gap) * -1);
  overflow: hidden;
  position: absolute;
  right: calc(var(--ifabsh-stack-gap) * -1);
  top: calc(var(--ifabsh-stack-gap) * -1);
}
.stack__container > :first-child {
  border-top-left-radius: var(--ifabsh-stack-border-radius);
  border-top-right-radius: var(--ifabsh-stack-border-radius);
}
.stack__container > :last-child {
  border-bottom-left-radius: var(--ifabsh-stack-border-radius);
  border-bottom-right-radius: var(--ifabsh-stack-border-radius);
}

.slider {
  --ifabsh-slider-button-font-size: var(--wp-font-size-l);
  --ifabsh-slider-pagination-item-size: 0.5rem;
  --ifabsh-slider-pagination-item-border-radius: 0;
  --ifabsh-slider-pagination-item-opacity: 0.15;
  --ifabsh-slider-pagination-background-color: var(--wp-color-white);
  --ifabsh-slider-pagination-gap: 0.5rem;
  --ifabsh-slider-pagination-padding: 0.5rem;
}
.slider .swiper-pagination-horizontal {
  left: 50%;
  right: auto;
  top: calc(var(--ifabsh-slider-pagination-padding) * -1);
  transform: translateX(-50%);
}

.details-group {
  --ifabsh-details-group-gap: var(--wp-spacing);
}

.icon-button.-active {
  --ifabsh-icon-button-color: var(--wp-color-primary);
}

.scroll-progress {
  --ifabsh-scroll-progress-zindex: var(--wp-zindex-scroll-progress);
}

.stack {
  --ifabsh-stack-gap: var(--wp-spacing);
}
.section.-colored.-grey .stack {
  --ifabsh-stack-border-color: var(--wp-color-white);
}

@media (min-width: 992px) {
  .stack {
    --ifabsh-stack-gap: var(--wp-spacing-l);
  }
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
.page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.page:focus-visible {
  outline: none;
}
.page-header {
  padding-left: var(--wp-page-offset);
  padding-right: var(--wp-page-offset);
}
.page-header:focus-visible {
  outline: none;
}
.page-main {
  flex: 1 0 auto;
  scroll-margin-top: var(--global-scroll-top-offset);
}
.page-main:focus-visible {
  outline: none;
}
.page-main > .section {
  scroll-margin-top: var(--global-scroll-top-offset);
}
.page-main > .section:first-of-type {
  border-top: 0 none;
}
.page-footer {
  padding-left: var(--wp-page-offset);
  padding-right: var(--wp-page-offset);
}
.page-footer:focus-visible {
  outline: none;
}

[data-scroll-page-top=global] { /* stylelint-disable-line string-quotes */
  --ifabsh-icon-button-background-color: var(--wp-color-text);
  --ifabsh-icon-button-color: var(--wp-color-white);
  --ifabsh-icon-button-background-color-hover: var(--wp-color-secondary);
  bottom: var(--wp-spacing);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  right: 172px;
  transition-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition-close));
  transition-timing-function: ease-in;
  z-index: 10;
}
[data-scroll-page-top=global].-is-shown {
  opacity: 1;
  pointer-events: all;
  transition-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition-open));
  transition-timing-function: ease-out;
}

[aria-controls=page-social-drawer] {
  --ifabsh-button-height:34px;
  bottom: var(--wp-spacing);
  position: fixed;
  right: var(--wp-spacing);
  z-index: 10;
}

.page-footer-in-view [aria-controls=page-social-drawer] {
  --ifabsh-button-border-color: var(--wp-color-white) !important;
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
/**
 * Inhalte visuell ausblenden aber für unterstützende Technologien zugänglich
 * halten.
 */
/**
 * Zeige Inhalt nur wenn er fokussiert wird/wurde.
 */
.nav {
  --ifabsh-nav-link-color: inherit;
  --ifabsh-nav-link-color-hover: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-nav-link-color-active: var(--ifabsh-nav-link-color-hover);
  --ifabsh-nav-link-background-color: transparent;
  --ifabsh-nav-link-background-color-active: transparent;
  --ifabsh-nav-link-background-color-hover: transparent;
  --ifabsh-nav-link-icon-margin: var(--ifabsh-spacing, 1rem);
  --ifabsh-nav-link-padding-x: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-nav-link-padding-y: var(--ifabsh-spacing-xxs, 0.125rem);
  --ifabsh-nav-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-nav-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-nv-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-nav-duration));
  background-color: var(--ifabsh-nav-background-color, transparent);
  flex-wrap: nowrap;
  font-size: var(--ifabsh-nav-font-size, inherit);
  gap: var(--ifabsh-nav-gap, var(--ifabsh-spacing-s, 0.5rem));
}

.nav,
.nav ul,
.nav li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-desc {
  /* stylelint-disable declaration-no-important */
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  /* stylelint-enable declaration-no-important */
}

.nav-item {
  margin: 0;
  position: relative;
}

.nav-item:hover > .nav, .nav-item.focus-within > .nav, .nav-item._opened > .nav, .nav-item._touched > .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.nav-item:focus-within > .nav-link:not(._active) {
  background-color: var(--ifabsh-nav-link-background-color-hover);
  color: var(--ifabsh-nav-link-color-hover);
}

.nav-item:focus-within > .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.nav-link {
  align-items: center;
  background-color: var(--ifabsh-nav-link-background-color);
  color: var(--ifabsh-nav-link-color);
  display: flex;
  gap: var(--ifabsh-nav-link-icon-margin);
  padding: var(--ifabsh-nav-link-padding-y) var(--ifabsh-nav-link-padding-x);
  position: relative;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  transition: all var(--dnm-nv-duration) var(--ifabsh-nav-timing-function);
}

.nav-link__icon {
  color: currentColor;
  line-height: 1;
  margin: 0;
  transition: all var(--dnm-nv-duration) var(--ifabsh-nav-timing-function);
}

.nav-link:hover, .nav-link:focus, .nav-link._touched {
  background-color: var(--ifabsh-nav-link-background-color-hover);
  color: var(--ifabsh-nav-link-color-hover);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}

.nav-link:hover + .nav, .nav-link:focus + .nav, .nav-link._touched + .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.nav-link._active {
  background-color: var(--ifabsh-nav-link-background-color-active);
  color: var(--ifabsh-nav-link-color-active);
}

.nav .nav {
  flex-direction: column;
  left: 0;
  margin: 0;
  min-width: 100%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  transform: translate3d(0, -1rem, 0);
  transition-duration: var(--dnm-nv-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-nav-timing-function);
  white-space: nowrap;
}

.main-nav .nav {
  flex-direction: column;
}
.main-nav .nav-item.-back {
  display: none;
}

.page-menu.drawer {
  --ifabsh-drawer-padding: var(--wp-spacing-l);
  --ifabsh-drawer-z-index: var(--wp-zindex-page-menu);
}
.page-menu .drawer__header .page-logo {
  --page-logo-height: var(--wp-page-header-logo-height);
}
.page-menu .main-nav > .nav {
  --ifabsh-nav-font-size: var(--wp-nav-firstlevel-font-size);
  --ifabsh-nav-gap: var(--wp-nav-firstlevel-gap);
  position: relative;
  z-index: 1 !important;
}
.page-menu .main-nav > .nav .nav {
  --ifabsh-nav-font-size: var(--wp-nav-belowlevel-font-size);
  --ifabsh-nav-gap: var(--wp-nav-belowlevel-gap);
}
.page-menu .main-nav .nav {
  --wp-nav-firstlevel-font-size: 25px;
  --wp-nav-firstlevel-gap: calc(var(--wp-spacing-s) * 3);
  --wp-nav-belowlevel-font-size: 18px;
  --wp-nav-belowlevel-gap: var(--wp-spacing);
  --ifabsh-nav-link-color-active: var(--wp-color-black);
  --ifabsh-nav-link-color-hover: var(--wp-color-black);
  --ifabsh-nav-link-padding-x: 0;
  --ifabsh-nav-link-padding-y: 0;
  flex-direction: column;
  transition-duration: 0.5s;
}
@media (min-width: 768px) {
  .page-menu .main-nav .nav {
    --wp-nav-firstlevel-font-size: 30px;
    --wp-nav-firstlevel-gap: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
    --wp-nav-belowlevel-font-size: 22px;
    --wp-nav-belowlevel-gap: calc(var(--wp-spacing-s) * 3);
  }
}
.page-menu .main-nav .nav-item {
  line-height: 1.2;
  position: unset;
}
.page-menu .main-nav .nav-item.-has-nav > .nav {
  transform: translate(150%, 0);
}
.page-menu .main-nav .nav-item.-has-nav > .nav-link {
  display: flex;
}
.page-menu .main-nav .nav-item.-has-nav > .nav-link > i {
  margin-left: auto;
  margin-right: 0;
}
.page-menu .main-nav .nav-item._opened > .nav {
  transform: translate(0, 0);
}
.page-menu .main-nav .nav-link {
  --wp-link-font-weight: var(--wp-font-weight-normal);
  display: inline-block;
  letter-spacing: 1px;
  transition: opacity 0.25s ease-in-out;
  opacity: 1;
}
.page-menu .main-nav .nav .nav {
  --wp-nav-text-transform: uppercase;
  --wp-nav-font-family: var(--wp-font-family-sans);
  display: flex;
  position: absolute;
  top: 0;
  z-index: 1;
}
@media (min-width: 992px) {
  .page-menu .main-nav .nav .nav {
    --ifabsh-nav-gap: calc(var(--wp-spacing) + var(--wp-spacing-s));
  }
}
.page-menu .main-nav .nav .nav .nav-item {
  line-height: normal;
}
.page-menu .main-nav .nav .nav .nav-item.-back {
  display: block;
  font-size: var(--wp-nav-firstlevel-font-size);
  text-transform: none;
}
.page-menu .main-nav .nav .nav .nav-item.-back > .nav-link {
  --wp-nav-link-back-margin: 0 0 var(--wp-spacing) 0;
  --wp-nav-link-back-padding: 0 0 18px 0;
  border-bottom: 2px solid var(--wp-color-secondary);
  display: inline-flex;
  flex-wrap: wrap;
  margin: var(--wp-nav-link-back-margin);
  padding: var(--wp-nav-link-back-padding);
}
@media (min-width: 768px) {
  .page-menu .main-nav .nav .nav .nav-item.-back > .nav-link {
    --wp-nav-link-back-padding: 0 0 calc(var(--wp-spacing-s) * 3) 0;
  }
}
.page-menu .main-nav .nav._invis {
  z-index: -1;
}
.page-menu .main-nav .nav._invis > .nav-item > .nav-link {
  opacity: 0 !important;
  transition: all 0.5s ease-in-out;
  z-index: -1;
}

.page-header button[aria-controls=page-menu-drawer] { /* stylelint-disable-line string-quotes */
  --ifabsh-icon-button-color: var(--wp-color-secondary);
  --ifabsh-icon-button-color-hover: currentColor;
  --dnm-pmd-calc-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition));
  font-size: var(--wp-font-size-l);
}
.page-header button[aria-controls=page-menu-drawer] .icon-button__icon {
  position: relative;
}
.page-header button[aria-controls=page-menu-drawer] [data-off],
.page-header button[aria-controls=page-menu-drawer] [data-on] {
  left: 50%;
  position: absolute;
  top: 50%;
  transform-origin: center;
  transition: all var(--dnm-pmd-calc-duration);
}
.page-header button[aria-controls=page-menu-drawer] [data-off] {
  opacity: 1;
  transform: translate3d(-50%, -50%, 0) scale(1);
  transition: all var(--dnm-pmd-calc-duration) ease-in-out calc(var(--dnm-pmd-calc-duration) / 2);
}
.page-header button[aria-controls=page-menu-drawer] [data-on] {
  opacity: 0;
  transform: translate3d(-50%, -50%, 0) scale(0.5);
  transition: all var(--dnm-pmd-calc-duration);
}
.page-header button[aria-controls=page-menu-drawer].-active [data-on] {
  opacity: 1;
  transform: translate3d(-50%, -50%, 0) scale(1);
  transition: all var(--dnm-pmd-calc-duration) ease-in-out calc(var(--dnm-pmd-calc-duration) / 2);
}
.page-header button[aria-controls=page-menu-drawer].-active [data-off] {
  opacity: 0;
  transform: translate3d(-50%, -50%, 0) scale(0.5);
  transition: all var(--dnm-pmd-calc-duration);
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
/* stylelint-disable-line length-zero-no-unit */
/**
 * Inhalte visuell ausblenden aber für unterstützende Technologien zugänglich
 * halten.
 */
/**
 * Zeige Inhalt nur wenn er fokussiert wird/wurde.
 */
.nav {
  --ifabsh-nav-link-color: inherit;
  --ifabsh-nav-link-color-hover: var(--ifabsh-color-ui, #6176ff);
  --ifabsh-nav-link-color-active: var(--ifabsh-nav-link-color-hover);
  --ifabsh-nav-link-background-color: transparent;
  --ifabsh-nav-link-background-color-active: transparent;
  --ifabsh-nav-link-background-color-hover: transparent;
  --ifabsh-nav-link-icon-margin: var(--ifabsh-spacing, 1rem);
  --ifabsh-nav-link-padding-x: var(--ifabsh-spacing-s, 0.5rem);
  --ifabsh-nav-link-padding-y: var(--ifabsh-spacing-xxs, 0.125rem);
  --ifabsh-nav-duration: var(--ifabsh-duration, 0.15s);
  --ifabsh-nav-timing-function: var(--ifabsh-timing-function, ease-in-out);
  --dnm-nv-duration: calc(var(--global-duration-multiplier, 1) * var(--ifabsh-nav-duration));
  background-color: var(--ifabsh-nav-background-color, transparent);
  flex-wrap: nowrap;
  font-size: var(--ifabsh-nav-font-size, inherit);
  gap: var(--ifabsh-nav-gap, var(--ifabsh-spacing-s, 0.5rem));
}

.nav,
.nav ul,
.nav li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-desc {
  /* stylelint-disable declaration-no-important */
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  /* stylelint-enable declaration-no-important */
}

.nav-item {
  margin: 0;
  position: relative;
}

.nav-item:hover > .nav, .nav-item.focus-within > .nav, .nav-item._opened > .nav, .nav-item._touched > .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.nav-item:focus-within > .nav-link:not(._active) {
  background-color: var(--ifabsh-nav-link-background-color-hover);
  color: var(--ifabsh-nav-link-color-hover);
}

.nav-item:focus-within > .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.nav-link {
  align-items: center;
  background-color: var(--ifabsh-nav-link-background-color);
  color: var(--ifabsh-nav-link-color);
  display: flex;
  gap: var(--ifabsh-nav-link-icon-margin);
  padding: var(--ifabsh-nav-link-padding-y) var(--ifabsh-nav-link-padding-x);
  position: relative;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
  transition: all var(--dnm-nv-duration) var(--ifabsh-nav-timing-function);
}

.nav-link__icon {
  color: currentColor;
  line-height: 1;
  margin: 0;
  transition: all var(--dnm-nv-duration) var(--ifabsh-nav-timing-function);
}

.nav-link:hover, .nav-link:focus, .nav-link._touched {
  background-color: var(--ifabsh-nav-link-background-color-hover);
  color: var(--ifabsh-nav-link-color-hover);
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}

.nav-link:hover + .nav, .nav-link:focus + .nav, .nav-link._touched + .nav {
  opacity: 1;
  pointer-events: all;
  transform: translate3d(0, 0, 0);
}

.nav-link._active {
  background-color: var(--ifabsh-nav-link-background-color-active);
  color: var(--ifabsh-nav-link-color-active);
}

.nav .nav {
  flex-direction: column;
  left: 0;
  margin: 0;
  min-width: 100%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  transform: translate3d(0, -1rem, 0);
  transition-duration: var(--dnm-nv-duration);
  transition-property: all;
  transition-timing-function: var(--ifabsh-nav-timing-function);
  white-space: nowrap;
}

.page-footer {
  --wp-footer-margin-top: calc(var(--wp-spacing-xl) + var(--wp-spacing));
  --wp-footer-padding-x: var(--wp-page-padding-x);
  margin-top: var(--wp-footer-margin-top);
  padding-left: var(--wp-page-offset);
  padding-right: var(--wp-page-offset);
}
@media (min-width: 768px) {
  .page-footer {
    --wp-footer-margin-top: calc(var(--wp-spacing-l) * 3);
  }
}
@media (min-width: 1200px) {
  .page-footer {
    --wp-footer-margin-top: calc(var(--wp-spacing-xl) * 2);
  }
}
@media (min-width: 1400px) {
  .page-footer {
    padding: 0 var(--wp-footer-padding-x);
  }
}
.page-footer__top > *, .page-footer__mid > *, .page-footer__bottom {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--wp-page-max-width);
  width: 100%;
}
.page-footer__top {
  --wp-footer-top-background-color: var(--wp-color-secondary);
  --wp-footer-top-color: var(--wp-color-secondary-contrast);
  --wp-footer-top-padding-y: var(--wp-spacing-xl);
  --wp-footer-top-title-font-size: tranparent;
  --wp-footer-top-div-margin: var(--wp-spacing-xl);
  --wp-footer-top-h5-margin-bottom: var(--wp-spacing-s);
  --wp-footer-top-h5-margin-top: var(--wp-spacing-l);
  background: var(--wp-footer-top-background-color);
  color: var(--wp-footer-top-color);
  padding: var(--wp-footer-top-padding-y) 0;
  position: relative;
}
@media (min-width: 768px) {
  .page-footer__top {
    --wp-footer-top-padding-y: calc(var(--wp-spacing-l) * 3);
    --wp-footer-top-div-margin: 0;
    --wp-footer-top-h5-margin-bottom: calc(var(--wp-spacing-s) + var(--wp-spacing-xs));
    --wp-footer-top-h5-margin-top: calc(var(--wp-spacing) + var(--wp-spacing-s));
  }
}
@media (min-width: 1200px) {
  .page-footer__top {
    --wp-footer-top-padding-bottom: calc(var(--wp-spacing) * 5);
  }
}
.page-footer__top-inner {
  padding: 0 var(--wp-spacing);
}
@media (min-width: 576px) {
  .page-footer__top-inner {
    padding: 0 var(--wp-spacing-l);
  }
}
@media (min-width: 1600px) {
  .page-footer__top-inner {
    padding: 0;
  }
}
.page-footer__top h5,
.page-footer__top .h5 {
  --wp-heading-color: var(--wp-footer-top-color);
}
.page-footer__top .ci-shape {
  --_degFactor: 1;
  --wp-ci-shape-color: var(--wp-color-primary);
  left: auto;
  position: absolute;
  right: calc(var(--wp-page-offset) * 1.5);
  top: -0.5em;
  transform-origin: right bottom;
}
@media (max-width: 1599px) {
  .page-footer__top .ci-shape {
    display: none;
  }
}
.page-footer__top .title {
  margin-bottom: calc(var(--wp-spacing) + var(--wp-spacing-xs));
}
@media (min-width: 1200px) {
  .page-footer__top .title {
    margin-bottom: calc(var(--wp-spacing-xl) + var(--wp-spacing-s));
  }
}
.page-footer__top .contents {
  display: block;
}
@media (min-width: 768px) {
  .page-footer__top .contents {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 1200px) {
  .page-footer__top .contents {
    gap: calc(var(--wp-spacing-xl) + var(--wp-spacing));
    justify-content: normal;
  }
}
.page-footer__top .contents > * {
  margin: 0;
}
.page-footer__top .contents .page-logo {
  --page-logo-height: var(--wp-page-header-logo-height);
}
@media (max-width: 1199px) {
  .page-footer__top .contents .page-logo {
    display: none;
  }
}
.page-footer__top .contents .informations p,
.page-footer__top .contents .openings p {
  margin: 0;
}
.page-footer__top .contents .informations > * + * {
  margin-top: var(--wp-spacing);
}
.page-footer__top .contents .informations + .openings {
  margin-top: var(--wp-footer-top-div-margin);
}
.page-footer__top .contents .openings {
  display: flex;
  flex-wrap: wrap;
  gap: var(--wp-spacing-xl);
}
.page-footer__top .contents .openings > *:first-child {
  margin-top: 0;
}
.page-footer__top .contents .openings h5 {
  margin-bottom: var(--wp-footer-top-h5-margin-bottom);
}
@media (min-width: 1200px) {
  .page-footer__top .contents .openings {
    margin-left: calc(var(--wp-spacing-xl) + var(--wp-spacing));
  }
}
.page-footer__top .action {
  text-align: right;
}
.page-footer__mid {
  --wp-footer-mid-background: var(--wp-color-grey);
  --wp-footer-mid-padding-y: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
  background: var(--wp-footer-mid-background);
  padding: var(--wp-footer-mid-padding-y) var(--wp-page-offset);
}
@media (max-width: 1199px) {
  .page-footer__mid {
    margin-left: calc(-1 * var(--wp-page-offset));
    margin-right: calc(-1 * var(--wp-page-offset));
  }
}
@media (min-width: 768px) {
  .page-footer__mid {
    --wp-footer-mid-padding-y: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
  }
}
@media (min-width: 1400px) {
  .page-footer__mid {
    --wp-footer-mid-padding-y: calc(var(--wp-spacing-xl) * 2 - var(--wp-spacing-s));
    position: relative;
  }
}
.page-footer__mid .main-nav .nav {
  --ifabsh-nav-link-color-active: var(--wp-color-secondary);
}
@media (max-width: 1599px) {
  .page-footer__mid .main-nav .nav-item.-has-nav > .nav {
    display: none !important;
  }
}
.page-footer__mid .main-nav > .nav {
  --ifabsh-nav-gap: calc(var(--wp-spacing) + var(--wp-spacing-xs));
}
@media (min-width: 768px) {
  .page-footer__mid .main-nav > .nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .page-footer__mid .main-nav > .nav {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
  .page-footer__mid .main-nav > .nav .nav {
    --ifabsh-nav-gap: var(--wp-spacing-s);
    -moz-column-count: 1;
         column-count: 1;
    margin-top: var(--wp-spacing);
    opacity: 1;
    padding: 0;
    position: relative;
    top: 0;
    transform: none;
  }
  .page-footer__mid .main-nav > .nav .nav .nav-link {
    --wp-link-font-weight: var(--wp-font-weight-normal);
  }
}
.page-footer__mid .main-nav .nav-link {
  --wp-link-font-weight: var(--wp-font-weight-bold);
}
.page-footer__mid .main-nav .nav-link i {
  display: none;
}
.page-footer__mid .action {
  display: flex;
  margin-top: var(--wp-spacing-l);
}
@media (min-width: 1200px) {
  .page-footer__mid .action > * {
    margin-left: auto;
  }
}
.page-footer__bottom {
  --wp-footer-bottom-background: tranparent;
  --wp-footer-bottom-padding-y: calc(var(--wp-spacing-xl) + var(--wp-spacing-s));
  --wp-footer-bottom-partners-margin-bottom: calc(var(--wp-spacing-xl) - var(--wp-spacing-s));
  align-items: center;
  background: var(--wp-footer-bottom-background);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: var(--wp-footer-bottom-padding-y);
  padding-top: var(--wp-footer-bottom-padding-y);
}
@media (min-width: 768px) {
  .page-footer__bottom {
    --wp-footer-bottom-padding-y: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
    --wp-footer-bottom-partners-margin-bottom: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
  }
}
@media (min-width: 1200px) {
  .page-footer__bottom {
    --wp-footer-bottom-partners-margin-bottom: 0;
    align-items: start;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
}
.page-footer__bottom .partners {
  margin-bottom: var(--wp-footer-bottom-partners-margin-bottom);
}
.page-footer__bottom .partners .media-gallery {
  --wp-grid-gap-x: calc(var(--wp-spacing-l) + var(--wp-spacing-xs));
}
.page-footer__bottom .partners .media-gallery__inner {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
@media (min-width: 768px) {
  .page-footer__bottom .partners .media-gallery__inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}
.page-footer__bottom .partners .media-gallery__inner > * {
  align-items: center;
  display: flex;
  justify-content: center;
}
.page-footer__bottom .partners .media-gallery__inner img {
  filter: saturate(0);
  height: auto;
  max-width: 80px;
  opacity: 0.55;
}
.page-footer__bottom .partners .media-gallery__inner img:hover {
  filter: saturate(1);
}
.page-footer__bottom .navigations {
  display: flex;
  flex-direction: column;
  gap: var(--wp-spacing);
}
@media (min-width: 1200px) {
  .page-footer__bottom .navigations {
    flex-direction: row;
  }
}
.page-footer__bottom .navigations .nav {
  align-items: center;
  flex-direction: column;
}
@media (min-width: 1200px) {
  .page-footer__bottom .navigations .nav {
    align-items: unset;
    flex-direction: row;
  }
}
.page-footer__bottom .navigations .social-nav {
  order: 2;
}
@media (min-width: 1200px) {
  .page-footer__bottom .navigations .social-nav {
    order: 1;
  }
}
.page-footer__bottom .navigations .meta-nav {
  line-height: normal;
  order: 1;
}
@media (min-width: 1200px) {
  .page-footer__bottom .navigations .meta-nav {
    order: 2;
  }
}
.page-footer__bottom .navigations .meta-nav .nav-link {
  --wp-link-font-weight: var(--wp-font-weight-normal);
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
.section {
  --wp-section-gap: var(--wp-page-offset);
  --wp-section-padding-x: var(--wp-section-padding, var(--wp-section-gap));
  --wp-section-padding-y: 0;
  --dnm-sect-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition-complex));
  background-color: var(--wp-section-background-color, transparent);
  margin: 0;
  padding: var(--wp-section-padding-y) var(--wp-section-padding-x);
  position: relative;
}

.section-header, .section-body {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--wp-page-max-width);
  width: 100%;
}

.section-header {
  margin-bottom: var(--wp-spacing-l);
}

.section-header > .title {
  --wp-heading-margin: var(--wp-spacing-s);
  --wp-heading-font-weight: var(--wp-font-weight-normal);
}

.section-header > :last-child {
  margin-bottom: 0;
}

.section-body + .section-footer {
  margin-top: calc(var(--wp-section-gap) / 2);
  text-align: center;
}

.section-body__inner > * {
  margin-bottom: 0;
  margin-top: 0;
}

.section-body__inner > * + * {
  margin-top: var(--wp-content-element-margin);
}

.section + .section {
  margin-top: calc(var(--wp-section-gap) * 2.5);
}

@media (min-width: 1200px) {
  .section + .section {
    margin-top: calc(var(--wp-section-gap) * 4);
  }
}
.section.-colored {
  --wp-section-padding-y: calc(var(--wp-section-gap) * 1.5);
}

@media (min-width: 992px) {
  .section.-colored {
    margin-left: var(--wp-page-offset);
    margin-right: var(--wp-page-offset);
  }
}
@media (min-width: 1200px) {
  .section.-colored {
    --wp-section-padding-y: calc(var(--wp-section-gap) * 2);
  }
}
@media (min-width: 1400px) {
  .section.-colored {
    --wp-section-padding-y: calc(var(--wp-section-gap) * 2.5);
  }
}
.section.-colored.-grey {
  --wp-section-background-color: var(--wp-color-grey);
}

.section-hero {
  --wp-section-padding-y: var(--wp-section-padding-x);
  padding-bottom: 0;
}

.section-hero > .ci-shape {
  left: calc(var(--wp-section-padding-x) + var(--wp-page-offset) * 1.5);
  top: 0;
  position: absolute;
}

@media (max-width: 1199px) {
  .section-hero {
    padding: 0;
  }
  .section-hero > .ci-shape {
    display: none;
  }
}
.section-columns {
  display: flex;
  flex-wrap: wrap;
  gap: var(--wp-section-columns-gap, var(--wp-spacing));
}

.section-columns__column {
  --dnm-sccl-width: 100%;
  flex-basis: var(--dnm-sccl-width);
  width: var(--dnm-sccl-width);
}

.section-columns__column > * {
  margin-bottom: 0;
  margin-top: 0;
}

.section-columns__column > * + * {
  margin-top: var(--wp-content-element-margin);
}

@media (min-width: 768px) {
  .section-columns {
    --wp-section-columns-gap: var(--wp-spacing-l);
    flex-wrap: nowrap;
  }
  .section-columns[data-columns="2"] .columns__column:not(:first-child):not(:last-child) { /* stylelint-disable-line string-quotes */
    --dnm-sccl-width: calc(50% - (var(--wp-section-column-gap) / 2));
  }
}
@media (min-width: 992px) {
  .section-columns {
    --wp-section-columns-gap: var(--wp-spacing-xl);
  }
}
.content > * {
  margin-bottom: 0;
  margin-top: 0;
}

.content > *:not(:first-child) {
  margin-top: var(--wp-block-element-margin);
}

.content > section:not(:first-child),
.content > .ce:not(:first-child) {
  margin-top: var(--wp-content-element-margin);
}

.sidebar {
  --wp-sidebar-gap: var(--wp-block-element-margin);
}

.sidebar:empty {
  display: none;
}

.sidebar-item {
  background-color: var(--wp-color-secondary);
  color: var(--wp-color-secondary-contrast);
  padding: var(--wp-sidebar-item-padding, var(--wp-spacing));
}

.sidebar-item h1, .sidebar-item .h1, .sidebar-item h2, .sidebar-item .h2, .sidebar-item h3, .sidebar-item .h3, .sidebar-item h4, .sidebar-item .h4, .sidebar-item h5, .sidebar-item .h5, .sidebar-item h6, .sidebar-item .h6 {
  --wp-heading-color: var(--wp-color-secondary-contrast);
}

.sidebar-item .list {
  --ifabsh-ul-marker-color: var(--wp-color-secondary-contrast);
}

@media (min-width: 992px) {
  .sidebar-item {
    --wp-sidebar-item-padding: var(--wp-spacing-l);
  }
}
.sidebar-item > * {
  margin: 0;
}

.sidebar-item + .sidebar-item {
  margin-top: var(--wp-sidebar-gap);
}

.section-sidebar {
  --wp-section-sidebar-gap: var(--wp-spacing);
  --wp-section-sidebar-sidebar-width: 33%;
  display: flex;
  flex-wrap: wrap;
  gap: var(--wp-section-sidebar-gap);
}

.section-sidebar > .content {
  flex-basis: 100%;
  flex-grow: 666;
  min-width: 100%;
  order: 1;
}

.section-sidebar > .sidebar {
  flex-basis: 100%;
  flex-grow: 1;
  min-width: 0;
  order: 2;
  width: 100%;
}

@media (min-width: 768px) {
  .section-sidebar {
    --wp-section-sidebar-gap: var(--wp-spacing-l);
    --dnm-section-sidebar-width: calc(var(--wp-section-sidebar-sidebar-width) + var(--wp-section-sidebar-gap));
    align-items: flex-start;
    flex-wrap: nowrap;
  }
  .section-sidebar > .content,
  .section-sidebar > .sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: var(--global-scroll-top-offset);
  }
  .section-sidebar > .content {
    flex-basis: calc(100% - var(--dnm-section-sidebar-width));
    min-width: calc(100% - var(--dnm-section-sidebar-width));
  }
  .section-sidebar > .sidebar {
    flex-basis: var(--dnm-section-sidebar-width);
    width: var(--dnm-section-sidebar-width);
  }
}
@media (min-width: 992px) {
  .section-sidebar {
    --wp-section-sidebar-gap: var(--wp-spacing-xl);
  }
}
.page-jumplist {
  --ifabsh-jumplist-background-color: hsl(var(--wp-color-black-h), var(--wp-color-black-s), 97%);
  --ifabsh-jumplist-padding-x: var(--wp-page-offset);
  --ifabsh-jumplist-link-background-color-hover: hsl(var(--wp-color-black-h), var(--wp-color-black-s), 95%);
  --ifabsh-jumplist-link-background-color-active: transparent;
  --ifabsh-jumplist-link-color-hover: var(--wp-body-color);
  --ifabsh-jumplist-link-color-active: var(--wp-color-primary);
  --ifabsh-jumplist-link-padding-x: var(--wp-spacing-s);
  --ifabsh-jumplist-link-padding-y: var(--wp-spacing-s);
  border-bottom: 1px solid hsl(var(--wp-color-black-h), var(--wp-color-black-s), 90%);
  position: -webkit-sticky;
  position: sticky;
  top: var(--global-scroll-top-offset, 0);
  z-index: calc(var(--wp-zindex-page-footer) - 1);
}
.page-jumplist .jumplist__container {
  text-align: center;
}
.page-jumplist .jumplist-menu {
  display: inline-flex;
  flex-direction: row;
}
.page-jumplist:not(:empty) {
  --wp-scrollbar-track-color: transparent;
  --wp-scrollbar-size: 1px;
}
.page-jumplist:not(:empty)::-webkit-scrollbar {
  height: var(--wp-scrollbar-size, 6px);
  width: var(--wp-scrollbar-size, 6px);
}
.page-jumplist:not(:empty)::-webkit-scrollbar-thumb {
  background: var(--wp-scrollbar-color, #000);
}
.page-jumplist:not(:empty)::-webkit-scrollbar-track {
  background: var(--wp-scrollbar-track-color, #fff);
}
.page-jumplist:not(:empty) {
  scrollbar-face-color: var(--wp-scrollbar-color, #000);
  scrollbar-track-color: var(--wp-scrollbar-track-color, #fff);
}
.page-jumplist:not(:empty) + .section {
  border-top: 0 none;
}
@media (min-width: 992px) {
  .page-jumplist {
    --ifabsh-jumplist-menu-gap: var(--wp-spacing-s);
    --ifabsh-jumplist-link-padding-y: var(--wp-spacing);
  }
}

.page-main > .breadcrumb {
  --ifabsh-breadcrumb-color: hsl(var(--wp-color-black-h), var(--wp-color-black-s), 60%);
  --ifabsh-breadcrumb-label-color: var(--ifabsh-breadcrumb-color);
  --ifabsh-breadcrumb-label-color-hover: var(--wp-color-black);
  --ifabsh-breadcrumb-label-color-active: var(--ifabsh-breadcrumb-label-color-hover);
  --ifabsh-breadcrumb-font-size: var(--wp-font-size-xxs);
  --ifabsh-breadcrumb-gap-x: 1em;
  --ifabsh-breadcrumb-padding-x: var(--wp-page-offset);
  --ifabsh-breadcrumb-padding-y: var(--wp-spacing-s);
}
@media (max-width: 1199px) {
  .page-main > .breadcrumb {
    display: none;
  }
}

/**
 * Überschriftselektoren zusammenstellen<br/>
 *
 * @example scss
 *   $var : heading-selectors();
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(1, 6, false);
 *   // = h1, h2, h3, h4, h5, h6
 *
 *   $var : heading-selectors(3, 4);
 *   // = h3, .h3, h4, .h4
 *
 *   // Abfangen von nicht korrekten Angaben (`< 1`, `> 6`).
 *   $var : heading-selectors(0, 0);
 *   $var : heading-selectors(-1, 0);
 *   $var : heading-selectors(7, -15);
 *   // = h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6
 *
 *   $var : heading-selectors(0, 2);
 *   // = h1, .h1, h2, .h2
 *
 *   // Vertauschte Werte.
 *   $var : heading-selectors(3, 1);
 *   // = h3, .h3, h4, .h4, h5, .h5, h6, .h6
 */
/**
 * Replace `$search` with `$replace` in `$string`
 */
/**
 * SVG-XML-String kodieren
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : strip-unit(16px);
 *   // = 16
 */
/**
 * Einheit eines Wertes entfernen.
 *
 * @example
 *   $var : get-unit(16px);
 *   // = px
 */
/**
 * Prüft ob `$val` null ist.
 *
 * @example scss
 *   $var : is-null(null);
 *   // = true
 *
 *   $var : is-null(0);
 *   // = false
 */
/**
 * Prüft ob `$val` leer ist.
 *
 * @example scss
 *   $var : is-empty();
 *   // = true
 *
 *   $var : is-empty('');
 *   // = true
 *
 *   $var : is-empty('foo');
 *   // = false
 */
/**
 * Prüft ob `$val` numerisch ist.
 *
 * @example scss
 *   $var : is-numeric(1);
 *   // = true
 *
 *   $var : is-numeric('2');
 *   // = false
 *
 *   $var : is-numeric(3rem);
 *   // = false
 */
/**
 * Prüft ob `$val` boolean ist.
 *
 * @example scss
 *   $var : is-bool(true);
 *   // = true
 *
 *   $var : is-bool(false);
 *   // = false
 *
 *   $var : is-bool(1);
 *   // = true
 *
 *   $var : is-bool(0);
 *   // = false
 *
 *   $var : is-bool(null);
 *   // = false
 */
/**
 * Prüft ob `$val` ein String ist.
 *
 * @example scss
 *   $var : is-string(foo);
 *   // = true
 *
 *   $var : is-string('bar');
 *   // = true
 *
 *   $var : is-string(0);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Liste ist.
 *
 * @example scss
 *   $var : is-list(a b c d);
 *   // = true
 *
 *   $var : is-list(lorem, ipsum);
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Prüft ob `$val` eine Map ist.
 *
 * @example scss
 *   $var : is-map((a: b));
 *   // = true
 *
 *   $var : is-list(foo);
 *   // = false
 */
/**
 * Farbton (Hue) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-hue(#6176ff);
 *   // = 232
 */
/**
 * Sättigung (Saturation) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-saturation(#6176ff);
 *   // = 100%
 */
/**
 * Helligkeit (Lightness) eines Hexwertes zurückgeben.
 *
 * @example
 *   get-lightness(#6176ff);
 *   // = 69%
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsl()` zu einer realen
 * `hsl()`-Angabe.
 *
 * @example
 *   hsl(232, 100%, 69%);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(232, 100, 69);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(#6176ff);
 *   // = hsl(232, 100%, 69%)
 *
 *   hsl(var(--color-hue), 100%, 69%);
 *   // = hsl(var(--color-hue), 100%, 69%)
 *
 *   hsl(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsl(var(--color-hue), var(--color-saturation), var(--color-lightness))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `hsla()` zu einer realen
 * `hsla()`-Angabe.
 *
 * @example
 *   hsla(232, 100%, 69%, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(232, 100, 69, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff, 0.75);
 *   // = hsla(232, 100%, 69%, 0.75)
 *
 *   hsla(#6176ff);
 *   // = hsla(232, 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), 100%, 69%);
 *   // = hsla(var(--color-hue), 100%, 69%, 1)
 *
 *   hsla(var(--color-hue), var(--color-saturation), var(--color-lightness));
 *   // = hsla(var(--color-hue), var(--color-saturation), var(--color-lightness), 1)
 *
 *   hsla(#6176ff, var(--opacity));
 *   // = hsla(232, 100%, 69%, var(--opacity))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgb()` zu einer realen
 * `rgb()`-Angabe.
 *
 * @example
 *   rgb(97, 118, 255);
 *   // = rgb(97, 118, 255)
 *
 *   rgb(#6176ff);
 *   // = rgb(97, 118, 255)
 *
 *   // `--color : 97, 118, 255;`
 *   rgb(var(--color));
 *   // = rgb(var(--color))
 */
/**
 * Überschreiben der SCSS-Konvertierungsfunktion `rgba()` zu einer realen
 * `rgba()`-Angabe.
 *
 * @example
 *   rgba(97, 118, 255, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(97, 118, 255);
 *   // = rgba(97, 118, 255, 1)
 *
 *   rgba(#6176ff, 0.75);
 *   // = rgba(97, 118, 255, 0.75)
 *
 *   rgba(#6176ff);
 *   // = rgba(97, 118, 255, 1)
 *
 *   // `--color : 97, 118, 255;`
 *   rgba(var(--color));
 *   // = rgba(var(--color), 1)
 *
 *   // `--color : 97, 118, 255;`
 *   // `--opcity : 0.75;`
 *   rgba(var(--color), var(--opacity));
 *   // = rgba(var(--color), var(--opacity))
 */
/**
 * Minimale Breakpointweite.<br/>
 * <small>_Null für den kleinsten (ersten) Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-min('xs');
 *   // = 420px
 */
/**
 * Maximale Breakpointweite.<br/>
 * <small>_Null für den größten (letzten) Breakpoint. Der Maximalwert wird als Minimum des nächsten Breakpointwertes minus 1px berechnet._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-max('xs');
 *   // = 575px
 */
/**
 * Name des nächsten Breakpoints.<br/>
 * <small>_Null für den letzten Breakpoint._</small>
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   $var : breakpoint-next('xs');
 *   // = s
 *
 *   $var : breakpoint-next('s');
 *   // = m
 */
/**
 * Anwendung von Definitionen (`@content`) ab dem Breakpoint `$name` und höher
 * (mobile first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-up('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) ab der Maximalbreite des Breakpoint
 * `$name` und kleiner (desktop first).
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-down('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Shortcut-Funktion für `media-breakpoint-up()` und `media-breakpoint-down()`.
 */
/**
 * Anwendung von Definitionen (`@content`) zwischen Minimumbreite `$lower` und
 * Maximumbreite `$upper`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-between('xs', 'm') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width : 420px) and (max-width : 991px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Anwendung von Definitionen (`@content`) nur innerhalb der Minimum- und
 * Maxiamlbreite des Breakpoints `$name`.
 *
 * @example scss
 *   $breakpoints : (
 *     'xxs' : 0,
 *     'xs'  : 420px,
 *     's'   : 576px,
 *     'm'   : 768px,
 *     'l'   : 992px
 *   );
 *
 *   .container {
 *     background : #fff;
 *
 *     @include media-breakpoint-only('s') {
 *       background : #ccc;
 *     }
 *   }
 *
 * @example css - Result
 *   .container {
 *     background : #fff;
 *   }
 *
 *   @media (min-width: 576px) and (max-width: 767px) {
 *     .container {
 *       background : #ccc;
 *     }
 *   }
 */
/**
 * Webfonts mit `@font-face` integrieren.
 *
 * Bzgl. moderner Browser (Stand Anfang 2019) wird normalerweise nur `woff2` und
 * `woff` benötigt. Eine Prüfung auf das Schriftformat bzgl. einer Erweiterung
 * der URL wird nur für `eot` und `ttf` durchgeführt!
 *
 * `woff2` moderne Browser
 * `woff` IE 11
 * `eot` IE6-IE8
 * `ttf` Safari, Android, iOS
 *
 * @example scss
 *   @include font-face(
 *     'Example-Regular',
 *     'example/',
 *     (
 *       woff2 : 'example-regular.woff2',
 *       woff  : 'example-regular.woff',
 *       eot   : 'example-regular.eot',
 *       ttf   : 'example-regular.ttf'
 *     )
 *   );
 *
 * @example css - Result
 *   @font-face {
 *     font-family : 'Example-Regular';
 *     font-display: swap;
 *     src         : url('../example/example-regular.woff2') format('woff2'),
 *                   url('../example/example-regular.woff') format('woff'),
 *                   url('../example/example-regular.eot?#iefix') format('embedded-opentype'),
 *                   url('../example/example-regular.ttf') format('truetype');
 *   }
 */
/**
 * Generieren von Selektoren bzgl. Validierungsstatus
 */
/* stylelint-disable-line scss/dollar-variable-pattern */
.page-search {
  --dnm-pase-duration: calc(var(--global-duration-multiplier, 1) * var(--wp-transition-expand));
  background-color: var(--wp-color-secondary);
  display: block;
  padding: 0;
  pointer-events: none;
  position: fixed;
  top: var(--global-scroll-top-offset);
  transform: translateY(-100%);
  transition-duration: var(--dnm-pase-duration);
  transition-property: transform;
  transition-timing-function: ease-in;
  width: 100%;
  z-index: var(--wp-zindex-page-search);
}
.page-search .search-box {
  margin: 0 auto;
  width: 100%;
}
.page-search .search-box__form {
  --ifabsh-input-height: 3rem;
}
.page-search .search-box__input {
  --dnm-accent-color: hsl(var(--wp-color-white-h), 85%, 0%);
  --ifabsh-form-control-background-color: transparent;
  --ifabsh-form-control-background-color-hover: var(--dnm-accent-color);
  --ifabsh-form-control-background-color-focus: var(--dnm-accent-color);
  --ifabsh-form-control-border-color: transparent;
  --ifabsh-form-control-border-color-hover: transparent;
  --ifabsh-form-control-border-color-focus: transparent;
  --ifabsh-form-control-color: var(--wp-color-white);
  --ifabsh-form-control-color-hover: var(--wp-color-white);
  --ifabsh-form-control-color-focus: var(--wp-color-white);
  --ifabsh-form-control-placeholder-color: hsl(var(--wp-color-white-h), var(--wp-color-white-s), 35%);
  --ifabsh-form-control-padding-color: var(--wp-page-offset);
  text-align: center;
}
.page-search .search-box__submit {
  display: none;
}
.page-search .was-validated .search-box__input:invalid {
  --dnm-foco-border-color: transparent;
}
.-page-search-open .page-search {
  pointer-events: all;
  transform: translateY(0%);
  transition-timing-function: ease-out;
}

/* stylelint-disable-line scss/dollar-variable-pattern */
[data-ratio]:not([data-ratio=""]) {
  display: block;
  overflow: hidden;
  padding: 0;
  position: relative;
  width: 100%;
}
[data-ratio]:not([data-ratio=""])::before {
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  padding-top: var(--ratio, 100%);
}
[data-ratio]:not([data-ratio=""]) > * {
  border: 0;
  height: auto;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
[data-ratio]:not([data-ratio=""]) > img {
  height: 100%;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
[data-ratio]:not([data-ratio=""]) > video,
[data-ratio]:not([data-ratio=""]) > iframe,
[data-ratio]:not([data-ratio=""]) > div {
  height: 100%;
}

[data-ratio="16x9"] {
  --ratio: var(--wp-ratio-16x9, calc(9 / 16 * 100%));
}

[data-ratio="4x3"] {
  --ratio: var(--wp-ratio-4x3, calc(3 / 4 * 100%));
}

[data-ratio="3x4"] {
  --ratio: var(--wp-ratio-3x4, calc(4 / 3 * 100%));
}

[data-ratio="3x2"] {
  --ratio: var(--wp-ratio-3x2, calc(2 / 3 * 100%));
}

[data-ratio="2x3"] {
  --ratio: var(--wp-ratio-2x3, calc(3 / 2 * 100%));
}

[data-ratio="1x1"] {
  --ratio: var(--wp-ratio-1x1, calc(1 / 1 * 100%));
}

._clearfix::after {
  clear: both;
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
}

._hidden {
  display: none !important; /* stylelint-disable-line declaration-no-important */
}

._scroll-lock {
  overflow: hidden !important; /* stylelint-disable-line declaration-no-important */
}

._selectable-all {
  -webkit-user-select: all;
     -moz-user-select: all;
          user-select: all;
}

._selectable-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

._stretched-link::after {
  content: ""; /* stylelint-disable-line string-quotes */
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

._visually-hidden,
._visually-hidden-focusable:not(:focus):not(:focus-within) {
  /* stylelint-disable declaration-no-important */
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  /* stylelint-enable declaration-no-important */
}
/*# sourceMappingURL=main.css.map */