/*--------------------------------------------------------------
/** 1. VARIABLES
--------------------------------------------------------------*/ 
:root {
  /* widths for rows and containers
     */
  --header-height: 120px;
  --header-height-min: 80px;
}
/* on mobile devices below 600px
 */
@media screen and (max-width: 600px) {
  :root {
    --header-height: 100px;
    --header-height-min: 80px;
  }
}
/* Theme Colors */ :root {
  --blau: #004b96;
  --hellblau: #e5eef8;
  --privat: #f3cf4e;
  --hellprivat: #faf5e1;
  --business: #80c9c9;
  --hellbusiness: #e9f3f2;
  --referent: #004b96;
  --dark: #34475a;
  --hell: #f1f1f1;
  --success: #3BB40B;
  --danger: #dc3545;
}
.theme1 {
  --privat: #f3cf4e;
  --hellprivat: #faf5e1;
  --business: #80c9c9;
  --hellbusiness: #e9f3f2;
}
.theme2 {
  --privat: #f0d772;
  --hellprivat: #f7f3e5;
  --business: #9bd4ce;
  --hellbusiness: #e9f5f4;
}
.text-light {
  --bs-text-opacity: 0.6;
}
/* Fonts */ 
:root {
  --body-font: "Afacad Flux", sans-serif;
  --heading-font: 'Afacad Flux', sans-serif;
}
/* Bootstrap */
body {
  --heading-font: "Afacad Flux", Afacad Flux, sans-serif;
  --heading-font-weight: 600;
  --heading-color: #2f2f2f;
  --heading-line-height: 1.24;
  --swiper-theme-color: #004b96;
  /* bootstrap */
  --bs-body-font-family: "Afacad Flux", Arial, sans-serif;
  --bs-body-font-size: 18px;
  --bs-body-font-weight: 300;
  --bs-body-line-height: 1.5;
  --bs-body-color: #444;
  --bs-body-color-rgb: 117, 117, 117;
  --bs-primary: #004b96;
  --bs-secondary: #34475a;
  --bs-black: #111;
  --bs-light: #F1F1F0;
  --bs-dark: #2f2f2f;
  --bs-gray: #9aa1a7;
  --bs-gray-dark: #51565b;
  --bs-primary-rgb: 0, 75, 150;
  --bs-secondary-rgb: 0, 114, 54;
  --bs-black-rgb: 17, 17, 17;
  --bs-light-rgb: 241, 241, 240;
  --bs-dark-rgb: 33, 37, 41;
  --bs-link-color: #111;
  --bs-link-color-rgb: 17, 17, 17;
  --bs-link-decoration: none;
  --bs-link-hover-color: #004b96;
  --bs-link-hover-color-rgb: 0, 75, 150;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: var(--heading-font);
  font-weight: var(--heading-font-weight);
  color: var(--heading-color);
  line-height: var(--heading-line-height);
}
h1.light, .h1, h2.light, .h2, h3.light, .h3, h4.light, .h4, h5.light, .h5, h6.light, .h6 {
  color: var(--light-color);
}
.r12 {
  border-radius: 12px !important;
}
.r16 {
  border-radius: 16px !important;
}
.r24 {
  border-radius: 24px !important;
}
.container-fluid {
  /* width: 98%; */
  max-width: 1800px;
}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
  --bs-gutter-x: 2.5rem;
}
/* Dropdown */
.dropdown-menu {
  --bs-dropdown-border-radius: 0;
  --bs-dropdown-border-width: 0;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.88), var(--bs-dropdown-link-hover-bg));
	/*box-shadow: 3px 3px 6px var(--dark);*/
}
.dropdown-item {
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-link-color: var(--bs-black);
  --bs-dropdown-item-border-radius: 0;
}
.dropdown-item.active, .dropdown-item:active {
  --bs-dropdown-link-active-color: var(--bs-light);
  --bs-dropdown-link-active-bg: var(--bs-black);
}
/* list group */
.list-group-item {
  --bs-list-group-item-padding-x: 0;
  --bs-list-group-border-width: 0;
}
.btn-outline-primary {
  --bs-btn-color: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-primary);
  --bs-btn-hover-border-color: var(--bs-primary);
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-primary);
  --bs-btn-active-border-color: var(--bs-primary);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--bs-primary);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--bs-primary);
  --bs-gradient: none;
}
.pagination {
  --bs-pagination-active-bg: var(--bs-black);
  --bs-pagination-border-width: 0;
  --bs-pagination-border-radius: 0;
}
/* breadcrumb */
.breadcrumb {
  --bs-breadcrumb-item-padding-x: 1em;
}
/* text white */
.text-white {
  --heading-color: var(--bs-light);
  --bs-breadcrumb-item-active-color: var(--bs-light);
  --bs-breadcrumb-divider-color: var(--bs-light);
  --bs-link-color-rgb: var(--bs-light-rgb);
  --bs-link-hover-color-rgb: var(--bs-light-rgb);
}
.text-white a {
  color: var(--hell) !important;
}
a.text-white, .text-white a:hover {
  color: #fff !important;
}
.text-white a.text-white:hover, a.text-white:hover {
  color: var(--hell) !important;
}
/* accordion */
.accordion {
  --bs-accordion-active-color: var(--bs-dark);
  --bs-accordion-active-bg: transparent;
}
.accordion-button {
  margin: 0;
}
/* form control */
.form-control:focus {
  border-color: #ccc;
  box-shadow: 0 0 0 0.25rem rgba(200, 200, 200, .25);
}
/* dark theme */
[data-bs-theme=dark] body {
  color-scheme: dark;
  --heading-color: #fff;
  --bs-link-color: #fff;
  --bs-link-hover-color: #fff;
  --bs-link-color-rgb: 255, 255, 255;
  --bs-link-hover-color-rgb: 255, 255, 255;
  --bs-body-color: #d1d1d1;
  --bs-body-bg: #111;
  --bs-body-bg-rgb: 17, 17, 41;
}
[data-bs-theme=dark] .dropdown-item {
  --bs-dropdown-link-color: var(--bs-light);
  --bs-dropdown-link-hover-color: var(--bs-white);
}
[data-bs-theme=dark] .bg-white, [data-bs-theme=dark] .bg-light {
  --bs-bg-opacity: 0.1;
}
[data-bs-theme=dark] .btn-link, [data-bs-theme=dark] a {
  --bs-link-color: #fff;
  --bs-link-hover-color: #fff;
  --bs-link-color-rgb: 255, 255, 255;
  --bs-link-hover-color-rgb: 255, 255, 255;
}
[data-bs-theme=dark] h1, [data-bs-theme=dark] h2, [data-bs-theme=dark] h3, [data-bs-theme=dark] h4, [data-bs-theme=dark] h5, [data-bs-theme=dark] h6 {
  --heading-color: #fff;
}
/* end of Bootstrap Color Theme */
/*----------------------------------------------*/
/* 2 GENERAL TYPOGRAPHY */
/*----------------------------------------------*/
/* 2.1 General Styles
/*----------------------------------------------*/
*, *::before, *::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  box-sizing: border-box;
}
body {
  font-family: var(--body-font);
  font-size: 16px;
  line-height: 1.5;
  color: var(--bs-body-color);
}
p, li, dt, dd, td, label, input, textarea, select, .form-control, .form-select {
  font-size: 1.15rem;
}
body.no-scroll {
  overflow: hidden;
}
a {
  color: #111;
  text-decoration: none;
}
a:hover {
  color: #111;
  text-decoration: none;
}
ul, ol {
  margin-top: 0;
  margin-bottom: 10px;
  margin-left: 0;
}
ul ul, ol ul, ul ol, ol ol {
  margin-top: 5px;
  margin-bottom: 0;
}
ul li, ol li {
  margin-bottom: 5px;
  outline: 0;
}
ul li.active a {
  color: var(--bs-body-color);
}
ul li:last-child, ol li:last-child {
  margin-bottom: 0;
}
dl {
  margin-top: 0;
  margin-bottom: 2rem;
}
dt, dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  outline: 0;
}
figure {
  margin: 0;
}
img {
  display: inline-block;
  border: 0;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
::selection {
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  text-shadow: none;
}
::-moz-selection {
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  text-shadow: none;
}
/* image align */
figure.align-right {
  margin: 30px 0 30px 30px;
}
/* Typography */
/*----------------------------------------------*/
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-weight: 700;
  line-height: 1.1;
  color: var(--dark);
}
h1, .h1 {
  font-weight: 700;
  line-height: 1.2;
  color: var(--dark);
}
h3, .h3, h4, .h4 {
  font-weight: 600;
}
h5, .h5, h6, .h6 {
  font-weight: 400;
}
h1.light, .h1.light, h2.light, .h2.light, h3.light, .h3.light, h4.light, .h4.light, h5.light, .h5.light, h6.light, .h6.light {
  color: #fff;
}
h1, h2, h3 {
  margin: 0 0 12px;
}
.choose h2 {
	line-height: 0.85;
	margin-bottom: 1rem;
}
.choose h2 span {
  font-size: 2rem;
  font-weight: 600;
}
.choose h3 {
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 400;
}
h5, h6 {
  /*letter-spacing: 1px;*/
}
h1, .h1 {
  font-size: 3em;
  line-height: 1.4;
}
h2, .h2 {
  font-size: 2.4em;
}
h3, .h3 {
  font-size: 1.9em;
}
h4, .h4 {
  font-size: 1.4em;
}
h5, .h5 {
  font-size: 1.25em;
  line-height: 1.25;
}
h6, .h6 {
  font-size: 1.15em;
  line-height: 1.1;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-weight: inherit;
  color: inherit;
  text-decoration: none;
}
p {
  margin: 0 0 1rem 0;
}
p:empty {
  display: none;
}
small {
  font-size: 85%;
}
dfn, cite, em, i {
  font-style: italic;
}
::placeholder {
  color: #999;
}
/*----------------------------------------------*/
/* 2.1 Floating & Alignment */
/*----------------------------------------------*/
.align-left {
  float: left;
  text-align: left;
}
.align-right {
  float: right;
  text-align: right;
}
.align-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
/*------------------------------------------------
/* 2.3 Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea, select {
  height: 38px;
  padding: 6px 10px;
  /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box;
}
/* Removes awkward default styles on some inputs for iOS */
input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
textarea {
  height: auto;
  min-height: 65px;
  padding-top: 6px;
  padding-bottom: 6px;
}
input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, textarea:focus, select:focus {
  border: 1px solid #33C3F0;
  outline: 0;
}
label, legend {
  display: block;
  margin-bottom: .5rem;
  font-weight: 600;
}
fieldset {
  padding: 0;
  border-width: 0;
}
input[type="checkbox"], input[type="radio"] {
  display: inline;
}
label > .label-body {
  display: inline-block;
  margin-left: .5rem;
  font-weight: normal;
}

