/* Jiggys
*********************************/

.jiggy {
  margin:0 0 1.5rem 0;
  border:solid var(--violett) .3125rem;
  font-size:.875rem;
}
.jiggy .jiggy-header h4 {
  background:var(--violett);
  color:#fff;
  padding:.3125rem 0;
  display:inline;
  font-size:1.125rem;
  line-height:1.6;
  font-weight:700;
  font-style:italic;
  margin: 0 10px 0 0;
  box-shadow: .625rem 0 0 var(--violett), -.625rem 0 0 var(--violett);
  position: relative;
  left: .625rem;

  -webkit-box-decoration-break: clone;
  -ms-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone;
}
.jiggy .jiggy-image {
  padding:0 .625rem;
  margin:0 0 .625rem 0;
}
.jiggy .jiggy-main {
  padding:.625rem;
}
.jiggy .jiggy-main :last-child {
  margin-bottom:0;
}

/* Jiggy, Header
*********************************/
.header-jiggy {}
.header-jiggy h4 {
  font-size:.875rem;
  color:#fff;
  margin:0 0 .375rem 0;
  font-weight:bold;
  text-align: center;
}

/* Jiggy-Artikel, Unterstuetzer
*********************************/
/* .jiggy-articles-unterstuetzer {}
.jiggy-articles-unterstuetzer .article {}
.jiggy-articles-unterstuetzer .article p {} */

/* Jiggy-Artikel, Veranstaltungen
*********************************/
.jiggy-articles-veranstaltungen {}
.jiggy-articles-veranstaltungen .article {
  margin:0 0 .5em 0;
  padding:0 0 .5em 0;
  border-bottom:solid #d1d600 1px;
}
.jiggy-articles-veranstaltungen .article:last-child {
  margin:0;
  padding:0;
  border-bottom:0;
}
.jiggy-articles-veranstaltungen .article .article-image {

}
.jiggy-articles-veranstaltungen .article .date {
  margin:0;
}
.jiggy-articles-veranstaltungen .article h5 {
  margin:0;
}
.jiggy-articles-veranstaltungen .article .subheadline {
  margin:0;
}

#main .jiggy-articles-veranstaltungen .article {
  padding-top:1rem;
  padding-bottom:1rem;
}
#main .jiggy-articles-veranstaltungen .article .article-image {
  flex:0 0 20%;
}

#rightbar .jiggy-articles-veranstaltungen .article .article-image {
  display:none;
}

/* Jiggy, Kalender
*********************************/
.jiggy-calendar .calendar-header {
  display:none;
}
.jiggy-calendar .day {
  box-shadow:none !important;
}
.jiggy-calendar .day[style] {
  /*box-shadow:var(--blue-dark) 0px -4px 0px 0px inset !important;*/
  background:var(--violett);
  color: #fff;
  
}
.jiggy-calendar .calendar table.month tr td .day-content {
  border-radius: 0;
}

/* Jiggy, Start, Veranstaltungen
*********************************/
.jiggy-articles-teaser {}
.jiggy-articles-teaser ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.jiggy-articles-teaser li {
  margin: 0;
  padding: var(--gutter);
  border: solid var(--green-light) 2px;
}
.jiggy-articles-teaser .date {
  margin: 0;
}
.jiggy-articles-teaser .headline {
  margin: 0;
}
.jiggy-articles-teaser .content {
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;  
  overflow: hidden;
}

/* Jiggy, Teaser
*********************************/
.jiggy-teaser > * {
  margin-block: 1rem;
}
.jiggy-teaser > *:first-child {
  margin-top: 0;
}
.jiggy-teaser > *:last-child {
  margin-bottom: 0;
}

/* Seite, Standard
*********************************/
.page-standard {}
.page-header {
  margin:0 0 1.5rem 0;
}
.page-header * {
  margin:0;
}

