/* FONTS */
/* montserrat-100 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100;
  src: url('../Fonts/montserrat-v29-latin-100.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-100italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100;
  src: url('../Fonts/montserrat-v29-latin-100italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-200 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200;
  src: url('../Fonts/montserrat-v29-latin-200.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-200italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 200;
  src: url('../Fonts/montserrat-v29-latin-200italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-300 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('../Fonts/montserrat-v29-latin-300.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-300italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  src: url('../Fonts/montserrat-v29-latin-300italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/montserrat-v29-latin-regular.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: url('../Fonts/montserrat-v29-latin-italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-500 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('../Fonts/montserrat-v29-latin-500.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-500italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 500;
  src: url('../Fonts/montserrat-v29-latin-500italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-600 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('../Fonts/montserrat-v29-latin-600.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-600italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 600;
  src: url('../Fonts/montserrat-v29-latin-600italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('../Fonts/montserrat-v29-latin-700.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  src: url('../Fonts/montserrat-v29-latin-700italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-800 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  src: url('../Fonts/montserrat-v29-latin-800.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-800italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 800;
  src: url('../Fonts/montserrat-v29-latin-800italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-900 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 900;
  src: url('../Fonts/montserrat-v29-latin-900.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-900italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 900;
  src: url('../Fonts/montserrat-v29-latin-900italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-300 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../Fonts/open-sans-v40-latin-300.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-300italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../Fonts/open-sans-v40-latin-300italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/open-sans-v40-latin-regular.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../Fonts/open-sans-v40-latin-italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-500 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../Fonts/open-sans-v40-latin-500.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-500italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../Fonts/open-sans-v40-latin-500italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-600 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../Fonts/open-sans-v40-latin-600.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-600italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../Fonts/open-sans-v40-latin-600italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../Fonts/open-sans-v40-latin-700.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-700italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../Fonts/open-sans-v40-latin-700italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-800 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../Fonts/open-sans-v40-latin-800.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-800italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../Fonts/open-sans-v40-latin-800italic.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* ROOT */
:root,
[data-bs-theme=light] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #071e33;
  --bs-secondary: #4ac8ed;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 7, 30, 51;
  --bs-secondary-rgb: 74, 200, 237;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #052c65;
  --bs-secondary-text-emphasis: #2b2f32;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664d03;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #cfe2ff;
  --bs-secondary-bg-subtle: #e2e3e5;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff3cd;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #9ec5fe;
  --bs-secondary-border-subtle: #c4c8cb;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe69c;
  --bs-danger-border-subtle: #f1aeb5;
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-headline: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(125deg, rgba(7, 30, 51, 1) 20%, rgba(14, 45, 73, 1) 70%);
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1.1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0d6efd;
  --bs-link-color-rgb: 13, 110, 253;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #0a58ca;
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.4rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: 4rem;
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;


  --bs-text-shadow-sm: 1px 1px 3px rgba(var(--bs-black-rgb), .8);

  --transition-in: 500ms ease-in-out;
  --transition-out: 300ms ease-in-out;
}

/* Main */
input::placeholder {
  color: red;
  opacity: 1;
  /* Firefox */
}

hr {
  border-color: var(--bs-info);
}

::-ms-input-placeholder {
  /* Edge 12 -18 */
  color: red;
}