/*------------------------------------------------
/* 2.6 Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th, td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #E1E1E1;
}
th:first-child, td:first-child {
  padding-left: 0;
}
th:last-child, td:last-child {
  padding-right: 0;
}
/*------------------------------------------------
/* 2.7 Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
button, .button {
  margin-bottom: 1rem;
}
input, textarea, select, fieldset {
  margin-bottom: 0.5rem;
}
pre, blockquote, figure, p {
  margin-bottom: 1rem;
}
ul.list-unstyled i {
  margin-right: 12px;
}
/*------------------------------------------------
/* 2.8 Utilities
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  width: 100%;
  box-sizing: border-box;
}
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box;
}
.u-pull-right {
  float: right;
}
.u-pull-left {
  float: left;
}
.list-icon i {
  margin-right: 10px;
}
.list-unstyled {
  list-style: none;
}
.txt-fx .letter {
  display: inline-block; /* Wichtig für Transformationen */
  opacity: 0;
}
.text-lead {
  font-size: 120%;
}
/*------------------------------------------------
/* 2.9 Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1;
}
/*--------------------------------------------------------------
/** 2.10 Buttons
--------------------------------------------------------------*/
.btn, input[type="button"], input[type="submit"], input[type="reset"], input[type="file"], button {
  background-image: none;
  background: var(--blau);
  text-decoration: none !important;
  display: inline-block;
  position: relative;
  border: 2px solid transparent;
  border-radius: 0;
  padding: 0.75em 1.5em;
  margin-top: 0;
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff;
  z-index: 1;
  cursor: pointer;
  /*white-space: nowrap;*/
  vertical-align: middle;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:hover, .btn:focus, input[type="button"]:focus, input[type="button"]:hover, input[type="submit"]:focus, input[type="submit"]:hover, input[type="reset"]:focus, input[type="reset"]:hover, input[type="file"]:focus, input[type="file"]:hover, button:focus, button:hover {
  text-decoration: none;
  outline: 0;
  box-shadow: 3px 3px 6px rgba(0, 22, 44, 0.25);
}
.light .btn:hover {
  color: #fff;
}
.btn:last-child {
  margin-right: 0;
}
.btn:active, .btn.btn-outline-light:active, .btn.btn-outline-dark:active, input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]:active, button:active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  box-shadow: none;
}
a.btn.disabled, fieldset[disabled] a.btn {
  pointer-events: none;
}
/* - Button Sizes
------------------------------------------------------------- */
.btn.btn-small {
  padding: 0.325em 1em;
  font-size: 0.75em;
  border-width: 1px;
}
.btn.btn-medium {
  padding: 0.5em 1.25em;
  font-size: 1em;
  border-width: 1px;
}
.btn.btn-large {
  padding: 1em 2.5em;
}
.btn.btn-xlarge {
  padding: 1.5em 2.7em;
  font-size: 0.9em;
}
.btn.btn-image {
  background-color: transparent;
  padding: 0;
  max-height: 50px;
}
.btn.btn-image img {
  max-height: 50px;
}
/* - Button Shapes
------------------------------------------------------------- */
.btn.btn-rounded, .btn.btn-rounded::after {
  border-radius: 50px;
}
.btn.btn-rounded-left, .btn.btn-rounded-left::after {
  border-radius: 50px 0 0 50px;
}
.btn.btn-rounded-right, .btn.btn-rounded-right::after {
  border-radius: 0 50px 50px 0;
}
@media(max-width: 991px) {
  .btn.btn-rounded-left, .btn.btn-rounded-right, .btn.btn-rounded-left::after, .btn.btn-rounded-right::after {
    border-radius: 50px;
  }
}
.btn.btn-pill, .btn.btn-pill::after {
  border-radius: 2em;
}
/* button outline */
.btn.btn-outline-dark, .btn.btn-outline-light {
  background: transparent;
  text-shadow: none;
  box-shadow: none;
	border-radius: 50px;
}
.btn.btn-outline-dark:hover::after, .btn.btn-outline-light:hover::after {
  background-color: transparent;
}
.btn.btn-outline-dark {
  border-color: var(--blau);
  color: var(--blau);
}
.btn.btn-outline-dark:hover {
  background: var(--dark);
  border-color: var(--dark);
  color: #fff;
}
.btn.btn-outline-light {
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}
.btn.btn-outline-light:hover {
  background: rgba(255, 255, 255, .045);
  background: #fff;
  border-color: #fff;
  color: #121212;
}
.btn.btn-outline-light {
  background: transparent;
  border-color: #f4ebf2;
  color: #f4ebf2;
}
.btn.btn-outline-light:hover {
  border-color: var(--blau);
  color: var(--blau) !important;
}
.btn.btn-full {
  display: block;
  margin: .85em 0;
  width: 100%;
  text-align: center;
}
.btn-primary {
  color: #fff;
  background: var(--blau);
  border-color: var(--blau);
}
.btn-primary:hover, .btn-primary:active {
  color: #fff;
  background: var(--dark);
  border-color: var(--dark);
  hover-color: #fff;
}
.btn-business {
  text-align: center;
  color: #fff;
  background: var(--business);
  border-color: var(--business);
  width: 80%;
  border-radius: 50px;
}
.btn-business.hell {
  text-align: center;
  color: var(--dark);
  background: var(--hellbusiness);
  border-color: var(--hellbusiness);
  width: auto;
  display: block;
  padding: 6px 24px;
  border-radius: 50px;
}
.btn-business:hover, .btn-business:active {
  color: #fff;
  background: var(--dark);
  border-color: var(--dark);
  hover-color: #fff;
}
.btn-privat {
  text-align: center;
  color: #fff;
  background: var(--privat);
  border-color: var(--privat);
  width: 80%;
  border-radius: 50px;
}
.btn-privat.hell {
  text-align: center;
  color: var(--dark);
  background: var(--hellprivat);
  border-color: var(--hellprivat);
  width: auto;
  display: block;
  padding: 6px 24px;
  border-radius: 50px;
}
.btn-privat:hover, .btn-privat:active {
  color: #fff;
  background: var(--dark);
  border-color: var(--dark);
  hover-color: #fff;
}
@media (max-width: 1399px) and (min-width:992px) {
  .btn-business, .btn-privat {
    font-size: 16px;
    letter-spacing: 0;
    width: 92%;
  }
}
.btn-light {
  color: var(--dark);
  background: #fff;
  border-color: transparent;
  border-radius: 50px;
}
.btn-light:hover, .btn-light:active {
  background: rgba(255, 255, 255, 0.33);
  border-color: transparent;
}
.btn-outline {
  color: var(--blau);
  background: transparent;
  border-color: var(--blau);
  border-radius: 50px;
}
.btn-outline:hover, .btn-outline:active {
  color: var(--dark);
  background: #fff;
  border-color: var(--dark);
}
.btn-outline.privat {
  color: var(--privat);
  background: transparent;
  border-color: var(--privat);
  border-radius: 50px;
}
.btn-outline.business {
  color: var(--business);
  background: transparent;
  border-color: var(--business);
  border-radius: 50px;
}
.btn-outline.referent {
  color: var(--referent);
  background: transparent;
  border-color: var(--referent);
  border-radius: 50px;
}
/* - Buttons Color Scheme
------------------------------------------------------------- */
.btn.btn-hell {
  background: #9e9e9e;
  color: #fff;
}
.btn.btn-white {
  background: #f8f8f8;
  text-shadow: none;
  color: #121212 !important;
}
.btn.btn-white:hover {
  background: var(--blau);
  text-shadow: none;
}
/* - Buttons Aligns
------------------------------------------------------------- */
.btn-left {
  text-align: left;
  display: block;
}
.btn-left2 {
  text-align: left;
  display: inline-block;
  border-radius: 30px 0 0 30px;
  width: calc(50% - 2.5px);
  margin-right: 2.5px;
}
.btn-left2 i {
  font-size: 20px;
  vertical-align: top;
  margin: 0 8px 0 -8px;
}
.btn-center {
  text-align: center;
  display: block;
}
.btn-right {
  text-align: right;
  display: block;
}
.btn-right2 {
  text-align: right;
  display: inline-block;
  border-radius: 0 30px 30px 0;
  width: calc(50% - 2.5px);
  margin-left: 2.5px;
}
.btn-right2 i {
  font-size: 20px;
  vertical-align: top;
  margin: 0 -8px 0 8px;
}
/*----------------------------------------------*/
/* 2.11 Images */
/*----------------------------------------------*/
/* Image hover Effects */
.image-hvr-effect {
  display: flex;
  overflow: hidden;
}
.image-hvr-effect img.post-image {
  transform: scale(1);
  will-change: transform;
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 0;
}
.image-hvr-effect:hover img.post-image {
  transform: scale(1.1);
}
/*====================================================================*/
/* 3. EXTENDED TYPOGRAPHY */
/*====================================================================*/
/*----------------------------------------------*/
/* 3.1 Blockquote /Pullquote */
/*----------------------------------------------*/
.single-post .content p:first-child, .quote blockquote, blockquote, .single-post .content blockquote p, .pullquote-right, .pullquote-left {
  font-size: 27px;
  line-height: 1.4em;
  font-style: italic;
  margin: 0 0 60px;
  padding: 0;
}
.pullquote-right, .pullquote-left {
  width: 40%;
}
blockquote cite {
  display: block;
  font-size: 0.8em;
  margin-top: 20px;
  font-style: italic;
}
.pullquote-left {
  float: left;
  margin: 20px 20px 20px 0;
}
.pullquote-right {
  float: right;
  margin: 20px 0 20px 20px;
}
/*----------------------------------------------*/
/* 4. SITE STRUCTURE */
/*----------------------------------------------*/
/*--------------------------------------------------------------
This is main CSS file that contains custom style rules used in this template
--------------------------------------------------------------*/
/* preloader */
.preloader {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: var(--dark);
  z-index: 9999;
}
.seminarliste a {
  font-size: 18px;
  font-weight: 300;
}
/* NAVIGATION */
.navbar {
  margin: 12px 28px;
  background: rgba(255, 255, 255, 1);
  padding: 6px 24px;
  border-radius: 16px;
  transition: background 1s ease;
}
.navbar img {
  max-height: 50px;
  max-width: 100%;
}
.navbar-toggler {
  margin-top: 8px;
  margin-bottom: 8px;
}
@media(max-width: 991px) {
  .navbar img {
    height: 6vw;
  }
  .navbar {
    box-shadow: 3px 5px 9px rgba(0, 0, 0, 0.33) !important;
    padding-bottom: 16px;
  }
}
.navbar.scrolled {
  background: rgba(255, 255, 255, 0.88);
}
#mainNavbar .nav-link {
  font-size: 20px;
  font-weight: 300;
}
#mainNavbar .nav-link.active {
  color: var(--blau);
  font-weight: 400;
}
#mainNavbar .dropdown-item {
  font-size: 18px;
  font-weight: 300;
}
#mainNavbar .dropdown-item.active {
  background-color: var(--hellblau);
  color: var(--blau);
  font-weight: 400;
}
#mainNavbar .dropdown-item:hover {
	background: #fff;
}
/* 4.2 Homepage Slider
--------------------------------------------------------------*/
#intro {
  position: relative;
}
#intro .button-container {
  display: flex;
  position: absolute;
  z-index: 70;
  bottom: 0;
  right: 0;
}
#intro .button-container button.slick-arrow {
  font-size: 1.6em;
  line-height: 0;
  font-weight: 700;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  padding: 20px;
  margin: 0;
}
#intro .button-container button.slick-arrow:hover, #intro .button-container button.slick-arrow:focus {
  background: rgba(0, 0, 0, 0.75);
  outline: none;
}
/* main-slider muss eine Höhe bekommen */
.main-slider {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 70vh; /* oder: height: 100%; wenn hero schon 70vh hat */
  z-index: 21;
}
/* overlay muss sich absolut über die Fläche legen */
.main-slider .overlay1, .main-slider .overlay2 {
  position: absolute;
  inset: 0;
}
.overlay-bg {
  position: absolute;
  inset: 0;
  z-index: 12;
}
.main-logo {
  align-items: center;
  background: transparent;
  padding: 0;
  margin: -12px -12px 0;
  width: calc(100vw + 24px);
  position: absolute;
  transition: 0.5s all ease-out;
}
.cta {
  position: relative;
  min-height: 200px;
  width: 100%;
  overflow: visible; /* wichtig, damit Überstand sichtbar ist */
}
.cta h3 {
  text-shadow: 0 0 10px #fff;
}
.cta .bg {
  position: relative;
  min-height: 255px;
  background: linear-gradient(135deg, var(--hellblau) 10%, var(--blau) 75%);
  background: #fff;
  z-index: 1;
  text-align: center;
  padding: 32px 0 0;
}
/* Bild */
.cta1 .overlay {
  position: absolute;
  left: 48px;
  bottom: 0; /* sitzt am unteren Rand der cta */
  height: 475px; /* 325px + 150px Überstand */
  width: calc(100% - 48px);
  background: url("../images/cta1.webp") no-repeat bottom left;
  background-size: contain;
  z-index: 2;
  pointer-events: none;
}
.cta2 .overlay {
  position: absolute;
  right: 48px;
  bottom: 0; /* sitzt am unteren Rand der cta */
  height: 450px; /* 325px + 150px Überstand */
  width: calc(100% - 48px);
  background: url("../images/cta2.webp") no-repeat bottom right;
  background-size: contain;
  z-index: 2;
  pointer-events: none;
}
/*----------------------------------------------*/
/* 4.3 Section */
/*----------------------------------------------*/
/* Hero section
/*----------------------------------------------*/
/* AB HIER ANIMATION */
/* --------------------------------------------------
   HERO BASE
-------------------------------------------------- */
.hero {
  --angle: 15vw;
  --offset: 170px;
  --gap: 20px;
  --dragX: 0px;
  --split: calc(50vw - var(--offset) + var(--dragX));
  --center: calc(50vw + var(--offset) + var(--dragX) - 32px);
  position: relative;
  width: calc(100vw - 48px);
  margin: 0 16px;
  height: 70vh;
  overflow: hidden;
  border-radius: 0 0 24px 24px;
}
/* --------------------------------------------------
   RIGHT IMAGE (statisch)
-------------------------------------------------- */
.hero-right {
  position: absolute;
  inset: 0;
  width: 70%;
  background: url("../images/slider1c.webp") center top/cover no-repeat;
  z-index: 1;
  clip-path: polygon(var(--angle) 0, 100% 0, 100% 100%, 0 100%);
  transform: translateX(calc(50% + 140px));
}
@media (min-aspect-ratio: 3 / 2) {
    .hero-right {
        background-position: center -75px;
    }
}
@media (min-aspect-ratio: 5 / 3) {
    .hero-right {
        background-position: center -100px;
    }
}
@media (min-aspect-ratio: 2 / 1) {
    .hero-right {
        background-position: center -175px;
    }
}
/* --------------------------------------------------
   LEFT IMAGE (beweglich)
-------------------------------------------------- */
.hero-left {
  position: absolute;
  inset: 0;
  width: 70%;
  left: 30%;
  background: url("../images/slider2c.webp") center top/cover no-repeat;
  z-index: 2;
  clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 100%, 0% 100%);
  transform: translateX(calc(-1 * var(--split)));
  opacity: clamp(0, 1 - (var(--dragX) / 100vw), 1);
}
.hero-left::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
  background: white;
  clip-path: polygon(calc(100% - var(--gap)) 0, 100% 0, calc(100% - var(--angle)) 100%, calc(100% - var(--angle) - var(--gap)) 100%);
}
.hero.seminare {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare.webp") center/cover no-repeat;
}
.hero.privat {
  height: 40vh;
  min-height: 400px;
  background: url("../images/privat.webp") center/cover no-repeat;
}
.hero.business {
  height: 40vh;
  min-height: 400px;
  background: url("../images/business.webp") top/cover no-repeat;
}
.hero.stark {
  height: 40vh;
  min-height: 400px;
  background: url("../images/robert-stark/header.webp") right center/cover no-repeat;
}
.hero.argast {
  height: 40vh;
  min-height: 400px;
  background: url("../images/cyrill-argast/header.webp") right center/cover no-repeat;
}
.hero.dendress {
  height: 40vh;
  min-height: 400px;
  background: url("../images/doris-endress/doris-endress-header.webp") right center/cover no-repeat;
}
.hero.fendress {
  height: 40vh;
  min-height: 400px;
  background: url("../images/frank-endress/frank-endress-header.webp") right center/cover no-repeat;
}
.hero.prenzel {
  height: 40vh;
  min-height: 400px;
  background: url("../images/felicitas-prenzel/header-felicitas-prenzel.webp") right center/cover no-repeat;
}
.hero.wackerle {
  height: 40vh;
  min-height: 400px;
  background: url("../images/petra-wackerle/header-petra-wackerle.webp") right center/cover no-repeat;
}
.hero.sigel {
  height: 40vh;
  min-height: 400px;
  background: url("../images/andreas-sigel/header-andreas-sigel.webp") right center/cover no-repeat;
}
.hero.graser {
  height: 40vh;
  min-height: 400px;
  background: url("../images/nikolaus-graser/header-nikolaus-graser.webp") right center/cover no-repeat;
}
.hero.erfolg {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-privat/erfolg-header.webp") right center/cover no-repeat;
}
.hero.erfuellung {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-privat/erfuellung-header.webp") right center/cover no-repeat;
}
.hero.freiheit {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-privat/freiheit-header.webp") right center/cover no-repeat;
}
.hero.intuition {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-privat/intuition-header.webp") right center/cover no-repeat;
}
.hero.weisheit {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-privat/weisheit-header.webp") right center/cover no-repeat;
}
.hero.einssein {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-privat/einssein-header.webp") right center/cover no-repeat;
}
.hero.fuehrung {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-business/fuehrung-header.webp") right center/cover no-repeat;
}
.hero.verkauf {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-business/verkauf-header.webp") right center/cover no-repeat;
}
.hero.glueck {
  height: 40vh;
  min-height: 400px;
  background: url("../images/seminare-business/glueck-header.webp") right center/cover no-repeat;
}
.hero.perstag {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-persoenlichkeitstag.webp") right center/cover no-repeat;
}
.hero.karriere {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-karriere.webp") right center/cover no-repeat;
}
.hero.engagement {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-engagement.webp") right center/cover no-repeat;
}
.hero.blog {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-blog.webp") right center/cover no-repeat;
}
.hero.shop {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-shop.webp") right center/cover no-repeat;
}
.hero.kontakt {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-kontakt.webp") right center/cover no-repeat;
}
.hero.philosophie {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-philosophie.webp") right center/cover no-repeat;
}

