* {
  font-family: 'Roboto', sans-serif;
}

.hero-full-screen {
  height: 100vh;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background: url("../img/hintergrund.jpg") center top no-repeat;
  background-size: cover;
}

.hero-full-screen-impressum {
  height: 15vh;
  width: 100% !important;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background: url("../img/hintergrund.jpg") center center no-repeat;
  background-size: cover;
}

h1 {
  font-family: 'Roboto', sans-serif;
  font-weight: 100;
}


a,
p {
  color: #ffffff;
}

.impressum p,
.impressum li,
.impressum h1,
.impressum h2,
ol li {
  color: #9b9b9b;
}

.hero-full-screen .middle-content-section img.ppheadline {
  display: inline-block;
  width: 65vw;
  padding-bottom: 2rem;
}

.button.ppbutton,
.button.ppbutton:hover,
.button.ppbutton:focus {
  border-width: 1px;
  border-color: #fff;
  background-color: rgba(0, 0, 0, 0.5);
}

.button.ppbutton:hover {
  background-color: rgba(0, 0, 0, 0.75);
}

.button.ppbutton a:hover,
.button.ppbutton a:focus {
  color: #fff;
}

.ppsocial {
  margin: 2rem;
}

.ppsocial img {
  height: 3rem;
}

p.ppsocialtext {
  font-size: 1.2rem;
  line-height: 1.5rem;
  text-transform: uppercase;
  text-shadow: 0px 2px 5px rgba(0, 0, 0, 0.75);
}

/* Smartphones (portrait and landscape) ----------- */
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) {
  /* Styles */

  .hero-full-screen .top-content-section {
    width: 100%;
  }

  .hero-full-screen .top-bar,
  .hero-full-screen-impressum .top-bar {
    background: transparent;
    padding-top: 1.2rem;
  }

  .hero-full-screen .top-bar .top-bar-left,
  .hero-full-screen-impressum .top-bar .top-bar-left {
    padding: 1rem;
    display: block;
  }

  .hero-full-screen .top-bar .top-bar-right,
  .hero-full-screen-impressum .top-bar .top-bar-right {
    font-size: 1.2rem;
    display: block;
    text-align: center;
  }

  h1 {
    color: #fff;

  }

  .button,
  .button:hover,
  .button:focus {
    display: block;
    vertical-align: middle;
    margin-top: 1rem;
    margin-right: auto;
    margin-left: auto;
    font-family: inherit;
    padding: 1rem;
    -webkit-appearance: none;
    border: 2px solid #ffffff;
    border-radius: 0px;
    width: 75vw;
    max-width: 75vw;

    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0.75);
    color: #ffffff;
  }

  .button.large {
    font-size: 1.25rem;
  }

  a.facebook {
    font-size: 1.25rem;
    line-height: 3rem;
  }

  a.facebook img {
    height: 3rem;
    width: auto;
  }

  .hero-full-screen .bottom-content-section {
    padding: 1rem;
    text-align: center;
    font-size: 1.5rem;
  }

  /*
.hero-full-screen .middle-content-section {
  text-align: center;
  margin-bottom: 0rem;
}*/

}

/* Smartphones (landscape) ----------- */
@media only screen and (min-width : 321px) and (orientation: landscape) {

  .hero-full-screen .top-content-section,
  .hero-full-screen-impressum .top-content-section {
    width: 100%;
  }

  .hero-full-screen .bottom-content-section {
    padding: 1rem;
    text-align: center;
    font-size: 1.5rem;
  }

  .hero-full-screen .top-bar,
  .hero-full-screen-impressum .top-bar {
    background: transparent;
  }

  .hero-full-screen .top-bar .top-bar-left,
  .hero-full-screen-impressum .top-bar .top-bar-left {
    padding: 1rem;
    display: block;
    max-width: 50%;
  }

  .hero-full-screen .top-bar .top-bar-left img,
  .hero-full-screen-impressum .top-bar .top-bar-left img {
    max-width: 90%;
  }

  .hero-full-screen .top-bar .top-bar-right,
  .hero-full-screen-impressum .top-bar .top-bar-right {
    font-size: 1.2rem;
    display: block;
    text-align: center;
  }

  .button,
  .button:hover,
  .button:focus {
    display: inline-block;
    vertical-align: middle;
    margin-top: 1rem;
    margin-right: 2rem;
    margin-left: 2rem;
    font-family: inherit;
    padding: 1rem;
    -webkit-appearance: none;
    border: 2px solid #ffffff;
    border-radius: 0px;

    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0.75);
    color: #ffffff;
  }

  .button.large {
    font-size: 1.5rem;
  }

  a.facebook {
    font-size: 1.5rem;
    line-height: 3rem;
  }

  a.facebook img {
    height: 3rem;
    width: auto;
  }

  .button:last-of-type {
    margin-right: 0;
  }

  /*.hero-full-screen .middle-content-section {
    text-align: center;
    margin-bottom: 0rem;
  }*/

}