html,
body {
  overflow-x: hidden;
}
/* screen reader only */
.sr-only
{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.text-primary {
  color: var(--bs-primary) !important;
}

.form-control:focus {
  box-shadow: unset;
}

.btn {
  --bs-btn-padding-x: 1.375rem;
  --bs-btn-padding-y: 0.775rem;
}

.btn-primary {
  color: var(--bs-white);
  background: var(--bs-secondary);
  border: 2px solid var(--bs-secondary);
  border-radius: var(--bs-border-radius-pill);
  transition: all cubic-bezier(0.6, 0.04, 0.98, 0.335);
}

.btn-primary:hover {
  border: 2px solid var(--bs-secondary) !important;
  color: var(--bs-primary) !important;
  background: var(--bs-white) !important;
}

.btn.animated-button {
  --bs-btn-border-width: unset;
  --bs-btn-border-color: unset;
  --bs-btn-border-radius: unset;
  --bs-btn-hover-border-color: unset;
  --bs-btn-box-shadow: unset;
  --bs-btn-disabled-opacity: unset;
  --bs-btn-focus-box-shadow: unset;
  --bs-btn-padding-x: 1.375rem;
  --bs-btn-padding-y: 0.775rem;
}

.btn-primary.animated-button {
  --bs-btn-color: unset;
  --bs-btn-bg: unset;
  --bs-btn-border-color: unset;
  --bs-btn-hover-color: unset;
  --bs-btn-hover-bg: unset;
  --bs-btn-hover-border-color: unset;
  --bs-btn-focus-shadow-rgb: unset;
  --bs-btn-active-color: unset;
  --bs-btn-active-bg: unset;
  --bs-btn-active-border-color: unset;
  --bs-btn-active-shadow: unset;
  --bs-btn-disabled-color: unset;
  --bs-btn-disabled-bg: unset;
  --bs-btn-disabled-border-color: unset;
}

.button-container {
  position: relative;
  display: inline-block;
  border: 2px solid transparent;
}

.animated-button {
  position: relative;
  z-index: 2;
  text-decoration: none;
  color: var(--bs-primary);
  background: var(--bs-secondary);
  transition: color 0.3s;
}

.border-animation {
  position: absolute;
  z-index: 1;
  background: var(--bs-primary);
  transition: all 0.5s;
}

.border-animation.top,
.border-animation.bottom {
  width: 100%;
  height: 2px;
}

.border-animation.top {
  top: -2px;
  left: 0;
  transform: scaleX(0);
}

.border-animation.bottom {
  bottom: -2px;
  left: 0;
  transform: scaleX(0);
}

.border-animation.right,
.border-animation.left {
  height: 100%;
  width: 2px;
}

.border-animation.left {
  top: 0;
  left: -2px;
  transform: scaleY(0);
}

.border-animation.right {
  top: 0;
  right: -2px;
  transform: scaleY(0);
}

.button-container:hover .border-animation.top,
.button-container:hover .border-animation.bottom {
  transform: scaleX(1);
}

.button-container:hover .border-animation.right,
.button-container:hover .border-animation.left {
  transform: scaleY(1);
}

.button-container:hover .animated-button {
  color: var(--bs-primary);
  background-color: var(--bs-gray-200);
}

/* Headlines */
section h1,
.h1 {
  color: var(--bs-white);
  text-shadow: 0px 0px 8px rgba(10, 35, 59, 1);
  font-weight: 700;
}

section h2,
section h5,
section h6 {
  color: var(--bs-secondary);
}

section h3,
section .h3 {
  color: var(--bs-gray-700);
}

section h3::before,
section .h3::before {
  display: inline-block;
  content: '';
  background: var(--bs-primary);
  width: 2.9375rem;
  height: 1px;
  position: relative;
  top: -6px;
  margin-right: .2rem;
}

section.page-content h3 {
  color: var(--bs-secondary);
  font-size: 2rem;
}

section.page-content h3::before {
  display: none;
}

/* Header */
.navbar-nav {
  --bs-nav-link-padding-y: 1rem;
  --bs-nav-link-color: var(--bs-gray-300);
  --bs-nav-link-hover-color: var(--bs-secondary);
}

.navbar .nav-item:hover {
  color: var(--bs-secondary) !important;
}

nav.navbar {
  background: rgb(7, 30, 51);
  background: linear-gradient(125deg, rgba(7, 30, 51, 1) 20%, rgba(14, 45, 73, 1) 70%);
  color: var(--bs-gray-200);
  font-family: var(--bs-font-headline);
}

nav.navbar .navbar-nav .nav-link {
  color: var(--bs-gray-200) !important;
}

.breadcrumb li.breadcrumb-item a {
  color: var(--bs-primary);
  text-decoration: none;
}

.breadcrumb li.breadcrumb-item.active {
  color: var(--bs-gray-600);
}

/* CSS für das Hintergrundvideo */
#page1 .holder {
  background: linear-gradient(90deg, #071E33 0%, #0E2D49 100%) !important;
}

.video {
  overflow: hidden;
  z-index: 2;
}

.video-background {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 95vh;
  object-fit: cover;
  z-index: -1;
  max-width: 2900px;
  overflow: hidden;
  transform: translateX(-50%);
}

/* Optional: Stil für Overlay-Inhalt */
.content-overlay {
  position: relative;
  z-index: 1;
  color: white;
  text-align: center;
  height: 100%;
  width: 100vw;
}

.content-overlay .h1 {
  font-weight: 700;
}

.content-overlay p.lead {
  font-weight: 500;
  font-size: 1.475rem;
}

.full-height {
  height: calc(100vh - 107px);
}

.glow {
  text-shadow: 0px 0px 8px rgba(10, 35, 59, 1);
}


/* Content */
.bg-blue-gradient {
  background: rgb(7, 30, 51);
  background: linear-gradient(125deg, rgba(7, 30, 51, 1) 20%, rgba(14, 45, 73, 1) 70%);
}

/* BLUE BOX START */
/* Default grid layout for 5 items */
.blue-box {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}

/* Grouped color declarations */
.blue-box-item,
.blue-box-item h4,
.blue-box-item .blue-link,
.blue-box-item .blue-box-content {
  color: var(--bs-white);
  z-index:5;
}

.blue-box-item h4::before {
  display: none;
}

.blue-box-item {
  border-radius: var(--bs-border-radius-sm);
  background: rgba(var(--bs-primary-rgb), 0.7);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease-in-out;
  border: 2px solid transparent;
}

.blue-box-item:hover {
  border: 2px solid var(--bs-secondary);
}

.blue-box-item .icon {
  color: var(--bs-secondary);
}

.blue-box-item .blue-link {
  text-shadow: var(--bs-text-shadow-sm);
  z-index: 1;
  transition: all 0.7s ease-in-out;
}

.blue-box-item .blue-link i {
  border-radius: var(--bs-border-radius-pill);
  transition: all 0.5s ease-in-out;
  outline: 0px solid var(--bs-primary);
  transform: rotate(0deg);
}

.blue-box-item:hover .blue-link i {
  z-index: 1;
  transition: all 1s ease-in-out;
  outline-width: 100vw;
  transform: rotate(360deg);
}

.blue-box-item .blue-link i::before {
  transition: all 1s ease-in-out;
}

.blue-box-item:hover .blue-link i::before {
  content: "\f0a9" !important;
  /* Unicode for fa-circle-arrow-right */
}

/* BLUE BOX END */


/* Swiper Pagination Start */

#c166 .swiper, #c173 .swiper {
  width: 100%;
  height: 100%;
  overflow: visible;
}

