/*!
 * Copyright 2020
 */

/*   Schriften                                */

/* pt-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/dist/fonts/pt-sans-v17-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 400;
  src: url('/dist/fonts/pt-sans-v17-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: url('/dist/fonts/pt-sans-v17-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}





body {
  font-family: 'PT Sans', sans-serif;
  font-size: 100%;
  color:#707070;
}
html {
  font-family: 'PT Sans', sans-serif;
  font-size: 100%;
  color:#707070;
}


/*   Main-Grid                                */

/*    breakpoint: 0px;                        */

body.maingrid {  
  display: grid;
  grid-template-areas: 
    "assistivrow assistivrow assistivrow"
    ". logoRow ."
    "header header header"
    "nav nav nav"
    ". content ."
    "footer footer footer";
  grid-template-columns: 1fr 1200px 1fr;
  grid-template-rows: 50px 195px auto auto auto auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

body#home.maingrid {  
  display: grid;
  grid-template-areas: 
    "assistivrow"
    "logoRow"
    "header"
    "nav"
    "content"
    "footer";
  grid-template-columns: 1fr;
  grid-template-rows: 50px 195px auto auto auto auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

.logorow {
  grid-area: logoRow;
  display: grid;
  grid-template-areas: ". logo .";
  grid-template-columns: 1fr 1200px 1fr;
  position:relative;
  }  

.logo {
  grid-area: logo;
  display: grid;
  grid-template-areas: "pagelogo . buttonspenden . buttonkontakt . langswitch langswitch langswitch";
  grid-template-columns: 1fr 310px 1fr 42px 1fr 50px 1fr 1fr 1fr;
  grid-template-rows: 83%;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: transparent;
  justify-items: start;
  align-items: end;
  justify-content: start;
  position: relative;
  }  
.logo.mbst {
  grid-area: logo;
  display: grid;
  grid-template-areas: "pagelogo . buttonspenden . buttonkontakt . langswitch langswitch langswitch";
  grid-template-areas: "pagelogo . langswitch langswitch langswitch langswitch langswitch langswitch langswitch";
  grid-template-columns: 1fr 310px 1fr 42px 1fr 50px 1fr 1fr 1fr;
  grid-template-rows: 83%;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: transparent;
  justify-items: start;
  align-items: end;
  justify-content: start;
  position: relative;
  }  


.page-logo { 
  grid-area: pagelogo;
  }
.button-spenden { 
  grid-area: buttonspenden;
  //margin: 30px 0px 0px 295px;
  }
.button-kontakt { 
  grid-area: buttonkontakt;
  //margin: 30px 0px 0px 42px;
  }

.assistivrow {
    display: grid;
    grid-area: assistivrow;
    grid-template-areas: "assistivbox";
    border-bottom: 1px solid #eeeeee;
    position: relative;
    justify-items:center;
}
.assistivbox {
    display: grid;
    grid-area: assistivbox;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: 
    "fs-switch gs-nav ls-nav";
    max-width: 1200px;
    width: 100%;
    position: relative;
}
  .leichersprache {
   display: grid;
   grid-area: ls-nav;
   place-self: center end;
   position: relative;
   right: 30px;
  }
  .leichersprache a {
    font-size: 1.15em;
    font-weight: 400;
    line-height: 20px;
    color: #3c3c3c;
    text-decoration: none;
    text-transform: uppercase;
    padding: 4px 0px 3px 28px;
    background: transparent url(/images/elemente/sprache-leicht.png) no-repeat center left;
    background-size: contain;
  }
  .leichersprache a:hover,
  .leichersprache.self a {
    color: #a5037c;
    background-image: url(/images/elemente/sprache-leicht-on.png);
  }
  .gebaerdensprache {
   display: grid;
   grid-area: gs-nav;
   place-self: center center;
   position: relative;
  }
  .gebaerdensprache a {
    font-size: 1.15em;
    font-weight: 400;
    line-height: 20px;
    color: #3c3c3c;
    text-decoration: none;
    text-transform: uppercase;
    padding: 4px 0px 3px 28px;
    background: transparent url(/images/elemente/sprache-gebaerden.png) no-repeat center left;
    background-size: contain;
  }
  .gebaerdensprache a:hover,
  .gebaerdensprache.self a {
    color: #a5037c;
    background-image: url(/images/elemente/sprache-gebaerden-on.png);
  }

 .fontswitcher {
   position:absolute;
   grid-area: fs-switch;
   place-self: center start;
   left:80px;
   padding: 1px 4px 2px 6px;
   font-size:18px;
   font-weight:bold;
   color:#3c3c3c;
   border:2px solid #a5037c;
   border:2px solid #3c3c3c;
   border-radius:3px;
  }
 .fontswitcher:hover {
   color:#a5037c;
   border:2px solid #a5037c;
  }
 .fontswitcher a {
   color:inherit;
  }

 .fontswitcher ba:hover {
   color:#a5037c;
  }

  .langswitchbox {
   grid-area: langswitch;
   right: 7px;
   bottom: 8px;
  }
  a.langswitch {
   font-size: 1.15em;
   font-weight: bold;
   line-height: 20px;
   color: #ab0b80;
   text-decoration: none;
   text-transform: uppercase;
   padding: 0px 27px 1px 0px;
   padding: 0px 6px 1px 0px;
  }
  a.langswitch:first-child {
   border-right: 2px solid #ab0b80;
   padding: 0px 5px 1px 0px;
  }
  a.langswitch.en:hover {
   color: #a5037c;
  }

  .langswitchbox a.langswitch.en {color: #3c3c3c;}
  .langswitchbox a.langswitch.de { color: #ab0b80;}
  .langswitchbox.en a.langswitch.de {color: #3c3c3c;}
  .langswitchbox.en a.langswitch.en {color: #ab0b80;}
  .langswitchbox a.langswitch.de:hover,
  .langswitchbox a.langswitch.en:hover {
   color: #ab0b80 !important;
  }


  .logo.mbst .headtextbox {
   grid-area: langswitch;
   //padding-top:51px;
   padding-bottom:10px;
  }
  .logo.mbst .headtextbox h1 {
   font-size: 3.14rem;
   margin-bottom: 0rem;
   line-height: 0.95em;
   text-align: right;
  }
  .logo.mbst .headtextbox h1 span {
   display: block;
   font-size: 0.44em;
   font-weight: normal;
  }
  .logo.mbst .headtextbox a {
   display: block;
   font-size: 1.85em;
   text-align: right;
   line-height: 1em;
   margin-bottom: 17px;
   margin-top: -7px;
  }

  #pageHeader.maedchenberatung .button-kontakt {
   background-image:url(/images/elemente/balk-kontakt.png);
   background-position:left center;
   background-repeat: repeat-x;
   position: absolute;
   height: 89px;
   top: -44px;
   padding-right: calc((100% - 1200px) / 2);
   padding-left: 0px;
   right:0;
   font-size: 1.5em;
   font-weight: normal;
   color:#ffffff;
  }
  #pageHeader.maedchenberatung .button-kontakt img {
   margin-left: -44px;
   padding-right: 15px;
  }
  #pageHeader.maedchenberatung .button-kontakt:hover {
   color:#9b9d9e;
  }
@media all and (max-width: 992px) {

 #pageHeader.maedchenberatung .button-kontakt {
   z-index:10;
   top: -70px;
   padding-right: 20px;
  }
}  

  #pageHeader.maedchenberatung .button-spenden {
   background-position:left center;
   background-repeat: repeat-x;
   position: absolute;
   height: 89px;
   width: auto;
   top: -44px;
   margin-right: calc(((100% - 1200px) / 2) + 210px);
   padding-left: 0px;
   right:0;
   font-size: 1.5em;
   font-weight: normal;
   color:#ffffff;
  }
  #pageHeader.maedchenberatung .button-spenden img {
   height: 89px;
   width: auto;
   margin-left: 0px;
   padding-right: 0px;
  }
  #pageHeader.maedchenberatung .button-spenden:hover {
   color:#9b9d9e;
  }