/* Seite, Start
*********************************/
.page-start {
  display: flex;
  flex-direction: column;
  gap: calc(var(--gutter) * 2);
}
.page-start__main > * {
  margin-block: calc(var(--gutter) * 2);
}
.page-start__main > *:first-child {
  margin-top: 0;
}
.page-start__main > *:last-child {
  margin-bottom: 0;
}
.page-start__aside {
  display: grid;
  gap: var(--gutter);
}
@media only screen and (min-width : 992px) {
  .page-start__aside {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Seite, Kategorieuebersicht
********************************/
.pages-overview ul {
  margin:0 -15px;
  padding:0;
  list-style:none;
  display:flex;
  flex-wrap: wrap;
}
.pages-overview ul li {
  margin:0 0 2rem 0;
  padding:0 1rem;
  flex:0 0 100%;
}
.pages-overview .page-overview-link {
  display:block;
  position:relative;
  overflow:hidden;
}
.pages-overview .page-overview-image {
  height:0;
  padding:0 0 50% 0;
  background-color:#ECECED;
  background-size:cover;
  background-position:50% 50%;
  transition:transform .2s ease;
}
.pages-overview .page-overview-link:hover .page-overview-image {
  transform: scale(1.05);
}
.pages-overview .page-overview-image-overlay {
  position:absolute;
  left:0;
  top:0;
  right:0;
  bottom:0;
  z-index:1;
  background-color:#000;
  opacity:.25;
}
.pages-overview .page-overview-title {
  position:absolute;
  bottom:.5rem;
  left:1rem;
  right:1rem;
  z-index:2;
  text-align: center;
  color:#fff;
  text-shadow:2px 2px 0 rgba(0,0,0,.5);
  font-size:1.5rem;
}

@media only screen and (min-width : 768px) {
  .pages-overview ul li {
    flex:0 0 50%;
    max-width: 50%;
  }
}

/* Seite, Sitemap
********************************/
.sitemap ul {
  margin:0;
}
.sitemap > ul > li {
  list-style:none;
  margin:0 0 1.3rem 0;
}
.sitemap > ul > li > a {
  font-weight:bold;
}

/* Seite, Google Maps
********************************/
.page-gmaps form.directions {
  display:flex;
}

/* Seite, Suche
********************************/
form.search {
  display:flex;
}
.articles-results .article h2 {
  margin:0 0 .5rem 0;
}
.articles-results .article .path {
  margin:0 0 .5rem 0;
  font-size:.875rem;
}


/* Artikel, Standard
*********************************/
.articles {
}
.articles .article {
  clear:both;
  border-top:solid var(--violett) 1px;
  padding:1.5rem 0;
  margin:0;
}
.articles .article .article-header {
  margin:0 0 1.3em 0;
}
.articles .article .article-header > * {
  margin:0;
}
.articles .article .article-image {}
.articles .article .article-image img {
  width:100%;
  height:auto;
}
.articles .article .article-content {}
.articles .article .article-content img {
  max-height:35rem;
}
.articles .article .article-image-full {
  margin-bottom: 1.5rem;
}
.articles .article .article-image-full img {
  max-width: 100%;
  max-height: 35rem;
  width:auto;
  height:auto;
}

@media only screen and (min-width : 768px) {
  .articles .article .article-image {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
    order:2;
  }
  .articles .article .article-image + .article-content {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
    order:1;
  }
}


/* Artikel, Standard, Detail
*********************************/
.article-detail {
  margin-bottom:3rem;
}
.article-detail .article-header {
  margin:0 0 2rem 0;
}
.article-detail .article-header > * {
  margin:0;
}
.article-detail .article-image {}
.article-detail .article-image img {
  width:100%;
  height:auto;
}
@media only screen and (min-width : 768px) {
  .article-detail .article-image {
    width:33.3333%;
    float:right;
    margin:0 0 1.5rem 2rem;
  }
}

/* Artikel, Veranstaltungen, Detail
*********************************/
.article-detail .jiggy-blank {
  margin-top:2rem;
  padding-top:2rem;
  border-top:solid #d1d600 1px;
}
.article-detail .jiggy-blank h4 {
  font-size:1.9rem;
  line-height:1.3;
  font-weight:normal;
}

#footer-container .jiggy-blank {
  margin-top:0;
  padding-top:0;
  border:0;
}
#footer-container .jiggy-blank h4 {
  font-weight:700;
}