#c166 .swiper-slide, #c173 .swiper-slide {
  display: flex;
}

#c166 .swiper-slide img, #c173 .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

#c166 .swiper-slide .card-overlay, #c173 .swiper-slide .card-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#c166 .swiper-slide .card-header, #c173 .swiper-slide .card-header {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(var(--bs-primary-rgb), .7);
  background: linear-gradient(0deg, rgba(var(--bs-primary-rgb), 0.7) 0%, rgba(var(--bs-primary-rgb), 0.7) 75%, rgba(var(--bs-primary-rgb), 0) 100%);
  transition: background 0.3s ease;
  -webkit-transition: background 0.3s ease;
}

#c166 .swiper-slide .card-header p, #c173 .swiper-slide .card-header p {
  color: var(--bs-white);
  font-size: calc(var(--bs-body-font-size) + 1rem);
  text-shadow: var(--bs-text-shadow-sm);
  font-family: var(--bs-font-headline);
  font-weight: 500;
  word-wrap: break-word;
  hyphens: auto;
  padding-top: 1rem;
  margin-left: .1rem;
  margin-bottom: .1rem;
}

#c166 .swiper-slide .card-body, #c173 .swiper-slide .card-body {
  background: rgba(var(--bs-primary-rgb), .7);
  display: none;
  height: 100% !important;
  color: var(--bs-white);
}

#c166 .swiper-slide .card-body .card-headline, #c173 .swiper-slide .card-body .card-headline {
  font-size: calc(var(--bs-body-font-size) + 1rem);
  text-shadow: var(--bs-text-shadow-sm);
  font-family: var(--bs-font-headline);
  font-weight: 500;
  word-wrap: break-word;
  hyphens: auto;
  padding-top: 1rem;
  margin-left: .1rem;
  margin-bottom: .1rem;
}

#c166 .card-icon, #c173 .card-icon {  
  color: var(--bs-secondary);
} 

/* Swiper Pagination end */

/*  Swiper Bullets  start */
.swiper-pagination-bullet {
  width: 68px;
  border-radius: 0;
  height: 4px;
  margin-right: 5px;
  background: var(--bs-secondary);
  opacity: 0.3;
}

.swiper-pagination-bullet-active {
  background: var(--bs-primary);
  opacity: 1;
}

 .swiper-horizontal>.swiper-pagination-bullets,
 .swiper-pagination-bullets.swiper-pagination-horizontal,
 .swiper-pagination-custom,
 .swiper-pagination-fraction {
  bottom: -30px;
  right: 0;
  width: unset;
  position: absolute;
  left: unset;
  top: unset;
}

@media (max-width: 767.98px) {
 .swiper-pagination-bullet {
    width: 50px;
    height: 4px;
  }
}

@media (max-width: 575.98px) {
 .swiper {
    width: 100vw;
    height: 30rem;
  }

  .scta {
    font-size: 1.2rem;
    height: 35px !important;
  }
}
/*  Swiper Bullets end */


/* Sorglos - Hero Section start */
.sorglos {
  background-image: url('/fileadmin/user_upload/slider1.jpg');
}

/* Default padding for larger screens */

.sorglos h2 {
  color: var(--bs-white);
  font-size: calc(var(--bs-body-font-size) + 2.375rem);
  padding-bottom: 3.75rem;
  text-shadow: 0px 0px 8px rgba(10, 35, 59, 1);
}

.sorglos #c31 {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-end;
  margin-top: -125px;
  margin-bottom: 85px;
}


.sorglos .button-container .border-animation,
.sorglos .button-container:hover .border-animation {
  display: none;
}

.sorglos .icon-calender {
  color: var(--bs-white);
  border: 2px solid transparent;
  border-radius: var(--bs-border-radius-pill);
}

.sorglos .icon-calender::before {
  content: '\f073';
  font-weight: 900;
  font-family: "Font Awesome 6 Free";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: var(--fa-display, inline-block);
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  margin-right: 8px;
}

.sorglos #c26 {
  margin-bottom: 92px;
}


.sorglos h4 {
  color: var(--bs-white);
}

.sorglos p {
  color: var(--bs-white);
}

/* Sorglos - Hero Section end */

/* Unternehmen start */

.company {
  background: linear-gradient(90deg, #071E33 0%, #0E2D49 100%) !important;
  color: var(--bs-gray-300);
}

.company #c88 p {
  color: var(--bs-gray-300);
}

