/* ========================================================================
   Fonts
 ========================================================================== */
 
/* 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-v34-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('../fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* 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-v34-latin-italic.eot'); /* IE9 Compat Modes */
  src: url('../fonts/open-sans-v34-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* 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-v34-latin-500.eot'); /* IE9 Compat Modes */
  src: url('../fonts/open-sans-v34-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-500.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* 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-v34-latin-600.eot'); /* IE9 Compat Modes */
  src: url('../fonts/open-sans-v34-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* nanum-pen-script-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: 'Nanum Pen Script';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/nanum-pen-script-v19-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('../fonts/nanum-pen-script-v19-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/nanum-pen-script-v19-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/nanum-pen-script-v19-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/nanum-pen-script-v19-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/nanum-pen-script-v19-latin-regular.svg#NanumPenScript') format('svg'); /* Legacy iOS */
}


/* ========================================================================
   Globals
 ======================================================================= */

/* Farben S&W */

/* gelb					#ffd500 - rgba(255,213,0,1) */
/* blau					#004362 - rgba(0,67,98,1) */

:root {
	
  /* Fraben */
  
	--blue-light-4: #e5ecef;
	--blue-light-3: #bfd0d8;
	--blue-light-2: #7fa2b1;
	--blue-light-1: #40748a;
	--blue: #004563;
	--blue-dark-1: #00344a;
	--blue-dark-2: #002332;
	--blue-dark-3: #001119;
	
	--grey-light-4: #eee;
	--grey-light-3: #ddd;
	--grey-light-2: #aaa;
	--grey-light-1: #888;
	--grey: #666;
	--grey-dark-1: #444;
	--grey-dark-2: #222;
	--grey-dark-3: #111;
	--grey-dark-4: #000;
	
	--yellow-light-3: #fff4bf;
	--yellow-light-2: #ffea7f;
	--yellow-light-1: #ffe040;
	--yellow: #ffd500;
	--yellow-dark-1: #bfa000;
	--yellow-dark-2: #806b00;
	
	--orange-light-3: #ebcdc4;
	--orange-light-2: #d79b88;
	--orange-light-1: #c46a4d;
	--orange: #b03812;
	--orange-dark-1: #842a0d;
	--orange-dark-2: #581c09;
	
	--red-light-3: #ebbfc6;
	--red-light-2: #d77f8e;
	--red-light-1: #c44056;
	--red: #b0001d;
	--red-dark-1: #840016;
	--red-dark-2: #58000f;
  
  /* --- */
	
  --box-shadow-0: none;
  --box-shadow-1: rgba(0,0,0,0.2) 0 0 3px;
  --box-shadow-2: rgba(0, 0, 0, 0.5) 0 0 5px;
	--box-shadow-3: rgba(0, 0, 0, 0.66) 0 2px 12px;
	--box-shadow-4: rgba(0, 0, 0, 0.33) 0 6px 6px;
  
  --border-radius-sm: 2px;
	--border-radius-md: 4px;
  --border-radius-lg: 6px;
	
	--white-0: rgba(255,255,255,0);
	--white-1: rgba(255,255,255,0.2);
	
	--transition-fast: 0.1s ease-in-out all;
	--transition: 0.3s ease-in-out all;
	--transition-slow: 0.5s ease-in-out all;
}

body {
	font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
	font-size: 1rem;
	color: var(--grey-dark-1);
	hyphens: auto;
}

a,
a:visited {
  color: var(--blue-light-1);
	text-decoration: underline;
}
a:hover,
a:active,
a:focus {
  color: var(--blue);
	text-decoration: none;
}

h1, h2, h3 {
	text-transform: uppercase;
	font-weight: 600;
}

h3, h4 {
	margin-top: 1em;
	margin-bottom: 0.5em;
}


ul {
	padding-left: 1rem;
}

.lead {
  font-size: 1.125rem;
  font-weight: 500;
}

.small {
	font-size: 0.8em;
}

.muted {
	opacity: 0.67;
}

.sw-border-top {
	border-top: 1px solid var(--blue);
}

.sw-border-bottom {
	border-bottom: 1px solid var(--blue);
}

h2.sw-border-top {
	padding-top: 0.75rem;
	margin-top: 3rem;
	color: var(--blue);
}

