/* === GLOBALES-SYSTEM === */

:root {
  --blau: #077F8F;
  --pink: #F087B1;
  --gelb: #F4E72A;
  --hell-grau: #F0F0F0;
  --türkis: #06AEC8;
  --weiss: #FFF;
  --schwarz: #000;
  --dunkel-grau: #3D3F45;
  --primaere-schriftart: Verdana;
  --sekundaere-schriftart: Helvetica Neue;
  --tertiaere-schriftart: Arial;
  --fallback-schriftart: sans-serif;
  --border-style: 2px solid;
  --border-transition: border .5s ease-in-out;
}

/* === GRID-SYSTEM === */

.container {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}

.row::after {
  content: "";
  clear: both;
  display: block;
}

[class*='col-'] {
  float: left;
  min-height: 1px;
  padding: .8rem;
}

.col-1 {
  width: 16.666%;
}

.col-2 {
  width: 33.333%;
}

.col-3 {
  width: 50%;
}

.col-4 {
  width: 66.666%;
}

.col-6 {
  width: 100%;
}

@media (max-width: 1024px) {

  .col-1 {
    width: 33.333%;
  }

}

@media (max-width: 768px) {

  .col-1 {
    width: 50%;
  }

  .col-2 {
    width: 100%;
  }

  .col-3 {
    width: 100%;
  }

  .col-4 {
    width: 100%;
  }

}

@media (max-width: 480px) {

  .col-1 {
    width: 100%;
  }

  .col-2 {
    width: 100%;
  }

  .col-3 {
    width: 100%;
  }

  .col-4 {
    width: 100%;
  }

}


/* === HTML & Body (Global) === */

html {
  font-size: 16px;
}

body {
  margin: 0;
  font-family: var(--primaere-schriftart), var(--sekundaere-schriftart), var(--tertiaere-schriftart), var(--fallback-schriftart);
}

* {
  box-sizing: border-box;
}

section {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 1366px) {

  section {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

}

@media (max-width: 1024px) {

  section {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

}

@media (max-width: 768px) {

  section {
    padding-top: .5rem;
    padding-bottom: .5rem;
  }

}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.active {
  background-color: var(--türkis) !important;
}

.wichtiger-text {
  font-weight: bold;
}

.screenreader {
  display: none;
}

.intro-container {
  text-align: center;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
}

.intro-container>h1 {
  font-size: 1.6rem;
  text-transform: uppercase;
}

.intro-container>p {
  font-size: 1.2rem;
}

@media (max-width: 1366px) {

  .intro-container {
    width: 90%;
  }

  .intro-container>p {
    margin-bottom: .5rem;
  }

}

@media (max-width: 1024px) {

  .intro-container {
    width: 100%;
  }

  .intro-container>p {
    margin-bottom: 0;
  }

}

@media (max-width: 1024px) {

  .intro-container {
    margin-bottom: 1rem;
  }

}


/* === BUTTONS === */

.btn-typ-1 {
  background-color: var(--türkis);
  border: var(--border-style) var(--türkis);
  color: var(--weiss);
  padding: .4rem .6rem;
  transition: var(--border-transition);
}

.btn-typ-1:hover {
  border: var(--border-style) var(--weiss);
  font-weight: normal;
}

.btn-typ-2 {
  background-color: transparent;
  border: var(--border-style) var(--weiss);
  color: var(--weiss);
  padding: .4rem .6rem;
  transition: color .5s ease-in-out, var(--border-transition);
}

.btn-typ-2:hover {
  color: var(--türkis);
  border: var(--border-style) var(--türkis);
  font-weight: normal;
}

.btn-typ-3 {
  background-color: transparent;
  border: var(--border-style) var(--pink);
  font-size: 1rem;
  color: var(--pink);
  transition: var(--border-transition);
}

.btn-typ-3:hover {
  border: var(--border-style) var(--türkis);
  font-weight: normal;
}

/* === NAVIGATIONSLEISTE === */

#header-nav {
  width: 100%;
  height: 50px;
  background-color: var(--pink);
  position: relative;
  font-weight: bold;
  font-size: 1.1rem;
}

#header-nav a>img {
  height: 30px;
  width: auto;
  margin: .55rem;
  float: left;
}

