@font-face {
  font-family: "OpenSansRegular";
  src: url("../fonts/OpenSans-Regular.ttf");
}

@font-face {
  font-family: "OpenSansSemiBold";
  src: url("../fonts/OpenSans-SemiBold.ttf");
}

@font-face {
  font-family: "OpenSansBold";
  src: url("../fonts/OpenSans-Bold.ttf");
}

* {
  font-family: OpenSansRegular, sans-serif;
  color: #444444;
}

:root {
  --size-multiplier: 1;
}

@media (max-width: 960px) {
  :root {
    --size-multiplier: 0.8;
  }
}

@media (max-width: 640px) {
  :root {
    --size-multiplier: 0.6;
  }
}

.no-scroll {
  overflow-y: hidden;
  overflow-x: hidden;
}

header div {
  max-width: 1330px;
  margin: 0 auto;
}

.footer-kontakt {
  position: absolute;
  bottom: 0;
  width: 100%;
}

footer {
  background-color: #444444;
  margin-top: 70px;
  padding: 10px 0;
}

footer p,
footer a {
  color: white;
}

footer p:hover,
footer a:hover {
  text-decoration: none;
  color: white;
}

footer .footer-wrap .inner > :first-child {
  padding-left: 0 !important;
}

@media (max-width: 640px) {
  footer .footer-wrap .inner > * {
    padding-left: 0 !important;
  }
}

.content {
  padding: calc(25px * var(--size-multiplier)) 0;
  max-width: 1330px;
  margin: 0 auto;
}

.inner-large {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

@media (max-width: 640px) {
  .inner-large {
    padding: 0 20px;
  }
}

.inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 40px;
}

@media (max-width: 640px) {
  .inner {
    padding: 0 20px;
  }
}

section {
  padding: calc(50px * var(--size-multiplier)) 0;
}

h1 {
  font-family: OpenSansBold, sans-serif;
  text-transform: uppercase;
  margin: 0;
}

h2 {
  font-family: OpenSansSemiBold, sans-serif;
  text-transform: uppercase;
  font-size: calc(36px * var(--size-multiplier));
  margin: 0;
  margin-bottom: 30px;
}

h3 {
  font-family: OpenSansSemiBold, sans-serif;
  text-transform: uppercase;
  margin: 0;
  margin-bottom: 30px;
  font-size: calc(65px * var(--size-multiplier));
  line-height: 0.9;
}

p,
a {
  font-size: 16px;
}

@media (max-width: 640px) {
  p,
  a {
    font-size: 14px;
  }
}

.bold {
  font-family: OpenSansSemiBold, sans-serif;
}

button {
  font-family: OpenSansSemiBold, sans-serif;
  text-transform: uppercase;
  border: 3px solid #00b3eb;
  background-color: transparent;
  padding: 8px;
  padding-right: 15px;
  text-align: left;
}

button:hover {
  text-decoration: none;
  background-color: #00b3eb;
  cursor: pointer;
  color: white;
  transition: 300ms;
}

nav {
  padding: 0 20px;
}

nav .logo:first-child {
  padding-left: 0 !important;
}

nav li {
  margin: auto 0 14px 0 !important;
}

nav li img {
  max-height: calc(100px * var(--size-multiplier));
}

nav li a {
  font-family: OpenSansSemiBold, sans-serif;
  text-transform: uppercase;
  color: #444444;
}

nav li a:hover {
  color: #747474;
  text-decoration: none;
}

nav li .active::after {
  content: "";
  border-bottom: 3px solid #00b3eb;
  display: flex;
  position: relative;
  z-index: -1;
}

nav .normal li:first-of-type {
  margin: 0 !important;
}

nav .mobile {
  display: none;
}

nav .click {
  display: none;
}

@media (max-width: 830px) {
  nav .desktop {
    display: none;
  }
  nav .mobile {
    display: initial;
    margin: auto 0 !important;
    position: absolute;
    right: calc(40px * var(--size-multiplier));
    top: calc(30px * var(--size-multiplier));
  }
  nav .mobile img {
    max-width: calc(40px * var(--size-multiplier));
  }
}

nav .overlay {
  background-color: #00b3eb;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  width: 100vw;
  height: 100vh;
  z-index: 5;
}

nav .overlay .overlay-content {
  padding: 0;
  padding-top: 80px;
}

nav .overlay .overlay-content li {
  list-style: none;
  text-align: center;
}

nav .overlay .overlay-content li a {
  color: white;
  font-size: 24px;
}

nav .text-wrap {
  margin: auto 0 !important;
  padding-left: 10px !important;
}

nav .text-wrap h1 {
  font-size: calc(35px * var(--size-multiplier));
  line-height: 0.9;
}

nav .text-wrap h2 {
  padding-left: calc(165px * var(--size-multiplier));
  margin-top: calc(-28px * var(--size-multiplier));
  font-size: calc(15px * var(--size-multiplier));
  line-height: 0.9;
}

.intro .image-wrap img {
  border-top-right-radius: 30px;
  border-bottom-right-radius: 30px;
}

@media (max-width: 960px) {
  .intro .image-wrap img {
    max-width: 300px;
  }
}

.intro .headline-wrap {
  padding: 50px 0;
}

.intro .headline-wrap img {
  max-width: calc(550px * var(--size-multiplier));
}

.intro .headline-wrap .button-group {
  padding: calc(70px * var(--size-multiplier)) 0;
}

@media (max-width: 960px) {
  .intro .headline-wrap {
    padding: 0 40px;
  }
  .intro .headline-wrap .button-group {
    padding: calc(50px * var(--size-multiplier)) 0;
  }
}

@media (max-width: 640px) {
  .intro .headline-wrap {
    padding: 0 20px;
  }
}

.sprechproben .sprechproben-wrap .sprechprobe-wrap {
  margin: 0 !important;
  padding: 15px 0;
}

.sprechproben .sprechproben-wrap .sprechprobe-wrap .audio-wrap {
  padding-left: 0 !important;
}

.sprechproben .sprechproben-wrap .sprechprobe-wrap .title-wrap {
  margin: auto 0;
}

@media (max-width: 960px) {
  .sprechproben .sprechproben-wrap .sprechprobe-wrap .title-wrap {
    padding-left: 0 !important;
  }
}

.sprechproben .sprechproben-wrap > :first-child {
  padding-top: 0;
}

.sprechproben .sprechproben-wrap > :last-child {
  padding-bottom: 0;
}

.sprechproben .button-wrap {
  padding-top: 30px;
}

.sprechproben .soundwave-absolute {
  position: absolute;
  right: 0;
  max-width: calc(450px * var(--size-multiplier));
  margin-top: -200px;
}

@media (max-width: 730px) {
  .sprechproben .soundwave-absolute {
    display: none;
  }
}

.kontakt .soundwave-absolute {
  position: absolute;
  right: 0;
  max-width: calc(450px * var(--size-multiplier));
  margin-top: -120px;
}

@media (max-width: 730px) {
  .kontakt .soundwave-absolute {
    display: none;
  }
}

.kontakt a {
  color: #444444;
}

.kontakt a :hover {
  color: #444444;
}