p.sw-border-bottom {
	padding-bottom: 1rem;
	margin-bottom: 0;
}

.underline {
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
	border-bottom: 1px solid rgba(0,0,0,0.15);
}

figcaption.figure-caption {
	padding: 4px 2px 8px;
	color: var(--grey);
}

a.partner-card {
	display: inline-block;
	background-color: transparent;
	box-shadow: var(--box-shadow-1);
	transition: var(--transition);
	border-radius: var(--border-radius-sm);
}

a.partner-card:hover {
	background-color: rgba(255,255,255,0.5);
	box-shadow: var(--box-shadow-2);
	transition: var(--transition);
}

.partner-list a.partner-card {
	background-color: rgba(0,0,0,0.02);
}

.partner-list a.partner-card:hover {
	background-color: transparent;
}






/* ========================================================================
   Layout
 ======================================================================= */

/* ++++ Cookie-Hint ++++ */

#redim-cookiehint {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  box-shadow: var(--box-shadow-2);
  max-width: 380px;
  background: var(--blue-light-4);
  padding: 15px 30px;
  border-radius: var(--border-radius-md);
}

#redim-cookiehint .cookiehead .headline {
    color: var(--blue);
    font-size: 1.25rem;
    line-height: 26px;
    padding: 3px 0px 3px 50px;
}

#redim-cookiehint .cookiecontent {
  font-size: 0.875rem;
	color: var(--blue-light-1);
  line-height: 1.25rem;
}

#redim-cookiehint .cookiebuttons .btn,
#redim-cookiehint .cookiebuttons button {
  font-size: 18px;
  line-height: 24px;
  cursor: pointer;
  display: block;
  margin-bottom: 15px;
  padding: 12px 8px !important;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}

#cookiehintsubmit {
  background-color: var(--blue-light-1) !important;
  color: #fff !important;
}
#cookiehintsubmit:hover {
  background-color: var(--blue) !important;
  color: #fff !important;
}

#cookiehintsubmitno {
  background: var(--red-light-1) !important;
  color: #fff !important;
}
#cookiehintsubmitno:hover {
  background: var(--red) !important;
  color: #fff !important;
}

/* ++++ Header ++++ */

#sp-header,
#sp-header.header-sticky {
  z-index: 99;
}

#sp-header {
	background: #fff;
	box-shadow: none;
}

#sp-header.header-sticky {
	background-color: #fff;
	box-shadow: var(--box-shadow-4);
}

@media (max-width: 575px) {
	#sp-header {
		height: 60px;
	}
}

#sp-top-bar {
	background-color: var(--yellow);
	border-top: 18px solid var(--blue);
	padding-top: 9px;
	padding-bottom: 9px;
}

/* Kontakt */

#sp-top-bar #sp-top2 .sp-column {
	text-align: right !important;
}

#sp-top-bar .sw-kontakt-top a {
	color: var(--yellow);
	padding: 6px 12px;
	background-color: var(--blue);
	border-radius: var(--border-radius-md);
	margin: 12px 0;
	text-decoration: none;
}

/* Logo */

.sticky-header #sp-header #sp-logo .logo a {
	color: transparent;
}

.sticky-header #sp-header #sp-logo .logo a img {
	height: 120px;
}

.sticky-header #sp-header.header-sticky {
	height: 60px;
}

.sticky-header #sp-header.header-sticky #sp-logo .logo a img {
	height: 48px;
}

/* Menu */

.sp-megamenu-parent > li > a {
  color: var(--blue);
	text-transform: uppercase;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 36px;
	padding: 0 6px 0 18px;
	border-top: 1px solid transparent;
	border-bottom: 1px solid transparent;
}

.sp-megamenu-parent > li:last-child > a {
	padding: 0 18px;
}

body.ltr .sp-megamenu-parent > li.sp-has-child > a::after, body.ltr .sp-megamenu-parent > li.sp-has-child > span::after {
  content: "";
}