@media all and (max-width: 1200px) {

 #pageHeader.maedchenberatung .button-spenden {
   z-index:10;
   top: -44px;
   padding-right: 20px;
   margin-right: 210px;
  }
}  
@media all and (max-width: 992px) {

 #pageHeader.maedchenberatung .button-spenden {
   top: -70px;
  }
}  
@media all and (max-width: 600px) {

 #pageHeader.maedchenberatung .button-spenden {
   top: -70px;
   margin-right: 190px;
  }
}  



header.headOn {
  height: 450px;
  }
header.home { background-image:url(/images/headbilder/header-home.png), url(/images/headbilder/header-home-bg.png); }
header.einfachesprache { background-image:url(/images/headbilder/header-einfachesprache.png), url(/images/headbilder/header-einfachesprache-bg.png); }
header.frauenberatungsstelle { background-image:url(/images/headbilder/header-frauenberatungsstelle.png), url(/images/headbilder/header-frauenberatungsstelle-bg.png); }
header.frauenhaus { background-image:url(/images/headbilder/header-frauenhaus.png), url(/images/headbilder/header-frauenhaus-bg.png); }
header.maedchenberatung { background-image:url(/images/headbilder/header-maedchenberatung.png), url(/images/headbilder/header-maedchenberatung-bg.png); }
header.onlineberatung { background-image:url(/images/headbilder/header-onlineberatung.png), url(/images/headbilder/header-onlineberatung-bg.png); }
header.service { background-image:url(/images/headbilder/header-service.png), url(/images/headbilder/header-service-bg.png); }
header.verein { background-image:url(/images/headbilder/header-verein.png), url(/images/headbilder/header-verein-bg.png); }

header.headOn img.teaserraushier {
  top: 322px;
  }
header img.teaserraushier {
  top: 50px;
  }


