/* Klaro
 * *******************************/
.klaro {
  --green1: #c30e2e;
  --blue1: #;
  --dark1: #333e48;
  --white3: #aaa;
}
.klaro a {
  font-weight: 600;
}
.klaro.cm-as-context-notice {
  margin: 0;
  padding: 0 !important;
}

/* Jiggy, Blank (News)
 * *******************************/
.jiggy-blank .link-more {
  text-align: center;
}

/* Seite, Standard
 * *******************************/
.page-standard {}
.page-standard .page-banner {
  position:relative;
  background:#333e48;
}
.page-standard .page-banner .banner-image {
  height:0;
  padding:0 0 38.1% 0;
}
.page-standard .page-banner .banner-title {
  padding:1rem;
  color:#fff;
  background:#c30e2e;
}
.page-standard .page-banner .banner-title:empty {
  display:none;
}
.page-standard .page-banner .banner-title a {
  color:#fff;
}
.page-standard .page-header {
  margin:0 0 1.3rem 0;
}
.page-standard .page-header h1,
.page-standard .page-header .subheadline {
  margin:0 0 0rem 0;
}
.page-standard .page-main {
  padding-top:3rem;
  padding-bottom:3rem;
}

.page-standard:nth-child(even) {
  background:#eee;
}

@media only screen and (min-width : 992px) {
  .page-standard .page-banner .banner-title {
    position:absolute;
    right:0;
    bottom:0;
  }
}

/* Seite, Google Maps
 * *******************************/
.page-maps #map {
  padding:0 0 38.1% 0;
}

/* Artikel, Standard
 * *******************************/
.articles {}
.articles .article {
  margin:0 0 2rem 0;
}
.articles .article .article-header {
  height:0;
  position:relative;
  margin:0 0 1rem 0;
  padding:0 0 58.3333% 0;
  background:#333e48;
}
.articles .article .article-header .article-headline {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  margin:0;
  padding:.5rem 1rem;
  background:rgba(195,14,46,.6);transition:background .2s ease;
}
.articles .article .article-header .article-headline :where(h2, .h2) {
  color:#fff;
  font-weight:300;
  margin:0;
}
.articles .article .article-header .article-headline .subheadline {
  height:0;
  overflow:hidden;
  margin:0;
  transition:height .2s ease;
  color:#fff;
  text-transform:none;
  font-weight:300;
}
.articles .article .article-header:hover .article-headline {
  background:#c30e2e;
}
.articles .article .article-header:hover .article-headline .subheadline {
  height:1.4rem;
}

.articles .article .article-image img {
  width:100%;
  height:auto;
}

@media only screen and (min-width : 992px) {
  .articles .article:nth-of-type(odd) {
    clear:both;
  }
  .articles.filtered .article:nth-of-type(odd) {
    clear:none;
  }
}

/* Artikel, Pagenavig
 * *******************************/
.pagenavig a {
  display:inline-block;
  margin-right:.25rem;
  background:#eeeeee;
  color:#333;
  width:2rem;
  height:2rem;
  line-height:2rem;
  text-align:center;
  text-decoration:none;
  transition:background .2s ease;
}
.pagenavig a:hover {
  background:#ddd;
}
.pagenavig a.a1 {
  background:#ddd;
}

/* Artikel, Filter
 * *******************************/
.articles-filter {
  margin-bottom:1rem;
  display:none;
}
.articles-filter .col {
  margin-bottom:1rem;
}
.articles-filter a {
  display:block;
  border:solid #333e48 1px;
  padding:.3rem;
  text-align:center;
  text-decoration:none;
  color:#333;
  font-size:.875rem;
  transition:background .2s ease, color.2s ease;
}
.articles-filter a:hover {
  background:#333e48;
  color:#fff;
}
.articles-filter a.active {
  background:#c30e2e;
  color:#fff;
}

/* Artikel, Zertifikate
 * *******************************/
