@import "custom_fonts.css";

/*
NEWS-Modul  MitgliederListe  ROUTEN  ROUTENtheaterOVW  KACHELN  TOPbar SPRACHwechsel  
HEADER  Logo  HAUPTMENUE  OFFCanvas HeroSlider  Content  PopUp/WFmediabox  BOARDmembers  
FORMULAR  BOTTOM FOOTER  AccordeonPlugin  ImageWall
MEDIAQUERIES
*/

html {
  scroll-padding-top: 400px;
}
body {
  font-family: "Noto Sans", sans-serif;
  font-size: 18px;
  background-color: #ddd9d0;
  color: #252525;
}
#sp-main-body {
  background-color: #fff;
  padding: 20px 0 80px;
  max-width: 1360px;
  margin: 0 auto;
  
  .container {
    background-color: #fff;
  }
  .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
  .container:not(:has(.article-list)) {
    padding-left: 40px;
    padding-right: 40px;
    .highbox {margin: 0 -60px 0;padding: 1.5em 60px;}
  }
  
}


.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans", sans-serif;
  font-weight: 800;
  line-height: 1.2;
}
.h1, h1, .h2, h2 {color: #c0000c;}

.h1, h1 {font-size: clamp(2.00rem, 5.0vw, 4.00rem)}
.h2, h2 {font-size: clamp(1.55rem, 4.5vw, 3.00rem)}
.h3, h3 {font-size: clamp(1.20rem, 4.0vw, 2.25rem)}

.article-list .article .article-header h1,
.article-list .article .article-header h2,
.article-list .article .article-header h4 {
  font-size: clamp(1.20rem, 4.0vw, 2.25rem)
}

/* Startseite: Artikel-Header als Dachzeilen */
.home .article-header h2 a { 
  color: #c0000c !important;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 0.8em;
}

.page-header {padding-left: 20px;}


p, li {font-weight: 300;}
p {
  font-size: clamp(0.9rem, 3vw, 1.2rem);
  margin-top: 0;
  margin-bottom: 1.75rem;
}

strong {font-weight: 600;}

a:hover img {opacity: 0.8;}
a:focus, a:active {color: #c0000c;}

a[href="https://"], a[href="mailto:"], a[href="tel:"] {
  display: none!important;
}

#sp-seitenende {
  padding: 0 0 100px 0;
  margin-top: -70px;
}

.sp-module.back {
  padding-top: 1em;
  a::before {content: "<< ";}
}
.menu-anker {
    display: inline-block;
    transform: translateY(180px);
}

.featured-article-badge {display: none; visibility: hidden;}

.iframe-mode {
  #sp-header-top, #sp-header, #sp-hero,
  #sp-seitenende, #sp-bottom, #sp-footer {
    display: none;}
}

.spalte-2 {
  margin-top: 1em;
  column-count: 2; 
  column-gap:2em;
  column-width: 270px;
  column-rule-style:dotted; 
  column-rule-width:1px; 
  column-rule-color:silver;
  
  p {
   margin: 0 0 1.35rem 0;
   font-size: 1rem; 
   line-height: 1.35rem;
   text-align: justify; 
   hyphens:auto;
   orphans:2; 
   widows: 2;}

  h3 {
	font-size: 1.2rem; 
	line-height: 1.35rem;
	margin: 1.35rem 0 1.35rem 0;
	column-break-after: avoid;
	break-after: avoid-column;
	-webkit-column-break-inside:avoid;}
}

.button {
  padding: 0.5em 0.75em;
  color: #000;
  font-weight: 400;
}

