/*--------------------------------------------------------------------
	Author: {ths} Thomas Schostok Design
	Version: 1.0
---------------------------------------------------------------------*/
@font-face {
	font-family:'Lato';
	src: url('../fonts/Lato-Reg-webfont.woff') format('woff');
	font-weight: normal; font-style: normal; font-display:swap;
}
@font-face {
	font-family:'Lato';
	src: url('../fonts/Lato-Bol-webfont.woff') format('woff');
	font-weight: bold; font-style: normal; font-display:swap;
}
@font-face {
	font-family:'Lato';
	src: url('../fonts/Lato-RegIta-webfont.woff') format('woff');
	font-weight: normal; font-style: italic; font-display:swap;
}
@font-face {
	font-family:'Lato';
	src: url('../fonts/Lato-BolIta-webfont.woff') format('woff');
	font-weight: bold; font-style: italic; font-display:swap;
}
/* Swatch Variables */
:root{
	--blau:rgba(56,83,107,1);	
	--bs-accordion-border-color: #000000!important;
    --bs-accordion-border-width: 2px!important;
	--swatch-var-default: black;
	--CDcolor: #3d4950; /* corporate color */
	--headline: #657785; /* headline corporate color */
	--bgcorporate: #D7DCDD; /* 77a8ac */
	--bs-body-font-size: 1.0625rem!important;
}
.bg-corporate {
    --bs-bg-opacity: 1;
    background-color: var(--bgcorporate)!important;
}
body {
	margin:0;
	padding:0;
    background:#ffffff;
    overflow-x:hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-family:"Lato";
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family:"Lato";
		overflow-wrap: break-word;
		word-wrap: break-word;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
		color: var(--headline);
}
p, label, .btn, a {
	font-family:"Lato";
		overflow-wrap: break-word;
		word-wrap: break-word;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
}
.text {
	text-align: justify;
}
.text li {
	text-align: left;
}
.text a {
	color: #846183;
	border-bottom: 1px solid #846183;
	text-decoration: none;
	transition: all .2s ease-out;
}
.text a:hover {
	color: black;
	border-bottom: 1px solid black;
}
.text p:last-child {
	margin-bottom: 0;
}
/* fixes */
/* Prevent ugly blue glow on chrome and safari */
button{
	outline: none!important;
}
.navbar-toggler:focus,.btn-close:focus, button:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: none;
}
/* footer sticky bottom */
html, body {
	height: 100%;
}  
 body {
	display: flex;
	flex-direction: column;
}
main {
	flex: 1; 
  }
footer {
	margin-top: auto; 
  }
/* end footer sticky bottom */

/* navigation */
.navbar {
	background:white!important;
	--bs-navbar-color: rgb(0, 0, 0);
	--bs-navbar-hover-color: var(--headline);
	--bs-navbar-active-color: var(--headline);
	border-bottom:#000000 1px solid;
}
.dropdown-menu {
	--bs-dropdown-link-color: var(--bs-navbar-color);
	--bs-dropdown-link-hover-color:var(--bs-navbar-hover-color);
    --bs-dropdown-link-hover-bg: #f4f4f4;
    --bs-dropdown-link-active-color: var(--headline);
    --bs-dropdown-link-active-bg: #ffffff;
	background-color: var(--bs-dropdown-bg);
    border: 1px solid var(--bs-navbar-color);
    border-radius: 0;
}
.wordwrap {
	overflow-wrap: break-word;
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}
footer a {
	color:#000000;
	border-bottom: 1px solid black;
	transition: all .2s ease-out;
	padding-bottom:2px;
	text-decoration: none; 
}
footer a:hover {
	color:white;
	border-bottom: 1px solid white;
}
.activeNav{
	color: var(--bs-navbar-active-color)!important;
}
.navbar-brand img { width:auto; height:38px; }

@media (min-width:460px) { 
	.navbar-brand img { height:45px;}
}
@media (min-width:500px) { 
	.navbar-brand img { height:55px;}
}
@media (min-width:600px) { 
	.navbar-brand img { height:64px;}
}

@media (min-width:768px) { /* ab MD */
	.navbar-brand img { height:64px;}
}
/* end navigation */


/* mobile navigation */
.navbar-toggler {
	border:none;
	padding: 0;
}
.offcanvas.offcanvas-end {
    border:none;
}
.offcanvas-backdrop {
	background-color: var(--headline)!important;
}
/* offcanvas nav */
.sidebaritem {
	color:var(--swatch-var-default);
	font-size:20px;
	border-color: var(--swatch-var-default)!important;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    padding-bottom: 10px;
    padding-top: 12px;
	letter-spacing: 0.0120rem;
	overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}
a.sidebaritemlink {
		color:var(--bs-navbar-color)!important;
		text-decoration: none;
}
a.sidebaritemlink:hover {
	color:#846183!important;
		text-decoration: none;
		transition: all .2s ease-out;
}
a.sideactive, a.sidesubactive {
	color:	#846183!important;
		text-decoration: none;
}
/* end offcanvsas navigation */