.company .btn {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.company hr {
  width: 2.9375rem;
  height: 0.0625rem;
  border-color: var(--bs-info);
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}
.company div:has(#c152) {   
  align-content: end;
}
.company .company-person-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.company .company-text-grid {
	display: grid;
	grid-template-rows: repeat(2, 1fr);
	grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
/* Unternehmen end */

/* Number text Box start */

.number-text .number {
  color: var(--bs-secondary);
  padding-top: .75rem;
}
.number-text .number::before {
  display: none;
}
.number-text .text {
  font-size: calc(var(--bs-body-font-size) + .2rem);
}
.number-text .text::before {
  content: '';
  display: block;
  width: 2.9375rem;
  height: 1px;
  margin-top: .5rem;
  margin-bottom: .5rem;
  background-color: var(--bs-secondary);
}
/* Number text Box end */
#c208 .frame-layout-1 .number-text
{
  padding: 0 1rem;
}
#c208 {
  flex: 0 0 auto;
  width: calc(50% - 1rem);
  margin-left: 1rem;
}
/* Author Box start */
.authorBox {
  border: 2px solid transparent;
}

.authorBox:hover {
  border: 2px solid var(--bs-secondary);
}

.authorBoxHead {
  color: var(--bs-white);
  background-color: rgba(var(--bs-primary-rgb), 0.7);
}

.authorBoxContent {
  color: var(--bs-white);
  transform: translateY(100%);
  transition: transform 0.3s ease-in-out;
}

.authorBox:hover .authorBoxContent {
  transform: translateY(-90%); /* Move up on hover */
}

.authorName {
  color: var(--bs-white);
}

.authorType {
  color: var(--bs-secondary);
}

.authorBody i {
  color: var(--bs-secondary);
  padding: 0;
  transition: all 0.3s ease-in-out;
}

.authorBody a {
  color: var(--bs-secondary);
  background-color: var(--bs-white);
  text-decoration: none !important;
  transition: all 0.3s ease-in-out;
  border-radius: var(--bs-border-radius-pill);
}

.authorBody a:hover {
  color: var(--bs-white);
  background-color: var(--bs-secondary);
  text-decoration: none !important;
}

.authorBody a:hover {
  color: var(--bs-white);
  background-color: var(--bs-secondary);
  text-decoration: none !important;
}

.authorBody a:hover i{
  color: var(--bs-white);
}

.authorBody a::before {
  
  content: attr(data-title);
  position: absolute;
  opacity: 0;
  transform: translateX(-150%);
  bottom: 100%; /* Position above the link */
  left: 50%;
  width:100%;
  transition: all 0.3s ease-out;
  color: transparent;
  background-color: var(--bs-secondary);
  text-align: center;
  font-size: calc(var(--bs-body-font-size) - 0.15rem);
  font-weight: calc(var(--bs-body-font-weight) + 100);
  padding: 0.3125rem 0.625rem;
  white-space: nowrap;
  box-shadow: var(--bs-box-shadow-sm);
  pointer-events: none;
}


.authorBody a:hover::before {
  transform: translateX(-50%);
  background-color: rgba(var(--bs-secondary-rgb), 0.7);
  color: var(--bs-white);
  opacity: 1;
  transition: all 0.4s ease-in;
}

.authorMore {
  color: var(--bs-secondary);
  padding: 0 3px;
  text-decoration: underline !important;
  transition: all 0.3s ease-out;
}

.authorMore:hover {
  color: var(--bs-white);
  background-color: var(--bs-secondary);
  text-decoration: none !important;
}

/* Author Box End */

/* Testimonials start */

.testimonials hr {
  width: 47px;
  height: 1px;
  border-color: var(--bs-info);
  margin-top: 16px;
  margin-bottom: 8px;
}

.testimonials .customers {
  padding-left: 15px;
  padding-right: 15px;
}
.testimonials .customers h3 {
 padding-top:0 ;
}
.testimonials .customers h3::before {
  display: none;
}
/* Testimonials end */

/* modal-video start */
.modal-video {
  background: rgba(0, 0, 0, 0.8);
  border-radius: var(--bs-border-radius-sm);
  overflow: hidden;
}

.modal-video .blue-button
{
  color: var(--bs-white);
  background-color: rgba(var(--bs-primary-rgb), .7);
  border: 2px solid transparent;
  border-radius: var(--bs-border-radius-sm);
  padding: 1.75rem 2rem;
  transition: all .7s ease-in-out;
  overflow: hidden;
}
.modal-video .blue-button i
{
  color: var(--bs-secondary);
  font-size: calc(var(--bs-body-font-size) + 1rem);
  padding: 0;
}
.modal-video .blue-button:hover
{
  border-color: var(--bs-secondary);
  background-color: rgb(var(--bs-primary-rgb));
  transition: all .7s ease-in-out;
}

.custom-modal .modal-body
{
  padding: 0px;
}

/* modal-video end */

/* Slick Slider */ 
.slick-dots {
  bottom: 25px;
}

.text-slide {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  padding: 0;
  margin: 0;
  width: 100%;
  flex-wrap: wrap;
  justify-content: flex-end;

}

.text-slide .slick-dots {
  bottom: auto;
  height: 45vh;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-end;
  justify-content: flex-start;
  align-items: flex-end;
  border-bottom: 1px solid var(--bs-white);
  width: 100vw;
  padding-bottom: 20px;
  padding-left: 10rem;
  padding-right: 10rem;
  position: relative;
}

.text-slide .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  outline: none;
  border: 2px solid var(--bs-secondary);
  opacity: 1;
  background: var(--bs-secondary);
  border-radius: 10px;
  position: absolute;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}

.text-slide .slick-dots li.slick-active button {
  border: none;
  opacity: 1;
  border-radius: 10px;
  padding-top: 40px;
}

.text-slide .slick-list {
  height: 50vh;
  width: 100vw;
  padding-top: 2rem;
}

[class^="vslide"] {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr);
  margin: 0 10rem;
}