.hero.historie {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-historie.webp") right center/cover no-repeat;
}
.hero.engagement {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-engagement.webp") right center/cover no-repeat;
}
.hero.news {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-news.webp") right center/cover no-repeat;
}

.hero.blog {
  height: 40vh;
  min-height: 400px;
  background: url("../images/header-blog.webp") right center/cover no-repeat;
}
/* --------------------------------------------------
   DIVIDER (folgt hero-left)
-------------------------------------------------- */
.hero-divider {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: #fff;
  clip-path: polygon(calc(var(--center) - var(--gap) * 2) 0, calc(var(--center) - var(--gap)) 0, calc(var(--center) - var(--gap) - var(--angle)) 100%, calc(var(--center) - var(--gap) * 2 - var(--angle)) 100%);
}
/* --------------------------------------------------
   MOBILE INTERACTION (< 768px)
-------------------------------------------------- */
@media (max-width: 767px) {
  .cta2 {
    padding-bottom: 24px;
  }
  .hero-left {
    touch-action: pan-y;
    cursor: grab;
    will-change: transform;
    transition: transform 0.3s ease;
    left: 0;
  }
  .hero-left:active {
    cursor: grabbing;
  }
  .hero-right {
    clip-path: none;
    width: 100%;
    left: 22%;
    transform: translateX(calc(30vw - var(--offset)));
  }
  .hero-divider {
    will-change: clip-path;
    transition: clip-path 0.3s ease;
    left: -8%;
  }
  /* Swipe Hint */
  .swipe-hint {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    color: #fff;
    font-size: 14px;
    letter-spacing: 1px;
    opacity: 0;
    animation: hintFade 0.6s ease 1s forwards;
  }
  .swipe-hint svg {
    width: 22px;
    margin-left: 6px;
    animation: arrowMove 1.5s ease-in-out infinite;
  }
  @keyframes hintFade {
    to {
      opacity: 1;
    }
  }
  @keyframes arrowMove {
    0% {
      transform: translateX(0);
    }
    50% {
      transform: translateX(-8px);
    }
    100% {
      transform: translateX(0);
    }
  }
}
/* --------------------------------------------------
   DESKTOP
-------------------------------------------------- */
@media (min-width: 768px) {
  .hero-left {
    cursor: default; /* kein Grab auf Desktop */
  }
}
/* BIS HIER ANIMATION */
.hero-section {
  position: relative;
  color: #fff;
}
.hero-section::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(39, 39, 39, 0.4);
  z-index: -1;
}
.hero-section, .hero-section h1, .hero-section a, .hero-section a:hover {
  color: #fff;
}
.hero-section h1 {
  font-size: 4em;
}
@media only screen and (max-width: 767px) {
  .hero-section h1 {
    font-size: 2em;
  }
  .hero-section .hero-content {
    padding-top: 12em;
    padding-bottom: 6em;
  }
  .slick-slide {
    text-align: center;
  }
}
.main-slider .slick-slide {
  height: 70vh;
}
.main-slider .slider-item {
  position: relative;
  z-index: 13;
}
.main-slider .overlay1 .overlay-bg {
  background: linear-gradient(color-mix(in srgb, var(--business) 85%, transparent), color-mix(in srgb, var(--business) 95%, transparent));
  background: color-mix(in srgb, var(--business) 95%, transparent);
  width: 100%;
  height: 70vh;
  position: absolute;
  inset: 0;
  width: 100%;
  right: 0;
  clip-path: polygon(var(--angle) 0, 100% 0, 100% 100%, 0 100%);
  transform: translateX(calc(50vw - (var(--angle) + var(--gap)/2) + 132px));
}
.privat .overlay1 .overlay-bg {
  background: linear-gradient(color-mix(in srgb, var(--privat) 50%, transparent), color-mix(in srgb, var(--privat) 75%, transparent));
  height: 40vh;
  min-height: 400px;
  position: absolute;
  inset: 0;
  width: 80%;
  left: 16px;
  clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 100%, 0% 100%);
  transform: translateX(calc(-50% + var(--offset) + var(--dragX) - 27px));
}
.privat .overlay1 .overlay-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
  background: white;
  clip-path: polygon(calc(100% - var(--gap)) 0, 100% 0, calc(100% - var(--angle)) 100%, calc(100% - var(--angle) - var(--gap)) 100%);
}
.business .overlay1 .overlay-bg {
  background: linear-gradient(color-mix(in srgb, var(--business) 50%, transparent), color-mix(in srgb, var(--business) 75%, transparent));
  height: 40vh;
  min-height: 400px;
  position: absolute;
  inset: 0;
  width: 80%;
  left: 16px;
  clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 100%, 0% 100%);
  transform: translateX(calc(-50% + var(--offset) + var(--dragX) - 27px));
}
.business .overlay1 .overlay-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
  background: white;
  clip-path: polygon(calc(100% - var(--gap)) 0, 100% 0, calc(100% - var(--angle)) 100%, calc(100% - var(--angle) - var(--gap)) 100%);
}
.referent .overlay1 .overlay-bg {
  background: linear-gradient(color-mix(in srgb, var(--referent) 50%, transparent), color-mix(in srgb, var(--referent) 75%, transparent));
  height: 40vh;
  min-height: 400px;
  position: absolute;
  inset: 0;
  width: 80%;
  left: 16px;
  clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 100%, 0% 100%);
  transform: translateX(calc(-50% + var(--offset) + var(--dragX) - 27px));
}
.referent .overlay1 .overlay-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
  background: white;
  clip-path: polygon(calc(100% - var(--gap)) 0, 100% 0, calc(100% - var(--angle)) 100%, calc(100% - var(--angle) - var(--gap)) 100%);
}
.main-slider .overlay2 .overlay-bg {
  background: linear-gradient(color-mix(in srgb, var(--privat) 85%, transparent), color-mix(in srgb, var(--privat) 95%, transparent));
 	background: color-mix(in srgb, var(--privat) 95%, transparent);
	height: 70vh;
  position: absolute;
  inset: 0;
  width: 100%;
  left: -16px;
  clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 100%, 0% 100%);
  transform: translateX(calc(-50% + var(--offset) + var(--dragX) - 27px));
}
.banner-content {
  position: absolute;
  display: inline-block;
  top: auto;
  bottom: 40%;
  transform: translateY(100%);
  width: auto;
  text-align: center;
  margin: 0 0 0 3.5vw;
  z-index: 14;
  padding: 18px 24px 6px 24px;
  border-radius: 16px;
  background: #fff;
  text-align: start;
}
span.banner-title {
  font-family: var(--heading-font);
  font-size: 3em;
  letter-spacing: 1px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  color: var(--dark);
}
.privat span.banner-title {
  color: var(--privat);
}
.business span.banner-title {
  color: var(--business);
}
.referent span.banner-title {
  color: var(--referent);
}
.banner-content h1 {
  font-weight: 400;
  color: var(--blau) !important;
  font-size: 1.6rem !important;
  line-height: 1.2;
}
.main-slider .banner-content {
  position: relative;
  top: 50%;
  bottom: auto;
  right: 0;
  left: 0;
  width: clamp(400px, 50%, 600px);
  text-align: center;
  margin: 0;
  z-index: 14;
  padding: 18px 24px 6px 24px;
  border-radius: 16px;
  background: #fff;
  opacity: 0;
  transition: opacity 1200ms ease;
}
/* Wenn Slide aktiv ist */
.main-slider .slick-current .banner-content {
  opacity: 1;
  transform: translateY(0);
}
.main-slider .overlay1 .banner-content {
  position: absolute;
  left: 40%;
  right: auto;
  z-index: 100;
}
.main-slider .overlay2 .banner-content {
  position: absolute;
  left: auto;
  right: 42%;
  left: auto;
  z-index: 100;
}
.main-slider .banner-content h2.banner-title, span.banner-title {
  font-family: var(--heading-font);
  font-size: 3em;
  letter-spacing: 1px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.main-slider .overlay1 .banner-content h2.banner-title {
  color: var(--business);
}
.main-slider .overlay2 .banner-content h2.banner-title {
  color: var(--privat);
}
.main-slider .banner-content h1, span.banner-subtitle {
  display: block;
  margin-bottom: 12px;
  font-weight: 400;
  color: var(--blau);
  font-size: 1.6rem;
  line-height: 1.2;
}
@media only screen and (max-width: 1600px) {
  .main-slider .banner-content .btn-wrap {
    margin: 30px 0;
  }
  .main-logo {
    margin: 0 -12px 0;
    width: calc(100vw + 24px);
  }
}
@media only screen and (max-width: 1399px) {
  .main-slider .banner-content h2.banner-title, span.banner-title {
    font-size: 2.5em;
  }
  .main-logo {
    margin: -6px -200px 0;
    width: calc(100vw + 400px);
  }
  .main-slider .banner-content h3 {
    font-size: 1.3rem;
  }
  span.banner-subtitle {
    font-size: 1.3em;
  }
}
@media only screen and (max-width: 1199px) {
  .main-slider .banner-content h2.banner-title, span.banner-title {
    font-size: 2.3em;
  }
  .main-logo {
    margin: -4px -120px 0 -300px;
    width: calc(100vw + 420px);
  }
}
@media only screen and (max-width: 991px) {
  .cta .bg {
		padding: 32px 0 32px 0;
	}
	.main-slider .banner-content h2.banner-title, span.banner-title {
    font-size: 2.1em;
  }
  span.banner-subtitle {
    font-size: 1.3em;
  }
  .main-slider .banner-content h3 {
    font-size: 1.3rem;
  }
  .main-logo {
    margin: -4px -120px 0 -480px;
    width: calc(100vw + 600px);
  }
  .hero {
    height: 40vh;
  }
  .main-slider {
    position: static;
    inset: auto;
    height: auto;
    margin-top: 0;
  }
  .main-slider .slick-slide, .main-slider .overlay1 .banner-content, .main-slider .overlay2 .banner-content {
    position: static;
    width: 90%;
    margin: 0 auto;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .privat .overlay1 .overlay-bg, .business .overlay1 .overlay-bg {
    width: 50%;
    transform: none;
    left: 0;
  }
  .lead {
    font-size: 1.15rem;
  }	
  .hero {
    height: 50vh;
  }
  .hero.privat {
    height: 40vh;
    min-height: 400px;
    background: url("../images/privat.webp") center/cover no-repeat;
  }
  .hero.business {
    height: 40vh;
    min-height: 400px;
    background: url("../images/business.webp") top/cover no-repeat;
  }
  .hero.stark {
    height: 40vh;
    min-height: 400px;
    background: url("../images/robert-stark/header.webp") -200vw center/cover no-repeat;
  }
  .hero.argast {
    height: 40vh;
    min-height: 400px;
    background: url("../images/cyrill-argast/header.webp") -200vw center/cover no-repeat;
  }
  .hero.dendress {
    height: 40vh;
    min-height: 400px;
    background: url("../images/doris-endress/doris-endress-header.webp") -200vw center/cover no-repeat;
  }
  .hero.fendress {
    height: 40vh;
    min-height: 400px;
    background: url("../images/frank-endress/frank-endress-header.webp") -200vw center/cover no-repeat;
  }
  .hero.prenzel {
    height: 40vh;
    min-height: 400px;
    background: url("../images/felicitas-prenzel/header-felicitas-prenzel.webp") -200vw center/cover no-repeat;
  }
  .hero.wackerle {
    height: 40vh;
    min-height: 400px;
    background: url("../images/petra-wackerle/header-petra-wackerle.webp") -200vw center/cover no-repeat;
  }
  .hero.sigel {
    height: 40vh;
    min-height: 400px;
    background: url("../images/andreas-sigel/header-andreas-sigel.webp") -200vw center/cover no-repeat;
  }
  .hero.graser {
    height: 40vh;
    min-height: 400px;
    background: url("../images/nikolaus-graser/header-nikolaus-graser.webp") -200vw center/cover no-repeat;
  }
  .hero.erfolg {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-privat/erfolg-header.webp") -200vw center/cover no-repeat;
  }
  .hero.erfuellung {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-privat/erfuellung-header.webp") -200vw center/cover no-repeat;
  }
  .hero.freiheit {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-privat/freiheit-header.webp") -200vw center/cover no-repeat;
  }
  .hero.intuition {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-privat/intuition-header.webp") -200vw center/cover no-repeat;
  }
  .hero.weisheit {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-privat/weisheit-header.webp") -200vw center/cover no-repeat;
  }
  .hero.einssein {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-privat/einssein-header.webp") -200vw center/cover no-repeat;
  }
  .hero.fuehrung {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-business/fuehrung-header.webp") -200vw center/cover no-repeat;
  }
  .hero.verkauf {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-business/verkauf-header.webp") -200vw center/cover no-repeat;
  }
  .hero.glueck {
    height: 40vh;
    min-height: 400px;
    background: url("../images/seminare-business/glueck-header.webp") -200vw center/cover no-repeat;
  }
  .hero.perstag {
    height: 40vh;
    min-height: 400px;
    background: url("../images/header-persoenlichkeitstag.webp") -200vw center/cover no-repeat;
  }
  .hero.karriere {
    height: 40vh;
    min-height: 400px;
    background: url("../images/header-karriere.webp") -200vw center/cover no-repeat;
  }
  .hero.engagement {
    height: 40vh;
    min-height: 400px;
    background: url("../images/header-engagement.webp") -200vw center/cover no-repeat;
  }
  .hero.blog {
    height: 40vh;
    min-height: 400px;
    background: url("../images/header-blog.webp") -200vw center/cover no-repeat;
  }
  .hero.shop {
    height: 40vh;
    min-height: 400px;
    background: url("../images/header-shop.webp") -200vw center/cover no-repeat;
  }
  .hero.kontakt {
    height: 40vh;
    min-height: 400px;
    background: url("../images/header-kontakt.webp") -200vw center/cover no-repeat;
  }
  .referent .overlay1 .overlay-bg {
    background: linear-gradient(color-mix(in srgb, var(--referent) 50%, transparent), color-mix(in srgb, var(--referent) 75%, transparent));
    height: 40vh;
    min-height: 400px;
    position: absolute;
    inset: 0;
    width: 40%;
    left: 0;
    clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 100%, 0% 100%);
    transform: none;
  }
  .banner-content {
    position: absolute;
    top: auto;
    bottom: 122px;
    width: calc(100% - 24px);
    text-align: center;
    margin: 0 0 0 12px;
    padding: 18px 24px 6px 24px;
  }
  .main-slider .banner-content h2.banner-title, span.banner-title {
    font-size: 1.75em;
  }
  span.banner-subtitle {
    font-size: 1.2em;
  }
  .main-slider .banner-content h3 {
    font-size: 1.2rem;
  }
  #intro .button-container {
    display: none;
  }
  .main-logo {
    margin: -4px -100px 0 -400px;
    width: calc(100vw + 500px);
  }
}
@media only screen and (max-width: 580px) {
  .main-slider .banner-content h2.banner-title, span.banner-title {
    font-size: 1.5em;
  }
  span.banner-subtitle {
    font-size: 1em;
  }
  .main-slider .banner-content h3 {
    font-size: 1.2rem;
  }
  .main-logo {
    margin: -4px -100px 0 -300px;
    width: calc(100vw + 400px);
  }
}
/*--- Section Title
-----------------------------------------------*/
.section-header {
  position: relative;
}
.section-title {
  font-size: calc(2.5em + 0.4vw);
  line-height: 1;
  font-weight: 700;
  margin-bottom: 48px;
}
.section-header .title span {
  font-size: 18px;
  color: var(--blau);
  letter-spacing: 2px;
  text-transform: uppercase;
  position: relative;
}
.bg-dark .section-header .title span {
  color: #fff;
}
/* - Section Padding
--------------------------------------------------------------*/
.padding-xsmall {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.padding-small {
  padding-top: 2em;
  padding-bottom: 2em;
}
.padding-medium {
  padding-top: 5em;
  padding-bottom: 5em;
}
.padding-large {
  padding-top: 9em;
  padding-bottom: 9em;
}
.padding-xlarge {
  padding-top: 11em;
  padding-bottom: 11em;
}
.padding-2xlarge {
  padding-top: 15em;
  padding-bottom: 15em;
}
@media only screen and (max-width: 767px) {
  .section-title {
    font-size: calc(1.75em + 0.75vw);
    line-height: 1;
    font-weight: 700;
    margin-bottom: 24px;
  }
  h2, .h2 {
    font-size: 1.875em;
  }
	.choose h2 span {
		font-size: 1.5rem;
		font-weight: 600;
	}
  h3, .h3 {
    font-size: 1.6em;
  }
  h4, .h4 {
    font-size: 1.2em;
  }
  h5, .h5 {
    font-size: 1.1em;
    line-height: 1.25;
  }
  .padding-small, .padding-medium, .padding-large, .padding-xlarge {
    padding-top: 2em;
    padding-bottom: 2em;
  }
}
/* - Section margin
--------------------------------------------------------------*/
.margin-small {
  margin-top: 3em;
  margin-bottom: 3em;
}
.margin-medium {
  margin-top: 4.5em;
  margin-bottom: 4.5em;
}
.margin-large {
  margin-top: 6em;
  margin-bottom: 6em;
}
.margin-xlarge {
  margin-top: 7.5em;
  margin-bottom: 7.5em;
}
@media only screen and (max-width: 767px) {
  .margin-small, .margin-medium, .margin-large, .margin-xlarge {
    margin-top: 1em;
    margin-bottom: 1em;
  }
}
/* - Section bg colors
--------------------------------------------------------------*/
.bg-dark {
  background: var(--dark) !important;
}
.bg-hell {
  background: var(--hellblau) !important;
}
.bg-blau {
  background: var(--blau) !important;
}
.bg-business {
  background: var(--business) !important;
}
.bg-privat {
  background: var(--privat) !important;
}
.bg-hellbusiness {
  background: var(--hellbusiness) !important;
  border: 4px solid var(--business);
}
.bg-hellprivat {
  background: var(--hellprivat) !important;
  border: 4px solid var(--privat);
}
.text-dark {
  color: var(--dark) !important;
}
.text-hell {
  color: var(--hell) !important;
}
.text-blau {
  color: var(--blau) !important;
}
.text-business {
  color: var(--business) !important;
}
.text-privat {
  color: var(--privat) !important;
}
.text-success {
  color: var(--success) !important;
}
.text-danger {
  color: var(--danger) !important;
}
.content-light a, .content-light {
  color: #fff;
}
section.buttons {
  padding: 56px 0 80px;
}
/*----- About us Section
--------------------------------------------------------------*/
#about figure {
  margin-right: 50px;
}
#about img.single-image {
  width: 100%;
  height: 600px;
  object-fit: cover;
}
@media only screen and (max-width: 767px) {
  #about img.single-image {
    height: auto;
  }
}
/*----- Services Section
--------------------------------------------------------------*/
#services {
}
.services-item > div {
  display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.services-item .number {
	display: inline-block;
  font-family: var(--heading-font);
  font-size: 6em;
  font-weight: 700;
  color: #fff;
	width: 0;
	margin-top: -37px;
}
.services-item h3 {
  color: var(--blau);
	padding-bottom: 24px;
	margin-left: 120px;
}
.services-item p {
  font-size: 18px;
  line-height: 1.5;
}
.services-item div.weiss {
  border-radius: 12px;
  box-shadow: -7px 12px 24px -10px rgb(0 0 0 / 12%);
}
@media only screen and (max-width: 767px) {
	.services-item > div {
		align-items: flex-end;
	}
	.services-item .number {
		left: 12px;
	}
	.services-item h3 {
		margin-left: 120px;
	}
}
/*----- Subscribe Section
--------------------------------------------------------------*/
#subscribe figure.subscribe-image {
  margin-bottom: 60px;
  margin-right: 30px;
}
.subscribe-content input[type="text"] {
  width: 100%;
  height: 65px;
  border: 1px solid #dfdfdf;
  padding-left: 20px;
  margin-bottom: 0;
  text-transform: capitalize;
}
.subscribe-content button.btn-subscribe {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .services-item {
    margin-top: 48px;
  }
  #subscribe .subscribe-content {
    width: 90%;
  }
}
/*--------------------------------------------------------------
/** 4.4 Footer
--------------------------------------------------------------*/
footer#footer {
  margin-top: 100px;
}
#footer img.footer-logo {
  margin-bottom: 30px;
  max-width: 100%;
	height: auto;
}
.footer-menu {
  margin-right: 15px;
}
.footer-menu h5 {
  font-size: 1.5em;
  margin-top: 0;
  margin-bottom: 40px;
}
.footer-menu p {
  line-height: 2;
}
.footer-menu .menu-list i.icon {
  padding-right: 10px;
  color: var(--blau);
}
.footer-menu .social-links ul {
  display: flex;
  list-style: none;
}
.footer-menu .social-links li {
  margin-right: 30px;
}
.footer-menu .social-links a {
  color: var(--bs-body-color);
}
.footer-menu .social-links a:hover {
  color: #111;
}
.footer-menu .menu-list li.menu-item {
  margin-bottom: 20px;
}
.footer-menu .menu-item {
  display: flex;
}
.footer-menu .menu-item a {
  position: relative;
  transition: 0.3s ease-out;
  color: var(--bs-body-color);
}
.footer-menu .menu-item a:hover {
  padding-left: 20px;
  color: #111;
}
.footer-menu .menu-item a:hover:before {
  content: "";
  border-bottom: 2px solid var(--blau);
  position: absolute;
  top: 12px;
  left: 3px;
  width: 14px;
  align-items: center;
}
.footer-menu .image-link img, .referenten img {
  border-radius: 6px;
}
/* Footer bottom */
#footer-bottom {
  border-top: 1px solid #efefef;
  padding-top: 30px;
  margin-top: 80px;
}
@media only screen and (max-width: 800px) {
  #footer-bottom .copyright, #footer-bottom .text-right {
    text-align: center;
  }
}
/*--------------------------------------------------------------
/** 5.3 Contact
--------------------------------------------------------------*/
/* contact section */
#contact .left-content {
  padding-right: 100px;
}
#contact .right-content {
  width: 100%;
  background: #fff;
  padding: 88px 83px;
}
@media only screen and (max-width: 1170px) {
  #contact .left-content {
    margin-right: 60px;
  }
}
@media only screen and (max-width: 999px) {
  #contact .left-content {
    margin-right: 10px;
  }
  #contact input[type="text"], #contact textarea {
    width: 420px;
  }
  #contact .right-content {
    padding: 60px;
  }
}
@media only screen and (max-width: 820px) {
  #contact .grid {
    flex-wrap: wrap;
  }
  #contact input[type="text"], #contact textarea {
    width: 100%;
  }
  #contact .left-content {
    margin-right: 0;
    padding-right: 0;
  }
  #contact .right-content {
    width: 100%;
    padding: 40px;
    margin-top: 40px;
  }
}