.sp-megamenu-parent > li:hover > a {
  border-top: 1px solid var(--blue);
	color: var(--blue);
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.active:hover > a {
  border-top: 1px solid var(--blue);
	border-bottom: 1px solid var(--blue);
	color: var(--blue);
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  margin-top: 11px;
	padding: 0 1rem 0.5rem 1rem;
	box-shadow: var(--box-shadow-4);
	text-align: center;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item {
	border-top: 1px solid var(--blue-light-4);
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item:last-child {
	border-bottom: 1px solid var(--blue-light-4);
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
	font-family: 'Open Sans';
  font-weight: 500;
	font-size: 1rem;
	color: var(--blue);
	hyphens: manual;
	padding: 12px 0;
	color: var(--blue);
	display: block;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
	color: var(--blue);
	background-color: var(--blue-light-4);
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a {
	color: var(--blue);
	font-weight: 600;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a:hover {
	color: var(--blue);
	background-color: transparent;
}

/* Burger-Icon */

.burger-icon > span,
.offcanvas-active .burger-icon > span {
  height: 3px;
  background-color: var(--blue);
  margin: 5px 0;
}

.offcanvas-active .burger-icon > span:nth-child(1), #modal-menu-toggler .burger-icon > span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
}

.offcanvas-active .burger-icon > span:nth-child(3), #modal-menu-toggler .burger-icon > span:nth-child(3) {
  transform: translate(0, -6px) rotate(45deg);
}

body.ltr .close-offcanvas {
  right: 32px;
}

/* Offcanvas-Menu */

.offcanvas-menu .offcanvas-inner a {
    color: var(--blue);
}
.offcanvas-menu .offcanvas-inner a:hover,
.offcanvas-menu .offcanvas-inner a:focus,
.offcanvas-menu .offcanvas-inner a:active {
    color: var(--blue);
}
.offcanvas-menu .offcanvas-inner ul.menu>li a,
.offcanvas-menu .offcanvas-inner ul.menu>li span {
	color: var(--blue);
	border: 0 none !important;
	text-decoration: none !important;
	padding: 10px 0px;
	opacity: 1;
	font-family: 'Open Sans';
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 600;
	hyphens: manual;
}
.offcanvas-menu .offcanvas-inner ul.menu li.active ul.menu-child li.current.active a {
	font-weight: 600;
}

.offcanvas-menu .offcanvas-inner ul.menu>li a:hover, .offcanvas-menu .offcanvas-inner ul.menu>li a:focus, .offcanvas-menu .offcanvas-inner ul.menu>li span:hover, .offcanvas-menu .offcanvas-inner ul.menu>li span:focus {
    color: var(--blue);
    border: 0 none !important;
    text-decoration: none !important;
}
.offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>a>.menu-toggler,
 .offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>.menu-separator>.menu-toggler {
    color: rgba(37,  37,  37,  0.75);
		background-color: var(--blue);
		border-radius: var(--border-radius-md);
		color: #fff;
		right: 0 !important;
		padding: 10px 12px;
}

.offcanvas-menu .offcanvas-inner div.sp-module .sp-module-content ul.menu.nav-pills li.menu-deeper.menu-parent {
	border: 0 none;
	margin: 4px 0;
}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > a > .menu-toggler::after,
.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > .menu-separator > .menu-toggler::after {
  font-family: "Font Awesome 5 Free";
  content: "";
  font-weight: 900;
	font-size: 1rem;
}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent.menu-parent-open > a > .menu-toggler::after,
.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent.menu-parent-open > .menu-separator > .menu-toggler::after {
  font-family: "Font Awesome 5 Free";
  content: "";
  font-weight: 900;
	font-size: 1rem;
}

.offcanvas-menu .offcanvas-inner ul.menu li.active a {
  color: var(--blue) !important;
}

.offcanvas-menu .offcanvas-inner ul.menu > li > ul li a,
.offcanvas-menu .offcanvas-inner ul.menu > li > ul li a:hover,
.offcanvas-menu .offcanvas-inner ul.menu > li > ul li a:active,
.offcanvas-menu .offcanvas-inner ul.menu > li.active > ul li a,
.offcanvas-menu .offcanvas-inner ul.menu > li.active > ul li a:hover,
.offcanvas-menu .offcanvas-inner ul.menu > li.active > ul li a:active {
  display: block;
  font-size: 1rem;
  padding: 15px 10px;
  line-height: 1em;
  font-weight: 500;
	color: var(--blue) !important;
}

/* ++++ Page Title ++++ */

.sp-page-title {
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: inherit;
  background-position: 50% 100%;
  position: relative;
  margin-bottom: calc(var(--bs-gutter-x) * .5);
	height: calc(50vh - 135px);
}

.sp-page-title .container {
  position: absolute;
	max-width: 100%;
	margin: 0 auto;
  bottom: 0;
}

.sp-page-title h1.sp-page-title-heading {
  font-size: 2rem;
	text-align: center;
	margin: 0 auto 1em;
	padding: 0.5em;
  font-weight: 500;
  line-height: 1em;
  color: var(--blue);
  hyphens: manual;
  text-transform: uppercase;
  max-width: 100%;
	background-color: rgba(255,213,0,0.67);
	border-radius: var(--border-radius-md);
	box-shadow: var(--box-shadow-3);
	backdrop-filter: blur(30px);
	-webkit-backdrop-filter: blur(30px);
}

.sp-page-title h2.sp-page-title-sub-heading {
	font-size: 1rem;
	text-align: center;
	margin: -1em auto 1em;
	padding: 0.5em;
  font-weight: 600;
  line-height: 1em;
  color: var(--blue);
  hyphens: manual;
  text-transform: uppercase;
  max-width: 100%;
	background-color: rgba(255,213,0,0.67);
	border-radius: var(--border-radius-md);
	box-shadow: var(--box-shadow-3);
	backdrop-filter: blur(30px);
	-webkit-backdrop-filter: blur(30px);
}

#sp-main-body {
	padding: 4rem 0 1rem;
}

@media (min-width: 576px) {
	.sp-page-title h1.sp-page-title-heading {
    max-width: 510px;
		font-size: 2.25rem;
  }
	.sp-page-title h2.sp-page-title-sub-heading	{
		max-width: 510px;
		font-size: 1.5rem;
  }
	#sp-main-body {
		padding: 4rem 0 1.125rem;
	}
}
@media (min-width: 768px) {
  .sp-page-title {
    height: calc(67vh - 117px);
  }
	.sp-page-title h1.sp-page-title-heading {
    max-width: 690px;
		font-size: 2.5rem;
  }
	.sp-page-title h2.sp-page-title-sub-heading	{
		max-width: 540px;
		font-size: 1.5rem;
  }
	#sp-main-body {
		padding: 4rem 0 1.25rem;
	}
}
@media (min-width: 992px) {
  .sp-page-title {
    height: calc(100vh - 117px);
  }
	.sp-page-title h1.sp-page-title-heading {
    max-width: 930px;
		font-size: 3.5rem;
  }
	.sp-page-title h2.sp-page-title-sub-heading	{
		max-width: 640px;
		font-size: 1.75rem;
  }
	#sp-main-body {
		padding: 5rem 0 1.75rem;
	}
}
@media (min-width: 1200px) {
  .sp-page-title {
    height: calc(100vh - 117px);
  }
	.sp-page-title h1.sp-page-title-heading {
    max-width: 1110px;
		font-size: 4rem;
  }
	.sp-page-title h2.sp-page-title-sub-heading	{
		max-width: 720px;
		font-size: 2rem;
  }
	#sp-main-body {
		padding: 5rem 0 2rem;
	}
}
@media (min-width: 1400px) {
  .sp-page-title {
    height: calc(100vh - 117px);
  }
	.sp-page-title h1.sp-page-title-heading	{
		max-width: 1290px;
		font-size: 4.5rem;
  }
	.sp-page-title h2.sp-page-title-sub-heading	{
		max-width: 960px;
		font-size: 2.25rem;
  }
	#sp-main-body {
		padding: 5rem 0 2.25rem;
	}
}

