/* Wrapper */
#wrapper {
  position: relative;
  width: 100vw;
  padding: 0 0 10rem 0;
}
#wrapper::before {  
  background-color: var(--c-special);
  content: '';
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 50vw;
  z-index: -1;
}
#wrapper::after {  
  content: '';
  background-attachment: fixed;
  background-image: url('../Images/kirche.png');
  background-position: 0% 100%;
  background-repeat: no-repeat;
  background-size: 50% auto;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 50vw;
  z-index: -1;

  opacity: 0;
  transition: 2s ease;
}
#wrapper.isScrolling::after {
  opacity: 1;
}
#wrapper section {
  display: grid;
  grid-template-areas: "header content""footer content";
  grid-template-columns: 50vw 50vw;
  grid-template-rows: 1fr;
}
#wrapper section:first-child {
  margin-top: 0;
}
#wrapper section>header {
  grid-area: header;
  justify-self: end;
  text-align: right;
}
#wrapper section>header h2 {
  margin: 0 0 5rem 0;
}
#wrapper section>header h1+p {
  font-family: "Raleway", Helvetica, sans-serif;
  font-size: 0.8rem;
  letter-spacing: 0.175em;
  line-height: 2.5;
  text-transform: uppercase;
}
#wrapper section>header ul.actions {
  justify-content: flex-end;
}
#wrapper section>.content {
  grid-area: content;
  max-width: 60rem;
  position: relative;
}
/*
#wrapper section>.content::after {
content: '';
width: 80px;
border-bottom: 1px solid #ccc;
display: block;
margin: 0 auto;
box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}
*/
#wrapper section>footer {
  grid-area: footer;
  text-align: right;
}
#wrapper section>footer ul.actions {
  justify-content: flex-end;
}
#wrapper>section {
  position: relative;
}
#wrapper>section>header:before {
  background: var(--c-reddark);
  content: '';
  display: block;
  margin-top: 1rem;
  position: absolute;
  width: 2px;
}
#wrapper>section>header h1,
#wrapper>section>header h2 {
  position: relative;
}
#wrapper>section>header h1:before,
#wrapper>section>header h2:before {
  background: var(--c-reddark);
  content: '';
  display: block;
  height: 2px;
  position: absolute;
  top: 1rem;
}
#wrapper>section>header h1:after,
#wrapper>section>header h2:after {
  background: var(--c-reddark);
  border-radius: 0.5rem;
  content: '';
  display: block;
  height: 0.5rem;
  position: absolute;
  top: 0.75rem;
  width: 0.5rem;
}
#wrapper>section>header h1 {
  margin-top: -2rem;
  color: var(--c-white);
}
#wrapper>section>header h1:before {
  top: 3rem;
}
#wrapper>section>header h1:after {
  top: 2.75rem;
}
#wrapper>section>.content>section {
  position: relative;
}
#wrapper>section>.content>section:first-child {
  margin-top: 6rem;
}
#wrapper>section.intro {
  align-items: center;
}
#wrapper>section.intro.advent {
  align-items: unset;
}
#wrapper>section.intro.advent>.content{
  height: unset;
  margin-top: 170px;
}
@media screen and (max-width: 699px) {
#wrapper>section.intro.advent>.content{
  margin-top: 0;
}
}
#wrapper>section.intro>header {
  padding-top: 4rem;
  width: 100%;
}
#wrapper>section.intro>header>* {
  margin-left: auto;
}
#wrapper>section.intro>header:before {
  left: auto;
}
#wrapper>section.intro>.content {
  height: 100vh;
  max-width: none;
}
#wrapper>section:last-of-type>header:before {
  height: 100%;
}
#wrapper>section:last-of-type>header:after {
  background: var(--c-reddark);
  border-radius: 0.5rem;
  bottom: -1.5rem;
  content: '';
  display: block;
  height: 0.5rem;
  position: absolute;
  width: 0.5rem;
  z-index: 1;
}
#wrapper .copyright {
  color: rgba(0, 0, 0, 0.55);
  font-size: 1rem;
  left: 50vw;
  position: relative;
  width: 50vw;
}
#wrapper .copyright a {
  color: inherit;
}
#wrapper section {
  margin: 7.5rem 0 0 0;
}
#wrapper section#Categorie {
  margin: 0;
}
#wrapper section>header {
  padding: 0 10rem 0 5rem;
  width: 35rem;
}
#wrapper section > .content {
  padding: 0 5rem 5px 5rem;
  border-bottom: 1px solid #f2f2f2;
}
#wrapper section:first-child > .content,
#wrapper section:nth-child(2) > .content {
  border-bottom: 0;
}
#wrapper section>footer {
  padding: 0 10rem;
}
#wrapper>section>header:before {
  height: calc(100% + 10rem);
  left: calc(50vw - 5rem);
}
#wrapper>section>header h1:before,
#wrapper>section>header h2:before {
  right: -5rem;
  width: 2.5rem;
}
#wrapper>section>header h1:after,
#wrapper>section>header h2:after {
  right: -2.5rem;
}
#wrapper>section>.content>section {
  left: calc(-50vw - 5rem);
}
#wrapper>section>.content>section>header {
  width: 32rem;
}
#wrapper>section.intro>header>* {
  /*width: 20rem;*/
}
#wrapper>section.intro>header:before {
  margin-left: calc(50vw - 10rem);
}