[class^="vslide"] article .lead {
  color: var(--bs-white);
  text-align: left;
}

[class^="vslide"] article .h1 {

  color: var(--bs-white);
  text-align: left;
}

/* Overlay.html Teaser start */
.teaser .teaser-body {
  border: 2px solid transparent;
}
.teaser .teaser-body:hover {
  border: 2px solid var(--bs-secondary);
}

.teaser .teaser-body {
  display: flex;
  padding: 1rem;
  border-radius: var(--bs-border-radius-sm);
  background: rgba(11, 45, 77, 0.5);
}
.teaser .teaser-body .content {
  display: grid;
	grid-template-rows: auto 1fr;
	grid-template-columns: 1fr;
  padding-left: 1rem;
}
.teaser .teaser-body .content h3 {
  color: var(--bs-white);
  font-size: calc(var(--bs-body-font-size) + .5rem);
  text-align: left;
	grid-area: 1/1/2/2;
  padding-top: 0;
}
.teaser .teaser-body .content a {
  color: var(--bs-white);
	grid-area: 1/1/2/2;
	justify-self: end;
	align-self: start;
}

.teaser .teaser-body .content p {
  color: var(--bs-white);
  text-align: left;
  padding: 0;
  margin: 0;
	grid-area: 2/1/3/2;
  align-self: center;
}

.teaser .teaser-body .image {
  padding: 0;
  margin: 0;
  display: block;
}
.teaser .teaser-body .image img {

  aspect-ratio: 1 / 1;
  width: 176px;
  height: 176px;
  display: block;
  border-radius: var(--bs-border-radius-sm);
}

.teaser .teaser-footer {
  background: transparent !important;
  margin-top: 1rem;
}

.teaser .teaser-footer .button-container {
  background-color: transparent !important;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: .5rem;
}

/* Overlay.html Teaser end */


/* link galerie start */
.link-galerie {
  text-align: center;
}

.link-galerie .gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.link-galerie .gallery-item {
  position: relative;
}

.link-galerie .gallery-item .img-fluid {
  width: 100%;
  height: auto;
}

.link-galerie .gallery-item .gallery-title {
  position: absolute;
  bottom: 50%;
  left: 50%;
  transform: translate(-50%, 50%);
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  padding: 5px 10px;
  border-radius: 5px;
}

.link-galerie .gallery-link {
  margin-top: 10px;
}
/* link galerie end */

/* page-content start */
.page-content h1{
  font-weight: 900;
}
.blue-icon a,
.page-content a {
  text-decoration: underline;
  text-underline-offset: 0.4rem;
  text-decoration-style: dashed;
  text-decoration-color: var(--bs-secondary);
  text-decoration-thickness: .1rem;
  transition: all 0.4s ease-in-out;  
  padding: 0 0.25rem;
}
.blue-icon a:hover,
.page-content a:hover {
  text-decoration: none;
  transition: all 0.4s ease-in-out;  
}

.blue-icon li i {
  color: var(--bs-secondary);
  padding: 0.5rem;
}
.page-content ul
{
  list-style-type: circle;
  list-style-position: outside;
  padding: 2rem 0rem 0rem 2rem;
}

.page-content ul li
{
  list-style-type: circle;
  padding: 0 0;
  padding-bottom: .5rem;
}
.page-content ul li:hover
{
  transition: all 0.4s ease-in-out;
  list-style-type: square;
}

.page-content ul li:hover::marker
{
  transition: all 0.4s ease-in-out;
  color: var(--bs-primary);
}
.page-content ul li::marker
{
  transition: all 0.4s ease-in-out;
  color: var(--bs-secondary);
}

  /* page-content card content Menu Card start*/ 
.page-content .card {
  border: none;
  border-radius: 0;
}
.page-content .card a {
  text-decoration: none;
  padding: 0;
}
.page-content .card a:hover {
  background-color: rgba(var(--bs-primary-rgb), 1);
  transition: all 0.4s ease-in-out;
}
.page-content .card a:hover img {
  background-color: rgba(var(--bs-primary-rgb), .7);
  z-index: 99;
}
.page-content .card .page-title {
  color: var(--bs-primary);
  font-size: calc(var(--bs-body-font-size) + .2rem);
  font-weight: 700;
  text-align: center;   
}
.page-content .card:hover .page-title {
  color: var(--bs-white);
  transition: all 0.4s ease-in-out;
}
.page-content .card .parent-title {
  color: var(--bs-primary);
  font-size: calc(var(--bs-body-font-size) - .2rem);
  font-weight: 500;
  background-color: rgba(var(--bs-secondary-rgb), 1);
  
  position: absolute; 
  z-index: 100;
  top: 1rem;
  right: -20px;
}
.page-content .card .parent-title::after {
  content: '';
  position: absolute;
  right: 1px;
  bottom: -13px;
  display: block;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px  solid transparent;
  border-top: 15px  solid var(--bs-primary);
  margin: 10px auto 0; /* Adjust margin as needed */
  z-index: 98;
  transform: rotate(135deg);
}
  /* page-content card content Menu Card end*/
/* page-content end */

/* Footer start */
footer {
  font-weight: 300;
  background: rgb(7, 30, 51);
  background: linear-gradient(125deg, rgba(7, 30, 51, 1) 20%, rgba(14, 45, 73, 1) 70%);
  color: var(--bs-gray-200);
}