.contact-image {
    position: relative;
}

.contact-image img {
    display: block;
    width: 100%;
    transition: opacity .6s ease;
}

.contact-image .image-hover {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.contact:hover .image-default {
    opacity: 0;
}

.contact:hover .image-hover {
    opacity: 1;
}
/* Contact form light
--------------------------------------------------------------*/
.form-light {
  margin-bottom: 0;
}
.form-light p {
  margin-bottom: 0;
}
.form-light input[type="text"], .form-light input[type="email"], .form-light textarea {
  width: 100%;
  height: 54px;
  color: #ccc;
  font-style: italic;
  background: none;
  border: 1px solid #666;
  padding-left: 25px;
  margin-bottom: 20px;
}
.form-light ::-webkit-input-placeholder {
  color: #999;
}
.form-light :-ms-input-placeholder {
  color: #999;
}
.form-light textarea {
  height: 118px;
  color: #ccc;
  padding-top: 20px;
}
.form-light .error {
  color: #cf4f4f;
}
/* 5.4 Iconboxes
--------------------------------------------------------------*/
.iconbox {
  display: flex;
}
.iconbox i.icon {
  font-size: 2em;
  color: var(--dark);
  margin-right: 25px;
}
.iconbox .detail {
  margin-bottom: 60px;
}
.iconbox .detail p {
  margin-bottom: 0;
}
.iconbox strong {
  font-size: 1.25em;
  color: var(--dark);
  text-transform: uppercase;
}
/*--------------------------------------------------------------
/** 5.7 Post Grid
--------------------------------------------------------------*/
.post-grid .post-item {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border-radius: 12px;
}
.post-grid .post-item figure {
  margin-bottom: 0;
}
.post-grid .post-item img {
  width: 100%;
  max-width: 595px;
  margin: 0 auto;
  border-radius: 12px 12px 0 0;
}
.post-grid .post-content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex-grow: 1;
  width: 100%;
  height: 100%;
  padding: 24px 24px 0;
  background: #fff;
  border-radius: 0 0 12px 12px;
  box-shadow: -7px 12px 24px -10px rgb(0 0 0 / 12%);
}
.post-grid .post-content dl {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px 0;
}
.post-grid .post-content > div:first-child {
  margin-bottom: auto;
}
.post-grid .post-content dl dt {
  border-top: 1px solid var(--hellblau);
  min-width: 50%;
}
.post-grid .post-content dl dd {
  padding: 0 0 0 12px;
  border-top: 1px solid var(--hellblau);
  min-width: 50%;
  margin-bottom: 0;
}
.post-grid .post-item .meta-date {
  font-size: 16px;
  padding-bottom: 20px;
}
.post-grid .post-item .post-image {
  width: 100%;
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
  .post-grid .post-content dl {
    display: block;
  }
  .post-grid .post-content dl dd {
    padding: 0;
  }
  .post-grid .post-content {
    padding: 20px 12px;
  }
  .post-grid .post-item .post-title {
    font-size: 1.8em;
  }
}
.privat {
  background: var(--hellprivat);
}
.privat2 {
  background: var(--hellprivat);
  padding: 16px 24px;
  margin-bottom: 12px;
}
.business {
  background: var(--hellbusiness);
}
.business2 {
  background: var(--hellbusiness);
  padding: 16px 24px;
  margin-bottom: 12px;
}
.blau {
  background: var(--hellblau);
  padding: 16px 24px;
  margin-bottom: 12px;
}
.weiss {
  background: #fff;
  padding: 16px 24px;
  margin-bottom: 12px;
}
#services .privat p, #services .business p, #services .referent p {
  color: var(--dark);
  font-size: 20px;
  margin-bottom: 0;
}
/*====================================================================*/
/* 6. BLOG STYLES */
/*====================================================================*/
/* 6.1 Blog Single Post
------------------------------------------*/
/* breadcrumbs */
.breadcrumbs span {
  display: inline-block;
}
/* 6.3 About Author
------------------------------------------*/
.author-post {
  padding-left: 30px;
}
.author-post h4 {
  font-weight: 500;
  text-transform: none;
}
/* 6.4 Comments List
------------------------------------------*/
.comment-meta span.meta-date {
  font-size: 13px;
  padding-right: 10px;
}
.comments-wrap .child-comments {
  padding-left: 50px;
}
/* 6.5 Comments Form
------------------------------------------*/
.comment-respond .comment-form {
  display: flex;
}
/*====================================================================*/
/* 7. WIDGETS */
/*====================================================================*/
/* 7.1 Gallery Widget
--------------------------------------------------------------*/
.gallery {
  display: flex;
  flex-wrap: wrap;
}
.gallery a {
  margin: 0 10px 10px 0;
	width: calc(25% - 10px);
}
.gallery img {
  /*width: 80px;
  height: 80px;*/
  object-fit: cover;
  /*margin-bottom: 5px;*/
}
.parallax-wrap {
  height: 300px;
  overflow: hidden;
  position: relative;
}
.parallax-wrap .parallax-image {
  position: absolute;
}
.portfolio-link {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 16px;
}
.portfolio-link img {
  display: block;
  width: 100%;
  height: auto;
}
/* Overlay */
.portfolio-overlay {
  position: absolute;
  inset: 0;
  background: rgba(45, 61, 77, 0.85); /* #00a4df */
  opacity: 0;
  transform: scale(1.02);
  transition: opacity 300ms ease, transform 300ms ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Hover */
.portfolio-link:hover .portfolio-overlay, .image-link:hover .portfolio-overlay {
  opacity: 1;
  transform: scale(1);
}
/* Optionaler Text */
.portfolio-overlay-inner {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-align: center;
}
.portfolio-overlay-inner h3 {
  font-weight: 300;
  letter-spacing: 1px;
  color: #fff;
}
.portfolio-overlay-inner i {
  font-size: 48px;
}
.image-link {
  position: relative;
}
.image-link .portfolio-overlay {
  /*width: 80px;
  height: 80px;*/
	width: 100%;
	height: 100%;
	border-radius: 6px;
}
.image-link .portfolio-overlay-inner i {
  font-size: 16px;
}
.pallas-prinzip {
  padding: 90px 0;
}
.timeline-block {
  width: 100%;
  margin: 3rem auto;
}
.timeline-bar {
  display: grid;
  align-items: center;
  position: relative;
  height: 64px;
  padding: 0 1.5rem;
  opacity: 0;
  transform: translateY(20px);
  animation: fadeUp 0.8s ease forwards;
}
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: none;
  }
}
.timeline-bar.pallas {
  grid-template-columns: repeat(10, 1fr);
  background: linear-gradient(to right, transparent 0%, color-mix(in srgb, var(--hellblau) 10%, white 45%) 15%, color-mix(in srgb, var(--hellblau) 20%, white 40%) 25%, color-mix(in srgb, var(--hellblau) 30%, white 35%) 35%, color-mix(in srgb, var(--hellblau) 40%, white 30%) 45%, color-mix(in srgb, var(--hellblau) 50%, white 25%) 52%, color-mix(in srgb, var(--hellblau) 60%, white 20%) 53%, color-mix(in srgb, var(--hellblau) 70%, white 15%) 75%, color-mix(in srgb, var(--hellblau) 80%, white 10%) 85%, color-mix(in srgb, var(--hellblau) 90%, white 5%) 95%, var(--hellblau) 100%);
}
.timeline-bar.short {
  grid-template-columns: repeat(10, 1fr);
  align-items: center;
  background: linear-gradient(to right, transparent 0%, color-mix(in srgb, var(--dark) 90%, white) 7.5%, color-mix(in srgb, var(--dark) 60%, white) 10%, color-mix(in srgb, var(--dark) 90%, white) 35%, color-mix(in srgb, var(--dark) 45%, white) 37.5%, color-mix(in srgb, var(--dark) 80%, white) 62.5%, color-mix(in srgb, var(--dark) 30%, white) 65%, color-mix(in srgb, var(--dark) 93%, white) 100%);
}
.timeline-bar::after {
  content: "";
  position: absolute;
  top: 0;
  right: -32px; /* Breite der Spitze */
  width: 32px;
  height: 100%;
  background: var(--hellblau);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.timeline-bar.short::after {
  content: "";
  position: absolute;
  top: 0;
  right: -32px; /* Breite der Spitze */
  width: 32px;
  height: 100%;
  background: color-mix(in srgb, var(--dark) 93%, white) 100%;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.step {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #fff;
  color: var(--blau);
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  margin-top: -4px;
}
.step.start {
  font-size: 1rem;
  padding: 0.15rem;
  text-align: center;
}
.step.leer {
  opacity: 0;
}
/* Intensiv hervorheben */
.step.intensive {
  width: 72px;
  height: 72px;
  background: rgba(0, 75, 150, 1);
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  margin-top: -4px;
  margin-right: 20px;
}
@media(max-width:767px) {
  .timeline-bar {
    display: grid;
    align-items: center;
    position: relative;
    height: 48px;
    padding: 0 1rem;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeUp 0.8s ease forwards;
  }
  .step {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #fff;
    color: var(--blau);
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    margin-top: -1px;
  }
  .step.start {
    font-size: 14px;
    padding: 0.1rem;
    margin-top: -1px;
    font-weight: 600;
  }
  .step.intensive {
    width: 44px;
    height: 44px;
    background: rgba(0, 75, 150, 1);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    margin-top: -1px;
    margin-right: 0;
  }
  .timeline-bar.short .step.leer {
    width: 18px;
  }
}
.stars img {
  max-width: 20px;
  margin-bottom: 8px;
}
.stars img {
  display: inline-block;
}
.testimonial-slider .slick-track, .testimonial-slider .swiper-wrapper {
  display: flex !important;
  align-items: stretch;
}
.testimonial-slider .slider-item {
  display: flex;
  flex: 1;
}
.testimonial-slider .testimonial-item {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.testimonial-slider {
  display: flex;
  flex-direction: column;
  margin: 0 -12px;
}
.slider-item {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.testimonial-item {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin: 24px 12px;
  padding: 12px 24px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.12);
}
.testimonial-item.feedback {
  overflow-y: visible;
  margin-top: 75px;
}
.testimonial-item.feedback img {
  border-radius: 50%;
  max-width: 150px;
  margin: -75px auto 16px;
  border: 6px solid #fff;
}
.testimonial-item.feedback.testimonial-without-image {
	padding-top: 30px;
}
.testimonial-item.feedback img.testimonial-google-logo {
	border-radius: 0;
	object-fit: contain;
}
.testimonial-item.feedback img.testimonial-customer-image {
	object-fit: cover;
}
.testimonial-item.feedback h3 {
  text-align: center;
}
.slick-dots li button:before {
  text-align: center;
  font-family: "slick";
  font-size: 36px;
  line-height: 16px;
  position: absolute;
  top: 0;
  ;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  color: var(--blau);
  opacity: .25;
}
.slick-dots li.slick-active button::before {
  color: var(--blau);
  opacity: 1;
}
.aboutimg1 {
  position: relative;
  z-index: 1;
  width: 80%;
  box-shadow: 3px 3px 6px rgba(0, 22, 44, 0.25);
}
.aboutimg2 {
  margin-top: -10%;
  margin-left: 20%;
  position: relative;
  z-index: 2;
  width: 80%;
  box-shadow: 3px 3px 6px rgba(0, 22, 44, 0.25);
}
.count-box {
  padding: 0 12px 18px;
  background: var(--dark);
  border-radius: 16px;
  text-align: center;
}
.count-box span {
  font-size: 60px;
  font-weight: 700;
  color: var(--hellblau);
  padding-bottom: 0;
}
.count-box p, .count-box .countp {
  line-height: 0;
  font-size: 24px;
  color: #fff;
}
.more-text {
  display: block;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.5s ease, opacity 0.3s ease;
  opacity: 0;
}
.more-text.open {
  opacity: 1;
  max-height: 1000px;
}
.video-teaser {
  position: relative;
  cursor: pointer;
  display: inline-block;
  overflow: visible;
  border-radius: 16px;
  transition: transform 0.4s ease;
}
.video-teaser img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
}
.video-teaser:hover {
  transform: scale(1.05);
}
/* Play Button */
.play-button {
  position: absolute;
  top: 50%;
  left: calc(100% - 35px);
  transform: translate(-50%, -50%);
  width: 70px;
  height: 70px;
  border-radius: 12px 0 0 12px;
  background: var(--dark);
  color: #fff;
  font-size: 28px;
  display: flex;
  align-items: center;
  justify-content: end;
  padding: 0 16px 0 0;
  transition: all 0.3s ease;
}
.video-teaser .play-button:hover {
  background: var(--blau);
}
#modalVideo {
  opacity: 0;
  transition: opacity 0.3s ease;
}
.modal.show #modalVideo {
  opacity: 1;
}
.contact a {
  display: block;
  width: 100%;
  background: var(--hellblau);
  color: var(--dark);
  border-radius: 24px;
  padding: 9px 24px;
  margin: 6px 0;
  transition: all 0.3s;
  font-size: 20px;
}
.contact a:hover {
  background: var(--blau);
  color: #fff;
}
.contact a i {
  display: inline-block;
  vertical-align: top;
  padding-top: 3px;
}
.modal.seminar input:disabled {
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
}
.modal.seminar .modal-content {
  padding: 24px;
}
.modal.seminar .modal-header {
  align-items: flex-start;
}
.modal-dialog-centered {
  justify-content: center;
}
/* Unter lg: nur 2 sichtbar */
.seminar-grid:not(.expanded) .seminar-third, .seminar-grid:not(.expanded) .seminar-more {
  display: none;
}
/* Ab lg: 3 sichtbar */
@media (min-width: 1400px) {
  .seminar-grid:not(.expanded) .seminar-third {
    display: block;
  }
}
/* Nach Klick: alles sichtbar */
.seminar-grid.expanded .seminar-third, .seminar-grid.expanded .seminar-more {
  display: block;
}

