@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  color: #ea525f;
  border: none;
  outline: none;
  font-size: 20px;
  line-height: 1.3em;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
  font-family: "brandon-grotesque", sans-serif;
  -webkit-font-feature-settings: "liga" 1;
          font-feature-settings: "liga" 1;
  box-sizing: border-box; }
  @media (max-width: 1320px) {
    * {
      font-size: 18px; } }
  @media (max-width: 1100px) {
    * {
      font-size: 17px; } }
  @media (max-width: 570px) {
    * {
      font-size: 16px; } }
  @media (max-width: 325px) {
    * {
      font-size: 15px; } }

body, html {
  height: 100%; }

html {
  overflow-y: -moz-scrollbars-vertical;
  overflow-y: scroll;
  overflow-x: hidden; }

a {
  -webkit-text-decoration-color: black;
          text-decoration-color: black;
  white-space: nowrap;
  -webkit-transition: -webkit-text-decoration-color 0.2s ease-out;
  transition: -webkit-text-decoration-color 0.2s ease-out;
  transition: text-decoration-color 0.2s ease-out;
  transition: text-decoration-color 0.2s ease-out, -webkit-text-decoration-color 0.2s ease-out; }
  a:hover {
    -webkit-text-decoration-color: #ea525f;
            text-decoration-color: #ea525f; }

address {
  font-style: normal;
  margin-left: 1em; }

img {
  width: 100%;
  height: auto; }

h2 {
  margin-top: 0.65em; }

p {
  margin-left: 1em; }

ul {
  list-style: none; }
  ul + ul {
    margin-top: 0.65em; }

li {
  position: relative;
  padding-left: 1em; }

li::before {
  content: "·";
  position: absolute;
  left: 0; }

.nb {
  white-space: nowrap; }

.max400 {
  max-width: 400px; }

.max800 {
  max-width: 800px; }

.abstandoben {
  margin-top: 0.65em; }

.thinsp {
  letter-spacing: -0.15em; }

.indexfixfuermailinkunteranmeldepfeil {
  z-index: 30;
  position: relative; }

.optionalmini {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit; }
  @media (max-width: 570px) {
    .optionalmini {
      display: none; } }

.optionalsmrt {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit; }
  @media (max-width: 400px) {
    .optionalsmrt {
      display: none; } }

.overflowhidden {
  overflow: hidden; }

.delay {
  -webkit-animation-name: pulse;
          animation-name: pulse;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-delay: 0;
          animation-delay: 0;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out; }

@-webkit-keyframes pulse {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes pulse {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.sujet {
  position: relative; }
  .sujet::after {
    content: "";
    clear: both;
    display: block;
    width: 100%; }
  .sujet__img {
    float: right;
    margin-right: 7.5em;
    display: block;
    width: 70%;
    -webkit-transition: width 0.3s ease-out;
    transition: width 0.3s ease-out; }
    @media (max-width: 1100px) {
      .sujet__img {
        width: 60%; } }
    @media (max-width: 570px) {
      .sujet__img {
        margin-right: 0;
        width: 75%; } }

.nav {
  position: fixed;
  top: 0;
  right: 0;
  -webkit-transition: right 0.5s ease-out;
  transition: right 0.5s ease-out;
  width: 7.5em;
  height: 100%;
  z-index: 100;
  text-align: center;
  background-color: white; }
  .nav::after {
    content: "";
    display: block;
    height: 100%;
    width: 2px;
    position: absolute;
    left: -2px;
    top: 0;
    background-color: #ea525f; }
  @media (max-width: 570px) {
    .nav {
      right: -7.5em;
      z-index: 101; } }
  @media (max-height: 500px) {
    .nav {
      display: table;
      z-index: 101; } }
  .nav--offen {
    right: 0; }
  .nav__list {
    padding-top: 10.5em; }
    @media (max-width: 880px) {
      .nav__list {
        padding-top: 8.5em; } }
    @media (max-height: 500px) {
      .nav__list {
        padding-top: 0;
        display: table-cell;
        vertical-align: middle; } }
  .nav__item {
    cursor: pointer;
    padding-left: 0; }
    .nav__item::before {
      content: ""; }
    @media (max-width: 570px) {
      .nav__item {
        padding: 0.2em 0; } }
  .nav__links {
    position: relative;
    -webkit-transition: color 0.2 ease-out;
    transition: color 0.2 ease-out; }
    .nav__links:hover {
      color: black; }
    .nav__links::before {
      content: "";
      position: absolute;
      top: -30%;
      left: -25%;
      height: 160%;
      width: 150%;
      display: block;
      background-color: #feee1b;
      opacity: 0;
      -webkit-transition: opacity 0.2s ease-out;
      transition: opacity 0.2s ease-out;
      z-index: -50; }
  .nav__links.active {
    color: black; }
    .nav__links.active::before {
      opacity: 1; }

.nav__trigger {
  display: none;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -15px;
  background-color: #ea525f;
  cursor: pointer;
  background-image: url(trigger.png);
  background-size: 60px 30px;
  background-repeat: no-repeat;
  background-position: 0 0; }
  .nav__trigger--offen {
    background-position: -30px 0; }
  @media (max-width: 570px) {
    .nav__trigger {
      display: block; } }
  @media (max-height: 500px) {
    .nav__trigger {
      display: block; } }

.kopf {
  padding: 10em 0 0 0;
  top: -12em;
  clear: both;
  position: relative; }
  @media (max-width: 1100px) {
    .kopf {
      top: -11em; } }
  @media (max-width: 570px) {
    .kopf {
      top: -10em; } }

.kopf__titel {
  font-size: 2.5em;
  line-height: 1.2em;
  margin-bottom: 0.5em;
  margin-top: 0; }
  @media (max-width: 880px) {
    .kopf__titel {
      font-size: 1.9em; } }
  .kopf__titel--untertitel {
    margin-bottom: 0;
    font-weight: normal; }
  .kopf__titel--untertitel + .kopf__titel--untertitel {
    margin-bottom: 3em; }

.kopf__einstieg {
  margin-left: 0;
  max-width: 700px;
  margin-bottom: 0.65em; }

.minikopf {
  padding: 3em 0 0; }

.minikopf__titel {
  margin-bottom: 0.5em; }

.minikopf__untertitel {
  margin-bottom: 0;
  font-weight: normal; }

.infoeinheit {
  padding: 10em 0; }
  .infoeinheit--folgeseite {
    padding-top: 6em; }
  .infoeinheit--letzte {
    padding-bottom: 20em;
    height: 101%; }
  @media (max-width: 880px) {
    .infoeinheit {
      padding-top: 8em; } }
  @media (max-height: 500px) {
    .infoeinheit {
      padding-top: 5em; } }

.rand {
  max-width: 1500px;
  position: relative;
  width: 70%;
  margin-left: 10%; }
  @media (max-width: 880px) {
    .rand {
      width: 65%; } }
  @media (max-width: 570px) {
    .rand {
      width: 70%; } }
  @media (max-width: 400px) {
    .rand {
      width: 80%; } }
  .rand:after {
    content: "";
    clear: both;
    display: block; }

.infoeinheit__titel {
  font-size: 2em;
  margin-bottom: 2em;
  margin-left: -0.05em; }
  @media (max-width: 880px) {
    .infoeinheit__titel {
      font-size: 1.9em; } }
  @media (max-height: 500px) {
    .infoeinheit__titel {
      margin-bottom: 1em; } }
  .infoeinheit__titel--ohneA {
    margin-bottom: 0; }

.infoeinheit__untertitel {
  margin-bottom: 4em; }
  @media (max-height: 500px) {
    .infoeinheit__untertitel {
      margin-bottom: 2em; } }

.programm__spalte {
  width: 31%;
  margin-left: 3.5%;
  float: left; }
  @media (max-width: 880px) {
    .programm__spalte {
      width: 70%;
      float: none;
      margin: 0; } }
  @media (max-width: 570px) {
    .programm__spalte {
      width: 90%; } }
  .programm__spalte--1 {
    margin-left: 0; }

.programm__item {
  margin-top: 0.65em; }
  @media (max-width: 880px) {
    .programm__item {
      position: relative; } }
  .programm__item:first-child {
    margin-top: 0; }
    @media (max-width: 880px) {
      .programm__item:first-child {
        margin-top: 0.65em; } }
  .programm__item--anschluss {
    margin-top: 0; }

.programm__zeit {
  font-weight: bold;
  margin-left: 0; }

.programm__trigger {
  cursor: pointer;
  position: relative;
  -webkit-transition: background-color 0.2s ease-out;
  transition: background-color 0.2s ease-out; }
  .programm__trigger::before {
    opacity: 0;
    content: "";
    z-index: -100;
    display: block;
    background-color: #feee1b;
    top: -0.5em;
    left: -5%;
    width: 110%;
    height: 100%;
    border-top: 0.25em solid #feee1b;
    border-bottom: 0.75em solid #feee1b;
    position: absolute;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out; }
  .programm__trigger:hover::before {
    opacity: 1; }

.programm__waswer {
  margin-left: 1em; }

.programm__referat {
  margin-left: 1em;
  color: black; }

.programm__bio {
  display: none;
  position: absolute;
  z-index: 2000;
  top: 7.9em;
  left: 0;
  width: 100%; }
  @media (max-width: 880px) {
    .programm__bio {
      top: 0; } }
  .programm__bio p, .programm__bio ul {
    margin-bottom: 0.65em; }
  .programm__bio__text {
    max-width: 700px;
    position: relative;
    z-index: 2002;
    -webkit-transition: width 0.3s ease-out;
    transition: width 0.3s ease-out; }
    .programm__bio__text * {
      color: black; }
  .programm__bio__titel {
    margin-left: 1em; }
  .programm__bio__untertitel {
    font-weight: normal; }
  .programm__bio__foto {
    position: fixed;
    z-index: 2001;
    bottom: 6em;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    right: 12em;
    margin-right: -6em;
    width: 12em; }
    @media (max-width: 1100px) {
      .programm__bio__foto {
        width: 11em; } }
    @media (max-width: 880px) {
      .programm__bio__foto {
        right: 8em;
        margin-right: -4em;
        bottom: 4em; } }
    @media (max-width: 570px) {
      .programm__bio__foto {
        width: 9em;
        right: 6em;
        margin-right: -3em;
        bottom: 3em; } }
    @media (max-width: 325px) {
      .programm__bio__foto {
        display: none; } }
    .programm__bio__foto img {
      max-width: 400px;
      display: block;
      width: 100%;
      height: auto; }
  .programm__bio__foto--quer {
    width: 17em; }
    @media (max-width: 1100px) {
      .programm__bio__foto--quer {
        width: 15em; } }
    @media (max-width: 570px) {
      .programm__bio__foto--quer {
        width: 12em; } }
    .programm__bio__foto--quer img {
      max-width: 590px; }
  .programm__bio__closer {
    cursor: pointer;
    width: 2em;
    height: 2em;
    position: fixed;
    z-index: 2003;
    top: 50%;
    margin-top: -1.1em;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    left: 10%; }
    .programm__bio__closer:hover {
      -webkit-transform: rotate(-360deg);
              transform: rotate(-360deg); }
    .programm__bio__closer__closer__image {
      display: block; }

.overlay {
  display: none;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: white; }

.anmeldung {
  position: relative;
  display: inline-block; }

.anmeldung__pfeil {
  position: absolute;
  left: 6em;
  -webkit-transition: left 0.2s ease-out;
  transition: left 0.2s ease-out;
  bottom: -9.3em; }
  .anmeldung__pfeil__illu {
    width: 30em;
    height: auto;
    max-width: 2000px;
    z-index: -1000;
    position: relative; }
  .anmeldung__pfeil__geist {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 20;
    background: transparent; }
  .anmeldung__pfeil:hover {
    left: 5em; }

.partner {
  margin-bottom: 1em; }
  .partner li::before {
    content: ""; }
  .partner__link {
    display: block;
    margin-top: 0.6em;
    margin-bottom: 0.6em;
    padding-right: 1em;
    max-width: 215px; }
    @media (max-width: 880px) {
      .partner__link {
        max-width: 150px; } }
    .partner__link--gbs {
      max-width: 250px; }
    .partner__link--mitabstand {
      margin-bottom: 1.5em; }
    .partner__link__logo {
      display: block; }

.partner--sponsoren {
  position: relative;
  margin: 0 0 1.3em 0; }
  .partner--sponsoren:before {
    content: "";
    z-index: -100;
    display: block;
    background-color: #feee1b;
    top: -0.5em;
    left: -5%;
    width: 110%;
    height: 100%;
    border-top: 0.25em solid #feee1b;
    border-bottom: 0.75em solid #feee1b;
    position: absolute;
    -webkit-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out; }

.partner__spalte {
  margin-left: 3.5%;
  float: left; }
  .partner__spalte a {
    white-space: normal; }
  @media (max-width: 880px) {
    .partner__spalte {
      padding-bottom: 0.65em;
      float: none;
      margin: 0; } }
  .partner__spalte--1 {
    width: 44%;
    margin-left: 0; }
    @media (max-width: 1320px) {
      .partner__spalte--1 {
        width: 41%; } }
    @media (max-width: 880px) {
      .partner__spalte--1 {
        width: 80%; } }
    @media (max-width: 570px) {
      .partner__spalte--1 {
        width: 100%; } }
  .partner__spalte--2 {
    width: 32%; }
    @media (max-width: 880px) {
      .partner__spalte--2 {
        width: 100%; } }
  .partner__spalte--3 {
    width: 17%; }
    @media (max-width: 1320px) {
      .partner__spalte--3 {
        width: 20%; } }
    @media (max-width: 880px) {
      .partner__spalte--3 {
        width: 60%; } }
    @media (max-width: 400px) {
      .partner__spalte--3 {
        width: 100%; } }

.flickr {
  display: table;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: white; }

.flickr__frame {
  text-align: center;
  vertical-align: middle;
  display: table-cell; }

.flickr__frame__innen {
  display: inline-block;
  max-width: 80%;
  max-height: 80%;
  outline: 1px dotted red;
  min-height: 200px;
  line-height: 0; }

.flickr__closer {
  cursor: pointer;
  width: 2em;
  height: 2em;
  position: fixed;
  z-index: 2003;
  bottom: 2em;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  left: 50%;
  margin-left: -1em; }
  .flickr__closer:hover {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg); }
  .flickr__closer__closer__image {
    display: block; }

.sm {
  position: absolute;
  text-align: right;
  top: 1em;
  right: 7.5em; }
  @media (max-width: 570px) {
    .sm {
      right: 0;
      top: 2em; } }
  .sm__item {
    padding-left: 0; }
    .sm__item:before {
      content: ""; }
  .sm__link {
    display: inline-block;
    margin: 0 0 1px 0;
    background-color: #feee1b;
    padding: 0.15em 0.5em 0.25em 0.5em;
    text-decoration: none;
    -webkit-transition: color 0.2s ease-out;
    transition: color 0.2s ease-out;
    font-size: 1.7em; }
    @media (max-width: 570px) {
      .sm__link {
        font-size: 1.3em; } }
    .sm__link:hover {
      color: black; }

.zurueck {
  position: absolute;
  top: 7.2em;
  left: 5%;
  width: 8%;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out; }
  @media (max-width: 880px) {
    .zurueck {
      top: 8em;
      width: 13%;
      left: 2%; } }
  @media (max-width: 570px) {
    .zurueck {
      top: 7.7em; } }
  @media (max-width: 400px) {
    .zurueck {
      top: 4em;
      width: 3em;
      margin-top: -1.3em;
      right: 5%;
      left: auto; } }

.zurueck__pfeil {
  left: 0;
  -webkit-transition: left 0.2s ease-out;
  transition: left 0.2s ease-out;
  position: relative; }

.zurueck__link {
  display: block; }
  .zurueck__link:hover .zurueck__pfeil {
    left: -1.5em; }
    @media (max-width: 880px) {
      .zurueck__link:hover .zurueck__pfeil {
        left: -0.5em; } }