/* Title Teaser */

.title-teaser-outer {
	position: absolute;
	top: 20vh;
	right: 10vw;
	z-index: 100;
}

a.title-teaser-link,
a.title-teaser-link:hover,
a.title-teaser-link:active {
	color: #fff;
	text-decoration: none;
}

.title-teaser-inner {
	background-color: var(--red);
	box-shadow: var(--box-shadow-2);
	text-align: center;
	transition: var(--transition);
	transform: rotate(-8deg);
}

.title-teaser-inner:hover {
	box-shadow: var(--box-shadow-3);
	transition: var(--transition);
	transform: rotate(-7.5deg);
}

.title-teaser-inner {
	padding: 0.75rem;
	border: 3px solid #fff;
	border-radius: var(--border-radius-md);
}

.title-teaser-inner h2 {
	font-family: 'Nanum Pen Script';
	font-weight: 400;
	font-size: 2rem;
	line-height: 0.75em;
	margin: 0 auto 0.25em;
}

.title-teaser-inner h3 {
	font-size: 1rem;
	margin: 0 auto 1em;
	line-height: 1em;
	font-weight: 600;
}

.title-teaser-inner p {
	font-size: 0.75rem;
	margin-bottom: 0;
	line-height: 1em;
	font-weight: 600;
}