nav {  
  grid-area:nav;
  display: grid;
  grid-template-areas: ". mainNav mainNav mainNav mainNav mainNav mainNav mainNav mainNav .";
  grid-template-columns: 1fr 150px 150px 150px 150px 150px 150px 150px 150px 1fr;
  //grid-template-rows: auto;
  grid-template-rows: 44px;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  background-color:#a5037c;
  position: sticky;
  top: 0;
  z-index: 5;
  }  
.mainnav {
  grid-area:mainNav;
  display: grid;
  grid-template-areas: 
   "navi navi navi navi navi navi navi navi navi navi navi navi";
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr ;
  grid-template-rows: auto;
  //grid-template-rows: 400px;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: start;
  }

main {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "article article article article article article article . aside aside aside aside";
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 75px 100px 100px 100px 100px ;
  grid-template-rows: auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

main.oneCol {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    ". . article article article article article article article article . .";
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr ;
  grid-template-rows: auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

main.twoCols {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    ". article sidebar .";
  grid-template-columns: 1fr 725px 400px ;
  grid-template-rows: auto;
  grid-column-gap: 75px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

main.lsCol {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    ". article article article article article article article article article article .";
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr ;
  grid-template-rows: auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  


/*   Seite Home                                */

main.homeRows {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "starttext starttext starttext"
    "article1 article2 article3"
    "sponsoren sponsoren sponsoren";
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto auto auto;
  grid-column-gap: 60px;
  grid-row-gap: 35px;
  justify-content: center;
  padding-top:0px;
  }  

main.homeRows {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "startrow"
    "swiperRow"
    "einspalter"
    "dreispalter";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  grid-row-gap: 35px;
  justify-content: center;
  padding-top:0px;
  }  

main.homeRows {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "startrow"
    "sliderRow"
    "swiperRow"
    "einspalter"
    "dreispalter";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  grid-row-gap: 35px;
  justify-content: center;
  padding-top:0px;
  }  

main.homeRows.mbst {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "columnsrow"
    "startrow"
    "sponsorrow";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  grid-row-gap: 35px;
  justify-content: center;
  padding-top:0px;
  }  
main.homeRows.mbst .columnsrow {  
   display: grid;
   grid-area:columnsrow;
   grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
   grid-gap: 0rem;
   width:100%;
   max-width:1200px;
   justify-self: center;
   margin-top:70px;
   }
main.homeRows.mbst .columnsrow .column1 {  
   background-color:#a5037c;
   color:#ffffff;
   padding:50px 20px 30px 20px;
   background-image:url(/images/elemente/sonne1-box1.png), url(/images/elemente/sonne2-box1.png);
   background-position:90% 70%, -4% 103%;
   background-repeat:no-repeat, no-repeat;
  }
main.homeRows.mbst .columnsrow .column1 h2 {  
   color:#ffffff;
   font-size: 3.90rem;
   font-weight: normal;
   align-self: end;
  }
main.homeRows.mbst .columnsrow .column2 {  
   background-color:#faf2f8;
   padding:50px 30px 30px 30px;
  }
main.homeRows.mbst .columnsrow .column2 h2 {  
   font-size: 2.20rem;
   font-weight: normal;
   align-self: end;
  }
main.homeRows.mbst .columnsrow .column2 ul {
  padding-left:18px;
  }
main.homeRows.mbst .columnsrow .column3 {  
   background-color:#f2d9eb;
   padding:50px 30px 30px 30px;
   background-image:url(/images/elemente/sonne-box3.png), url(/images/elemente/blume-box3.png);
   background-position: 130% -7%, 50% 100%;
   background-repeat:no-repeat, no-repeat;
  }main.homeRows.mbst .columnsrow .column3 h2 {  
   font-size: 2.20rem;
   font-weight: normal;
   align-self: end;
  }
main.homeRows.mbst .columnsrow .column3 h3 {  
   font-size: 2.20rem;
   font-weight: normal;
   align-self: end;
  }
main.homeRows.mbst .startrow {
   background: transparent;
 }
main.homeRows.mbst .startrow .starttext h2 {
    font-size: 2.20rem;
    font-weight: normal;
 }
main.homeRows.mbst .sponsorrow {
   display: grid;
   grid-area: sponsorrow;
   grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
   grid-gap: 0rem;
  width: 100%;
   max-width: 1200px;
   justify-self: center;
   justify-content: start;
   margin-top: 10px;
   border-top: 1px solid #dedede;
 }

 .sliderrow {  
  grid-area:sliderRow;
  display: grid;
  grid-template-areas:
    ". slidertext .";
  grid-template-columns: 1fr 1200px 1fr;
  grid-template-rows: auto;
  }
 .slidertext {  
   grid-area:slidertext;
   padding: 30px 0px 30px 0px;
   overflow:hidden;
  }

 .startrow {  
  grid-area:startrow;
  display: grid;
  grid-template-areas:
    ". starttext .";
  grid-template-columns: 1fr 1200px 1fr;
  grid-template-rows: auto;
   background: #f6e5f2;
  }
 .starttext {  
   grid-area:starttext;
   padding: 30px 0px 30px 0px;
  }
 .swiperrow {  
  grid-area:swiperRow;
  }

 .einspalter {  
  grid-area:einspalter;
  display: grid;
  grid-template-areas:
    ". spalte .";
  grid-template-columns: 1fr 1200px 1fr;
  grid-template-rows: auto;
  grid-column-gap: 60px;
  grid-row-gap: 35px;
  justify-content: center;
  }
 .spalte {  
   grid-area:spalte;
   margin: 0px 0px 0px 0px;
  }

 .dreispalter {  
  grid-area:dreispalter;
  display: grid;
  grid-template-areas:
    ". spalte1 spalte2 spalte3 ."
    ". sponsoren sponsoren sponsoren .";
  grid-template-columns: 1fr 360px 360px 360px 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 60px;
  grid-row-gap: 35px;
  justify-content: center;
  }
 .spalte1 {  
   display: grid;
   grid-area:spalte1;
   grid-template-columns: 1fr;
   grid-template-rows: auto;
  }
 .spalte2 {  
   display: grid;
   grid-area:spalte2;
   grid-template-columns: 1fr;
   grid-template-rows: auto;
  }
 .spalte3 {  
   display: grid;
   grid-area:spalte3;
   grid-template-columns: 1fr;
   grid-template-rows: auto;
  }
 .spalte1 .kontaktbox, 
 .spalte2 .kontaktbox,  
 .spalte3 .kontaktbox {  
   border: 1px solid #eccbe4;
   padding: 10px;
   margin-left: -10px;
   margin-right: -10px;
  }
 .boxtext h2 {  
   font-size: 1.90rem;
   align-self: end;
  }
 .boxlink {  
   display: grid;
   align-self: end;
  }





 .sponsoren {  
   grid-area:sponsoren;
  }

 .sidebar {  
   grid-area:sidebar;
   padding: 0px 0px 0px 0px;
  }

/*                                               */





footer {  
  grid-area:footer;
  display: grid;
  grid-template-areas:
    ". footerNav footerNav footerNav footerNav footerNav footerNav footerNav footerNav ."
    ". serviceNav serviceNav serviceNav serviceNav serviceNav serviceNav serviceNav serviceNav .";
  grid-template-columns: 1fr 150px 150px 150px 150px 150px 150px 150px 150px 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  background:#faf2f8 url(/images/elemente/footer-border.png) no-repeat top center;
  background-color:#faf2f8!important;
  background-size:contain;
  }  






/*    breakpoint: 1200px;                     */
@media all and (max-width: 1200px) {

body.maingrid {  
  display: grid;
  grid-template-areas: 
    "assistivrow"
    "logoRow"
    "header"
    "nav nav nav nav nav nav nav nav"
    "content"
    "footer";
  grid-template-columns:1fr;
  grid-template-rows: 50px 16.25vw auto 45px 1fr auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

body#home.maingrid {  
  display: grid;
  grid-template-areas: 
    "assistivrow"
    "logoRow"
    "header"
    "nav"
    "content"
    "footer";
  grid-template-columns:1fr;
  grid-template-rows: 50px 16.25vw auto 45px 1fr auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

  .logorow {
    grid-area: logoRow;
    display: grid;
    grid-template-areas: ". logo .";
    grid-template-columns: 1fr;
  }  
  .logo {
    grid-area: logo;
    display: grid;
    grid-template-areas: "pagelogo . buttonspenden . buttonkontakt . langswitch langswitch";
    grid-template-columns: 1fr 20vw 1fr 3.5vw 1fr 4.16vw 1fr 1fr ;
    grid-template-columns: auto 20fr 1fr 3fr auto 4fr auto auto ;
    grid-template-rows: 83%;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    background-color: transparent;
    justify-items: start;
    align-items: end;
    justify-content: start;
    grid-column-start: 1;
    grid-column-end: end;
    padding-left: 20px;
    padding-right: 20px;
  }
  .logo.mbst {
    grid-area: logo;
    display: grid;
    grid-template-areas: "pagelogo . buttonspenden . buttonkontakt . langswitch langswitch";
    grid-template-columns: 1fr 20vw 1fr 3.5vw 1fr 4.16vw 1fr 1fr ;
    grid-template-columns: auto 20fr 1fr 3fr auto 4fr auto auto ;
    grid-template-rows: 83%;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    background-color: transparent;
    justify-items: start;
    align-items: end;
    justify-content: start;
    grid-column-start: 1;
    grid-column-end: end;
    padding-left: 20px;
    padding-right: 20px;
  }

  .sliderrow {
    grid-area: sliderRow;
    display: grid;
    grid-template-areas:
    "slidertext";
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
 .slidertext {  
   padding: 30px 10px 30px 10px;
  }


  .logo img.section-logo {
    width: 30vw;
    //margin-right: 0;
    //margin-left: 2vw;
}
  .logo img.section-spenden {  
    width: 10vw;
    //margin: 0 0 0 18vw;
  }
  .logo img.section-kontakt {  
   width: 10vw;
   //margin: 0 0 0 2vw;
  }


nav {
    grid-area: nav;
    display: grid;
    grid-template-areas: "mainNav mainNav mainNav mainNav mainNav mainNav mainNav mainNav";
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-content: center;
    background-color: #a5037c;
    position: sticky;
    top: 0;
  }

main.oneCol {
    grid-area: content;
    display: grid;
    grid-template-areas: "article article article article article article article article article article article article";
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-content: center;
}

main.twoCols {  
  grid-template-areas:
    "article sidebar";
  grid-template-columns: 60.41% 33.33% ;
  grid-column-gap: 5.00%;
  }  

main.lsCol {
    grid-area: content;
    display: grid;
    grid-template-areas: "article article article article article article article article article article article article";
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-content: center;
}

  footer {  
    grid-area:footer;
    display: grid;
    grid-template-areas:
      "footerNav footerNav footerNav footerNav footerNav footerNav footerNav footerNav"
      "serviceNav serviceNav serviceNav serviceNav serviceNav serviceNav serviceNav serviceNav";
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: auto auto;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-content: center;
    background:#faf2f8 url(/images/elemente/footer-border.png) no-repeat top center;
    background-color:#faf2f8!important;
    background-size:contain;
 }  

  header.headOn {
    height: 34.5vw;
  }

 .startrow {  
  grid-area:startrow;
  display: grid;
  grid-template-areas:
    "starttext starttext starttext";
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto;
   background: #f6e5f2;
  }

/*   Seite Home                                */

main.homeRows {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "starttext starttext starttext"
    "article1 article2 article3"
    "sponsoren sponsoren sponsoren";
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto auto auto;
  grid-column-gap: 60px;
  grid-row-gap: 35px;
  justify-content: center;
  padding-top:0px;
  }  

main.homeRows {  
  grid-area:content;
  display: grid;
  grid-template-areas:
    "startrow"
    "sliderRow"
    "einspalter"
    "dreispalter";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  grid-row-gap: 35px;
  justify-content: center;
  padding-top:0px 0px 0x 0px;
  }  

main.homeRows.mbst .sponsorrow {
  padding: 0px 20px 0px 20px;
 }
main.homeRows.mbst .sponsorrow img {
  margin-top:20px;
 }

  .einspalter {  
  grid-area:einspalter;
  display: grid;
  grid-template-areas:
    "spalte";
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-column-gap: 60px;
  grid-row-gap: 35px;
  justify-content: center;
  }
 .spalte {  
   margin: 0px 25px 0px 25px;
  }

 .startrow {  
  grid-area:startrow;
  display: grid;
  grid-template-areas:
    "starttext starttext starttext";
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto;
   background: #f6e5f2;
  }
 .starttext {  
   grid-area:starttext;
   padding: 30px 25px 30px 25px;
  }
 .dreispalter {  
  grid-area:dreispalter;
  display: grid;
  grid-template-areas:
    "spalte1 spalte2 spalte3"
    "sponsoren sponsoren sponsoren";
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 5%;
  grid-row-gap: 35px;
  justify-content: center;
   padding: 0px 25px 0px 25px;
  }


 main.twoCols article#mainArticle {  
   padding:0px 0px 0px 25px;
  }  
 main.twoCols sidebar {  
   padding:0px 25px 0px 0px;
  }  
 main.twoCols sidebar img {  
   width:100%;
  }  




/*                                               */




}/*    end breakpoint: 1200px;                 */


/*    breakpoint: 992px;                      */
@media all and (max-width: 992px) {

 body.maingrid {  
  display: grid;
  grid-template-areas: 
    "assistivrow"
    "logoRow"
    "nav"
    "header"
    "content"
    "footer";
  grid-template-columns: 1fr;
  grid-template-rows: 50px 16.25vw 54px auto 1fr auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  
 body.maingrid#home {  
  display: grid;
  grid-template-areas: 
    "assistivrow"
    "logoRow"
    "nav"
    "header"
    "content"
    "footer";
  grid-template-columns: 1fr;
  grid-template-rows: 50px 16.25vw 54px auto 1fr auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: center;
  }  

  nav {
    position: initial;
  }
 .mainnav {
    grid-area: mainNav;
    display: grid;
    grid-template-areas: "hamburger . . . . . . . . . . ."
    "navi navi navi navi navi navi navi navi navi navi navi navi";
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-content: start;
  }

 main {  
   grid-area:content;
   display: grid;
   grid-template-areas:
    "article"
    "aside";
   grid-template-columns: 1fr ;
   grid-template-rows: auto auto;
   grid-column-gap: 0px;
   grid-row-gap: 0px;
   justify-content: center;
  }  

 main.twoCols {  
   grid-template-areas:
    "article"
    "sidebar";
   grid-template-columns: 1fr;
   grid-template-rows: auto auto;
  }  

 .dreispalter {  
   grid-area:dreispalter;
   display: grid;
   grid-template-areas:
    "spalte1"
    "spalte2"
    "spalte3"
    "sponsoren";
   grid-template-columns: 1fr;
   grid-template-rows: auto auto;
   grid-column-gap: 0;
  }

 main.homeRows.mbst .columnsrow {
   display: block;
 }

 main.twoCols article#mainArticle {  
   padding:0px 25px 0px 25px;
   min-height: auto;
  }  
 main.twoCols sidebar {  
   padding:25px 25px 0px 25px;
  }
 .fontswitcher {
   left:30px;
  }


}
/*    end breakpoint: 992px;                  */


/*    breakpoint: 800px;                      */
@media all and (max-width: 800px) {
}
/*    end breakpoint: 800px;                  */


/*    breakpoint: 768px;                      */
@media all and (max-width: 768px) {
}
/*    end breakpoint: 768px;                  */


/*    breakpoint: 576px;                      */
@media all and (max-width: 576px) {
}
/*    end breakpoint: 576px;                  */


/*    breakpoint: 450px;                      */
@media all and (max-width: 450px) {
}
/*    end breakpoint: 450px;                  */


/*..........................................................*/


ul.ppppageFooter {
  grid-area:pageFooter;
  min-height: 300px;
  }








/*..........................................................*/



header, footer, article, nav2, sidebar, div {
  padding: 0.0em;
  //border:1px solid #aeaeae;
  }
article {
  min-height: 520px;
  }
main {
  min-height: 520px;
  }
footer {
  min-height: 300px;
  background:#faf2f8 url(/images/elemente/footer-border.png) no-repeat top center;
  background-color:#faf2f8!important;
  background-size: 100% 47px;;
  padding-top:60px;
  }

header {
  grid-area: header;
  //background:#81aca1 url() no-repeat top center;
  //background:transparent url() no-repeat top center;
  background:
    url() no-repeat top center,
    url() no-repeat center center;
  background-size:auto, cover;
  position:relative;
  }

zitat { 
  grid-area: zitat; 
  }
article { 
  grid-area: article;
  }
article#mainArticle { 
  padding:10px 0px 0px 0px;
  margin-bottom:0px;
  font-size: 1.25rem;
  }
main { 
  display:grid;
  grid-area: content;
  padding:40px 0px 0px 0px;
  margin-bottom:40px;
  font-size: 1.25rem;
  }
sidebar { 
  grid-area: sidebar; 
  padding:25px 0px 0px 0px;
  overflow:hidden;
  } 
.home sidebar { 
  //width:450px;
  padding:20px 0px 20px 0px;
  background-color:transparent;
  //background:#fff0ee url() no-repeat center 40px;
  } 


footer {
  grid-area: footer;
  color:#ffffff;
  background-color:#9b9b9b;
  padding-top: 60px;  }
footer .adresse {
  font-size: 1.15em;
  line-height: 1.3em;
  margin-bottom: 50px;
  }
footer .adresse h4 {
  font-size: 1.25em;
  font-weight: 900;
  margin:0;
}


  lang {
    grid-area: lang;
    background-color: #a5037c;
  }

  
 #pageHeader img.teaserraushier {  
   position:absolute;
   top:50px;
   right:0;
   margin-right: calc((100% - 1200px)/2);
   animation-name: example1;
   animation-duration: 1.5s;
   z-index:10;
  }

 #pageHeader img.teaserraushier {
    position: absolute;
    top: auto;
    bottom: 5px;
    right: 0px;
    margin-right: calc((100% - 1200px)/2);
    animation-name: example1;
    animation-duration: 1.5s;
    z-index: 10;
 }

  @keyframes example1 {
    from {margin-left: 258px;}
    to {margin-left: 220px;}
    from {height: 100px;}
    to {height: 145px;}
  }
  #pageHeader img.teaserraushier.sticky {
    position: fixed !important;
    top: 0 !important;
    animation-name: example2;
    animation-duration: 1.0s;
    margin-left: 258px;
    margin-top: 48px;
    height: 100px;
  }
  #pageHeader.headOff img.teaserraushier {
    top: 50px;
  }
  @keyframes example2 {
    from {margin-left: 258px;}
    to {margin-left: 220px;}
    from {height: 145px;}
    to {height: 100px;}
  }

  #pageHeader {  
   //padding-left: calc((100% - 1200px)/2);
   //padding-right: calc((100% - 1200px)/2);
  }