footer a {
  color: var(--bs-secondary);
  transition: color 0.3s ease;
  -webkit-transition: color 0.3s ease;
  text-decoration: none;
}

footer a:hover {
  color: var(--bs-gray-300);
}

footer .text-muted {
  color: var(--bs-gray-500) !important;
}

footer img.logo {
  max-width: 265px;
  width: 100%;
  height: auto;
}

footer .location ul li:first-child {
  margin-top: 25px;
}

footer .links ul li:first-child {
  margin-top: 20px;
}

footer .links li {
  position: relative;
}

footer li i {
  padding-right: 9px !important;
}

footer ul {
  line-height: 1.8;
}

footer .mym ul li:last-child {
  right: 0;
  top: -40px;
}

footer .social-icons a i {
  font-size: 1.775rem;
}

footer .social-icons a i::before {
  color: var(--bs-secondary);
}

footer .social-icons a:hover i::before {
  color: var(--bs-gray-300);
}
 /* Footer end */

 /** load wrapper **/

/* Loader Styles start here */
.loader-wrapper {
  --line-width: 5px;
  --curtain-color: #fff;
  --outer-line-color: #a8dadc;
  --middle-line-color: #457b9d;
  --inner-line-color: #1d3557;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:1000;
  background: linear-gradient(125deg, rgba(7, 30, 51, 1) 20%, rgba(14, 45, 73, 1) 70%);
  background-position: center center;
  background-repeat: no-repeat;
}

.loader {
  display:block;
  width:150px;
  height:150px;
  padding: 5px;
  border:var(--line-width) solid transparent;
  border-top-color: var(--outer-line-color);
  border-radius:100%;
  -webkit-animation: spin 2s linear infinite;
          animation: spin 2s linear infinite;
  z-index:1001;
}

.loader-wrapper img {
  height: auto;
}

.loader:before {
  content:"";
  position: absolute;
  top:4px;
  left:4px;
  right:4px;
  bottom:4px;
  border:var(--line-width) solid transparent;
  border-top-color: var(--inner-line-color);
  border-radius:100%;
  -webkit-animation: spin 3s linear infinite;
          animation: spin 3s linear infinite;
}

.loader:after {
  content:"";
  position: absolute;
  top:14px;
  left:14px;
  right:14px;
  bottom:14px;
  border:var(--line-width) solid transparent;
  border-top-color: var(--middle-line-color);
  border-radius:100%;
  -webkit-animation: spin 1.5s linear infinite;
          animation: spin 1.5s linear infinite;
}

@-webkit-keyframes spin {
  0%   { 
    -webkit-transform: rotate(0deg); 
      -ms-transform: rotate(0deg); 
          transform: rotate(0deg);
  }
  100% { 
    -webkit-transform: rotate(360deg); 
      -ms-transform: rotate(360deg); 
          transform: rotate(360deg);
  }
}
@keyframes spin {
  0%   { 
    -webkit-transform: rotate(0deg); 
      -ms-transform: rotate(0deg); 
          transform: rotate(0deg);
  }
  100% { 
    -webkit-transform: rotate(360deg); 
      -ms-transform: rotate(360deg); 
          transform: rotate(360deg);
  }
}