@media (min-width: 576px) {
	.title-teaser-outer {
		top: 15vh;
		left: 30vw;
		right: auto;
	}
	.title-teaser-inner {
		padding: 1rem;
		border: 4px solid #fff;
	}
	.title-teaser-inner h2 {
		font-size: 2.5rem;
	}
	.title-teaser-inner h3 {
		font-size: 1rem;
	}
	.title-teaser-inner p {
		font-size: 0.875rem;
	}
}
@media (min-width: 768px) {
	.title-teaser-outer {
		top: 20vh;
		left: 10vw;
		right: auto;
	}
	.title-teaser-inner {
		padding: 1rem;
		border: 6px solid #fff;
	}
	.title-teaser-inner h2 {
		font-size: 3rem;
	}
	.title-teaser-inner h3 {
		font-size: 1.125rem;
	}
	.title-teaser-inner p {
		font-size: 0.875rem;
	}
}
@media (min-width: 993px) {
	.title-teaser-outer {
		top: 30vh;
		left: 5vw;
		right: auto;
	}
	.title-teaser-inner {
		padding: 1rem;
		border: 6px solid #fff;
	}
	.title-teaser-inner h2 {
		font-size: 3.5rem;
	}
	.title-teaser-inner h3 {
		font-size: 1.25rem;
	}
	.title-teaser-inner p {
		font-size: 1rem;
	}
}
@media (min-width: 1200px) {
	.title-teaser-outer {
		top: 20vh;
		left: 10vw;
		right: auto;
	}
	.title-teaser-inner {
		padding: 1rem;
		border: 8px solid #fff;
	}
	.title-teaser-inner h2 {
		font-size: 4rem;
	}
	.title-teaser-inner h3 {
		font-size: 1.5rem;
	}
	.title-teaser-inner p {
		font-size: 1rem;
	}
}
@media (min-width: 1400px) {
	.title-teaser-outer {
		top: 20vh;
		left: 20vw;
		right: auto;
	}
	.title-teaser-inner {
		padding: 1rem;
		border: 10px solid #fff;
	}
	.title-teaser-inner h2 {
		font-size: 5rem;
	}
	.title-teaser-inner h3 {
		font-size: 1.75rem;
	}
	.title-teaser-inner p {
		font-size: 1rem;
	}
}

/* Bottom */

#sp-bottom {
	background-color: var(--blue-light-3);
	color: var(--blue);
}

#sp-bottom a,
#sp-bottom a:visited {
	color: var(--blue);
	transition: var(--transition-fast);
}
#sp-bottom a:hover,
#sp-bottom a:active {
	color: var(--blue-light-1);
	text-decoration: underline;
}

#sp-bottom h4 {
	margin: 0 0 1.5rem;
}

#sp-bottom .adresse {
	border-bottom: 1px solid var(--blue-light-2);
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}
@media (min-width: 992px) {
	#sp-bottom .adresse {
		border-bottom: 0 none;
		border-right: 1px solid var(--blue-light-2);
		padding-bottom: 0;
		margin-bottom: 0;
	}
}

a.socialmedia-button {
	display: block;
	margin-top: 1rem;
	width: 200px;
	padding: 5px 10px;
	background-color: var(--white-0);
	box-shadow: var(--box-shadow-1);
	transition: var(--transition);
	color: var(--orange);
	text-align: left;
	text-decoration: none !important;
	border-radius: var(--border-radius-sm);
}

a.socialmedia-button:hover {
	background-color: var(--white-1);
	box-shadow: var(--box-shadow-2);
	color: var(--orange);
}

a.socialmedia-button .socialmedia-button-icon i {
	font-size: 48px;
	color: var(--orange);
}

a.socialmedia-button .socialmedia-button-text {
	line-height: 1em;
	color: var(--orange);
}