#header-nav ul {
  margin: 0;
  padding: 0;
  float: right;
  height: 100%;
}

#header-nav ul>li {
  display: inline-block;
  height: 100%;
  padding: 0 .4rem 0 .4rem;
}

#header-nav ul>li>a {
  margin-top: .8rem;
  display: inline-block;
}

#header-nav ul>li>a:link {
  color: var(--weiss);
  text-decoration: none;
}

#header-nav ul>li>a:visited {
  color: var(--weiss);
  text-decoration: none;
}

#header-nav ul>li>a:active {
  color: var(--hell-grau);
  text-decoration: none;
}

#header-nav ul>li>a:hover {
  color: var(--hell-grau);
  text-decoration: none;
}

#header-nav .col-6 {
  padding-top: 0;
  padding-bottom: 0;
}

#header-nav .container,
#header-nav .row,
#header-nav .col-6 {
  height: 100%;
}

.logo-link {
  display: inline-block;
}

/* === NAVIGATIONSLEISTE (MOBIL) === */

#mobile-nav-button {
  color: var(--weiss);
  float: right;
  font-size: 2rem;
  border: var(--border-style) var(--weiss);
  width: 37px;
  height: 37px;
  position: relative;
  margin-top: .4rem;
  margin-bottom: .5rem;
}

#mobile-nav-button>span {
  position: absolute;
  top: -2px;
  left: 7px;
}

#mobile-nav-content>ul>li {
  display: block;
  background-color: var(--dunkel-grau);
  height: 50px;
  padding: 0 1.2rem;
  text-align: center;
}

#mobile-nav-dropdown {
  position: relative;
  float: right;
}

#mobile-nav-content {
  position: absolute;
  right: 0;
  top: 50px;
  display: none;
}

#mobile-nav-dropdown:hover>#mobile-nav-content {
  display: block;
}

#mobile-nav {
  display: none;
}

@media (max-width: 768px) {

  #desktop-nav {
    display: none;
  }

  #mobile-nav {
    display: block;
  }

}

/* === HEADER-BANNER === */

#header-banner {
  width: 100%;
  height: 0;
  padding-top: 37.54%;
  background: url("../img/hintergrund-main.jpg") no-repeat;
  background-size: contain;
}

#header-banner3 {
  width: 100%;
  height: 0;
  padding-top: 18.40%;
  background: url("../img/hintergrund3b-kleiner.jpg") no-repeat;
  background-size: contain;
}

#header-banner4 {
  width: 100%;
  height: 0;
  padding-top: 18.40%;
  background: url("../img/hintergrund4-kleiner.jpg") no-repeat;
  background-size: contain;
}

#header-banner6 {
  width: 100%;
  height: 0;
  padding-top: 18.40%;
  background: url("../img/hintergrund6-kleiner.jpg") no-repeat;
  background-size: contain;
}

#header-banner7 {
  width: 100%;
  height: 0;
  padding-top: 18.40%;
  background: url("../img/hintergrund7-kleiner.jpg") no-repeat;
  background-size: contain;
}

#header-banner8 {
  width: 100%;
  height: 0;
  padding-top: 18.40%;
  background: url("../img/hintergrund8-kleiner.jpg") no-repeat;
  background-size: contain;
}

#header-banner-klein {
  width: 100%;
  height: 0;
  padding-top: 15.625%;
  background: url("../img/hintergrund2.jpg") no-repeat;
  background-size: contain;
}



/* === Call2Action === */

#call2action-bereich {
  width: 100%;
  background-color: var(--pink);
  padding-bottom: 0;
  padding-top: 0;
}