/*                                               */





/*   Seiten Specials                                */

#map_canvas1 {
    width: 400px;
    height: 400px;
    border: 1px solid #999999;
    margin-bottom:20px;
    z-index:1;
}
.leaflet-control-attribution {
    font-size: 10px !important;
}
.bbutton {
    display: inline-block;
    white-space: nowrap;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, #cccccc));
    background-image: -webkit-linear-gradient(top, #eeeeee, #cccccc);
    background-image: -moz-linear-gradient(top, #eeeeee, #cccccc);
    background-image: -ms-linear-gradient(top, #eeeeee, #cccccc);
    background-image: linear-gradient(to bottom, #eeeeee,#cccccc);
    background-color: #eeeeee;
    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC');
    //zoom: 1;
    border: 0px solid #777;
    border-radius: .2em;
    color: #333 !important;
    cursor: pointer;
    font: normal 0.7em/2em Arial, Helvetica;
    margin: 0 0.75em 0 0;
    padding: 0 1.5em;
    overflow: visible;
    text-decoration: none !important;
}
.bbutton:hover {
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fafafa), color-stop(100%, #dddddd));
    background-image: -webkit-linear-gradient(top, #fafafa, #dddddd);
    background-image: -moz-linear-gradient(top, #fafafa, #dddddd);
    background-image: -ms-linear-gradient(top, #fafafa, #dddddd);
    background-image: linear-gradient(to bottom, #fafafa,#dddddd);
    background-color: #fafafa;
    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FFFAFAFA', endColorstr='#FFDDDDDD');
    zoom: 1;
}

/*                                               */



/*   Test Navigation                                */

div#navDiv ul.nav-grid {
	display:grid;
  grid-auto-flow: column;
  justify-items: start;
  align-items: start;
	//height: 300px;
	overflow:hidden;
	padding:0;
	margin:0;
  border:1px solid #ababab;
}

div#navDiv ul.nav-grid li {
  overflow: hidden;
  z-index:10;
}
div#navDiv ul.nav-grid li:hover,
ul.nav-grid li.aktive {
  background-color: #ababab;
  z-index:10;
  cursor:pointer;
}


div#navDiv ul.nav-grid li ul {
	position:absolute;
	padding:0;
	max-height: 0;
	overflow: hidden;
  background-color: #ababab;
	background-color: rgba(200, 200, 200, 0.2);
	//-webkit-transition: max-height 0.8s;
	//-moz-transition: max-height 0.8s;
	transition: all 0.2s linear;
}
div#navDiv ul.nav-grid li:hover ul {
	max-height: 100px;
	transition: all 0.5s linear;
}
div#navDiv ul.nav-grid li ul li {
}

div#navDiv input#hamburger {display:none;}
div#navDiv label.hamburger {display:none;}




@media all and (max-width: 992px) {


  div#navDiv ul.nav-grid { 
    max-height: 0px; 
	  display:block;
    padding-left:15px;
    //margin:15px;;
    overflow: hidden; 
    transition: all 0.5s linear;
    border:0px solid #ababab;
  }

  div#navDiv ul.nav-grid li ul {
    position:relative;
    max-height:initial;
  }
  div#navDiv ul.nav-grid li ul li {
    padding-left:15px;
  }

  #map_canvas1 {
    width: 100%;
  }


  /*   Hamburger             */
  div#navDiv input#hamburger {display:none}
  div#navDiv label.hamburger { 
    position: relative; 
    display: block;
    background: #999999; 
    width: 56px; 
    height: 52px; 
    border-radius: 3px; 
    margin-left: 15px; 
    margin-bottom: 15px; 
  }
  div#navDiv .line { 
    position: absolute; 
    left:10px;
    height: 5px; width: 35px; 
    background: #fff; border-radius: 2px;
    display: block; 
    transition: 0.5s; 
    transform-origin: center; 
  }
  div#navDiv .line:nth-child(1) { top: 12px; }
  div#navDiv .line:nth-child(2) { top: 24px; }
  div#navDiv .line:nth-child(3) { top: 36px; }
  div#navDiv #hamburger:checked + .hamburger .line:nth-child(1){
    transform: translateY(12px) rotate(-45deg);
  }
  div#navDiv #hamburger:checked + .hamburger .line:nth-child(2){
    opacity:0;
  }
  div#navDiv #hamburger:checked + .hamburger .line:nth-child(3){
    transform: translateY(-12px) rotate(45deg);
  }
  /*                          */


  div#navDiv #hamburger:checked + .hamburger  + ul.nav-grid { 
    max-height: 400px; 
    border:1px solid #ababab;
  }






}

