@font-face {
  font-family: "Merriweather";
  src: url("../fonts/Merriweather/Merriweather-Regular.ttf")
}
@font-face {
  font-family: "OpenSans";
  src: url("../fonts/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf")
}
@font-face {
  font-family: "SourceSerifPro";
  src: url("../fonts/source-serif-pro/SourceSerifPro-Regular.otf")
}
@font-face {
  font-family: "Cardo";
  src: url("../fonts/Cardo/Cardo-Regular.ttf")
}

:root {
  --link-color-rgb: rgb(240,95,64);
}

h1, h2, h3 {font-family: "Cardo", serif; font-style: normal; font-weight: 400; color: rgba(77,77,77,.7);}
body {font-family: "OpenSans", sans-serif;}

a {text-decoration: none; transition: all 0.35s; color: #F05F40;}

.btn-secondary {color: #F05F40; font-weight: bold;}
.container-header {display: flex;}
/* Menü Umbruchverhalten */
.container-header .grid-child {width: 100%;}
@media screen and (min-width: 993px){
 .container-header .grid-child {width: auto;}
}

/* Der Seitenkopf von Cassiopeia hat die Klasse "header" du steuerst diese also mit .header an */

.header {
    background: white; /*rgb(2,0,36);
	background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(119,9,121,1) 35%, rgba(0,212,255,1) 100%); */
}

/* Das Dropdown-Menu im Menu färbst du mit der Klasse .metismenu.mod-menu .mm-collapse ein */

.metismenu.mod-menu .mm-collapse {
  background: #475BAF; color: black;
}

/* Die Links im Dropdown Menu musst du dann auch einzeln ansteuern */
.metismenu.mod-menu .mm-collapse .metismenu-item a {
    color: black;
}
.metismenu.mod-menu {font-weight: bold; color: gray;}
.metismenu-item a {color: gray;}
.container-header .navbar-toggler {color: gray;}
.metismenu.mod-menu a:hover, .metismenu-item.active {color: #F05F40; }




.card._4kacheln {flex: 0 1 calc(100% - 0.5em);}
._4kacheln .card-body {padding: 0;}

.left.item-image {float: left; margin-right: 1.5em;}
.right.item-image {float: right; margin-left: 1.5em;}

.termin {font-weight: bold; color: rgb(168, 17, 28); color: white; background: rgb(168,17,28); padding: 5px;}
/* li.terminfeld span.field-value::after {content: " Uhr";} */
.fields-container .veranstaltungsdetail {
  
  font-weight: bold;
  color: rgb(168, 17, 28);
  
}

.com-content-article .page-header {margin-bottom: 2em;} /* Artikelüberschrift */
.angebotstext h3 {margin-top: .2em;} /* Überschrift Angebote Startseite*/



.pagination {
  display: flex;
  flex-flow: column;
}
.pagination ul{
  display: flex;
  flex-wrap: wrap;
}
.pagination li {
  padding: .7em 2em;
  list-style-type: none;
}

.moduletable._angebote ul, .moduletable._angebote-startseite ul {
  	display: flex;
	flex-wrap: wrap;
  padding: 0;
  justify-content: center;
}
.moduletable._angebote li, .moduletable._angebote-startseite li {
	display: flex;
	height: 12em;
    width: 12em;
	align-items: center;
	text-align: center;
  	background-color: #f0f0f0;
	border: white 2px solid;
}
.moduletable._angebote li:hover, .moduletable._angebote-startseite li:hover {
  background-color: #A8111C;
  color: white; 
  transition: all ease 0.8s;
}
.moduletable._angebote li a, .moduletable._angebote-startseite li a{
	width: 7em;
	padding: 80px 0;
  font-family: 'source-serif-pro', serif;
font-style: normal;
font-weight: 400;
  font-size: 2em;
}
.moduletable._angebote-startseite li {height: 10em;}
.moduletable._angebote-startseite li a {width: 5em;}
.hrs-widget, .rechts {
  float: right;
  padding: 0 0 0 1em;
}
.links {
  float: left;
  padding: 0 1em 0 0;
}
.fotobox {
  max-width: 100%;
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
}

.menu_tel {
  text-transform: uppercase;
  font-weight: 700;
  padding: 15px;
}
.item-116 {/*margin-top: 15px;*/color: black;}
.menu_tel span { padding: 15px;}

/* Call to action*/
.moduletable._CallToAction, #mod-custom111, _CallToAction {
  margin: 0em 0 0 0;
  padding: 0;
}
.custom_CallToAction, #mod-custom111 {
  display: flex;
  flex-flow: row wrap;
    justify-content: center;
  align-content: space-around;
}
.CallToAction_knopf {
	flex-basis: 20em;
  	/*border: #F05F40 2px solid;*/
	
	border-radius: 2em;
	text-align: center;
	font-weight: bold;
  margin: 1em; 2em;
}
.CallToAction_knopf a {
  padding: 10px;
  display: block;
  border-radius: 2em;
  border: #F05F40 2px solid;
}
.CallToAction_knopf a:hover {
  background-color: #A8111C;
  border: #A8111C 2px solid;
}
.moduletable._CallToAction p{
  margin: 0;
  padding: 0;
}


/* Startseitenangebote */
.moduletable._startseitenangebot{
  background-color: #f0f0f0;
  margin-bottom: 1em;
}
.moduletable._startseitenangebot .angebotstext {
  padding: 0 3em;
}
.angebotstext {
  text-align: center;
}
.angebotstext li{
  list-style-type: none;
}
/* Startseitenangebote - Ende */

/* Testimonials */
.moduletable._testimonial {
  font-size: 60%;
  padding: 5em;
  text-align: center;
  min-height: 30em;
}
.moduletable._testimonial p {
  font-size: 1.2em;
}
/* Testimonials Ende */

/* 4kacheln */
.moduletable_4kacheln, _4kacheln {
  margin-bottom: 1em;
}
/* 4kacheln Ende */

h2 {
  font-size: 2.8em;
margin-bottom: .5em;
}
h3 {
  font-size: 2.3em;
margin-bottom: .5em;
}

.container {margin: 4em 0 2em 0;}

.container1 {
    /*max-width: 1600px;*/
  max-width: 1400px;
    margin: 0 auto;
	padding: 0 2em;
}

.img_caption {
  font-size: .9em;
}

img {max-width: 100%; height: auto;}

.item-image img {margin-bottom: 2em;}

#sponsoren {
  max-width: 100%;
}
.teaser01 {
  padding: 5em;
  margin: 5em 0 0 0;
}