.highbox {
  margin: 0 -40px 0;
  padding: 1.5em 40px;
}
.gold  {background-color: #EEBC55;}
.beige {background-color: #f6f5f2;}
.boxed {border: 2px solid #ad020f; background: #fff; color: #ad020f;}

.stripped .article-list > div > div:nth-child(2n) {
  background-color: #f6f5f2;
}

.rounded {border-radius: 7px;}

.img-lable {
  display: block;
  width: max-content;
  border-radius: 7px;
  position: relative;
  top: -4em;
  left: -1em;
  padding: 0.75em 1.5em;
  font-size: 80%;
  font-weight: 600;
  background-color: #eee;
}
.red {color: #fff; background-color: #ad020f;}


/* NEWS-Modul */

.news-modul {

  img {border-radius: 7px 7px 0 0;}
  .kachel {background-color: #fff; padding: 15px 20px;}
  ul.mod-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 2em;}
  ul.mod-list li {
    border-bottom: 1px solid rgba(0,0,0,0.5);
    padding: 8px 5px;
    font-size: 90%;
  }

}


/* MitgliederListe */
.mitglied {
  margin: 2em 20px 2em 0;
  width: 47%;
  display: inline-block;
  padding: 0 0 0 10px;
  hyphens: auto;
  border-left: 2px solid rgba(0,0,0,0.3);
  
  p {margin: 0.35em;}

  .icon {
    display: inline-block;
    margin: 0.5em 0.5em 0.5em 0;
    max-width: 20px;}
  .icon:hover {opacity: 0.5;}
  
  .name {font-weight: 600;}
  .city {text-transform: uppercase;}
  .country {font-style: italic;}

  .address::before {content: "•"; padding: 0 5px 0 0;}

}

/* ROUTEN */
.routelist {
  position: absolute;
  right: 20px;
  padding: 10px 10px 0px 20px;
  background: rgba(256, 256, 256, 0.5);
  border: 1px solid rgba(0,0,0,0.2);
  
  ul {
    list-style: none;
    padding-left: 0px;}
  ul li {
    font-size: 0.8em;
    line-height: 1.7;
    font-weight: 400;}
}

/* RoutenSeiten ohne Header */
.route-ovw {
  /*#sp-main-body {padding: 130px 0 80px;}*/
  #sp-main-body {padding: 0 20px 80px; margin: -10px auto 0;}
  .wf-columns > .wf-column:first-child {padding: 1em 1em 0 0;}

  .sp-megamenu-wrapper {
    /*background-color: rgba(255,255,255,0.7);*/
    padding-bottom: 1em;}
  .burger-icon > span {filter: drop-shadow(0 0 3px black);}
  .header-sticky .burger-icon > span {filter: drop-shadow(0 0 0 white);}

  .headerbox {margin-bottom: -90px;}
  .headerimg {margin: 0 -35px 0; margin: 0 -60px 0;}
  .headertxt {
    transform: translateY(-150px);
    filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.99));
    h1 {font-size: 2.2em; color: #fff; line-height: 1.2;}
    h3 {font-size: 90%; line-height: 1.5; color: #f6f5f2; font-style: italic;}
    h5 {font-size: 0.8em; text-transform: uppercase; color: #E7CED1; font-weight: 600;}
  }
  iframe {
    height: 420px;
    border: 0;
    background-color: #F0EFEB;
    padding: 15px;
    border-radius: 7px;
  }
  /* .routeframe {border: 20px solid #F6F5F2; border-radius: 5px;} */
}

.mapinfo {
  img {display: inline-block; max-width: 25px;}
  p {font-size: 0.8rem; padding-left: 15px;}
}
.route-main .mapinfo {margin-top: -1em;}

/* RoutenNavi */
.route-navi {
  ul {padding-left: 0;}
  
  li {
    display: inline-block;
    margin-right: 1em;
    line-height: clamp(2.5rem, 12vw, 4rem);}
  
  a, li:not(.current) a:hover {
    border: 1px solid #ad020f;
    background-color: #ad020f;
    color: #fff;
    padding: 0.35em 0.75em;
    border-radius: 5px;
    font-size: clamp(0.8rem, 3vw, 1.0rem);
    font-weight: 500;}
  
  a:hover, li:not(.current) a {
    background-color: #fff;
    color: #ad020f;}
}

.route-main .route-navi {
  
  li:not(.current) a {
    border: 1px solid #ad020f;
    background-color: #ad020f;
    color: #fff;
    font-size: clamp(0.8rem, 3vw, 1.0rem);}
  
   li:not(.current) a:hover {
    background-color: #fff;
    color: #ad020f;}
}



/* ROUTENiFrame */
.view-wrapper {
  #sp-main-body {padding: 0 0 100px 0;}
}

/* ROUTENtheaterOVW */
.theatre-ovw {
  padding-top: 3em;
  padding-bottom: 3em;
  
  .wf-columns {margin-bottom: 1.5em;}
  .wf-columns > .wf-column:first-child {padding: inherit;}
  h3 {margin-bottom: 1em;}
  h2, .wf-column h3 {
    text-transform: uppercase;
    font-size: 0.7em;
    font-weight: 600;
    letter-spacing: 0.07em;
    margin-bottom: 0;
  }
  
  .wf-column {
    padding: 0 12px !important;
  
    img {border-radius: 7px 7px 0 0}
    h3 {color: #c0000c; padding-top: 1em; font-size: 0.65em;}
    h4 {font-size: 0.95em; margin-bottom: 0;}
    p em {font-size: 80%; font-weight: 400;}
    p:has(img) {margin: 0px -12px;}
    p:has(em) {margin-bottom: 0;}
    a {
      border: 1px solid rgba(0,0,0,0.5);
      font-size: 0.8em;
      font-weight: 500;
      padding: 0.15em 0.5em;
      margin-top: 0.75em;
      display: block;
      width: fit-content;}
    a:hover {background-color: #ad020f; color: #fff;}
    a:before {content: ""}
    a:after  {content: " >"}
  }

  .wf-column:has(:empty) {
    background-color: #fff;
    border-radius: 7px;
    border: 1px solid rgba(0,0,0,0.15);
  }

} /* Ende .theatre-ovw */








/* KACHELN */
.sp-module.kacheln {
  margin-top: 0;
  margin-bottom: 8em;
}

.kacheln .wf-columns {
  flex-wrap: wrap;
}
.kacheln .wf-columns .wf-column {
  max-width: 100%;
  flex: auto;
  margin-bottom: -6.3em;
}
.kacheln.vier  .wf-columns .wf-column {width: 24%;}
.kacheln.sechs .wf-columns .wf-column {width: 33%;}

.kacheln h3 {
  transform: translateY(3em);
  background: rgba(256,256,256,0.85);
  padding: 0.5em 0;
  z-index: 2;
  position: relative;
}
.kacheln .wf-column:has(a:hover) h3 {
  background: rgba(173, 2, 15, 0.85);
  color: #fff;
}

.kacheln a {
  z-index: 1;
  position: relative;
}
.kacheln a:hover img {
  opacity: 1;
}

.kacheln .text {
  display: none;
  background-color: rgba(256,256,256,0.85);
  height: 35%;
}

.kacheln .wf-column:has(a:hover) .text {
  display:block;
  position: relative;
  z-index: 3;
  top: -41%;
  padding: 5px;
  margin-bottom: -3em;
}


/* TOPbar SPRACHwechsel */
section#sp-header-top {
    background-color: rgba(256, 256, 256, 0);
    z-index: 9999;
    position: relative;
}
#sp-top2 {
  text-align: right;
  padding-right: 0;
}
#sp-top2 .sp-module {
    display: inline-block;
    padding: 5px 0 5px 5px;
}

.sp-module-content .mod-languages ul.lang-inline {
  margin: 0;
  padding: 0;
}
.sp-module-content .mod-languages ul.lang-inline li {
  border: none;
  display: inline-block;
  margin: 0;
  padding: 0 10px 0 5px;
  border-radius: 0px !important;
}
.sp-module-content .mod-languages ul.lang-inline li:first-child {
  border-right: 1px solid #ffffff;
}

div.mod-languages ul li.lang-active,
div.mod-languages ul li.lang-active a {
  background-color: rgba(0,0,0,0)!important;
  font-weight: 800 !important;
}

header div.mod-languages ul li.lang-active,
header div.mod-languages ul li.lang-active a {
  color: #c0000c!important;
  filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.25)) !important;
}
.sp-module-content .mod-languages ul.lang-inline li a {
  padding: 0 !important;
}

#sp-bottom .sp-module.sprache {text-align: right;}
#sp-bottom .sp-module.sprache ul>li {display: inline-block;}

header .sp-module.sprache ul > li > a {
  color: #fff;
  filter: drop-shadow(2px 2px 2px black);
  font-weight: 600;
}

/* HEADER */
#sp-header {
  width: 100%;
  position: relative;
  z-index: 99;
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.2);
  animation: spFadeIn 0s;
  background-color: rgba(256, 256, 256, 0);
}

#sp-header.header-sticky {
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    animation: spFadeInDown 0s;
    background-color: rgba(256, 256, 256, 0.95);
    height: 80px;
  
    .menu.main {padding-top: 20px;}
    .logo {height: 80px; max-width: 190px; margin-top: 0px;}
}


/* Logo */
#sp-header .logo {
  display: inline-flex;
  align-items: center;
  max-width: 240px;
  filter: drop-shadow(2px 2px 4px rgba(0,0,0,0.99));
  margin: 60px 0 0 20px;

  .logo-farbe {display: none;}
  .logo-weiss {display: block;}
}
  
