@import url("vertical.css");
@import url("fonts.css");

::-moz-selection { background: rgba(78, 157, 166, 1); color: #fff; text-shadow: none; }
::selection { background: rgba(78, 157, 166, 1); color: #fff; text-shadow: none; }


/* - allgemein - */

body
{
    font-family: 'Lato', sans-serif;
    font-size: 17px;
    /*text-align: center;*/
    background-color: #f2f2f2;
    font-weight: 300;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6
{
	font-weight: 400;
	/*text-align: center;*/
	color: rgba(78, 157, 166, 1);
}

h1
{
	font-family: 'Playfair Display', serif;
	font-size: 40px;
	color: rgba(78, 157, 166, 1);
	margin: 20px 0px;
}

h2
{
	font-family: 'Playfair Display', serif;
	font-size: 35px;
	color: rgba(78, 157, 166, 1);
	margin: 20px 0px;
}

h3
{
	font-family: 'Playfair Display', serif;
	font-size: 23px;
	margin: 20px 0px;
}


h2::after, h3::after, h5::after, h6::after
{
    background-color: rgba(78, 157, 166, 1);
    content: "";
    display: block;
    height: 1px;
    margin: 0.3em 0;
		/*margin: 0.3em auto;*/
    position: relative;
    width: 100%;
}

a, a:hover, a:visited, a:focus, a:active
{
	color: rgba(78, 157, 166, 1);
}

td
{
	/*text-align: left;*/
	font-size: 15px;
}

b, strong,
thead td
/*td:first-child*/
{
	font-weight: 400;
}



/* - inhalt - */
.carousel-text {
	position: absolute;
	margin-left: 3%;
	margin-top: 20%;
	background: rgba(255, 255, 255, 0.85) none repeat;
}

.carousel-link
  {
    position: absolute;
    margin-top: 28%;
  }

@media ( max-width: 767px) {
  .carousel-link
  {
    position: absolute;
    margin-top: 23%;
  }
}

.header
{
	margin-top: 65px;
}

.box
{
	background-color: #fff;
	margin: 40px 0px 10px;
	padding: 20px 35px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.box-nl
{
	background-color: #fff;
	margin: 5px 0px;
	padding: 10px 35px 0 35px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

#termine .panel-heading { padding: 0px;}
#termine h3 { margin: 0px; padding: 23px 0px 5px 0px;}

.teaserbox, .sportartenslider
{
	margin-bottom: 10px;
}

.teaserbox p, .sportartenslider p
{ 
	margin-bottom: 0px;
	padding: 20px 10px;
	background-color: #fff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.sportartenslider a
{
	font-size:16px;
}


.termine-datum
{
	float: left;
	margin-right: 15px;
	min-height: 80px;
	width: 80px;
	background-color: rgba(78, 157, 166, 1);
	text-align:center;
	color:#FFF;
	position: absolute;
	padding-top: 3px;
}

.termin-icon
{
	 float: right;
	 margin-left: 15px;
	 min-height: 80px;
	 width: 80px;
	 text-align: center;
}

.termin-icon span
{
	padding: 23px;
}

.termin-beschreibung 
{
	padding: 15px 80px;
}

.panel-group .panel
{
	border-radius: 0px;
}

.panel-group .panel + .panel 
{
    margin-top: 10px;
}

.panel-heading
{
	padding: 0px 10px;
}
	
.panel-body
{
	padding: 20px 150px 40px 150px;
}

@media ( max-width: 767px) {
	h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h1 .small, .h1 .small, h2 .small, .h2 .small, h3 .small, .h3 .small { font-size: 80%;}
}

.sportangebot
{
	padding: 0px;
	margin: 0px;
}

.slick-slide
{
	margin-top: 0px;
}

.header-map
{
	padding: 15px 0px;
}

.spalte_links
{
	/*border-right: 20px solid #f2f2f2;
	padding: 0px 0px 0px 15px;
	text-align: left;*/
}

#mehr .panel-body
{
	padding: 10px 15px 0px 15px;
}

.spalte_links #termine .panel-body, .magazin .panel-body
{
	padding: 20px 65px;
}

.spalte_rechts
{
	/*text-align: left;*/
	padding-right: 0px 15px 0px 0px;
}

.img-fluid
{
	background-image: url(../images/loading.gif);
	background-position: center;
	background-repeat: no-repeat;
}

#accordion
{
	margin-left: -15px;
	margin-right: -15;
}

#accordion .panel
{
	border: none;
	box-shadow: none;
}

.rot
{
	color: rgba(78, 157, 166, 1);
}


.btn-default a { text-decoration: none; color: #333;}

.btn-default,
.btn-default:hover,
.btn-default:visited,
.btn-default:focus,
.btn-default:active
{
    background-color: rgba(78, 157, 166, 1);
    border-color: rgba(78, 157, 166, 1);
    color: #fff;
}

.btn-default:hover
{
    background-color: rgb(74, 105, 105);
    border-color: rgba(78, 157, 166, 1);
    color: #fff;
}

.btn-default:hover span, .btn-default:hover i, .btn-default:hover a {
    color: #fff;
}

/* - footer - */

footer
{
	font-family: 'Lato', sans-serif;
	color: #FFF;
	font-size: 14px;
	background-color: rgba(78, 157, 166, 1);	
	padding: 30px 0px;
	margin-top: 30px;
	border-top: 1px solid #FFF;
	text-align: center;
}

footer a, footer a:hover, footer a:visited
{
	color: #FFF;
}

footer ul, footer ol
{ 
	list-style: none;
	padding: 0px;
}

footer .row
{
	margin: 0px;
	background-color: inherit;
}

@media (max-width: 991px) {
	.navbar-nav > li > a
	{
		padding-left: 10px;
		padding-right: 10px;
		text-align: center;
	}

	.dropdown-item
	{text-align: center;}

	.panel-body
	{
		padding: 20px 100px 40px 100px;
	}
}

@media (max-width: 767px) {
	.navbar-brand
	{
		padding: 5px;
	}
	
	.navbar-brand img
	{
		/*max-width: 50%;
		position: absolute;*/
	}
}

@media (max-width: 479px) {
	body
	{
		font-size: 15px;
	}
	
	h2
	{
		font-size: 30px;
	}
	
	.box
	{
		padding: 20px;
	}
	
	.panel-body
	{
		padding: 20px;
	}
	
	.spalte_links #termine .panel-body
	{
		padding: 20px;
	}
}


@media (min-width: 1200px) {

}

.neu:before{content:"\f005"}

.klaro .cookie-notice .cm-btn.cm-btn-danger
{
    background-color: rgba(78, 157, 166, 1);
}

.klaro .cookie-modal a, .klaro .cookie-notice a {
    color: #FFF;
    text-decoration: underline;
}

.klaro .cookie-notice a {
    display: block;
}


.border
{
	border: 1px solid silver;
	background-color: #fcfcfc;
	padding:10px;
}

/*.btn, .btn:hover
{
	background-color: rgba(78, 157, 166, 1);
	color: #FFF;
	margin-bottom:5px;
}*/


.bg-light
{
border-color: #fff;
background-color: #FFF !important;
box-shadow: 0px 2px 15px rgba(18, 66, 101, 0.08);
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: rgba(78, 157, 166, 1);
}

.accordion-button:focus {
  z-index: 3;
  border-color: none !important;
  outline: 0;
}

.accordion-button:not(.collapsed) {
  color: rgba(78, 157, 166, 1);
  background-color: #FFF;
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}

.accordion-button:focus {
  z-index: 3;
  border-color: none !important;
  outline: 0;
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}

.accordion-item{
margin-top: 2px;
}


.accordion-button {
padding: 0 1rem 0 0;
}

.dropdown-menu {
  border-radius: 0;
}

.socials
{
	font-size: 1.5rem;
}

.socials i
{
	padding-right: 1rem;
}


.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23638585'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}

.dropdown-item
{
	font-weight: 300;
}

a.dropdown-item 
{color: rgba(0,0,0,.55) !important;}

a.dropdown-item:focus, a.dropdown-item:hover {
  color: #FFF !important;
  background-color: rgba(78, 157, 166, 1);
}

/*li.active a.dropdown-item
{
	color: #FFF !important;
  background-color: rgba(78, 157, 166, 1);
}*/

.accordion-button
{
  color: rgba(78, 157, 166, 1);
}