/*** 4 Vorschaubilder Text/Bild ***/
/*.vorschaubilder4 {
    display: flex;
  flex-wrap: wrap;
}
.vorschaubilder4 img {
    max-width: 100%;
}
.bild {
      max-width: 50%;
}*/
.vorschaubilder4 {display: flex; flex-wrap: wrap;}
.bild {position: relative; width: 50%;}
.vorschaubilder4 img {display: block; width: 100%; height: auto;}
.vorschaubilder4 .overlay {position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 1; transition: .8s; background-color: #A8111C;}
.bild:hover .overlay {opacity: 0;}
.vorschaubilder4 .text {color: white; font-size: 1em; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%);text-align: center;font-family: 'source-serif-pro', serif; font-style: normal;
font-weight: 400;}


.moduletable_laufband {margin-top: 5em;}

  /* Fußzeile */
.footercontainer {
  display: flex;
  flex-direction: column;
  background-color: #A8111C;
  color: white;
  justify-content: space-around;
  padding: 2em;
  margin: 0 0 2em 0;
}
.footercontainer h3 {color: white;font-size: 2em;}

/* Login */
.moduletable_login{
  background:#eeeeee;
  padding: 1em;
  margin: 0 0 1em 0;
}
.input-prepend {
    display: flex;
}
.add-on, .control-label {
    min-width: 10em;
}
.controls,.control-group, .logout-button {
  margin: 1em 0;
} 
/* Login Ende */


/* Kontaktformular */
#ff_elem8 {
    min-height: 150px;
}

/** card-styles **/
figure {margin:0 0 2em 0;}
figcaption {padding-top: .5em; font-size: .9em;}

.cards img, .bannergroup_sponsoren img {
  display: block;
  border: 0;
  width: 100%;
  height: auto;
}

.card, .banneritem {background: white; margin-bottom: 2em;}
.card a, .banneritem a {color: #707070; text-decoration: none;}
.card a:hover, .banneritem a:hover {box-shadow: 3px 3px 8px hsl(0, 0%, 70%);}
.card-content {padding: 1.4em;}
.card-content h2 {margin: .5em 0; font-weight: normal; font-size: 1.5em;}
.card-content p {font-weight: normal; font-size: 90%;}

/** card-styles Flexboxeigenschaften **/

@media screen and (min-width: 30em){
  .bild {width: 50%;}
.cards, .bannergroup_sponsoren {
  display: flex; 
  justify-content: space-between; 
  flex-wrap: wrap;
  background-color: #eeeeee;
  padding: 1em;
}
  .cards img:hover, .bannergroup_sponsoren img:hover {
    width: 105%;
    height: auto;
}
.card, .banneritem {
  /*flex: 0 1 calc(50% - 1em);*/
  flex: 0 1 calc(50% - 1em);
  background-color: #f1f1f1;
  
  display: flex;
  transition: all 2s;
}
  h2 {font-size: 4em;}
  h3 {font-size: 3em;}
  .footercontainer {flex-direction: column; padding-left: 2em;}
  .footercontainer h3 {color: white; font-size: 2.5em;}
  
@media screen and (min-width: 40em){
  .bild {width: 25%;}
  .vorschaubilder4 .text {font-size: 2em;}
.card, .banneritem {
  /*flex: 0 1 calc(50% - 1em);*/
  flex: 0 1 calc(33% - 1em);
  background-color: #f1f1f1;
  
  display: flex;
  transition: all 2s;
}
    .footercontainer {flex-direction: row; padding-left: 0;}
    .footercontainer h3 {color: white; font-size: 2.0em;}
}
  .bild {
      max-width: 25%;
}

@media screen and (min-width: 60em){
    .bild {width: 50%;}
  .vorschaubilder4 .text {font-size: 3em;}
.card, .banneritem {
  /*flex: 0 1 calc(33% - 1em);*/
  flex: 0 1 calc(20% - 1em);
  background-color: #f1f1f1;
  transition: all 2s;
}
    .footercontainer h3 {color: white; font-size: 3em;}
}

  /* Social-Media-Icons */
.social-icon-bar {
  display: flex;
  gap: 0.75em;
  align-items: center;
  justify-content: flex-end; /* oder center/left – je nach Wunsch */
  padding: 1.5em 1em;
}

.social-icon-bar a img {
  width: 24px;
  height: 24px;
  transition: transform 0.3s ease;
}

.social-icon-bar a:hover img {
  transform: scale(1.1);
}