/* Artikel, Veranstaltungen, Filter
*********************************/
.articles-years-filter {
  margin:0 0 1.5rem 0;
  border-bottom:solid #4b5e6f .3125rem;
  overflow-x:auto;
}
.articles-years-filter ul {
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  justify-content: flex-start;
}
.articles-years-filter ul li {
  margin:0 .25rem 0 0;
  padding:0;
}
.articles-years-filter ul li a {
  display:block;
  padding:.4375rem;
  border:solid #ECECED;
  border-width:1px 1px 0 1px;
  color:#4b5e6f;
  text-decoration:none;
  transition:color .2s ease, background .2s ease, border-color .2s ease;
}
.articles-years-filter ul li a:hover {
  background:#4b5e6f;
  border-color:#4b5e6f;
  color:#fff;
}

.articles-years-filter ul li.a1 > a {
  background:#4b5e6f;
  border-color:#4b5e6f;
  color:#fff;
}


/* Artikel, Mitarbeiter
*********************************/
.articles-mitarbeiter .article {
  border-top:solid #ccc 1px;
  padding:1rem 0 0 0;
  margin:0 0 1rem 0;
}
.articles-mitarbeiter .article .article-header {
  margin:0 0 1.3rem 0;
}
.articles-mitarbeiter .article .article-header h2,
.articles-mitarbeiter .article .article-header .subheadline {
  margin-bottom:0;
}
.link-email {
  display:none;
}

/* Artikel, Newsletter
 **********************************/
.articles-newsletter {}
.articles-newsletter .article {}
.articles-newsletter .article h2 {
  font-size:1rem;
  margin:0;
  font-weight:600;
}

/* Artikel, Akkordeon
 **********************************/
.articles-accordion .accordion-trigger {
  cursor:pointer;
  position:relative;
  padding-right:2rem;
}
.articles-accordion .accordion-trigger.active::after {
  position:absolute;
  right:0;
  top:0;
  content:'X';
}

/* Artikel, Pagination
 * *******************************/
.nv-pages {
  display:flex;
}
.nv-pages ul {
  margin:0;
  padding:0;
  list-style: none;
  display:flex;
}
.nv-pages ul li {
  margin:0;
  padding:0;
}
.nv-pages a {
  display:block;
  text-decoration: none;
  min-width:2.5rem;
  height:2.5rem;
  line-height:1.5rem;
  text-align: center;
  margin-right:.25rem;
  padding:.5rem;
  border:solid var(--violett-light) 1px;
  color:var(--violett);
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.nv-pages a:hover {
  background:var(--violett);
  border-color:var(--violett);
  color:#fff;
}
.nv-pages a.a1 {
    background: var(--violett);
    border-color:var(--violett);
    color:#fff;
}

/* Google Maps
*********************************/
.gmap {
  height:24rem;
  margin:0 0 2.5rem 0;
}

/* Formulare
*********************************/
form {
  margin:0 0 2.5rem 0;
}
form p {
  clear:both;
  margin:0 0 .75em 0;
}

fieldset {
  margin:0 0 1.5rem 0;
  padding:0;
  border:0;
}
fieldset legend {
}

.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 {
  width:100%;
  margin:0;
  padding:.375rem;
  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 {
  margin:0;
  border:solid #1e90ff 1px;
}
textarea {
  height:12rem;
}
a.btn {
  display:inline-block;
  margin:0;
  padding:.375rem 1rem;
  border:solid #9a9e01 1px;
  cursor:pointer;
  background:#9a9e01;
  color:#fff;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .2s ease, border-color .2s ease;
}
button {
  display:inline-block;
  margin:0;
  padding:.375rem 1rem;
  border:solid var(--violett) 1px;
  cursor:pointer;
  background: var(--violett);
  color:#fff;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .2s ease, border-color .2s ease;
}
input[type=submit] {
  display:inline-block;
  margin:0;
  padding:.375rem 1rem;
  border:solid var(--violett) 1px;
  cursor:pointer;
  background:var(--violett);
  color:#fff;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .2s ease, border-color .2s ease;
}
input[type=submit]::-moz-focus-inner {
  border: 0;
}
a.btn:hover {
  background-color: var(--violett-dark);
  border-color:var(--violett-dark);
}
button:hover {
  background-color: var(--violett);
  border-color:var(--violett);
}
[type=submit]:hover {
  background-color: var(--violett-dark);
  border-color: var(--violett-dark);
}
.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:5px;
  margin:0 0 .8em 0;
}