/********** VARIABLES **********/
/********** FONTS **********/
@font-face {
  font-family: 'FSLucasWeb';
  src: url("../fonts/fslucas/FSLucasWeb-Medium.eot");
  /* IE9 */
  src: url("../fonts/fslucas/FSLucasWeb-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/fslucas/FSLucasWeb-Medium.woff") format("woff");
  /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'FSLucasWeb';
  src: url("../fonts/fslucas/FSLucasWeb-Light.eot");
  /* IE9 */
  src: url("../fonts/fslucas/FSLucasWeb-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/fslucas/FSLucasWeb-Light.woff") format("woff");
  /* Modern Browsers */
  font-weight: lighter;
  font-style: normal;
}

@font-face {
  font-family: 'FSLucasWeb';
  src: url("../fonts/fslucas/FSLucasWeb-Bold.eot");
  /* IE9 */
  src: url("../fonts/fslucas/FSLucasWeb-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/fslucas/FSLucasWeb-Bold.woff") format("woff");
  /* Modern Browsers */
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Fazeta';
  src: url("../fonts/fslucas/Fazeta-MediumText.eot");
  /* IE9 */
  src: url("../fonts/fslucas/Fazeta-MediumText.eot?#iefix") format("embedded-opentype"), url("../fonts/fslucas/Fazeta-MediumText.woff") format("woff");
  /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Fazeta';
  src: url("../fonts/fslucas/Fazeta-BoldText.eot");
  /* IE9 */
  src: url("../fonts/fslucas/Fazeta-BoldText.eot?#iefix") format("embedded-opentype"), url("../fonts/fslucas/Fazeta-BoldText.woff") format("woff");
  /* Modern Browsers */
  font-weight: bold;
  font-style: normal;
}

/********** CUSTOM CSS **********/
html {
  font-size: 1rem;
}

body {
  background-color: #050F0A;
  color: white;
}

a {
  text-decoration: none;
}

a:active,
a:focus,
a:hover {
  color: #50A096;
}

.container-main {
  background-color: #050F0A;
  min-height: 100vh;
}

a,
p,
label,
input {
  font-family: "FSLucasWeb", sans;
  color: white;
  font-size: 1.25rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Fazeta", serif;
  color: white;
  margin-top: 1.5rem;
}

h1 {
  letter-spacing: 0.22rem;
  margin-bottom: 1.3rem;
}

h2 {
  letter-spacing: 0.17rem;
  margin-bottom: 1rem;
}

h3 {
  letter-spacing: 0.15rem;
  margin-bottom: 0.8rem;
}

h4 {
  letter-spacing: 0.18rem;
}

h5 {
  letter-spacing: 0.16rem;
}

.row-hero-landing {
  min-height: 100vh;
  background: url("../images/bg.jpg") no-repeat center center fixed;
  background-size: cover;
}

.row-hero-landing h1 {
  font-family: "Fazeta", serif;
  font-size: 3.5rem;
}

.hero-landing-scroll-animation {
  height: 5rem;
}

.hero-landing-scroll-animation #circle {
  animation: scroll 3s ease infinite;
}

.landing-scroll {
  cursor: pointer;
}

.no-scroll {
  overflow: hidden;
}

.faded-in {
  visibility: visible;
  opacity: 1;
  transition: opacity .5s ease;
}

.faded-out {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s .5s, opacity .5s ease;
}

div.light a,
div.light h1,
div.light h2,
div.light h3,
div.light h4,
div.light h5,
div.light h6,
div.light p {
  color: #050F0A;
}

div.light, div.white {
  background-color: #E1E6E6;
}

div.white {
  background-color: white;
}

div.dark a,
div.dark h1,
div.dark h2,
div.dark h3,
div.dark h4,
div.dark h5,
div.dark h6,
div.dark p,
div.dark-light a,
div.dark-light h1,
div.dark-light h2,
div.dark-light h3,
div.dark-light h4,
div.dark-light h5,
div.dark-light h6,
div.dark-light p,
div.dark-lighter a,
div.dark-lighter h1,
div.dark-lighter h2,
div.dark-lighter h3,
div.dark-lighter h4,
div.dark-lighter h5,
div.dark-lighter h6,
div.dark-lighter p,
div.dark-transparent a,
div.dark-transparent h1,
div.dark-transparent h2,
div.dark-transparent h3,
div.dark-transparent h4,
div.dark-transparent h5,
div.dark-transparent h6,
div.dark-transparent p {
  color: white;
}

div.dark {
  background-color: #050F0A;
}

div.dark-lighter {
  background-color: #0f1914;
}

div.dark-light {
  background-color: #262e2a;
}

div.dark-transparent {
  background-color: rgba(5, 15, 10, 0.8);
}

.col-hero-landing {
  background-color: rgba(5, 15, 10, 0.8);
}