#sp-header.header-sticky .logo {
  .logo-farbe {display: block;}
  .logo-weiss {display: none;}
  filter: drop-shadow(0px 0px 0px rgba(0,0,0,0));
}


/* HAUPTMENUE */
.sp-megamenu-wrapper {
    display: none;
}
#sp-menu > .sp-column {
  height: auto;
  width: fit-content;
  position: absolute;
  right: 20px;
}
.menu.main {
    list-style-type: none;
  	text-align: right;
  	padding-top: 50px;
  	position: absolute;
  	right: 25px;
}
.main li {
    display: inline;
    padding: 0 12px;
/*    border-right: 1px solid #000; */
    font-size: 1.5rem;
  	font-weight: 300;
}
.main li:last-child {
    padding: 0 0 0 17px;
/*    border-right: 0px solid #000; */
    word-spacing: -0.1em;
}

.main .current.active a {
    font-weight: 500;
  	color: #c0000c;
}

a.narrow {max-width: 290px;}
.en-gb a.narrow {max-width: 280px;}
.sp-megamenu-parent > li > a.narrow {
    line-height: 22px;
    padding: 6px 14px 8px 0;
}


/* MegaMenu */
.sp-megamenu-parent>li>a, .sp-megamenu-parent>li>span {
  font-size: 1.2em; 
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent li.sp-menu-item a:hover,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
  color: #ad020f;
}