/*                                               */









@media all and (max-width: 1200px) {



  
  #pageLogo img.section-logo {  
   width:30vw;
   margin-right:0;
   margin-left:2vw;
  }
  #pageLogo img.section-spenden {  
   width:10vw;
   margin:0 0 0 18vw;
  }
  #pageLogo img.section-kontakt {  
  width:10vw;
   margin:0 0 0 2vw;
  }
  #lang-switch {
    margin: 10vw 2vw 0 1vw;
  }
  #lang-switch a.lang-switch-e {
    margin: 0 0 0 0;
  }
  #lang-switch a.lang-switch-d {
    margin: 0 0 0 0;
  }
#pageHeader img.teaserraushier {
    position: absolute;
    top: auto;
    bottom: 5px;
    right: 5px;
    margin-right: 0;
    animation-name: example1;
    animation-duration: 1.5s;
    //position: sticky !important;
    //top: 0 !important;
    z-index: 10;
}
  header {
  background:
    url() no-repeat top center,
    url() no-repeat top center;
  background-size:100% auto, 133%;
  position:relative;
  }
  article#mainArticle {
    padding: 0px 25px 20px 25px;
  }
  sidebar {
    grid-area: sidebar;
    padding: 20px 20px 20px 20px;
  }  
  footer {
    padding: 60px 20px 20px 20px;
    min-height: 50px;
  }
  footer .adresse {
    margin-bottom: 10px;
  }


}