.articles-zertifikate {}
.articles-zertifikate .article {
  margin:0 0 2rem 0;
}
.articles-zertifikate .article .article-image {
  height:0;
  padding:0 0 38.1% 0;
  position:relative;
  border:solid #ccc 1px;
}
.articles-zertifikate .article .article-image span {
  display:table-cell;
  position:absolute;
  left:0;
  top:0;
  right:0;
  bottom:0;
  padding:1rem;
  text-align:center;
  vertical-align:middle;
}
.articles-zertifikate .article .article-image img {
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  max-width:calc(100% - 2rem);
  max-height:calc(100% - 2rem);
  width:auto;
  height:auto;
  vertical-align:middle;
  display:inline-block;
}
.articles-zertifikate .article .article-content p {
  margin:0 0 .5em 0;
}

@media only screen and (min-width : 768px) {
  .articles-zertifikate .col:nth-of-type(odd) {
    clear:both;
  }

}

/* Seite, Bewerbung
 * *******************************/
@media only screen and (min-width : 768px) {
  .page-candidature .page-content-text {
    float:right;
  }
  .page-candidature .page-content-form {
  }
}
/* Galerie, Fancybox
 * *******************************/
.gallery {
  margin-bottom:0;
}
.gallery ul {
  margin-top:0;
  margin-bottom:0;
  padding:0;
  list-style:none;
}
.gallery ul li {
  margin:0 0 2rem 0;
}
.gallery ul li a {
  display:block;
  position:relative;
  height:0;
  padding:0 0 58.3333% 0;
  background:#333e48;
}
.gallery ul li a::after {
  display:block;
  content:'+';
  position:absolute;
  right:1.5rem;
  bottom:.5rem;
  width:2rem;
  height:2rem;
  line-height:2rem;
  text-align:center;
  color:#fff;
  background:rgba(195,14,46,.6);
  transition:background .2s ease;
}
.gallery ul li a:hover::after {
  background:#c30e2e;
}
.gallery ul li img {
  display:block;
  width:100%;
  height:auto;
}

/* Formulare
*********************************/
form p {
  margin-bottom:.75em;
}
div.p {
  margin-bottom:.75em;
}

fieldset {
  margin:0 0 1.3em 0;
  padding:3.3rem 1rem 1rem 1rem;
  border:0;
  background:#f5f5f5;
  position:relative;
}
fieldset legend {
  margin:0;
  padding:0;
  font-size:1rem;
  line-height:1.3em;
  font-weight:bold;
  text-transform:uppercase;
  color:#00949D;
  position:absolute;
  left:1rem;
  top:1rem;
}

.required label:after,
.required-span span.label:after,
.required-span span.label-indent:after,
.required-span span.label-block:after {
  content:'*';
}
input[type=text],
input[type=password],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=email],
input[type=month],
input[type=number],
input[type=search],
input[type=tel],
input[type=time],
input[type=url],
input[type=week],
textarea,
select {
  width:100%;
  margin:0;
  padding:.5rem;
  border:solid #aaa 1px;
}
input[type=text]:focus,
input[type=password]:focus,
input[type=date]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=email]:focus,
input[type=month]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=time]:focus,
input[type=url]:focus,
input[type=week]:focus,
textarea:focus,
select:focus {
  margin:0;
  border:solid #c30e2e 1px;
  outline:solid #c30e2e 1px;
}
textarea {
  height:12rem;
}
a.btn,
button,
input[type=submit] {
  display:inline-block;
  margin:0;
  padding:.5rem 1rem;
  padding:calc(.5rem + 1px) 1rem;
  border:0;
  cursor:pointer;
  background:#c30e2e;
  color:#fff;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .2s ease;
}
input[type=submit]::-moz-focus-inner {
  border: 0;
}
a.btn:hover,
button:hover,
input[type=submit]:hover {
  background-color:#a80c28;
}
.sendmail_emptyfield1 label,
label.sendmail_emptyfield1 {
  color:#f00;
}
.sendmail_emptyfield1 input.text,
input.sendmail_emptyfield1,
.sendmail_emptyfield1 textarea {
  border-color:#f00;
}
.message {
  border:solid #f6e468 1px;
  background:#ffffdb;
  padding:1rem;
  margin:0 0 1.3rem 0;
}