@media screen and (max-width: 1152px) {

  #wrapper>section.intro>header>* {
    width: 100%;
  }
  #wrapper>section.intro>header:before {
    margin-left: 0;
  }
}
#wrapper>section:last-of-type>header:after {
  left: calc(50vw - 5rem - 0.25rem + 1px);
}
#wrapper .copyright {
  padding: 0 5rem;
  margin-top: 3rem;
}



@media screen and (max-width: 1280px) {
  #wrapper {
    padding: 0 0 8rem 0;
  }
  #wrapper section {
    margin: 6rem 0 0 0;
  }
  #wrapper section>header {
    padding: 0 8rem 0 4rem;
    width: 33rem;
  }
  #wrapper section>.content {
    padding: 0 4rem;
  }
  #wrapper section>footer {
    padding: 0 8rem;
  }
  #wrapper>section>header:before {
    height: calc(100% + 8rem);
    left: calc(50vw - 4rem);
  }
  #wrapper>section>header h1:before,
  #wrapper>section>header h2:before {
    right: -4rem;
    width: 2rem;
  }
  #wrapper>section>header h1:after,
  #wrapper>section>header h2:after {
    right: -2rem;
  }
  #wrapper>section>.content>section {
    left: calc(-50vw - 4rem);
  }
  #wrapper>section>.content>section>header {
    width: 30rem;
  }
  #wrapper>section.intro>header>* {
    width: 21rem;
  }
  #wrapper>section.intro>header:before {
    margin-left: calc(50vw - 8rem);
  }
  #wrapper::after {  
    background-image: unset;
  }
}
@media screen and (max-width: 1280px) and (max-width: 1152px) {
  #wrapper>section.intro>header>* {
    width: 100%;
  }
  #wrapper>section.intro>header:before {
    margin-left: 0;
  }
}
@media screen and (max-width: 1280px) {
  #wrapper>section:last-of-type>header:after {
    left: calc(50vw - 4rem - 0.25rem + 1px);
  }
  #wrapper .copyright {
    padding: 0 4rem;
  }
}
@media screen and (max-width: 1152px) {
  #wrapper {
    padding: 0;
  }
  #wrapper:before {
    display: none;
  }
  #wrapper section {
    grid-template-areas: "header""content""footer";
    grid-template-columns: 1fr;
    grid-template-rows: 3fr;
  }
  #wrapper section>header {
    justify-self: start;
    padding: 0;
    text-align: left;
    width: 100%;
  }
  #wrapper section>header ul.actions {
    justify-content: flex-start;
  }
  #wrapper section>.content {
    padding: 0;
    width: 100%;
    overflow-x: hidden;
  }
  #wrapper section>footer {
    padding: 0;
    text-align: left;
  }
  #wrapper section>footer ul.actions {
    justify-content: flex-start;
  }
  #wrapper>section {
    margin: 0;
  }
  #wrapper>section>header {
    background-attachment: fixed;
    background-color: var(--c-special);
    background-position: 25% 50%;
    background-repeat: repeat-y;
    background-size: 40rem auto;
  }
  #wrapper>section>header>* {
    max-width: 25rem;
  }
  #wrapper>section>header> :last-child {
    margin-bottom: 0;
  }
  #wrapper>section>header:before {
    display: none;
  }
  #wrapper>section>header h1:before,
  #wrapper>section>header h2:before {
    display: none;
  }
  #wrapper>section>header h1:after,
  #wrapper>section>header h2:after {
    display: none;
  }
  #wrapper>section>.content> :last-child {
    margin-bottom: 0;
  }
  #wrapper>section>.content>section {
    left: 0;
  }
  #wrapper>section>.content>section:first-child {
    margin-top: 0;
  }
  #wrapper>section>.content>section>header {
    width: 100%;
  }
  #wrapper>section>.content>section:last-child {
    margin-bottom: 0;
  }
  #wrapper>section>footer> :last-child {
    margin-bottom: 0;
  }
  #wrapper>section.intro {
    margin-bottom: 0;
  }
  #wrapper>section.intro>header {
    margin-bottom: 0;
  }
  #wrapper>section.intro>header ul.actions {
    display: none;
  }
  #wrapper>section.intro>header>* {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
  #wrapper>section.intro>header>ul.actions {
    margin-left: -1rem;
  }
  #wrapper>section.intro>header:before {
    margin-left: 0;
  }
  #wrapper>section:last-of-type>header:after {
    display: none;
  }
  #wrapper .copyright {
    left: 0;
    width: 100%;
  }
  #wrapper section {
    margin: 6rem 0 0 0;
  }
  #wrapper>section {
    margin: 0;
  }
  #wrapper>section>header {
    padding: 4rem 4rem;
  }
  #wrapper>section>.content {
    padding: 4rem 4rem;
  }
  #wrapper>section>.content>section {
    margin: 4rem 0;
  }
  #wrapper>section>footer {
    padding: 0 4rem 4rem 4rem;
  }
  #wrapper>section.intro>header {
    padding: 8rem 4rem 5rem 4rem;
  }
  #wrapper .copyright {
    padding: 0 4rem 4rem 4rem;
  }
}
@media screen and (max-width: 736px) {
  #wrapper section {
    margin: 3rem 0 0 0;
  }
  #wrapper>section {
    margin: 0;
  }
  #wrapper>section>header {
    padding: 3rem 2rem;
  }
  #wrapper>section>header h1 {
    margin-top: 0rem;
  }
  #wrapper>section>.content {
    padding: 3rem 2rem;
  }
  #wrapper>section>.content>section {
    margin: 3rem 0;
  }
  #wrapper>section>footer {
    padding: 0 2rem 3rem 2rem;
  }
  #wrapper>section.intro>header {
    padding: 5.5rem 2rem 2.5rem 2rem;
  }
  #wrapper .copyright {
    padding: 0 2rem 2rem 2rem;
  }
}
@media screen and (max-width: 360px) {
  #wrapper section {
    margin: 2.25rem 0 0 0;
  }
  #wrapper>section {
    margin: 0;
  }
  #wrapper>section>header {
    padding: 2.25rem 1.5rem;
  }
  #wrapper>section>.content {
    padding: 2.25rem 1.5rem;
  }
  #wrapper>section>.content>section {
    margin: 2.25rem 0;
  }
  #wrapper>section>footer {
    padding: 0 1.5rem 2.25rem 1.5rem;
  }
  #wrapper>section.intro>header {
    padding: 4.875rem 1.5rem 1.875rem 1.5rem;
  }
  #wrapper .copyright {
    padding: 0 1.5rem 1.5rem 1.5rem;
  }
}
body.is-mobile #wrapper:before {
  background-attachment: scroll;
  background-position: 50% -3%;
  background-repeat: repeat-y;
  background-size: 150% auto;
}
body.is-mobile #wrapper>section>header {
  background-attachment: scroll;
  background-position: 25% 50%;
}
body.is-mobile #wrapper>section.intro>header {
  background-position: 25% 23%;
}
#wrapper:before {
  transition: opacity 1s ease;
}
body.is-preload #wrapper:before {
  opacity: 0;
}
#wrapper>section.intro {
  transition: opacity 1s ease;
  opacity: 1;
}
#wrapper>section.intro>header {
  transition: transform 1s ease;
}
#wrapper>section.intro>.content {
  transition: transform 1s ease;
}
body.is-preload #wrapper>section.intro {
  opacity: 0;
}
body.is-preload #wrapper>section.intro>header {
  transform: translateY(1rem);
}
body.is-preload #wrapper>section.intro>.content {
  transform: translateY(-1rem);
}
@media screen and (max-width: 1280px) {

  #wrapper>section.intro>header>* {
    transition: transform 1s ease, opacity 1s ease;
  }
  body.is-preload #wrapper>section.intro>header {
    transform: none;
  }
  body.is-preload #wrapper>section.intro>header>* {
    transform: translate(-0.5rem);
    opacity: 0;
  }
  body.is-preload #wrapper>section.intro>.content {
    transform: none;
  }
}
body.is-ie #wrapper section {
  display: flex;
  flex-wrap: wrap;
}
body.is-ie #wrapper section>header {
  width: 50%;
}
body.is-ie #wrapper section>.content {
  width: 50%;
}
body.is-ie #wrapper section>footer {
  width: 50%;
  text-align: left;
  margin-left: 50%;
  padding: 5rem;
}
body.is-ie #wrapper>section>.content>section {
  width: 100vw;
}
@media screen and (max-width: 1280px) {

  body.is-ie #wrapper section>footer {
    padding: 4rem;
  }
}