@media all and (max-width: 992px) {


  .logo.mbst .headtextbox {
    padding-bottom: 0px;
  }
  .logo.mbst .headtextbox h1 {
    font-size: 5.00vw;
    margin-top: 4vw;
  }
  .logo.mbst .headtextbox a {
     font-size: 3.10vw;
   }

  article#mainArticle {
    padding: 0px 20px 20px 20px;
    margin-bottom: 0px;  }
  aside {
    grid-area: aside;
    padding: 20px 20px 20px 20px;
    margin-bottom: 10px;
  }  

  #pageHeader img.teaserraushier {
    position: absolute;
    top: auto;
    bottom: 5px;
    right: 5px;
    margin-right: 0;
    height: 15vw;
    animation-name: example3;
    animation-duration: 1.5s;
    z-index: 10;
  }
  #pageHeader img.teaserraushier.sticky {
    top: 0px !important;
    animation-name: example2;
    animation-duration: 1.0s;
    margin-top: 5px;
  }
  #pageHeader.headOff img.teaserraushier {
    top: -40px;
  }
  @keyframes example3 {
    from {margin-left: 258px;}
    to {margin-left: 220px;}
    from {height: 10vw;}
    to {height: 15vw;}
  }

}

@media all and (max-width: 768px) {

 #pageLogo img.section-logo {
    width: 31vw;
    margin-right: 0;
    margin-left: 2vw;
 }
  #pageLogo img.section-spenden {
    width: 13vw;
    margin: 0 0 0 22vw;
  }