/* iPads (portrait) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation: portrait) {


  .hero-full-screen .middle-content-section {
    text-align: center;
    position: absolute;
    top: 35vh;
    text-align: center;
    width: 100%;
    -ms-transform: translate(0, -35%);
    /* IE 9 */
    -webkit-transform: translate(0, -35%);
    /* Safari */
    transform: translate(0, -35%);
  }

  .hero-full-screen .middle-content-section img.ppheadline {
    display: inline-block;
    width: 65vw;
  }

  .hero-full-screen .top-content-section,
  .hero-full-screen-impressum .top-content-section {
    background: none;
    width: 100%;
  }

  .hero-full-screen .top-bar,
  .hero-full-screen-impressum .top-bar {
    padding-top: 3vw;
    padding-left: 4vw;
    padding-right: 4vw;
    background: none;
  }

  .hero-full-screen .top-bar .top-bar-left,
  .hero-full-screen-impressum .top-bar .top-bar-left {
    padding: 0;
    display: block;
    max-width: 50%;
  }

  .hero-full-screen .top-bar .top-bar-left img,
  .hero-full-screen-impressum .top-bar .top-bar-left img {
    width: 25vw;
    max-width: 25vw;
  }

  .hero-full-screen .top-bar .top-bar-right img,
  .hero-full-screen-impressum .top-bar .top-bar-right img {
    width: 25vw;
    max-width: 25vw;
  }

  .ppbutton:first-of-type {
    margin-right: 0;
  }

  /*
  .ppbutton {
    display: block;
  }
  */

  .ppbutton img {
    width: 40vw;
    max-width: 40vw;
    margin-top: 5vh;
    margin-bottom: 0;
  }

  a.facebook img {
    width: 40vw;
    height: auto;
  }



  .hero-full-screen .bottom-content-section {
    padding: 1rem;
    text-align: center;
    font-size: 1.25rem;
  }

  /*.hero-full-screen .top-content-section, .hero-full-screen-impressum .top-content-section {
    width: 100%;
  }

  .hero-full-screen .bottom-content-section {
    padding: 1rem;
    text-align: center;
    font-size: 1.5rem;
  }

  .hero-full-screen .top-bar, .hero-full-screen-impressum .top-bar {
    background: transparent;
    }

  .hero-full-screen .top-bar .top-bar-left, .hero-full-screen-impressum .top-bar .top-bar-left{
    padding: 1rem;
    display: block;
    max-width: 50%;
  }

  .hero-full-screen .top-bar .top-bar-left img, .hero-full-screen-impressum .top-bar .top-bar-left img{
    max-width: 90%;
  }

  .hero-full-screen .top-bar .top-bar-right, .hero-full-screen-impressum .top-bar .top-bar-right{
    font-size: 1.2rem;
    display: block;
    text-align: center;
  }

  .button, .button:hover, .button:focus {
      display: inline-block;
      vertical-align: middle;
      margin-top: 1rem;
      margin-right: 2rem;
      margin-left: 2rem;
      font-family: inherit;
      padding: 1rem;
      -webkit-appearance: none;
      border: 2px solid #ffffff;
      border-radius: 0px;

      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: rgba(0,0,0,0.75);
      color: #ffffff;
  }

  .button.large{
      font-size: 1.5rem;
  }

  a.facebook{
      font-size: 1.5rem;
      line-height: 3rem;
  }

  a.facebook img{
    height: 3rem;
    width: auto;
  }

  .button:last-of-type{
    margin-right: 0;
  }

  .hero-full-screen .middle-content-section {
    text-align: center;
    margin-bottom: 9rem;
  }*/


}