#sp-bottom .verbaende a img {
	margin-left: auto;
	margin-right: auto;
}

/* Footer */

#sp-footer {
	background-color: var(--blue-light-1);
}

#sp-footer .container-inner {
	padding: 15px 0;
}

#sp-footer #sp-footer1 {
	text-align: center;
	color: #FFF;
	hyphens: manual;
}

#sp-footer #sp-footer1 a {
	color: #FFF;
	transition: var(--transition-fast);
	text-decoration: none;
}

#sp-footer #sp-footer1 a:hover,
#sp-footer #sp-footer1 a:active {
	color: var(--blue-light-3);
	text-decoration: underline;
}

/* Go-To-Top-Button */

.sp-scroll-up {
  color: #fff;
  background: rgba(0,67,98,0.5);
  transition: all 0.3s ease;
}

.sp-scroll-up:hover,
.sp-scroll-up:active,
.sp-scroll-up:focus {
  color: #fff;
  background: rgba(0,67,98,1);
}

/* Startseite */

.startseite #sp-title {
	background-color: var(--blue-light-3);
}

.startseite #sp-main-body {
	padding: 0;
}



/* Stellenangebote */

#sp-component .blogstellenangebote .article-list .article {
	margin-bottom: 30px;
	padding: 0;
	border: 0 none;
	border-radius: 0;
}

.geschlecht-stellenangebote {
	font-size: 1rem;
	font-weight: 400;
}

#sp-component .blogstellenangebote .article-list .article p.intro {
	font-size: 14px;
}

.list-image-stellenangebote {
	padding-top: 1rem;
}

.list-stellenangebote h3 {
	margin-top: 1rem;
}

/* ========================================================================
   Elemente
 ========================================================================*/

.sw-image-artikel img {
	box-shadow: var(--box-shadow-1);
}

/* Buttons */

.btn {
	border-radius: var(--border-radius-md);
	padding: 0.75rem 1.5rem;
}

button.btn.btn-sw,
a.btn.btn-sw,
button.btn.btn-sw:active,
a.btn.btn-sw:active,
button.btn.btn-sw:focus,
a.btn.btn-sw:focus {
	border: 0 none;
	background-color: var(--blue);
	color: var(--blue-light-4);
	box-shadow: var(--box-shadow-0);
	transition: var(--transition-fast);
}

button.btn.btn-sw:hover,
a.btn.btn-sw:hover {
	background-color: var(--blue-light-1);
	color: #fff;
	box-shadow: var(--box-shadow-1);
	transition: var(--transition-fast);
}

/* Leistungen */

.leistungen-item .leistungen-headline {
	color: var(--blue-light-4);
	background-color: var(--blue);
	border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
}

.leistungen-item .leistungen-headline .col-leistungen-icon {
	
}

.leistungen-item .leistungen-headline .col-leistungen-icon i {
	font-size: 3rem;
	padding: 1rem;
}

.leistungen-item .leistungen-headline .col-leistungen-heading h3 {
	font-size: 2rem;
	margin: 0;
	padding: 1rem;
	hyphens: manual;
}

.leistungen-item .leistungen-body {
	padding: 1rem;
	color: var(--blue);
	background-color: var(--blue-light-4);
}
.leistungen-item .leistungen-body:last-child {
	border-radius: 0 0 var(--border-radius-lg) var(--border-radius-lg);
}

.leistungen-item .leistungen-body p:last-child {
	margin-bottom: 0;
}

.leistungen-item .leistungen-body.leistungen-border-top {
	border-top: 1px solid var(--blue-light-3);
}

.leistungen-item .leistungen-body .col-leistungen-partner {
	margin-top: 1rem;
}
@media (min-width: 992px) {
	.leistungen-item .leistungen-body .col-leistungen-partner {
		margin-top: 0;
	}
}

/* Cards / Link Cards */

.sw-card {
	box-shadow: var(--box-shadow-1);
	border-radius: var(--border-radius-md);
}

.sw-card,
.sw-card .card-img,
.sw-card .sw-card-body {
	border-color: var(--blue-light-3);
}


.sw-card .card-img,
.sw-card .card-img-top {
  border-top-left-radius: var(--border-radius-md);
  border-top-right-radius: var(--border-radius-md);
}