#pageLogo img.section-kontakt {
    width: 13vw;
    margin: 0 0 0 2vw;
}

.langswitchbox a.langswitch.en {
    border-right: 0px;
    padding: 0px;
    display: block;
}
.langswitchbox a.langswitch.de {
    border-right: 0px;
    padding: 0px;
    display: none;
}
.langswitchbox.en a.langswitch.en {
    border-right: 0px;
    padding: 0px;
    display: none;
}
.langswitchbox.en a.langswitch.de {
    border-right: 0px;
    padding: 0px;
    display: block;
}
a.langswitch:first-child {
    border-right: 0px solid #ab0b80;
    padding: 0px;
}


}

@media all and (max-width: 576px) {

  #pageLogo img.section-spenden {
    width: 13vw;
    margin: 0 0 0 15vw;
  }

}





	/*   Accordion             */
.ui-accordion-content img,
.ui-widget-content img {
  float: left;
  }
.ui-accordion-content p,
.ui-widget-content p {
  //padding-left: 100px;
  }
.person .ui-icon, .ui-widget-content .ui-icon {
    background: url("/images/elemente/but-akkordion-off.png") no-repeat left center;
}
.person .ui-state-hover .ui-icon,
.person .ui-state-focus .ui-icon,
.person .ui-button:hover .ui-icon,
.person .ui-button:focus .ui-icon {
		background-image: url("/images/elemente/but-akkordion-on.png");
}
.person .ui-state-active .ui-icon, .ui-button:active .ui-icon {
    background-image: url("/images/elemente/but-akkordion-on.png");
}