#sp-header.header-sticky {
 
  .sp-megamenu-parent>li>a,
  .sp-megamenu-parent>li>span {
    line-height: 80px;}

}


/* MegaMenu VERTIKAL */

#sp-menu > .sp-column {
  flex-direction: column;
  align-items: flex-end !important;
  margin-top: 15px;
}
.sp-module.sprache, .sp-module.suche {margin: 15px;}

.sp-megamenu-parent {
  text-align: right;
  filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.99));
  margin: 10px;
}
.sp-megamenu-parent > li {display: block;}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span {
  line-height: 35px;
  text-transform: uppercase;
  font-weight: 600;}
.sp-megamenu-parent > li.active > a {font-weight: 600;}
.sp-megamenu-parent > li:last-child > a {padding: 0px 15px;}

body.ltr .sp-megamenu-parent > li.sp-has-child > a::after,
body.ltr .sp-megamenu-parent > li.sp-has-child > span::after {
display: none;
}

.sp-megamenu-parent .sp-dropdown {
  position: relative;
  z-index: 0;
}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  background: rgba(0,0,0,0);
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0);
  padding: 0 20px 20px 0;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
  font-size: 20px;
  padding: 6px 0;
  font-weight: 400;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a::after {
  content: "•";
  margin-left: 6px;
  font-weight: 600;
}

#sp-header.header-sticky nav {display: none!important;}
#sp-header.header-sticky {
  & .sp-megamenu-parent > li > a, & .sp-megamenu-parent > li > span {
    line-height: inherit;
  }
}


/* OFFCanvas */
header #offcanvas-toggler {display: none !important;}
header.header-sticky #offcanvas-toggler {display: flex !important;}

#offcanvas-toggler {
  display: block;
  height: 40px;
  line-height: 90px;
  font-size: 35px;
  margin-right: 20px;
}
#offcanvas-toggler > .fa {color: #21575c;}

.burger-icon {width: 40px;}
.burger-icon > span {height: 5px;}
.offcanvas-active .burger-icon > span:nth-child(1), #modal-menu-toggler.active .burger-icon > span:nth-child(1) {
  transform: translate(0, 11px) rotate(-45deg);}