#call2action-bereich2 {
  width: 100%;
  background-color: var(--türkis);
  padding-bottom: 0;
  padding-top: 0;
}

#apple {
  width: 30%;
  height: 30%;

}

#google {
  width: 30%;
  height: 30%;
}

.col-3a {
  text-align: right;
  width: 50%;
}

.col-3b {
  text-align: left;
  width: 50%;
}


@media (max-width: 1440px) {

  #apple {
    width: 40%;
    height: 40%;
  }

  #google {
    width: 40%;
    height: 40%;
  }
}


@media (max-width: 1024px) {

  #apple {
    width: 50%;
    height: 50%;
  }

  #google {
    width: 50%;
    height: 50%;
  }
}



@media (max-width: 768px) {

  #apple {
    width: 60%;
    height: 60%;
  }

  #google {
    width: 60%;
    height: 60%;
  }
}

@media (max-width: 480px) {

  #apple {
    width: 70%;
    height: 70%;
  }

  #google {
    width: 70%;
    height: 70%;
  }
}

@media (max-width: 280px) {

  #apple {
    width: 80%;
    height: 80%;
  }

  #google {
    width: 80%;
    height: 80%;
  }
}



/* === Werbe/Video-Bereich 1 + Investoren Bereich === */

#werbung-bereich {
  background-color: var(--gelb);
  color: var(--schwarz);
  text-align: center;
}

#werbung-bereich iframe {
  width: 50%;
  height: 420px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}


@media (max-width: 1440px) {

  #werbung-bereich iframe {
    width: 70%;
    height: 420px;
  }

}

@media (max-width: 1024px) {

  #werbung-bereich iframe {
    width: 80%;
    height: 350px;
  }

}

@media (max-width: 768px) {

  #werbung-bereich iframe {
    width: 80%;
    height: 350px;
  }
}



@media (max-width: 480px) {

  #werbung-bereich iframe {
    width: 100%;
    height: 300px;
  }
}



/* === Werbe/Video-Bereich 2 === */

#dating {
  width: 35%;
  height: 35%;
}


#werbung-bereich2 {
  background-color: var(--türkis);
  color: var(--weiss);
  text-align: center;
}

@media (max-width: 1440px) {

  #dating {
    width: 40%;
    height: 40%
  }
}

@media (max-width: 1024px) {

  #dating {
    width: 55%;
    height: 55%
  }
}


@media (max-width: 768px) {

  #dating {
    width: 70%;
    height: 70%
  }
}


@media (max-width: 480px) {

  #dating {
    width: 100%;
    height: 100%
  }
}



/* === SERVICE-BEREICH === */

#service-bereich {
  background-color: var(--blau);
  color: #FFF;
}

.service-box {
  text-align: center;
  width: 80%;
}

.service-box h1 {
  font-size: 1.4rem;
}

#service-bereich .row:nth-of-type(2)>.col-2:first-of-type>.service-box {
  margin-right: 0;
  margin-left: auto;
}

#service-bereich .row:nth-of-type(2)>.col-2:nth-of-type(2)>.service-box {
  margin-left: auto;
  margin-right: auto;
}

.service-icon {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
}

#letter-icon {
  background: var(--pink) url("./../img/services-sprite1b.png");
}

#smartphone-icon {
  background: var(--pink) url("./../img/services-sprite.png") left -240px top 0;
}

#love-icon {
  background: var(--pink) url("./../img/services-sprite3.png");
}

@media (max-width: 768px) {

  #service-bereich>.container>.row:nth-of-type(2)>.col-2>.service-box {
    margin-right: auto;
    margin-left: auto;
  }

}

@media (max-width: 480px) {

  .service-box {
    width: 100%;
  }

}


/* === Konzept-Bereich === */

#konzept-bereich {
  background-color: var(--weiss);
}

#konzept-container {
  position: relative;
  width: 85%;
  margin-right: auto;
  margin-left: auto;
}

#konzept-container p {
  margin-top: 0;
}