/*   Kategorie Einstellungen             */



  /*   Sidebar             */

sidebar .sidebarblockbox {
    border: 0px solid #ababab;
    padding: 0px 0px 10px 0px;
}
sidebar .sidebarimage {
    width: 100%;
    height: auto;
    margin: 0px 0px 0px 0px;
}
sidebar .box-info {
    padding: 20px 20px 25px 20px;
    margin-top: 0px;
    border-radius: 6px;
    display: block;
}
  /*   Content             */



/*   Editmode-Einstellungen             */

 body#editmode button.weBtn {
    width: initial;
}

 body#editmode header#pageHeader table.we.weEditTable {
    margin: auto auto auto auto;
    width:auto;
    height:100%;
    max-height:450px;
}
 body#editmode div.tox-toolbar__group button.tox-tbtn span.tox-tbtn__select-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: auto;
}
 body#editmode main.homeRows section.starttext {
    padding:10px 20px 10px 20px;
}

 body#editmode sidebar .we.weEditTable {
    width: 100%;
}

 body#editmode sidebar div.blockbox.editmode {
    width: 100%;
    border: 1px solid #ababab;
    margin-top: -17px;
    z-index: -1;
    padding-top: 15px;
    padding: 15px 5px 5px 5px;
    margin-bottom: 20px;
}
 body#editmode sidebar div.blockbox.editmode span.we.we_select {
    margin-top: 10px;
    margin-bottom: 15px;
    display:block;
}
 body#editmode sidebar div.we.we_blockControls {
    padding-left: 10px;
}

