@font-face {
  font-family: 'DIN30640';
  src: url('../fonts/din_30640_std_neuzeit_grotesk_light.eot');
  src: url('../fonts/din_30640_std_neuzeit_grotesk_light.eot?#iefix') format('embedded-opentype'), url('../fonts/din_30640_std_neuzeit_grotesk_light.woff') format('woff'), url('../fonts/din_30640_std_neuzeit_grotesk_light.ttf') format('truetype'), url('../fonts/din_30640_std_neuzeit_grotesk_light.svg#DIN30640') format('svg');
  font-weight: normal;
  font-style: normal;
}
body {
  background: #eee;
  font-family: 'DIN30640';
}
html,
body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: fixed;
}
div.win,
div.loose {
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  pointer-events: none;
  transition: all ease 0.5s;
}
@keyframes regen {
  0% {
    opacity: 0;
    transform: translateY(-400px) rotate(0);
  }
  40% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateY(400px) rotate(130deg);
  }
}
div.win .konfetti,
div.loose .konfetti {
  position: absolute;
  pointer-events: none;
  z-index: 4;
  width: 100%;
  height: 100%;
  background: transparent;
  overflow: hidden;
}
div.win .konfetti .triangle-inner,
div.loose .konfetti .triangle-inner {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 30px;
}
div.win .konfetti .triangle-inner .triangle-item-out,
div.loose .konfetti .triangle-inner .triangle-item-out {
  position: absolute;
  animation: regen 1s linear 0s infinite;
}
div.win .konfetti .triangle-inner .triangle-item-out .triangle-item,
div.loose .konfetti .triangle-inner .triangle-item-out .triangle-item {
  position: absolute;
  display: inline-block;
  width: 3px;
  height: 6px;
  border-radius: 100%;
  background: black;
}
div.win span,
div.loose span {
  position: absolute;
  z-index: 3;
  text-align: center;
  width: 100%;
  padding: 30px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
}
div.win span h1,
div.loose span h1 {
  text-transform: uppercase;
  margin-bottom: 45px;
  font-size: 20px;
  line-height: 1.6em;
}
div.win span h1 span,
div.loose span h1 span {
  display: block;
  position: relative;
  padding: 0;
  transform: none;
  top: 0;
  left: 0;
}
div.win span h1 span.score,
div.loose span h1 span.score {
  font-size: 30px;
  color: black;
  line-height: 1.5em;
  margin-bottom: -5px;
}
div.win span .cta,
div.loose span .cta {
  display: inline-block;
}
div.win span .cta button,
div.loose span .cta button {
  padding: 15px;
  background: transparent;
  border-radius: 0;
  border: 2px solid white;
  transition: all ease 0.5s;
  color: white;
  pointer-events: none;
  display: block;
}
div.win span .cta button:hover,
div.loose span .cta button:hover {
  background: white;
  color: #81ba49;
}
div.win span .cta a,
div.loose span .cta a {
  padding: 20px 15px;
  font-size: 20px;
  line-height: 0;
  display: inline-block;
  color: white;
}
div.win span .cta a.whatsapp,
div.loose span .cta a.whatsapp {
  display: none;
}
div.win {
  background: #81ba49;
}
div.loose {
  background: #b00;
}
body.win .win {
  opacity: 1;
  pointer-events: auto;
  z-index: 999999999;
}
body.win .win span .cta button {
  pointer-events: auto;
}
body.loose .loose {
  opacity: 1;
  pointer-events: auto;
  z-index: 999999999;
}
body.loose .loose span .cta button {
  pointer-events: auto;
}
.wrapper,
.pccard_wrapper {
  position: absolute;
  top: 50%;
  perspective: 700px;
}
.wrapper .card,
.pccard_wrapper .card {
  background: white;
  position: absolute;
  width: 400px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 1px solid black;
  border-radius: 10px;
  pointer-events: none;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  transition: all ease 0.5s, z-index 0s;
  z-index: 2;
  transform-style: preserve-3d;
  opacity: 1 !important;
}
.wrapper .card.active,
.pccard_wrapper .card.active {
  pointer-events: auto;
  z-index: 3;
}
.wrapper .card.show-card,
.pccard_wrapper .card.show-card {
  pointer-events: none;
}
.wrapper .card.center-card,
.pccard_wrapper .card.center-card {
  transform: translate(-49.5%, -49.5%);
}
.wrapper .card.position-card,
.pccard_wrapper .card.position-card {
  z-index: 1;
}
.wrapper .card h2.title,
.pccard_wrapper .card h2.title {
  padding: 15px;
  background: black;
  color: white;
  margin: 0 30px;
  margin-top: -32px;
  font-size: 18px;
  position: relative;
}
.wrapper .card h2.title .name,
.pccard_wrapper .card h2.title .name {
  font-weight: bold;
  text-transform: uppercase;
  margin-top: 5px;
  display: inline-block;
}
.wrapper .card h2.title .position,
.pccard_wrapper .card h2.title .position {
  font-size: 14px;
  font-weight: normal;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.wrapper .card .image,
.pccard_wrapper .card .image {
  width: 100%;
  padding-top: 70%;
  background-size: cover;
  background-position: center;
  border-radius: 10px 10px 0 0;
  background-color: black;
}
.wrapper .card .image .number,
.pccard_wrapper .card .image .number {
  position: absolute;
  top: 30px;
  right: 30px;
  border: 2px solid white;
  border-radius: 100%;
  padding: 10px 0 4px 0;
  font-size: 30px;
  width: 60px;
  text-align: center;
  color: white;
}
.wrapper .card ul,
.pccard_wrapper .card ul {
  list-style: none;
  padding: 30px;
  display: inline-block;
  float: left;
  width: 100%;
  margin: 0;
  padding-top: 15px;
}
.wrapper .card ul li,
.pccard_wrapper .card ul li {
  padding: 8px 5px;
  border-bottom: 1px dotted black;
  display: inline-block;
  float: left;
  width: 100%;
  font-size: 14px;
  cursor: pointer;
  transition: all ease 0.5s;
}
.wrapper .card ul li:hover,
.pccard_wrapper .card ul li:hover {
  background: rgba(0, 0, 0, 0.1);
}
.wrapper .card ul li .index,
.pccard_wrapper .card ul li .index {
  float: left;
  opacity: 0.6;
}
.wrapper .card ul li .value,
.pccard_wrapper .card ul li .value {
  float: right;
}
.wrapper {
  left: 25%;
  z-index: 2;
}
.pccard_wrapper {
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 25%;
}
.pccard_wrapper .card {
  transform: translate(-50%, -50%) rotate3d(0, 1, 0, 180deg);
  transition: all 0.5s ease;
  left: 50%;
  z-index: 2;
}
.pccard_wrapper .card:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  border-radius: 10px;
  transition: height 0s linear 0.15s;
}
.pccard_wrapper .card.center-card {
  transform: translate(-50%, 50%) rotate3d(0, 1, 0, 0);
}
.pccard_wrapper .card.show-card {
  pointer-events: none;
  transform: translate(-50%, -50%) rotate3d(0, 1, 0, 0deg);
}
.pccard_wrapper .card.show-card:after {
  height: 0;
}
.pccard_wrapper .card.position-card {
  z-index: -1;
}
.wrapper,
.pccard_wrapper {
  transition: all ease 0.5s;
}
.wrapper.start_cards,
.pccard_wrapper.start_cards {
  left: 50%;
  right: 50%;
}
.result {
  position: absolute;
  z-index: 999999;
  top: 0;
  left: 0;
  width: 100%;
  float: left;
  background: black;
  display: flex;
  border-bottom: 1px solid white;
}
.result span {
  display: inline-block;
  width: 50%;
  float: left;
  padding: 15px;
  color: white;
  text-align: center;
}
.result span:first-child {
  border-right: 1px solid white;
  flex: 2;
}
.result span:nth-child(2) {
  border-right: 1px solid white;
  flex: 0;
  background: white;
  color: #81ba49;
  padding: 15px 20px;
}
.result span:last-child {
  flex: 2;
}
.playdiv {
  position: absolute;
  z-index: 99999999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0);
}
button.playbutton {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #81ba49;
  color: white;
  border: 2px solid #81ba49;
  padding: 15px 15px 15px 80px;
}
button.playbutton:before {
  position: absolute;
  left: 30px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 30px;
}
button.playbutton.button_win {
  background-color: #81ba49;
  border-color: #81ba49;
}
button.playbutton.button_win:before {
  content: "\f122";
  font-family: Ionicons;
}
button.playbutton.button_loose {
  background-color: #b00;
  border-color: #b00;
}
button.playbutton.button_loose:before {
  content: "\f12a";
  font-family: Ionicons;
}
button {
  padding: 15px;
  background: transparent;
  border-radius: 0;
  border: 2px solid #81ba49;
  transition: all ease 0.5s;
  color: #81ba49;
  pointer-events: auto;
}
button:hover {
  background: #81ba49;
  color: white;
}
.regeln {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.9);
  color: white;
  transition: all ease 0.5s;
  opacity: 0;
}
.regeln.active {
  opacity: 1;
  pointer-events: auto;
  z-index: 99999999;
}
.regeln .regeln_close {
  position: absolute;
  z-index: 99;
  top: 30px;
  right: 30px;
  font-size: 50px;
  color: white;
  cursor: pointer;
}
.regeln .regeln_close:hover {
  opacity: 0.7;
}
.regeln .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.regeln .container ol {
  padding: 0;
  margin: 0;
  counter-reset: section;
  list-style: none;
}
.regeln .container ol li {
  font-size: 16px;
  padding: 5px;
  position: relative;
  padding-left: 30px;
}
.regeln .container ol li:before {
  counter-increment: section;
  /* Erhöht den Abschnittszähler */
  content: counter(section) ". ";
  position: absolute;
  top: 5px;
  left: 0;
  color: #81ba49;
}
.start {
  position: absolute;
  z-index: 9999999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.9);
  color: white;
  transition: all ease 0.5s;
}
.start.hide_section {
  opacity: 0;
  transform: translateY(-100%);
  pointer-events: none;
}
.start .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.start .container h1 {
  margin-bottom: 15px;
  font-size: 30px;
}
.start .container p {
  font-size: 18px;
  margin-bottom: 30px;
}
.result_mobile {
  z-index: 999;
  position: absolute;
  width: 100%;
  left: 0;
  top: 50px;
  bottom: 0;
  padding-bottom: 84px;
  background: white;
  flex-direction: column;
  pointer-events: none;
  opacity: 0;
  display: none;
  transition: opacity ease 0.5s;
}
.result_mobile.active {
  pointer-events: auto;
  opacity: 1;
}
.result_mobile .images {
  flex: 2;
  background-color: black;
}
.result_mobile .images div {
  width: 50%;
  height: 220px;
  /***height: 100%;***/
  float: left;
  display: inline-block;
  background-position: center center;
  background-size: cover;
}
.result_mobile .images div:first-child {
  border-right: 1px solid white;
}
.result_mobile .title {
  display: flex;
}
.result_mobile .title div {
  width: 50%;
  float: left;
  display: inline-block;
  background: black;
  color: white;
  padding: 10px 15px;
  text-align: left;
  font-size: 12px;
}
.result_mobile .title div:first-child {
  border-right: 1px solid white;
}
.result_mobile .title div span {
  display: block;
}
.result_mobile .title div span:first-child {
  font-size: 14px;
  font-weight: bold;
}
.result_mobile .index {
  font-size: 25px;
  padding: 15px 15px;
  width: 100%;
  display: inline-block;
}
.result_mobile .value {
  flex-grow: 1;
  display: flex;
  align-items: center;
}
.result_mobile .value div {
  width: 50%;
  float: left;
  display: inline-block;
  font-size: 30px;
  text-align: center;
  padding: 15px 0;
}
.result_mobile .value div:first-child {
  border-right: 1px solid rgba(0, 0, 0, 0.3);
}
.result_mobile .value div:after {
  display: block;
  font-size: 40px;
  margin-top: 5px;
}
.result_mobile .value div.result_win {
  opacity: 1;
}
.result_mobile .value div.result_loose {
  opacity: 0.5;
}
@media (max-width: 992px) {
  .start h1 {
    font-size: 4vw;
  }
  .start p {
    font-size: 2vw;
  }
}
@media (max-width: 768px) {
  .result_mobile {
    display: flex;
  }
  div.win span .cta a.whatsapp,
  div.loose span .cta a.whatsapp {
    display: inline-block;
  }
  .regeln .container {
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .playdiv .playbutton {
    bottom: 0;
    top: initial;
    transform: translate(0, 0);
    left: 0;
    width: 100%;
    padding: 30px 15px;
  }
  .wrapper.start_cards,
  .pccard_wrapper.start_cards {
    left: 0;
    right: 0;
  }
  .wrapper,
  .pccard_wrapper {
    left: 0;
    top: 50px;
    bottom: 0;
    right: inherit;
    width: 100%;
  }
  .wrapper .card,
  .pccard_wrapper .card {
    width: 100%;
    height: 100%;
    border-radius: 0;
    max-width: 400px;
    transform: translate(-50%, -50%) !important;
    opacity: 0;
    box-shadow: none;
    border: none;
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .wrapper .card .image,
  .pccard_wrapper .card .image {
    border-radius: 0;
    padding-top: 0;
    height: auto;
    flex-grow: 1;
  }
  .wrapper .card.active,
  .pccard_wrapper .card.active {
    opacity: 1;
  }
  .wrapper .card.active.center-card,
  .pccard_wrapper .card.active.center-card {
    transform: translate(-50%, -50%) !important;
    opacity: 0 !important;
  }
  .wrapper .card ul,
  .pccard_wrapper .card ul {
    padding-top: 15px;
    padding-bottom: 30px;
  }
  .wrapper .card h2.title .name,
  .pccard_wrapper .card h2.title .name {
    font-size: 14px;
  }
  .wrapper .card h2.title .position,
  .pccard_wrapper .card h2.title .position {
    font-size: 10px;
  }
  .pccard_wrapper {
    display: none;
  }
  .start .container {
    width: 90%;
  }
  .start .container h1 {
    font-size: 30px;
  }
  .start .container p {
    font-size: 14px;
  }
}