.offcanvas-active .burger-icon > span:nth-child(3), #modal-menu-toggler.active .burger-icon > span:nth-child(3) {
  transform: translate(0, -8px) rotate(45deg);}



.offcanvas-menu {width: 330px;}
body.ltr.offcanvs-position-right .offcanvas-menu {right: -360px;}
.offcanvas-menu .menu.main {text-align: left;position: relative;right: 0px;}
.offcanvas-menu .offcanvas-inner {padding: 10px 5px 20px 10px !important;}
.offcanvas-menu .offcanvas-inner .sp-module:not(:last-child) {margin-bottom: 10px;}
.offcanvas-menu .offcanvas-inner .sp-module.home {margin-bottom: 5px;}
.offcanvas-menu .offcanvas-inner .sp-module ul > li a,
.offcanvas-menu .offcanvas-inner .sp-module ul > li span {
    font-size: 1rem;
	padding: 0.2rem 0;
}
.offcanvas-menu .sp-module.social {margin-top: 30px;}
.offcanvas-menu .sp-module.social,
.offcanvas-menu .sp-module.top.language {
    float: none;
}
.offcanvas-menu .offcanvas-inner .sp-module ul.social,
.offcanvas-menu .offcanvas-inner .sp-module ul.social > li,
.offcanvas-menu .offcanvas-inner .sp-module ul.social > li a,
.offcanvas-menu .offcanvas-inner .sp-module ul.social > li span,
.offcanvas-menu .offcanvas-inner .sp-module ul.lang-inline,
.offcanvas-menu .offcanvas-inner .sp-module ul.lang-inline > li,
.offcanvas-menu .offcanvas-inner .sp-module ul.lang-inline > li a,
.offcanvas-menu .offcanvas-inner .sp-module ul.lang-inline > li span {
  	display: inline;
}
.offcanvas-menu .offcanvas-inner .sp-module ul.social > li a,
.offcanvas-menu .offcanvas-inner .sp-module ul.social > li span {
  	display: inline;
  	font-size: 2.5rem;
  	padding: 0 5px 0 0;
}
.offcanvas-menu .offcanvas-inner .sp-module ul.social > li:first-child {
    padding-right: 10px;
}
.offcanvas-menu.border-menu .offcanvas-inner ul.menu > li > a,
.offcanvas-menu.border-menu .offcanvas-inner ul.menu > li > .nav-header {
  padding: 15px 0px 15px 10px;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li.current a,
.offcanvas-menu .offcanvas-inner .sp-module ul > li.current span {
    color: #ad020f;
  	font-weight: 500;
}



.offcanvas-menu .home a {letter-spacing: 0.05rem;}
.offcanvas-menu .menu.basis li {line-height: 1.5; text-transform: none;}
.offcanvas-menu .sp-module.top.language a, .offcanvas-menu .sp-module.top.language a:visited {font-weight: 500;}
.offcanvas-menu .lang-inline li {margin-right: 5px !important;}


.offcanvas-inner .cookie a {
    color: #000;
    text-transform: none;
    font-size: 0.9em;
}

.offcanvas-menu .offcanvas-inner ul.menu > li {
  padding: 0.2em 0;
  font-weight: 400;
}
.offcanvas-menu .offcanvas-inner ul.menu > li > a,
.offcanvas-menu .offcanvas-inner ul.menu > li > span {
  opacity: 1;
}
.offcanvas-menu .offcanvas-inner ul.menu > li a,
.offcanvas-menu .offcanvas-inner ul.menu > li span {
  color: #000;
}

/* Klick auf Menü-Item(Namen) öffnet Submenü */
body.ltr .offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > a > .menu-toggler, 
body.ltr .offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > .menu-separator > .menu-toggler,
.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent li.menu-parent .menu-toggler {
  right: auto;width: 99%;}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent li.menu-parent .menu-toggler::after,
.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > a > .menu-toggler::after, 
.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > .menu-separator > .menu-toggler::after {
  float: right;} 



/* HeroSlider */
section#sp-hero {
  max-width: 1360px;
  margin: 0 auto;
}
#sp-hero .container {
  max-width: 1400px;
}
.slide-desc-text-default {
  padding: 15px 0 10px 40px !important;
  font-family: Playfair Display;
  /*margin-bottom: 60px;*/
}
.slide-desc-text-default .slide-title {
  /*font-family: 'PLAYFAIR DISPLAY';
  font-style: italic;*/
  font-size: clamp(1.5rem, 5vw, 4.5rem) !important;
  color: #fff;
  font-weight: 700 !important;
  margin-bottom: -8px !important;
  filter: drop-shadow(2px 3px 4px black);
}
.slide-desc-text-default .slide-text p {
  font-size: clamp(1.25rem, 4vw, 3.5rem) !important;
  filter: drop-shadow(2px 4px 6px black);
  min-height: 0.75em;
}