/* accordian styles overwrite */
.accordion {
	--bs-accordion-border-color: black;
    --bs-accordion-border-width: 1px!important;
	--bs-accordion-active-bg: #ffffff;
	--bs-accordion-active-color: black;
	--bs-accordion-btn-focus-border-color:  black;
    --bs-accordion-btn-focus-box-shadow: 0 0 0 1px  black;
	--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd%3Bclip-rule:evenodd%3Bstroke-linejoin:round%3Bstroke-miterlimit:2' viewBox='0 0 125 125'%3E%3Cpath d='M24.574 20.824 62.048 58.25l37.328-37.417L122 43.436 62.048 103.62 1.944 43.436l22.63-22.612Zm-.004 6.556L8.496 43.436l53.552 53.703 53.405-53.703L99.38 27.37 62.048 64.773 24.574 27.37l-.004.01Z'/%3E%3C/svg%3E");
	--bs-accordion-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd%3Bclip-rule:evenodd%3Bstroke-linejoin:round%3Bstroke-miterlimit:2' viewBox='0 0 125 125'%3E%3Cpath d='M24.574 20.824 62.048 58.25l37.328-37.417L122 43.436 62.048 103.62 1.944 43.436l22.63-22.612Zm-.004 6.556L8.496 43.436l53.552 53.703 53.405-53.703L99.38 27.37 62.048 64.773 24.574 27.37l-.004.01Z'/%3E%3C/svg%3E");
}
.accordion-item:last-of-type, .accordion-item:last-of-type .accordion-button.collapsed  {
    border-bottom-right-radius: 0!important;
    border-bottom-left-radius: 0!important;
}
.accordion-item:first-of-type, .accordion-item:first-of-type .accordion-button  {
    border-top-left-radius: 0!important;
    border-top-right-radius: 0!important;
}
.accordion-button {
	font-size: 17px!important;
	padding-left: 7px!important;
	padding-right: 7px!important;
	padding-top: 6px!important;
	padding-bottom: 2px!important;
}
.accordion-button::after {
    width: 30px;
    height: 30px;
    background-size: 30px;
}
.scrollToTop {
	border-radius:50%;
}
.scrollToTop svg {
	vertical-align: top;
}
.ths_button {
	border-bottom-width: 1px;
	border: 1px solid black;
	padding: 8px 12px 6px;
	display: inline-block;
	transition: all .2s ease-out;
}
.ths_button a{
	text-decoration: none;
	color: black;
}
.ths_button:hover {
	background-color: black;
}
.ths_button:hover a {
	color: white;
}
.maxigmH {
	/*max-height: 50vh;*/
}
/* ↓ --------- THS-B5-Carousel-Slider mit eigener BU - see jquery */
/*	THS bootstrap 5 carousel addon
	center img, maxheight img, caption below */
.THScarousel5 {
	max-height: 50vh; /* bildhöhe begrenzen */
	max-width: 100%!important;
	width: auto!important;
	margin-right: auto!important; /* center img */
	margin-left: auto!important; /* center img */
	display: block!important; /* center img */
}
.carousel-caption-center {
	/* fix BU links unter dem Bild */
	transform: none;
}
.THS_B5_SLIDER {
	/*  maximale breite insgesamt? dann hier: 
	width:300px; */
}
.THS_B5_SLIDER_CAPTION{
}
.carousel-caption {  /* stdn captions ausschalten */
	display: none !important;
}
.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44' version='1.1' style='fill-rule:evenodd%3Bclip-rule:evenodd%3Bstroke-linejoin:round%3Bstroke-miterlimit:2%3B'%3E%3Cg transform='matrix(-1 0 0 1 27.301 0)'%3E%3Cpath id='arrow' d='M5.431 41.747L22.331 24.847L22.356 24.872L25.891 21.336L25.867 21.312L25.891 21.288L22.356 17.752L22.331 17.777L5.965 1.414L2.43 4.95L18.794 21.314L1.9 38.212L5.435 41.747M5.435 43.161L0.482 38.212L17.382 21.312L1.016 4.95L5.965 0L22.329 16.364L22.354 16.339L27.3 21.29L27.276 21.314L27.3 21.338L22.351 26.288L22.326 26.263L5.435 43.161Z' style='fill-rule:nonzero%3B'/%3E%3C/g%3E%3C/svg%3E")
}
.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44' style='fill-rule:evenodd%3Bclip-rule:evenodd%3Bstroke-linejoin:round%3Bstroke-miterlimit:2%3B'%3E%3Cg transform='matrix(1 0 0 1 -0.481 0)'%3E%3Cpath id='arrow' d='M5.431 41.747L22.331 24.847L22.356 24.872L25.891 21.336L25.867 21.312L25.891 21.288L22.356 17.752L22.331 17.777L5.965 1.414L2.43 4.95L18.794 21.314L1.9 38.212L5.435 41.747M5.435 43.161L0.482 38.212L17.382 21.312L1.016 4.95L5.965 0L22.329 16.364L22.354 16.339L27.3 21.29L27.276 21.314L27.3 21.338L22.351 26.288L22.326 26.263L5.435 43.161Z' style='fill-rule:nonzero%3B'/%3E%3C/g%3E%3C/svg%3E")
}
.carousel-control-next-icon, .carousel-control-prev-icon {
	width: 27px; height: 44px; transition: all .2s ease-out;
}
.carousel-control-next, .carousel-control-prev  {
	opacity: 1;
}
.carousel-control-next:hover, .carousel-control-prev:hover  {
	opacity: .5;
}
/*	end THS bootstrap 5 carousel addon -------------------- */
.nolinks a, .nolinks p a, .nolinksblack a, .nolinksblack p a{
	text-decoration: none!important;
	color: black!important;
	border: 0!important;
}
.nolinks a:hover {
	text-decoration: none!important;
	color: var(--CDcolor)!important;
	border: 0!important;
}
.imgfix {
	padding-top: 9px;
}
.min-vh-80 {
	min-height: 60vh;
}
/* ths ----------------------------------------- styles */
.editme {
	z-index:10000;
	color: #259503;
	background-color: rgba(246, 253, 53, 0.71);
	position: fixed;
	top: 0;
	left: 0;
	padding-top:7px;
	padding-left:7px;
	padding-right:7px;
	padding-bottom: 2px;
	font-weight: bold;
	font-size: 18px;
}
.editme:hover {
	background-color: rgba(53, 254, 249, 0.91);
}
.editme a {
	text-decoration: none;
	font-weight: bold;
}