.loaded .loader {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.loaded .loader-wrapper {
  visibility: hidden;
  transform:translateY(-100%);
  transition: all .3s 1s ease-out;
}
progress[value] {
  --color: var(--bs-secondary); /* the progress color */
  --background: var(--bs-body-bg); /* the background color */

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  width: 100%;
  height: 5px;
  border-radius: 0;
  background: var(--background);
}
progress[value]::-webkit-progress-bar {
  border-radius: 0;
  background: var(--background);
}
progress[value]::-webkit-progress-value {
  border-radius: 0;
  background: var(--color);
}
progress[value]::-moz-progress-bar {
  border-radius: 0;
  background: var(--color);
}

/* Loader Styles end */

/** powermail start **/
.powermail_fieldwrap {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.5rem;
}

.powermail_fieldwrap_datenschutz {
  margin-bottom: .5rem;
}

/* Initial state for the label */
.powermail_fieldwrap label {
  display: none;
}

/* Styles for the input, textarea, and select */
.powermail_fieldwrap input[type="text"],
.powermail_fieldwrap input[type="email"],
.powermail_fieldwrap input[type="tel"],
.powermail_fieldwrap input[type="number"],
.powermail_fieldwrap input[type="checkbox"],
.powermail_fieldwrap textarea,
.powermail_fieldwrap select {
  padding: 0.5rem;
  margin-bottom: .475rem;
  transition: all 0.3s ease-in-out; 
  background-color: var(--bs-gray-100);
  color: var(--bs-body-color);
}

.powermail_fieldwrap select option:first-child {
  color: var(--bs-body-color);
  opacity: 0.5;
}

.powermail_fieldwrap input[type="checkbox"]
{
  margin-bottom: 0;
}
/* Focus state for the input, textarea, and select */
.powermail_fieldwrap input[type="text"]:focus,
.powermail_fieldwrap input[type="email"]:focus,
.powermail_fieldwrap input[type="tel"]:focus,
.powermail_fieldwrap input[type="number"]:focus,
.powermail_fieldwrap input[type="checkbox"]:focus,
.powermail_fieldwrap textarea:focus,
.powermail_fieldwrap select:focus {
  border: 1px solid var(--bs-primary) !important;
  border-radius: 0 !important;
  background-color: var(--bs-white);
}

/* Disable resize for textarea */
.powermail_fieldwrap textarea {
  resize: none;
}

/* Styles for the submit button */
.powermail_fieldwrap .powermail_fieldwrap_submit {
  cursor: pointer;
}

/* JO */
.tx-powermail .powermail_fieldset .powermail-errors-list.filled {
  color: var(--bs-danger);
  position: absolute;
  background-color: unset;
  border: unset;
  width: unset;
  top: -32px;
}

/* Placeholder styles for input and textarea */
.powermail_fieldwrap input::placeholder,
.powermail_fieldwrap textarea::placeholder {
  color: var(--bs-gray-800);
  transition: all 0.3s ease-in-out;
}

.powermail_fieldwrap input:focus::placeholder,
.powermail_fieldwrap textarea:focus::placeholder {
  color: var(--bs-gray-300) !important;
}

.tx-powermail .powermail_fieldset .powermail_field_error,
.tx-powermail .powermail_fieldset div.error,
.powermail_field_error {
  border-color: var(--bs-danger) !important;
  background-color: var(--bs-white);
  color: var(--bs-body-color);
}

.powermail_field_error::placeholder {
  border-color: var(--bs-danger) !important;
  background-color: var(--bs-white);
  color: var(--bs-body-color);
}

.checkbox.powermail_field_error {
  background-color: transparent !important;
}

.tx-powermail .powermail_fieldset .powermail-errors-list.filled li {
  padding: 0;
  margin: 0;
  line-height: 2;
  color: var(--bs-danger) !important;
  font-size: .9rem;
}

.powermail_checkbox_text {
  margin-left: 40px;
  font-size: .975rem;
  padding-top: 7px;
  color: var(--bs-gray-800);
}

/** checkbox **/

.checkbox input {
  display: none;
}

.checkbox-box {
  display: block;
  width: 25px;
  height: 25px;
  border: 1px solid var(--bs-secondary);
  transition: all var(--transition-out);
  position: absolute;
  cursor: pointer;
  background-color: var(--bs-gray-100);
}

input:checked ~ .checkbox-box {
  rotate: 45deg;
  translate: 10px 0px;
  width: 15px;
  flex-basis: 15px;
  border-color: var(--bs-success);
  border-width: 3px;
  border-top-color: transparent;
  border-left-color: transparent;
  border-radius: 4px;
  transition: all var(--transition-in);
  background-color: transparent;
}

/* RWL */
@media (min-width: 1400px) and (max-width: 1649px) {
  footer .mym ul li.iiq {
    display: none !important;
  }
}

@media (max-width: 1920px) {

}

@media (max-width: 1649px) {
    /* Stretch the last two elements to span multiple columns */
    .blue-box {
      display: grid;
      grid-template-columns: repeat(6, 1fr); /* 6 gleichmäßig verteilte Spalten */
      grid-template-rows: auto auto; /* Zwei Reihen */
      gap: 10px; /* Abstand zwischen den Elementen */
    }
    
    .blue-box > * {
      grid-column: span 2; /* Item 1 spannt 2 Spalten */
    }
    
    .blue-box > :nth-child(n+4) {
      grid-column: span 3; /* Item 4 spannt 3 Spalten */
      grid-row: 2; /* Item 4 ist in der zweiten Reihe */
    }

    .text-slide .slick-dots {
      height: 10vh;
    }
    .text-slide .slick-list {
      height: 90vh;
      width: 100vw;
      padding-top: 2rem;
    }

    [class^="vslide"] {
      display: grid !important;
      grid-template-columns: repeat(1, 1fr);
      margin: 0 6rem;
    }
    .text-slide .slick-dots {
      padding-left: 6rem;
      padding-right: 6rem;
    }

    [class^="vslide"] .lead  {
      font-size: calc(var(--bs-body-font-size) + .5rem);
    }
    
    [class^="vslide"] .h1  {
      font-size: calc(var(--bs-body-font-size) + 1.5rem);    
    }

    #c166 .swiper-slide .card-body .card-headline, #c173 .swiper-slide .card-body .card-headline {
      font-size: calc(var(--bs-body-font-size) + .5rem);
      padding-top: 0rem;
    }
    #c166 .swiper-slide .card-body .card-icon, #c173 .swiper-slide .card-body .card-icon {
      display: none;
    }
  
}

@media (max-width: 1399px) {  
  #c166 .swiper-slide .card-body .card-headline, #c173 .swiper-slide .card-body .card-headline {
    font-size: calc(var(--bs-body-font-size) + .4rem);
  }

  #c166 .swiper-slide .card-body .card-icon, #c173 .swiper-slide .card-body .card-icon {
    display: none;
  }
  
  [class^="vslide"] .h1  {
    font-size: calc(var(--bs-body-font-size) + 1rem);    
  }
  [class^="vslide"] .h1 span br {
    display: none;
  }
}
@media (min-width: 1200px) {
  .h1 {
    font-size: calc(var(--bs-body-font-size) + 2rem);    
  }
  .teaser .teaser-body .content h3 {
    font-size: calc(var(--bs-body-font-size) + .3rem);
  }
}
@media (max-width: 1199px) {
  .ms-5-percent {
    margin-left: 0;
  }
    
  [class^="vslide"] {
    display: block !important;
    margin: 0 3rem;
  }
  .text-slide .slick-dots {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  [class^="vslide"] article  {
    padding-bottom: 2rem;
  }
  .teaser .teaser-body .image {
    min-width: 260px;
  }
  .sorglos h2 {
    font-size: calc(var(--bs-body-font-size) + 1.5rem);
  }  
  .company .company-person-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 1fr);
  }
  .company .company-text-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 1fr);
    justify-items: center;
    padding-bottom: 2rem;
  }
  /* Overwrite the start text align and centers the button */
  .company .buttonwrap.start {
    text-align: center;
  }
  

  #c166 .swiper-slide .card-body .card-headline, #c173 .swiper-slide .card-body .card-headline {
    font-size: calc(var(--bs-body-font-size) + .4rem);
  }
  #c166 .swiper-slide .card-body .card-icon, #c173 .swiper-slide .card-body .card-icon {
    display: none;
  }

}