/* Content */
.article-list .article {
    position: relative;
    margin-bottom: 30px;
    padding: 50px 25px 10px;
    border: 0px solid #fff;
    border-radius: 0px;
}
.botborder .article-list .article {
    border-bottom: 1px dotted rgba(0, 0, 0, 0.8);
}

.article-details:not(has(headerbox)) {padding-top: 80px;}


/* PopUp/WFmediabox */
.wf-mediabox-body {
  .article-details .article-header h1 {font-size: 1.75em;}
  p, li {line-height: 1.75;}
  
}

.wf-mediabox-body {
  max-width: 1200px !important;
}
[class^="wf-mediabox"], .wf-mediabox-numbers * {font-family: inherit !important;}
.wf-mediabox-content {overflow-x: hidden !important;}



/* BOARDmembers */
ul.mod-articles-items {
  list-style: none;
  padding-left: 0;  

  .mod-articles-title, .readmore {font-size: clamp(0.95em, 2vw, 1.2em);}
  
  .article-intro-image {margin: 0 0 5px !important;}
  .readmore {margin-top: -1.5em;}
}                    

.article-full-image.board {
  max-width: 250px;
  float: right;
  margin: 5em 0 1em 2em;
}
@container (width >= 768px) {.mod-articles-grid {grid-template-columns: 1fr 1fr 1fr 1fr;}}
@container (width < 768px)  {.mod-articles-grid {grid-template-columns: 1fr 1fr 1fr;}}
@container (width < 480px)  {.mod-articles-grid {grid-template-columns: 1fr 1fr;}}



/* FORMULAR */
.spacer label {margin-left: 0.5em !important;}

.display {
  input {
    border: none !important;
    background-color: #eee !important;
    text-align: right !important;
    width: 80px !important;
  }
  .cf-control-label, .cf-control-input,
  .cf-control-input input, .cf-control-input-desc {
    width: max-content;
    display: inline-block;
    margin-right: 1em;
  }
  .cf-control-input input {transform: translateY(-0.6em);}
}



/* BOTTOM FOOTER */
#sp-footer, #sp-bottom {
  background: #ad020f;
  color: #ffffff;
  max-width: 1360px;
  margin: auto;
  .container {padding: 0 40px;}
}
#sp-bottom {font-size: 1em}
#sp-bottom .sp-module {margin-bottom: 0px;}

#sp-footer a, #sp-bottom a {
  color: #ffffff;
}

#sp-bottom .sp-module .sp-module-title,
#sp-footer .sp-module .sp-module-title {
  color: #ffffff;
  font-size: 1.2em;
  font-weight: 600;
  margin: 0 0 0.5em!important;
}

#sp-bottom .sp-module ul > li {
  display: block;
  margin-bottom: 5px;
}
#sp-bottom .sp-module ul > li > a {
  display: inline-block;
  width: max-content;
}

.right .menu {
  text-align: right;
  padding: 1em 20px 0 0 !important;

  li {font-weight: 500;}
}

#sp-footer {
  padding: 0 0 40px 0;

  .logo {max-width: 200px;}
  #sp-footer2 {
    text-align: right;
    align-content: end;
    padding-right: 40px;
  }

}


/* SUCHE */
#sp-bottom .sp-module.suche {text-align: right;}


/*  AccordeonPlugin */
#dummy {
  display: none;
}

.ssl-outer {
  border: 0px;
  border-radius: 0px;
  margin-bottom: -1px;
  border-bottom: 1px dotted #333;
}

.ssl-title {
  border-top: 1px dotted #333;
  font-size: clamp(0.9rem, 3vw, 1.2rem);
  font-weight: 300;
  padding: 8px 0px 8px 6px;
  margin-bottom: 0px;
  color: #333;
}