.col-img-container img {
  max-width: 100%;
  max-height: 8rem;
}

.image-logo {
  width: 25em;
  max-width: 100%;
}

.row-card,
.row-hero,
.submenu-wrapper {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.col-hero {
  min-height: 40rem;
}

.hero-linked {
  z-index: 100;
  height: 1.75rem;
  width: 1.75rem;
  margin-bottom: -1.75rem;
  background-size: contain;
}

.card-linked, .card-flippable {
  height: 80%;
  width: 80%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.card-linked {
  background-image: url("../images/polyball_nav_intern.svg");
}

.card-linked:hover {
  background-image: url("../images/polyball_nav_intern-hover.svg");
}

.card-flippable {
  background-image: url("../images/polyball_nav_extern.svg");
}

.card-flippable:hover {
  background-image: url("../images/polyball_nav_extern-hover.svg");
}

.row-card {
  background-color: #262e2a;
  height: 20em;
}

.card-icon-wrapper {
  position: absolute;
  top: 1em;
  right: 1em;
  z-index: 100;
  height: 3em;
  width: 3em;
  border-radius: 50%;
  border-width: 0.15em;
  border-color: white;
  border-style: solid;
}

.card-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow-y: scroll;
  height: 100%;
  background-color: rgba(5, 15, 10, 0.8);
  color: white;
  z-index: 101;
}

.card-content .card-linked {
  position: absolute;
  top: 1em;
  right: 1em;
  background: url("../images/polyball_nav_intern.svg") no-repeat center center;
}

.col-card:hover {
  cursor: pointer;
  overflow: hidden;
}

.a-hero-linked:hover {
  text-decoration: none;
}

.hero-linked {
  background: url("../images/polyball_nav_intern.svg") no-repeat center center;
}

.hero-linked:hover {
  background-image: url("../images/polyball_nav_intern-hover.svg");
}

.wrapper-img-sponsor {
  width: 6em;
  height: 3em;
  margin: 1.5em 2em;
}

.p-sponsor {
  font-size: 0.7rem !important;
  margin-bottom: 0;
  vertical-align: middle;
  letter-spacing: .1rem;
}

.footer-bar .p-sponsor {
  color: #777c7a;
}

.wrapper-img-sponsor-navbar {
  width: 5rem;
  height: 2rem;
  margin: 0 1.5em;
}

.img-sponsor {
  max-height: 100%;
  max-width: 100%;
}

.p-modular-nav-left,
.p-modular-nav-right {
  text-decoration: none;
  text-transform: uppercase;
}

.p-modular-nav-left {
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
  margin-bottom: -0.45em;
}

.p-modular-nav-right {
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  margin-top: 0.85em;
}

.submenu-arrow-left, .submenu-arrow-right {
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.submenu-arrow-left {
  background-image: url("../images/angebot_links.svg");
}

.submenu-arrow-left:hover {
  background-image: url("../images/angebot_links-hover.svg");
}

.submenu-arrow-right {
  background-image: url("../images/angebot_rechts.svg");
}

.submenu-arrow-right:hover {
  background-image: url("../images/angebot_rechts-hover.svg");
}

.nav-submenu {
  text-transform: uppercase;
}

.nav-submenu .nav-link {
  text-decoration: none;
}

.nav-submenu .nav-item:first-child .nav-link {
  padding-left: 0 !important;
}

.submenu-wrapper {
  min-height: 50vh;
}

.nav-submenu-text {
  font-size: 2em !important;
  text-decoration: none !important;
  text-transform: uppercase;
}

.nav-submenu-text.active {
  text-decoration: underline !important;
}

.nav-menu {
  position: fixed;
  top: 1em;
  right: 1em;
  z-index: 201;
}

.nav-logo,
.nav-toggle {
  margin-left: 2em;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.nav-toggle {
  height: 3em;
  width: 3em;
  background-image: url("../images/polyball_nav-menu_open.svg");
}

.nav-toggle:hover {
  background-image: url("../images/polyball_nav-menu_open-hover.svg");
}

.nav-logo {
  background-image: url("../images/polyball_nav_logo.svg");
  height: 3.5em;
  width: 3.5em;
}

.nav-logo:hover {
  background-image: url("../images/polyball_nav_logo-hover.svg");
}

.nav-toggle.active {
  background-image: url("../images/polyball_nav-menu_close.svg");
}

.nav-toggle.active:hover {
  background-image: url("../images/polyball_nav-menu_close-hover.svg");
}

.nav-window {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 200;
  overflow-y: scroll;
  width: 100%;
}

.col-nav {
  min-height: 100vh;
  height: 100%;
}

.wrapper-img-sponsor-nav {
  width: 6em;
  height: 3em;
  margin: 1em 2em;
}

.footer-nav {
  margin-left: 2rem;
}

.footer-nav a, .footer-nav p {
  text-transform: uppercase;
  padding: 1rem;
  font-size: 1rem;
}

.footer-nav .img-facebook, .footer-nav .img-instagram {
  height: 1.25em;
  width: 1.25em;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.footer-nav .img-facebook {
  background-image: url("../images/polyball_facebook.svg");
}

.footer-nav .img-facebook:hover {
  background-image: url("../images/polyball_facebook-hover.svg");
}

.footer-nav .img-instagram {
  background-image: url("../images/polyball_instagram.svg");
}

.footer-nav .img-instagram:hover {
  background-image: url("../images/polyball_instagram-hover.svg");
}

.footer-nav img {
  height: 2em;
  width: auto;
}

.footer-nav li {
  margin-bottom: 2rem;
  margin-right: 1.5rem;
}

.wrapper-footer-nav {
  background: url("../images/polyball_footer.jpg") no-repeat center center;
  background-size: cover;
  background-color: #050F0A;
}

.footer-bar {
  background-color: rgba(5, 15, 10, 0.8);
  height: 5em;
}

.footer-bar a, .footer-bar p {
  font-size: 1rem;
  letter-spacing: .08rem;
}

.text-main-darker {
  color: #777c7a;
}

.wrapper-img-sponsor-footer {
  width: 4em;
  height: 2.5em;
  margin: 0 1em;
}

.div-nav-vertical {
  -ms-transform: translate(40%, 25vh) rotate(270deg);
  transform: translate(40%, 25vh) rotate(270deg);
}

.div-nav-vertical .nav-link {
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: .12rem;
}

.video {
  max-width: 900px;
}

/***** MODAL *****/
.modal-content {
  background-color: #050F0A;
  margin: 3rem auto;
  border-radius: 0rem;
}

/***** BOOTSTRAP OVERWRITE *****/
.col {
  word-wrap: break-word;
}

input {
  border: 2px solid white;
  border-radius: 999px;
  padding: 0.5rem 1.25rem;
  text-decoration: none;
  margin-right: 0.75em;
  max-width: 19em;
  background-color: transparent;
  color: white !important;
}

.select {
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
  margin-right: 0.75em;
}

.select select {
  display: inline-block;
  max-width: 19em;
  cursor: pointer;
  padding: 0.5rem 1.25rem;
  padding-right: 1.75rem;
  outline: 0;
  border: 2px solid white;
  border-radius: 100px;
  background: transparent;
  color: white;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.select select::-ms-expand {
  display: none;
}

.select select:focus,
.select select:hover {
  color: white;
  background: transparent;
}

.select select:disabled {
  opacity: 0.5;
  pointer-events: none;
}

.select select:disabled {
  opacity: 0.5;
  pointer-events: none;
}

.select_arrow {
  position: absolute;
  top: 16px;
  right: 15px;
  pointer-events: none;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  border-color: white transparent transparent transparent;
}

.select select:focus ~ .select_arrow,
.select select:hover ~ .select_arrow {
  border-top-color: white;
}

.select select:disabled ~ .select_arrow {
  border-top-color: #cccccc;
}

select option {
  color: black;
}

textarea {
  max-width: 40em;
  color: white !important;
  border: 2px solid white !important;
  background-color: transparent !important;
  min-height: 10rem;
}

form {
  color: white !important;
}

.btn-primary, h6 a, a h6 {
  color: white;
  background-color: #50A096;
  border-color: transparent;
  border: none;
  border-radius: 999px;
  padding: 0.5rem 1.25rem;
  margin: 0.5em;
  font-size: 1.25rem;
  text-decoration: none;
  font-style: normal;
}

.btn-primary:hover, h6 a:hover, a h6:hover {
  color: white;
  background-color: #83D3C9;
  border-color: #50A096;
  text-decoration: none;
}

.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover {
  box-shadow: none;
  text-decoration: none;
}

.btn-outline-primary, a em, em a {
  color: white;
  background-color: transparent;
  border-color: white;
  border: solid;
  border-radius: 999px;
  padding: 0.5rem 1.25rem;
  margin: 0.5em;
  font-size: 1.25rem;
  text-decoration: none;
  font-style: normal;
}

.btn-outline-primary:hover, a em:hover, em a:hover {
  color: white;
  background-color: #83D3C9;
  border-color: transparent;
  text-decoration: none;
}

.btn-outline-primary:active,
.btn-outline-primary:focus,
.btn-outline-primary:hover {
  box-shadow: none;
  text-decoration: none;
}

/***** CSS ANIMATIONS *****/
@keyframes scroll {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translateY(80%);
    opacity: 0;
  }
}

@keyframes scroll {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translateY(80%);
    opacity: 0;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