.sw-card .sw-card-header {
	padding: 1rem;
}

.sw-card .sw-card-header h2,
.sw-card .sw-card-header h3,
.sw-card .sw-card-header img,
.sw-card .sw-card-header i {
	margin: 0 auto;
	hyphens: manual;
}

.row-sw-download .sw-link-card .sw-card .sw-card-header i:before {
	font-size: 8rem;
}

.row-sw-referenzen .sw-link-card .sw-card .sw-card-header i:before {
	font-size: 5rem;
}

.sw-card .sw-card-body {
	padding: 1rem;
	flex: 1 1 auto;
}

.sw-card .sw-card-body h3 {
	font-size: 1.5rem;
	margin-top: 0;
	margin-bottom: 0.5rem;
	hyphens: manual;
}

.sw-card .sw-card-body p:last-child,
.sw-card .card-footer p:last-child {
	margin-bottom: 0;
}

.sw-card.sw-card-1 {
	background-color: var(--blue-light-3);
	color: var(--blue-dark-1);
}

.sw-card.sw-card-1 .figure-caption {
	color: var(--blue-light-1);
}

.sw-card.sw-card-1 .sw-card-body {
	background-color: var(--blue-light-4);
}

.sw-card.sw-card-1 .sw-card-header h2,
.sw-card.sw-card-1 .sw-card-header h3 {
	text-align: center;
	color: var(--blue);
}

a.sw-link-card,
a.sw-link-card:hover {
	text-decoration: none !important;
	border-radius: var(--border-radius-md);
}

.sw-link-card .sw-card {
	background-color: var(--blue-light-4);
	border-radius: var(--border-radius-md);
	box-shadow: var(--box-shadow-1);
	transition: var(--transition);
}

.sw-link-card:hover .sw-card {
	box-shadow: var(--box-shadow-2);
}

.sw-link-card .sw-card .sw-card-header {
	border-radius: var(--border-radius-md);
	background-color: transparent;
	text-align: center;
}

.sw-link-card .sw-card .sw-card-header img {
	box-shadow: var(--box-shadow-1);
	transition: var(--transition);
}
.sw-link-card:hover .sw-card .sw-card-header img {
	box-shadow: var(--box-shadow-0);
	transition: var(--transition);
}

.sw-link-card .sw-card .card-body {
	border-radius: var(--border-radius-md);
	background-color: transparent;
	
}
@media (min-width: 576px) {
	.sw-link-card .sw-card .card-body {
		padding: 1rem 1rem 1rem 0;
	}
}

.sw-card.sw-card-1 .sw-card-body.sw-border-top {
	border-top: 1px solid var(--blue-light-3);
}

.sw-link-card .sw-card .sw-card-header,
.sw-link-card .sw-card .sw-card-body {
	color: var(--blue) !important;
}

.sw-card.sw-card-leistungen .sw-card-body .col-leistungen-partner {
	margin-top: 1rem;
}
@media (min-width: 992px) {
	.sw-card.sw-card-leistungen .sw-card-body .col-leistungen-partner {
		margin-top: 0;
	}
}

.sw-card.sw-card-leistungen .sw-card-header h3 i {
	font-size: 3rem;
	margin-bottom: 1rem;
}

.sw-card .card-footer {
	background-color: var(--blue-light-3);
	border-color: var(--blue-light-2);
	color: var(--blue-light-1);
	font-size: .875em;
}

.row-stellenangebote a.sw-link-card .sw-card .sw-card-body i:before {
	font-size: 5rem;
	color: var(--blue-light-3) !important;
	transition: var(--transition);
}
.row-stellenangebote a.sw-link-card:hover .sw-card .sw-card-body i:before {
	color: var(--blue) !important;
}

.row.sw-fluid-galery .col img {
  max-width: 100%;
	margin-bottom: calc(var(--bs-gutter-x) * 1);
}

/* Timeline Geschichte */