.ssl-title:hover {
  background-color: #eee;
  color: #333;
}

.ssl-title-open {
  background-color: rgba(1, 1, 1, 0);
  font-weight: 500;
}

.ssl-title::after {
  content: "";
  width: 1em;
  height: auto;
  display: block;
  position: relative;
  float: right;
  opacity: 0.7;
  margin: 0 10px 0 0;
}

.ssl-title::after {
  content: url('/images/template/angle-down.svg');
}

.ssl-title.ssl-title-open::after {
  content: url('/images/template/angle-up.svg');
}

.ssl-content {
  padding: 0.5em 0 1.5em 2em;
  border-top: 0px;
  max-width: 95%;
}


/* Gallery */
.boxplusx-dialog {
  padding: 10px;
  max-width: 94% !important;
}


/* ImageWall */
.imagewall {
  img {border-radius: 15px;padding: 6px 0;}
  .full {
    height: 100%;
    padding: 0;
    margin-top: 9px;
  }
  
  p {margin-bottom: 0;}
  p:has(img) + p {
    position: relative;
    top: -45px;
    color: #fff;
    left: 10px;
    line-height: 1.1;
    filter: drop-shadow(0 0 4px #000);
    font-size: 0.9em;
    height: 0px;
  }
  p:has(.full) + p {top: -38px !important;}
  
}
/*.imagewall p:has(img) + p {display: none;}*/



/* ############################################# */
/* ################ MEDIAQUERIES ############### */
.desktop {display: block;}
.mobil   {display: none;}

@media screen and (max-width: 992px) {
  
  #sp-header-top,
  .menu.main.desktop {
    display: none;
  }
  #sp-header nav {display: none!important;}
  header #offcanvas-toggler {display: flex !important;}
  #sp-header {height: 0px;}
  #sp-header .logo {
    height: 80px;
    padding: 5px;
    max-width: 250px;
    margin: 0px 0 0 20px;
  }
  #sp-header.header-sticky {background-color: rgba(256, 256, 256, 0.95);}

  .burger-icon > span {background-color: #fff;}
  .header-sticky .burger-icon > span {background-color: #000;}
  


}


@media screen and (max-width: 880px) {
  .mitglied {width: 100%; margin: 0.75em 20px 0.75em 0;}
}


@media screen and (max-height: 600px) {
  .offcanvas-menu.border-menu .offcanvas-inner ul.menu > li > a,
  .offcanvas-menu.border-menu .offcanvas-inner ul.menu > li > .nav-header {
    padding: 7px 10px 7px 10px;
  }
}


@media screen and (max-width: 600px) {
  .desktop {display: none;}
  .mobil   {display: block;}
  
  #sp-main {hyphens: auto;} 

  .container {padding-left: 0; padding-right: 0;}
  #sp-footer, #sp-bottom { .container {padding: 0 0 0 20px;} }
  #sp-main-body { .container:not(:has(.article-list)) {padding-left: 20px; padding-right: 20px;} }
  
  .kacheln .wf-columns .wf-column {
    width: 49%;
    margin-bottom: -6.3em;
  }
  .ssl-content {
    padding: 0;
    max-width: 100%;
  }

  .slide-desc-text-default {padding: 15px 0 0 20px !important; margin-bottom: 10px;}
  .slide-text p {margin-bottom: 0.5rem;}
  /*
  .route-navi.mobil   {display: block;}
  .route-navi.desktop {display: none;}
  */
  .route-ovw {
    .headerbox {margin-bottom: 0px;}
    .headerimg {margin: 0 -35px 0;}
    .headertxt {
      transform: translateY(25px);
      filter: drop-shadow(0 0 0 rgba(0,0,0,0));
    h1 {font-size: 2.2em; color: #c0000c; line-height: 1.2;}
    h3 {font-size: 90%; color: #252525;font-weight: 600;}
    h5 {font-size: 0.8em; text-transform: uppercase; color: #252525; font-weight: 400;}
    } 
  }

}

@media screen and (max-width: 500px) {
  
  section#sp-hero {margin-top: 0;}

  .article-full-image.board {
    max-width: 100%;
    float: none;
    margin: 0 0 1em 0;
  }

}