/* iPads (landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation: landscape) {

  .hero-full-screen .middle-content-section {
    text-align: center;
    position: absolute;
    top: 35vh;
    text-align: center;
    width: 100%;
    -ms-transform: translate(0, -35%);
    /* IE 9 */
    -webkit-transform: translate(0, -35%);
    /* Safari */
    transform: translate(0, -35%);
  }

  .hero-full-screen .middle-content-section img.ppheadline {
    display: inline-block;
    width: 65vw;
  }

  .hero-full-screen .top-content-section,
  .hero-full-screen-impressum .top-content-section {
    width: 100%;
  }

  .hero-full-screen .top-bar,
  .hero-full-screen-impressum .top-bar {
    padding-top: 3vw;
    padding-left: 4vw;
    padding-right: 4vw;
  }

  .hero-full-screen .top-bar .top-bar-left,
  .hero-full-screen-impressum .top-bar .top-bar-left {
    padding: 0;
    display: block;
    max-width: 50%;
  }

  .hero-full-screen .top-bar .top-bar-left img,
  .hero-full-screen-impressum .top-bar .top-bar-left img {
    width: 25vw;
    max-width: 25vw;
  }

  .hero-full-screen .top-bar .top-bar-right img,
  .hero-full-screen-impressum .top-bar .top-bar-right img {
    width: 25vw;
    max-width: 25vw;
  }

  .ppbutton:first-of-type {
    margin-right: 56px;
  }

  .ppbutton img {
    width: 16.67vw;
    max-width: 16.67vw;
    margin-top: 6vh;
    margin-bottom: 3vh;
  }

  a.facebook img {
    width: 20vw;
    height: auto;
  }



  .hero-full-screen .bottom-content-section {
    padding: 1rem;
    text-align: center;
    font-size: 1rem;
  }


}


/* Desktops and laptops ----------- */
@media only screen and (min-width : 1025px) {

  .hero-full-screen .middle-content-section {
    text-align: center;
    position: absolute;
    top: 35vh;
    text-align: center;
    width: 100%;
    -ms-transform: translate(0, -35%);
    /* IE 9 */
    -webkit-transform: translate(0, -35%);
    /* Safari */
    transform: translate(0, -35%);
  }

  .hero-full-screen .middle-content-section img.ppheadline {
    display: inline-block;
    width: 65vw;
  }

  .hero-full-screen .top-content-section,
  .hero-full-screen-impressum .top-content-section {
    width: 100%;
  }

  .hero-full-screen .top-bar,
  .hero-full-screen-impressum .top-bar {
    padding-top: 3vw;
    padding-left: 4vw;
    padding-right: 4vw;
  }

  .hero-full-screen .top-bar .top-bar-left,
  .hero-full-screen-impressum .top-bar .top-bar-left {
    padding: 0;
    display: block;
    max-width: 50%;
  }

  .hero-full-screen .top-bar .top-bar-left img,
  .hero-full-screen-impressum .top-bar .top-bar-left img {
    width: 25vw;
    max-width: 25vw;
  }

  .hero-full-screen .top-bar .top-bar-right img,
  .hero-full-screen-impressum .top-bar .top-bar-right img {
    width: 25vw;
    max-width: 25vw;
  }

  .ppbutton:first-of-type {
    margin-right: 56px;
  }

  .ppbutton img {
    width: 16.67vw;
    max-width: 16.67vw;
    margin-top: 6vh;
    margin-bottom: 4vh;
  }

  a.facebook img {
    width: 16vw;
    height: auto;
  }



  .hero-full-screen .bottom-content-section {
    padding: 1rem;
    text-align: center;
    font-size: 1.25rem;
  }


}

.impressum h1 {
  font-size: 2rem;
  margin-top: 3rem;
  font-family: 'Roboto', sans-serif;
  font-weight: 100;
}

.impressum h2 {
  font-size: 1.25rem;
  margin-top: 1.5rem;
}