#konzept-container>img {
  position: absolute;
  top: 0;
  right: -50px;
  height: 100%;
}

#konzept-container>p {
  width: 80%;
  font-size: 1.2rem;
}


@media (max-width: 1750px) {

  #konzept-container>img {
    right: -110px;
  }
}

@media (max-width: 1535px) {

  #konzept-container>p {
    width: 75%;
  }

}

@media (max-width: 1440px) {

  #konzept-container>img {
    right: -100px;
  }

}

@media (max-width: 1440px) {

  #konzept-container>p {
    width: 60%;
  }

}


@media (max-width: 1280px) {

  #konzept-container>img {
    display: none;
  }

  #konzept-container>p {
    width: 100%;
  }


}


/* === Konzept-Bereich Produkt1 === */

#konzept-bereich-produkt1 {
  background-color: var(--weiss);
}

#konzept-container-produkt1 {
  position: relative;
  width: 85%;
  margin-right: auto;
  margin-left: auto;
}

#konzept-container-produkt1>img {
  margin-left: 40%;
  width: 22%;
  height: auto;
}

#konzept-container-produkt1>p {
  margin-left: 10%;
  width: 80%;
  font-size: 1.2rem;
}

/* === Konzept-Bereich Produkt2 === */

#konzept-bereich-produkt2 {
  background-color: var(--weiss);
}

#konzept-container-produkt2 {
  position: relative;
  width: 85%;
  margin-right: auto;
  margin-left: auto;
}

#konzept-container-produkt2>img {
  margin-left: 30%;
  width: 35%;
  height: auto;
}

#konzept-container-produkt2>p {
  width: 100%;
  font-size: 1.2rem;
}


/* === Produkt-Übersicht === */

#konzept-bereich-produkt-main {
  background-color: var(--weiss);
}

#konzept-container-produkt-main {
  position: relative;
  width: 85%;
  margin-right: auto;
  margin-left: auto;
}

#konzept-container-produkt-main>img {
  margin-left: 5%;
  width: 70%;
  height: auto;
}

#konzept-container-produkt-main>p {
  width: 90%;
  font-size: 1.2rem;
}


/* === FOOTER === */

#footer {
  background-color: var(--pink);
  height: 2.8rem;
  color: var(--weiss);
}

#footer-nav {
  float: right;
}

#footer-nav a {
  text-decoration: none;
}

#footer-nav a:link {
  color: var(--weiss);
}

#footer-nav a:visited {
  color: var(--weiss);
}

#footer-nav a:active {
  color: var(--weiss);
}

#footer-nav a:hover {
  color: var(--hell-grau);
}

@media (max-width: 565px) {

  #footer span {
    display: none;
  }

}

/* === IMPRESSUM === */

#impressum {
  padding-top: 1rem;
}

#impressum a {
  color: var(--pink);
  text-decoration: none;
  font-weight: bold;
}


/* === KONTAKT-SEITE === */

#kontakt-bereich {
  padding-top: 1rem;
}

#kontakt-formular input,
#kontakt-formular textarea {
  width: 100%;
  border: var(--border-style) var(--dunkel-grau);
  padding: .5rem;
  font-size: 1rem;
  font-family: var(--primaere-schriftart), var(--sekundaere-schriftart), var(--tertiaere-schriftart), var(--fallback-schriftart);
  color: var(--dunkel-grau);
  transition: var(--border-transition);
}

#kontakt-formular textarea {
  height: 100px;
}

#kontakt-formular input:hover,
#kontakt-formular textarea:hover {
  border: var(--border-style) var(--pink);
}

#absendenButton {
  width: 150px;
  height: 39px;
}

#kontakt-formular {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4rem;
}

@media (max-width: 1366px) {

  #kontakt-formular {
    width: 90%;
  }

}

@media (max-width: 1024px) {

  #kontakt-formular {
    width: 100%;
  }

}

@media (max-width: 768px) {

  #kontakt-formular button {
    width: 100%;
  }

}