.main-timeline {
	
}
.main-timeline:after{
    content: '';
    display: block;
    clear: both;
}
.main-timeline .timeline{
    width: calc(50% + 200px);
    margin: 0 0 25px 5px;
    float: right;
}
.main-timeline .timeline-content{
    color: var(--blue);
    background-color: var(--yellow-light-2);
    padding: 15px 30px 15px 230px;
    border-radius: var(--border-radius-lg);
    box-shadow: var(--box-shadow-2);
    display: block;
    position: relative;
}
.main-timeline .timeline-content:before{
    content: '';
    background-color: var(--blue-light-2);
    height: 100%;
    width: 60px;
    position: absolute;
    left: 140px;
    top: 0;
}
.main-timeline .timeline-year{
    color: var(--blue);
    font-size: 40px;
    font-weight: 500;
    line-height: 43px;
    transform: translateY(-50%);
    position: absolute;
    left: 22px;
    top: 50%;
}
.main-timeline .timeline-icon{
    color: var(--yellow);
    font-size: 50px;
    font-weight: 600;
    text-align: center;
    line-height: 50px;
    width: 60px;
    transform: translateY(-50%);
    position: absolute;
    left: 140px;
    top: 50%;
}
.main-timeline .title{
    font-size: 1.5rem;
		text-align: center;
		font-weight: 500;
    margin: 0 0 0.5rem;
}
.main-timeline .description{
    /*font-size: 1rem;
    line-height: 20px;
    letter-spacing: 0.5px;*/
    margin: 0;
		text-align: center;
}
.main-timeline .description.image img {
    max-width: 50%;
    margin: 1rem auto 0;
}
.main-timeline .timeline:nth-child(even){
    margin: 0 5px 25px 0;
    float: left;
}
.main-timeline .timeline:nth-child(even) .timeline-content {
	padding: 15px 290px 15px 30px;
}
.main-timeline .timeline:nth-child(even) .timeline-content:before{
    left: auto;
    right: 199px;
}
.main-timeline .timeline:nth-child(even) .timeline-year{
    left: auto;
    right: 49px;
}
.main-timeline .timeline:nth-child(even) .timeline-icon{
    left: auto;
    right: 199px;
}
@media screen and (max-width:767px){
    .main-timeline .timeline,
    .main-timeline .timeline:nth-child(even){
        width: 100%;
        margin: 0 0 30px;
    }
    .main-timeline .timeline-content,
    .main-timeline .timeline:nth-child(even) .timeline-content{
        text-align: center;
        padding: 140px 15px 15px 15px;
    }
    .main-timeline .timeline-content:before,
    .main-timeline .timeline:nth-child(even) .timeline-content:before{
        width: 100%;
        height: 40px;
        transform: translateX(-50%) translateY(0);
        left: 50%;
        right: auto;
        top: 80px;
    }
    .main-timeline .timeline-year,
    .main-timeline .timeline:nth-child(even) .timeline-year{
        transform: translateY(0) translateX(-50%);
        left: 50%;
        right: auto;
        top: 20px;
    }
    .main-timeline .timeline-icon,
    .main-timeline .timeline:nth-child(even) .timeline-icon{
        width: auto;
        transform: translateY(0) translateX(-50%);
        left: 50%;
        right: auto;
        top: 105px;
    }
}

/* Banner Jobrad */

a.sw-jobrad-ad-outer {
	display: block;
	rotate: -2deg;
	background-color: rgba(76,139,43,0.1);
	margin-top: 4rem;
	box-shadow: var(--box-shadow-2);
	border-radius: var(--border-radius-lg);
	transition: var(--transition);
	text-decoration: none;
}

a.sw-jobrad-ad-outer:hover {
	background-color: rgba(76,139,43,0.15);
	box-shadow: var(--box-shadow-3);
	rotate: 0deg;
}

.sw-jobrad-ad-inner {
	padding: 1rem;
	text-align: center;
	color: rgba(76,139,43,1) !important;
	hyphens: manual;
}

.sw-jobrad-ad-inner img {
	margin: 1rem auto;
}

/* Formular */

.sw-formular {
	margin: 0 -1rem;
}

.convertforms .cf-content-wrap, .convertforms .cf-form-wrap {
  padding: 1rem;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
textarea::placeholder,
select#form1_standort.cf-input > option {
  color: var(--grey-light-1) !important;
	font-family: 'Open Sans' !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

.convertforms .cf-input,
input[type="text"],
input[type="email"],
textarea,
select#form1_standort.cf-input {
  color: var(--grey-dark-1) !important;
	font-family: 'Open Sans' !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

.convertforms.cf-success .cf-response {
  background-color: var(--blue);
  display: block;
}