.news-detail-inline-image {
    margin: 2.5rem 0;
}

.news-detail-inline-image img {
    display: block;
    width: 100%;
    max-width: 980px;
    height: auto;
    margin: 0 auto;
    border-radius: 16px;
}


/* ==========================================================

   PALLAS ANMELDUNG

   ========================================================== */

:root {
--pallas-blue: var(--blau, #004b96);
--pallas-light-blue: var(--hellblau, #e5eef8);
--pallas-private: var(--privat, #f3cf4e);
--pallas-private-light: var(--hellprivat, #faf5e1);
--pallas-business: var(--business, #80c9c9);
--pallas-business-light: var(--hellbusiness, #e9f3f2);
--pallas-dark: var(--dark, #34475a);
--pallas-light: var(--hell, #f1f1f1);
--pallas-success: var(--success, #3BB40B);
--pallas-danger: var(--danger, #dc3545);
--pallas-text: #444;
--pallas-muted: #777;
--pallas-border: #d8d8d8;
--pallas-white: #fff;
--pallas-radius-sm: 12px;
--pallas-radius: 16px;
--pallas-radius-lg: 24px;
--pallas-shadow: 0 12px 32px rgba(0, 22, 44, .12);
--pallas-shadow-soft: 0 6px 18px rgba(0, 22, 44, .08);
}
.pallas-register {
	padding: clamp(3rem, 6vw, 6rem) 0;
	background: linear-gradient(180deg, #fff 0%, var(--pallas-light-blue) 100%);
}
.pallas-container {
	width: min(1320px, 100%);
	margin: 0 auto;
	padding-right: var(--bs-gutter-x, 1.25rem);
	padding-left: var(--bs-gutter-x, 1.25rem);
}
.pallas-hero {
	margin-bottom: 3rem;
}
.pallas-kicker {
	display: block;
	margin-bottom: .75rem;
	color: var(--pallas-blue);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.pallas-kicker::before {
	display: none;
}
.pallas-hero h1 {
	margin: 0;
	color: var(--heading-color, #2f2f2f);
	font-family: var(--heading-font, "Afacad Flux", sans-serif);
	font-size: calc(2.5em + 0.4vw);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
}
.pallas-hero p {
	max-width: 780px;
	margin: 1.5rem 0 0;
	color: var(--pallas-text);
	font-size: 1.2rem;
	font-weight: 300;
}
.pallas-trust-card {
	background: var(--pallas-blue);
	color: #fff;
	border-radius: var(--pallas-radius);
	padding: 1.5rem;
	box-shadow: var(--pallas-shadow-soft);
}
.pallas-trust-card strong {
	display: block;
	margin-bottom: .35rem;
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
}
.pallas-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 270px;
	gap: 2rem;
	align-items: start;
}
.pallas-panel, .pallas-summary {
	background: #fff;
	border-radius: var(--pallas-radius);
	box-shadow: var(--pallas-shadow);
}
.pallas-panel {
	overflow: hidden;
}
.pallas-progress {
    display: grid;
    grid-template-columns: repeat(var(--pallas-progress-count, 5), 1fr);
    gap: .5rem;
    padding: 1rem;
    background: var(--pallas-dark);
}
.pallas-progress-step {
	display: block;
	width: 100%;
	padding: .7rem .65rem;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 50px;
	background: rgba(255, 255, 255, .08);
	color: rgba(255, 255, 255, .68);
	font-family: var(--body-font, "Afacad Flux", Arial, sans-serif);
	font-size: .82rem;
	font-weight: 600;
	line-height: normal;
	text-align: center;
	letter-spacing: .5px;
	text-transform: uppercase;
	cursor: pointer;
	box-shadow: none;
	transition: all .25s ease;
}
.pallas-progress-step:hover, .pallas-progress-step:focus {
	background: rgba(255, 255, 255, .18);
	color: #fff;
	box-shadow: none;
	outline: 0;
}
.pallas-progress-step[disabled] {
	opacity: .45;
	cursor: not-allowed;
	pointer-events: none;
}
.pallas-progress-step.is-active {
	background: #fff;
	color: var(--pallas-blue);
	border-color: #fff;
}
.pallas-progress-step.is-done {
	background: var(--pallas-muted);
	color: #fff;
	border-color: var(--pallas-muted);
}
.pallas-step {
	display: none;
	padding: clamp(1.5rem, 3vw, 2.5rem);
}
.pallas-step.is-active {
	display: block;
}
.pallas-step h2 {
	margin: 0 0 1rem;
	color: var(--heading-color, #2f2f2f);
	font-family: var(--heading-font, "Afacad Flux", sans-serif);
	font-size: calc(1.8em + .25vw);
	font-weight: 700;
	line-height: 1;
}
.pallas-step-intro {
	max-width: 760px;
	margin: 0 0 2rem;
	color: var(--pallas-text);
	font-size: 1.1rem;
}
.pallas-grid {
	display: grid;
	gap: 1rem;
}
.pallas-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.pallas-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.pallas-choice {
	position: relative;
	display: block;
	height: 100%;
	cursor: pointer;
}
.pallas-choice-price {
  display: block;
  margin-top: .75rem;
  color: var(--pallas-dark);
  font-size: 1.3rem;
  font-weight: 700;
}
.pallas-choice input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.pallas-choice-content {
	display: block;
	height: 100%;
	padding: 1.25rem 1.35rem;
	border: 4px solid transparent;
	border-radius: var(--pallas-radius);
	background: var(--pallas-light-blue);
	color: var(--pallas-dark);
	transition: all .25s ease;
}
.pallas-register.is-path-privat .pallas-step[data-step="3"] .pallas-choice-content, .pallas-register.is-path-privat .pallas-step[data-step="2"] .pallas-choice-content {
	background: var(--pallas-private-light);
}
.pallas-register.is-path-business .pallas-step[data-step="3"] .pallas-choice-content, .pallas-register.is-path-business .pallas-step[data-step="2"] .pallas-choice-content {
	background: var(--pallas-business-light);
}
.pallas-register.is-path-privat .pallas-step[data-step="3"] .pallas-choice-content {
	border-color: var(--pallas-private);
}
.pallas-register.is-path-business .pallas-step[data-step="3"] .pallas-choice-content {
	border-color: var(--pallas-business);
}
.pallas-choice:hover .pallas-choice-content {
	transform: translateY(-2px);
	box-shadow: var(--pallas-shadow-soft);
}
.pallas-choice input:focus-visible + .pallas-choice-content {
outline: 3px solid rgba(0, 75, 150, .22);
outline-offset: 2px;
}
.pallas-choice input:checked + .pallas-choice-content {
	border-color: var(--pallas-blue);
	background: #fff;/*box-shadow: 0 0 0 4px rgba(0, 75, 150, .12);*/
}
.pallas-choice input:checked + .pallas-choice-content.bg-hellprivat {
	border-color: var(--pallas-private);
}
.pallas-choice input:checked + .pallas-choice-content.bg-hellbusiness {
	border-color: var(--pallas-business);
}
.pallas-choice-title {
	display: block;
	margin-bottom: .35rem;
	color: var(--pallas-dark);
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.15;
}
.pallas-choice-text {
	display: block;
	color: var(--pallas-text);
	font-size: 1rem;
	font-weight: 300;
}
.pallas-filter-box {
	padding: 0.5rem;
	margin-bottom: 1.5rem;
	border: 4px solid var(--pallas-light-blue);
	border-radius: var(--pallas-radius);
	background: var(--pallas-light-blue);
}
.pallas-filter-box > p {
	margin: 0 0 0.5rem 0;
	color: var(--blau);
}
.pallas-filter {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	padding: 0.25rem;
}
.pallas-field {
	display: grid;
	gap: .35rem;
}
.pallas-field label, .pallas-label {
	display: block;
	margin-bottom: .25rem;
	color: var(--pallas-dark);
	font-size: 1rem;
	font-weight: 600;
}
.pallas-field input, .pallas-field select, .pallas-field textarea {
	width: 100%;
	min-height: 46px;
	height: auto;
	padding: .65rem .85rem;
	border: 1px solid #d1d1d1;
	border-radius: 4px;
	background: #fff;
	color: var(--pallas-text);
	font: inherit;
	font-size: 1rem;
	font-weight: 300;
	box-shadow: none;
	outline: 0;
	appearance: none;
}
.pallas-field select {
	padding-right: 2.25rem;
	background-image: linear-gradient(45deg, transparent 50%, var(--pallas-dark) 50%), linear-gradient(135deg, var(--pallas-dark) 50%, transparent 50%);
	background-position: calc(100% - 18px) 50%, calc(100% - 13px) 50%;
	background-size: 5px 5px, 5px 5px;
	background-repeat: no-repeat;
}
.pallas-field textarea {
	min-height: 130px;
	resize: vertical;
}
.pallas-field input:focus, .pallas-field select:focus, .pallas-field textarea:focus {
	border-color: var(--pallas-blue);
	box-shadow: 0 0 0 .25rem rgba(0, 75, 150, .13);
}
.pallas-field-error {
	display: none;
	color: var(--pallas-danger);
	font-size: .9rem;
	font-weight: 500;
}
.has-error input, .has-error select, .has-error textarea {
	border-color: var(--pallas-danger);
}
.has-error .pallas-field-error {
	display: block;
}
.pallas-dates {
	display: grid;
	gap: 1rem;
}
.pallas-date-card {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 1.25rem;
	padding: 1rem;
	border: 4px solid transparent;
	border-radius: var(--pallas-radius);
	background: var(--pallas-light-blue);
	transition: all .25s ease;
}
.pallas-date-card[data-path="privat"] {
	background: var(--pallas-private-light);
}
.pallas-date-card[data-path="business"] {
	background: var(--pallas-business-light);
}
.pallas-date-card[data-path="privat"]:hover {
	border-color: var(--pallas-private);
}
.pallas-date-card[data-path="business"]:hover {
	border-color: var(--pallas-business);
}
.pallas-date-card[hidden] {
	display: none;
}
/*.pallas-date-card:hover {
	transform: translateY(-2px);
	background: #fff;
	border-color: var(--pallas-blue);
	box-shadow: var(--pallas-shadow-soft);
}*/
.pallas-date-card.has-no-image {
	grid-template-columns: 1fr;
}
.pallas-date-image {
	position: relative;
	overflow: hidden;
	min-height: 140px;
	border-radius: var(--pallas-radius-sm);
	background: #fff;
}
.pallas-date-image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 140px;
	object-fit: cover;
}
.pallas-date-content {
	display: grid;
	gap: .5rem;
	align-content: start;
}
.pallas-date-meta {
	display: flex;
	flex-wrap: wrap;
	gap: .45rem;
}
.pallas-pill {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	min-height: 30px;
	padding: .25rem .7rem;
	border-radius: 50px;
	background: #fff;
	color: var(--pallas-dark);
	font-size: .85rem;
	font-weight: 600;
}
.pallas-pill-primary {
	background: var(--pallas-blue);
	color: #fff;
}
.pallas-date-title {
	margin: 16px 0 0 0;
	color: var(--heading-color, #2f2f2f);
	font-family: var(--heading-font, "Afacad Flux", sans-serif);
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.12;
}
.pallas-date-text {
	margin: 0;
	color: var(--pallas-text);
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.2;
}
.pallas-date-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	margin-top: .25rem;
}
.pallas-register .pallas-button, .pallas-register button.pallas-button, .pallas-register input[type="submit"].pallas-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .45rem;
	min-height: 48px;
	padding: .5em 1.25em;
	border: 1px solid transparent;
	border-radius: 50px;
	background: var(--pallas-blue);
	color: #fff;
	font-family: var(--body-font, "Afacad Flux", Arial, sans-serif);
	font-size: 1rem;
	font-weight: 500;
	line-height: normal;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor: pointer;
	transition: all .3s ease-in;
	box-shadow: none;
}
.pallas-register .pallas-button:hover, .pallas-register .pallas-button:focus {
	background: var(--pallas-dark);
	color: #fff;
	box-shadow: 3px 3px 6px rgba(0, 22, 44, .25);
	outline: 0;
}
.pallas-register .pallas-button-secondary, .pallas-register button.pallas-button-secondary {
	background: transparent;
	color: var(--pallas-blue);
	border-color: var(--pallas-blue);
}
.pallas-register .pallas-button-secondary:hover, .pallas-register button.pallas-button-secondary:hover {
	background: #fff;
	color: var(--pallas-dark);
	border-color: var(--pallas-dark);
}
.pallas-register .pallas-button[disabled], .pallas-register button.pallas-button[disabled] {
	opacity: .5;
	cursor: not-allowed;
	box-shadow: none;
}
.pallas-actions {
	display: flex;
	justify-content: space-between;
	gap: .75rem;
	padding-top: 1.75rem;
	margin-top: 2rem;
	border-top: 1px solid var(--pallas-border);
}
..pallas-layout, .pallas-hero {
	grid-template-columns: 1fr
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}
.pallas-form-grid .is-full {
	grid-column: 1 / -1;
}
.pallas-partner-fields {
	display: none;
	margin-top: 1.5rem;
	padding: 1.25rem;
	border: 4px solid var(--pallas-business);
	border-radius: var(--pallas-radius);
	background: var(--pallas-business-light);
}
.pallas-partner-fields.is-visible {
	display: block;
}
.pallas-checkboxes {
	display: grid;
	gap: .8rem;
}
.pallas-check {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	gap: .75rem;
	padding: 1rem;
	border: 1px solid transparent;
	border-radius: var(--pallas-radius-sm);
	background: var(--pallas-light-blue);
	color: var(--pallas-dark);
	transition: all .2s ease;
}
.pallas-check:hover {
	background: #fff;
	box-shadow: var(--pallas-shadow-soft);
}
.pallas-check.has-error, .has-error.pallas-check {
	border-color: var(--pallas-danger);
	background: rgba(220, 53, 69, .08);
}
.pallas-check input {
	width: 20px;
	height: 20px;
	margin-top: .15rem;
	accent-color: var(--pallas-blue);
}
.pallas-check strong {
	display: block;
	margin-bottom: .1rem;
	color: var(--pallas-dark);
	font-weight: 700;
}
.pallas-check span {
	color: var(--pallas-text);
	font-size: .98rem;
	font-weight: 300;
}
.pallas-summary {
	position: sticky;
	top: calc(var(--header-height-min, 80px) + 1rem);
	overflow: hidden;
	border: 4px solid var(--pallas-dark);
	background: #fff;
}
.pallas-summary-image {
	position: relative;
	aspect-ratio: 1 / 1;
	background: var(--pallas-light-blue);
}
.pallas-summary-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.pallas-summary-body {
	padding: 1.25rem;
}
.pallas-summary h2 {
	margin: 0 0 1rem;
	color: var(--heading-color, #2f2f2f);
	font-family: var(--heading-font, "Afacad Flux", sans-serif);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1;
}
.pallas-summary-list {
	display: grid;
	gap: .8rem;
	margin: 0;
}
.pallas-summary-row {
	display: grid;
	gap: .1rem;
}
.pallas-summary-row dt {
	color: var(--pallas-blue);
	font-size: .82rem;
	font-weight: 600;
	letter-spacing: 1.4px;
	text-transform: uppercase;
}
.pallas-summary-row dd {
	margin: 0;
	color: var(--pallas-dark);
	font-size: 1.05rem;
	font-weight: 600;
}
.pallas-message {
	display: none;
	margin: 1.25rem 1.25rem 0;
	padding: 1rem 1.25rem;
	border-radius: var(--pallas-radius-sm);
	font-weight: 600;
}
.pallas-request .pallas-message {
	display: none;
	margin: 0 0 2rem 0;
	padding: 1rem 1.25rem;
	border-radius: var(--pallas-radius-sm);
	font-weight: 600;
}
.pallas-message.is-visible {
	display: block;
}
.pallas-message-error {
	color: var(--pallas-danger);
	background: rgba(220, 53, 69, .08);
	border: 1px solid rgba(220, 53, 69, .35);
}
.pallas-message-success {
	color: var(--pallas-success);
	background: rgba(59, 180, 11, .08);
	border: 1px solid rgba(59, 180, 11, .35);
}
.pallas-empty {
	padding: 1.25rem;
	border: 2px dashed rgba(0, 75, 150, .3);
	border-radius: var(--pallas-radius);
	background: #fff;
	color: var(--pallas-text);
	font-weight: 300;
}

@media (max-width: 1199px) {
.pallas-layout {
	grid-template-columns: minmax(0, 1fr) 250px;
	gap: 1.25rem;
}
.pallas-progress-step {
	font-size: .75rem;
	letter-spacing: .2px;
}
}

@media (max-width: 991px) {
.pallas-register {
	padding: 3rem 0;
}
.pallas-hero, .pallas-layout {
	grid-template-columns: 1fr;
}
.pallas-hero {
	gap: 1.25rem;
	margin-bottom: 2rem;
}
.pallas-summary {
	position: static;
	order: -1;
}
.pallas-filter {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (max-width: 767px) {
.pallas-container {
	padding-right: 1rem;
	padding-left: 1rem;
}
.pallas-hero h1 {
	font-size: calc(1.75em + .75vw);
	line-height: 1;
}
.pallas-hero p {
	font-size: 1.05rem;
}
.pallas-progress {
	grid-template-columns: 1fr;
	gap: .35rem;
}
.pallas-progress-step {
	text-align: left;
}
.pallas-step {
	padding: 1.25rem;
}
.pallas-step h2 {
	font-size: 1.875em;
}
.pallas-grid-2, .pallas-grid-3, .pallas-form-grid, .pallas-filter {
	grid-template-columns: 1fr;
}
.pallas-date-card {
	grid-template-columns: 1fr;
}
.pallas-date-image {
	aspect-ratio: 1 / 1;
	min-height: auto;
}
.pallas-date-image img {
	min-height: auto;
}
.pallas-date-footer {
	align-items: stretch;
}
.pallas-date-footer .pallas-button {
	width: 100%;
}
.pallas-actions {
	flex-direction: column-reverse;
}
.pallas-actions .pallas-button {
	width: 100%;
}
}


.pallas-request {
	padding: clamp(3rem, 6vw, 6rem) 0;
	background: linear-gradient(180deg, #fff 0%, var(--pallas-business-light) 100%);
}

.pallas-request .pallas-panel, .pallas-request .pallas-summary {
	background: #fff;
	border-radius: var(--pallas-radius);
	box-shadow: var(--pallas-shadow);
}
.pallas-request .pallas-panel {
	padding: clamp(1.5rem, 3vw, 2.5rem);
}
.pallas-request .pallas-panel h2 {
	margin: 0 0 1rem;
	color: var(--heading-color, #2f2f2f);
	font-family: var(--heading-font, "Afacad Flux", sans-serif);
	font-size: calc(1.8em + .25vw);
	font-weight: 700;
	line-height: 1;
}
.pallas-request .pallas-checks {
	display: grid;
	gap: .8rem;
	margin-top: 1.5rem;
}
.pallas-request .pallas-button, .pallas-request button.pallas-button, .pallas-request input[type="submit"].pallas-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .45rem;
	min-height: 48px;
	padding: .5em 1.25em;
	border: 1px solid transparent;
	border-radius: 50px;
	background: var(--pallas-blue);
	color: #fff;
	font-family: var(--body-font, "Afacad Flux", Arial, sans-serif);
	font-size: 1rem;
	font-weight: 500;
	line-height: normal;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor: pointer;
	transition: all .3s ease-in;
	box-shadow: none;
}
.pallas-request .pallas-button:hover, .pallas-request .pallas-button:focus {
	background: var(--pallas-dark);
	color: #fff;
	box-shadow: 3px 3px 6px rgba(0, 22, 44, .25);
	outline: 0;
}
.pallas-request .pallas-button-secondary, .pallas-request button.pallas-button-secondary {
	background: transparent;
	color: var(--pallas-blue);
	border-color: var(--pallas-blue);
}
.pallas-request .pallas-button-secondary:hover, .pallas-request button.pallas-button-secondary:hover {
	background: #fff;
	color: var(--pallas-dark);
	border-color: var(--pallas-dark);
}
.pallas-request .pallas-button[disabled], .pallas-request button.pallas-button[disabled] {
	opacity: .5;
	cursor: not-allowed;
	box-shadow: none;
}
.pallas-review-layout {
  display: grid;
  grid-template-columns: minmax(260px, 40%) minmax(0, 1fr);
  gap: 1.25rem;
  align-items: stretch;
}

.pallas-review-location-image {
  overflow: hidden;
  min-height: 100%;
  border-radius: var(--pallas-radius);
  background: var(--pallas-light-blue);
}

.pallas-review-location-image[hidden] {
  display: none;
}

.pallas-review-location-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
}

.pallas-review-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

.pallas-review-cards .pallas-choice-content {
  height: auto;
}

.pallas-review-layout:not(:has(.pallas-review-location-image:not([hidden]))) {
  grid-template-columns: 1fr;
}

.pallas-review-layout:not(:has(.pallas-review-location-image:not([hidden])))
.pallas-review-cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 767px) {
  .pallas-review-layout:not(:has(.pallas-review-location-image:not([hidden])))
  .pallas-review-cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
	.pallas-request .pallas-layout, .pallas-request .pallas-hero {
		grid-template-columns: 1fr;
	}
	.pallas-request .pallas-summary {
		position: static;
		order: -1;
	}
}

@media (max-width: 767px) {
	.pallas-request .pallas-form-grid {
		grid-template-columns: 1fr;
	}
	.pallas-request .pallas-actions .pallas-button {
		width: 100%;
	}
	.pallas-review-layout {
    grid-template-columns: 1fr;
  }

  .pallas-review-location-image img {
    min-height: auto;
    aspect-ratio: 16 / 10;
  }
}
.testimonial-item.feedback img {
    display: block;
    width: 140px;
    height: 140px;
    margin: 0 auto 1.25rem;
    border-radius: 50%;
    object-fit: cover;
}
.pallas-date-content {
    position: relative;
}

/*
 * Freiraum für das Seminarleiterbild.
 * Dadurch laufen Headline und Metadaten nicht unter das Bild.
 */
.pallas-date-content {
    padding-right: 155px;
}

.pallas-date-instructor-portrait {
  position: absolute;
	top: -6px;
	right: -6px;
	width: 110px;
	height: 110px;
	overflow: hidden;
	border-radius: 50%;
	background: #fff;
	border: 4px solid #ffffff;
	box-shadow: 0 6px 20px rgba(0, 22, 44, 0.18);
}

.pallas-date-instructor-portrait img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

/*
 * Beschreibung, Termin, Preis und Footer dürfen anschließend
 * wieder die gesamte Breite nutzen.
 */
.pallas-date-content > .pallas-date-text:nth-of-type(n + 2),
.pallas-date-content > .pallas-date-footer {
    margin-right: -131px;
}

@media (max-width: 767.98px) {

    .pallas-date-content {
        padding-right: 115px;
    }

    .pallas-date-instructor-portrait {
        top: 0;
        right: 0;
        width: 100px;
        height: 100px;
				box-shadow: 0 4px 12px rgba(0, 22, 44, 0.18);
    }

    .pallas-date-content > .pallas-date-text:nth-of-type(n + 2),
    .pallas-date-content > .pallas-date-footer {
        margin-right: -95px;
    }
}

@media (max-width: 479.98px) {

    .pallas-date-content {
        padding-right: 90px;
    }

    .pallas-date-instructor-portrait {
        top: 0;
        right: 0;
        width: 90px;
        height: 90px;
        border-width: 3px;
				box-shadow: 0 3px 8px rgba(0, 22, 44, 0.18);
    }

    .pallas-date-content > .pallas-date-text:nth-of-type(n + 2),
    .pallas-date-content > .pallas-date-footer {
        margin-right: -74px;
    }
}