@media (max-width: 991px) {
  .content-overlay .lead {
    font-size: 1.175rem;
    line-height: 1.65rem;
  }    
  /* Stretch each item to span the full width of its own row */
  .blue-box {
    display: grid;
    grid-template-columns: 1fr; /* Each item takes up the full width */
    gap: 10px; /* Gap between the items */
  }
  .blue-box > :nth-child(n+4) {
    grid-column: 1; /* Item 4 spannt 3 Spalten */
    grid-row: auto; /* Item 4 ist in der zweiten Reihe */
  }
  
  .blue-box > * {
    grid-column: 1 !important; /* Each item spans 1 column */
  }  

  [class^="vslide"] {
      display: block !important;
      margin: 0 2rem;
  }
  .text-slide .slick-dots {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  [class^="vslide"] .lead span br {
    display: none;
  }
}

/* Media query for screens under 920px */
@media (max-width: 920px) {
  
  .sorglos h2 {
    text-align: center;
   }
  .sorglos #c31 {
    margin-top: 40px;
    margin-bottom: 40px;
    justify-content: center;
  }
}

@media (max-width: 768px) {
  footer .location {
    margin-top: 40px !important;
  }

  .text-slide .slick-dots {
    display: none !important;
  }

  .full-height {
    height: calc(100vh - 93px);
  }
  
  .teaser .teaser-body .image {
    display: none;
  }  
  
  .sorglos h2 {
   text-align: center;
  }
  
  #c166 .swiper-slide .card-header, #c173 .swiper-slide .card-header {
    font-size: calc(var(--bs-body-font-size) - .1rem);
    display: none !important;
  }
  
  #c166 .swiper-slide .card-header p, #c173 .swiper-slide .card-header p {
    font-size: calc(var(--bs-body-font-size) - .2rem);
  }
  
  #c166 .swiper-slide .card-body, #c173 .swiper-slide .card-body {
    font-size: calc(var(--bs-body-font-size) - .2rem);
    display: grid !important; 
  }
  
  #c166 .swiper-slide .card-body .card-icon, #c173 .swiper-slide .card-body .card-icon {
    display: none;
  }

  #c166 .swiper-slide .card-body .card-headline, #c173 .swiper-slide .card-body .card-headline {
    font-size: calc(var(--bs-body-font-size) + .3rem);
  }

  #c166 .swiper-slide .button-container .btn.btn-primary.rounded-pill, #c173 .swiper-slide .button-container .btn.btn-primary.rounded-pill {
    font-size: calc(var(--bs-body-font-size) - .1rem);
    padding: 0.5rem 1rem;
  }  
  
  .company .company-person-grid {
    grid-template-columns: repeat(1, 1fr);
  }
  .company .company-text-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 1fr);
    justify-items: center;
  }
  .company .company-text-grid .text {
    color: var(--bs-white);
    font-size: calc(var(--bs-body-font-size) - .2rem);
  }
  
  .loader-wrapper img {
    width: 65%;
    height: auto;
  }
}

@media (max-width: 575px) {

  .teaser .teaser-body .content {
    padding-left: 0;
  }
  .teaser .teaser-body .content h3 {
    font-size: 1.2rem;
  }
  .teaser .teaser-body .content p {
    font-size: 0.9rem;
  }
  .teaser .teaser-body .content a {
    display: none;
  }

  [class^="vslide"] {
    display: block !important;
    margin: 0 1rem;
  }
  .text-slide .slick-dots {
    display: none !important;
  }

  .loader-wrapper img {
    width: 65%;
    height: auto;
  }
}

@media (max-width: 450px) {
  
  .text-slide .slick-dots {
    display: none !important;
  }
  .teaser .teaser-body .content h3 {
    font-size: 1rem;
  }
  .teaser .teaser-body .content p {
    font-size: 0.8rem;
  }
  .teaser .teaser-body .content a {
    display: none;
  }

  .company .company-text-grid h4 {
    color: var(--bs-white);
    font-size: calc(var(--bs-body-font-size) - .3rem);
  }
  #c208 {
    flex: 0 0 auto;
    width: calc(100% - 1rem);
    margin-left: 1rem;
  }
}

@media (max-width: 385px) {
    .sorglos h2 {
        font-size: calc(var(--bs-body-font-size) + 1.4rem);
    }    
    .company .company-text-grid .text {
      color: var(--bs-white);
      font-size: calc(var(--bs-body-font-size) - .3rem);
  }
}