/* VARIABLEN BITTE ANPASSEN */
@font-face {
  font-family: 'MuseoSans';
  src: url('MuseoSans900.ttf');
}
:root {
  --box-bg-selected-color: rgba(255, 255, 255, 0);
  --box-bg-color: rgba(255, 255, 255, 0);

  --kasten-bg-selected-color: rgb(202, 179, 180);

  --button-bg-color: #ffffff;
  --button-border-color: rgba(255, 255, 255, 0.502);

  --input-bg-color: #ffffff;
  --input-border-color: #ffffff80;
  --input-box-shadow-color: rgba(255, 255, 255, 0.5);

  --loader-color: #ffffff;

  --text-color: black;
}

/* VARIABLEN ENDE  */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'MuseoSans';
}

/* LOADER ANFANG */

.tooltip-inner ul li {
  text-align: left;
}

.custom-loader {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: conic-gradient(#0000 10%,#ffffff);
  -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 9px),#000 0);
  animation: spinner-zp9dbg 1s infinite linear;
}


@keyframes spinner-zp9dbg {
  to {
     transform: rotate(1turn);
  }
}


/* LOADER ENDE */


/* HIER FANGEN DIE KASTEN FÜR DIE MOBILEN GERÄTE AN */


  /* HIER ENDEN DIE KASTEN FÜR DIE MOBILEN GERÄTE */

  /* HIER FANGEN DIE KASTEN AN */



  /* HIER ENDEN DIE KASTEN */

  /* HIER BEGINNT BOX */

  
  /* HIER ENDET BOX */

  /* BITTE AB HIER KEINE ÄNDERUNG DURCHFÜHREN */
  .container {
    padding-top: 50px;
  }
  div h1 {
    padding: 0;
    margin: 0;
    margin-bottom: 55px;
    color: white;
  }

  div#step8 h1 {
    margin-bottom: 0;
  }

  div#step8 h2 {
    margin-bottom: 50px;
  }

  form#user-info h2 {
    font-size: 1.5em;
    color: white;
  } 

  form#user-info h4 {
    font-size: 1em;
    color: white;
  }
  
  #step8{
    animation: animate 2.5s;
    width: 500px;
    padding: 20px;
  }
  .information-icon {
    color: white;
  }

  #step, #step7, #step0, #step1, #step2, #step3, #step4, #step5,#step6, #step9, #step10, #loader, #loader2{
    animation: animate 0.5s;
    text-align: center !important;
    margin: auto;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    
  }

  .checkbox { 
    text-align: left;
    width: initial !important;
    height: initial !important;
    display: block;
  }

  .kasten {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 50%;
    margin-bottom: 5px;
    color: transparent;
  }
  

  .box-special {
    display: inline-block;
    width: 465px; /* Setze die gewünschte Breite */
    height: 65px;
    margin: 10px;
    background-color: white;
    border-radius: 20px;
    padding: 15px;
    cursor: pointer;
    transition: background-color 0.3s ease-in-out;
    -webkit-box-shadow: -10px 0px 13px -7px #000000, 10px 0px 13px -7px #000000, 5px 5px 5px 5px rgba(0,0,0,0); 
    box-shadow: -10px 0px 13px -7px #000000, 10px 0px 13px -7px #000000, 5px 5px 5px 5px rgba(0,0,0,0);
  
  }
  textarea.kommentarFeld.box {
    width: 450px;
    height: 100px;
    border-radius: 25px;
    color: black;
    padding: 25px;
    resize: none;
  }

  input.weiterButton {
    display: none;
    /* margin-top: 40px;
    text-align: center;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    background-color: var(--button-bg-color) !important;
    border-color: var(--button-border-color) !important;
    padding: 10px 40px;
    border-radius: 10px; */
  }

  form#user-info input[type="radio"], form#user-info input[type="checkbox"] {
    display: none;
  }

  .btn {
    /* margin-top: 50px; */
    text-align: center !important;
    font-weight: bold !important;
    font-family: Arial, Helvetica, sans-serif !important;
    background-color: var(--button-bg-color) !important;
    border-color: var(--button-border-color) !important;
  }
  form#user-info input[type="button"]:active, form#user-info input[type="submit"]:active, .btn:active {
    box-shadow: 0 0 0 0.25rem var(--input-box-shadow-color);
  }
  form#user-info input[type="button"]:focus, form#user-info input[type="submit"]:focus, .btn:focus {
    box-shadow: 0 0 0 0.25rem var(--input-box-shadow-color);
  }
  input[type="email"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="checkbox"]:focus {
    box-shadow: 0 0 0 0.25rem var(--input-box-shadow-color) !important;
    border-color: var(--input-border-color) !important;
  }
  .form-check-input:checked {
    background-color: black !important;
    border-color: var(--input-border-color) !important;
  }
  .last_inputs {
    border: none;
    width: 25em;
    -webkit-transition: width .35s ease-in-out;
    transition: width .35 ease-in-out;
    border: none;
    outline: none;
    background-color: #f3f3f3;
    padding: 0.125em;
  }

  .last_inputs:hover {
    width: 28.125em;
    outline: none;
    border-bottom: solid 1px var(--input-border-color);
  }
  
  .last_inputs:focus {
    border-bottom: solid 1px var(--input-border-color);
    width: 28.125em;
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  @media only screen and (max-width: 600px) {
    .box, .box-special {
      width: 100% !important; 
    }

    .box-special {
      padding: 18px;
    }

    form#user-info h1 {
      font-size: 1.5em;
      padding: 0;
    }
    textarea.kommentarFeld.box { 
      width: 300px;
      height: 65px;
      margin-bottom: 5px;
    }
    div[id^="step"]:not(#step8) {
      margin: 10px !important;
    }

    .groups {
      width: 100% !important;
    }
    .elements {
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
    .backgroundIcon {
      display: none;
    }
    .backgroundIcon2 {
      left: 50%;
      top: 50%;
    }
      
    #step8{
      width: 100% !important;
    }
    video.embed-responsive-item {
      width: 100% !important;
      /* height: 100vh; */
    }
  }

  body {
    background: linear-gradient(#04305e, #000000);
    background-attachment: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
  }

  .embed-responsive-16by9 {
    margin-left: 0;
    margin-right: 0;
    aspect-ratio: 16 / 9;
  }
  video.embed-responsive-item {
    width: 100vh;
    /* height: 100vh; */
  }
  /* Select all divs with id starting with "step" and hide them */
  div[id^="step"]:not(#step0) {
    display: none;
  }


  .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  #loader, #loader2, #start{
    display: none;
  }
  .datenschutz {
    display: block !important;
  }


  p, input[type="button"]:hover, input[type="button"] {
    color: var(--text-color);
  }


  .label-placeholder {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 200;
    color: black;
  }
  /* HIER ENDEN DIE NICHT ZU BEARBEITENDE FELDER */
  .content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
    position: relative;
    padding: 0;
    margin: 0;
}

.backgroundIcon, .backgroundIcon2
 {
    width: 30%; /* Adjust the size as needed */
    height: auto;
    position: absolute;
    transform: translate(-50%, -50%);
    opacity: 0.5;
    z-index: -100;
}

.backgroundIconPunkte {
    width: 7%; /* Adjust the size as needed */
    height: auto;
    position: absolute;
    transform: translate(-50%, -50%);
    opacity: 0.5;
    z-index: -100;
}
.logo {
  width: 10%; /* Adjust the size as needed */
  height: auto;
  z-index: -100;
}
.backgroundIcon2 {
  top: 60%;
  right: 0%;
}

.backgroundIcon {
    top: 35%;
    left: 25%;
}

.backgroundIconPunkte {
  top: 50%;
  left: 5%;
}

.logo {
    top: 18%;
    left: 50%;
}

@media (max-width: 1024px) {
    .backgroundIcon,
    .backgroundIcon2 {
        width: 100%;
    }

    .timeline-content {
        flex-direction: column !important;
        align-items: center !important;
    }
  .logo {
      top: 8%;
      left: 50%;
      width: 25%;
      margin-bottom: 20px;
  }

    .timeline-tile1, 
    .timeline-tile2, 
    .timeline-tile3 {
        margin: 0 !important;
        text-align: center !important;
        bottom: 0 !important;
    }

    .timeline-tile1 img,
    .timeline-tile2 img,
    .timeline-tile3 img {
        position: relative !important;
        left: 0 !important;
        bottom: 0 !important;
        right: 0 !important;
    }
}
.timeline-tile3, .timeline-tile1, .timeline-tile2 {
  margin: 0 75px;
}

.timeline-tile3 img, .timeline-tile1 img, .timeline-tile2 img {
  height: 75px;
}
.timeline-content {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-evenly;
    align-items: center;
    align-content: space-around;
}

.timeline-tile {
    margin: 0 75px;
}

.timeline-tile img {
    height: 75px;
}




.timeline-content p {
    border-radius: 50px;
    border: 1px solid white;
    color: white;
    padding: 5px;
    text-align: center;
}


/* BOX */  #step1 {
    text-align: center;
  }

  .box {
    display: inline-block;
    width: 465px; /* Setze die gewünschte Breite */
    height: 65px;
    margin: 10px;
    background-color: white;
    border-radius: 20px;
    cursor: pointer;
    transition: background-color 0.3s ease-in-out;
    -webkit-box-shadow: -10px 0px 13px -7px #000000, 10px 0px 13px -7px #000000, 5px 5px 5px 5px rgba(0,0,0,0); 
    box-shadow: -10px 0px 13px -7px #000000, 10px 0px 13px -7px #000000, 5px 5px 5px 5px rgba(0,0,0,0);
  }

  .box:hover, .box-special:hover {
    background: linear-gradient(#04305e, #000000);; /* Hintergrundfarbe bei Hover */
    color:white !important;
   }

  .box:hover img, .box-special:hover img {
    filter: invert(100%) sepia(71%) saturate(74%) hue-rotate(240deg) brightness(119%) contrast(100%);
  }

  input[type="radio"] {
    display: none; /* Verstecke den standardmäßigen Radio-Button */
  }


  .box label {
    cursor: pointer;
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    padding: 14px; /* Padding für den gesamten Bereich der Box */
    border-radius: 8px; /* Border-Radius für den äußeren Bereich der Box */
    font-size: x-large;
  }

  label.form-check-label {
    color: white;
  }
  

  .icon {
    position: absolute;
    top: 50%;
    left: 5%;
    transform: translateY(-50%);
    width: 50px; /* Breite des Icons anpassen */
    height: auto;
  }
  
  h1 {
    color: white;
  }

  /* group texts */

.groups {
    display: flex;
    margin-right: -20px; /* Negative margin to counteract margin-right in .group */
}

.elements {
    margin-right: 40px; /* Abstand zwischen den Gruppen */
    margin-left: 40px;
  }

.elements div {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    font-size: x-large;
}

.elements span {
  color: white;
}

.group-icon {
    width: 50px;
    height: 50px;
    margin-right: 5px;
}


@media (max-width: 600px) {
  .groups {
    display: flex;
    flex-direction: column;
    margin-right: 0; /* Zurücksetzen des negativen Margs, da die Gruppen jetzt gestapelt werden */
  }

  .elements {
      margin-right: 0; /* Zurücksetzen des Abstands zwischen den Gruppen für Mobilgeräte */
  }

  .elements div {
      margin-bottom: 15px; /* Größerer Abstand zwischen den Elementen für bessere Lesbarkeit */
      font-size: large; /* Kleinere Schriftgröße für Mobilgeräte */
  }

  .group-icon {
      width: 30px; /* Kleinere Icon-Größe für Mobilgeräte */
      height: 30px;
      margin-right: 5px;
  }

  .icon {
    width: 25px;
    left: 3%;
  }

  .box label {
    font-size: large;
    padding: 17px;
  }
  .tooltip-custom:before {
    left: 15%;
    bottom: -50%;
  
  }
}

@media (max-width: 1024px) and (min-width: 600px){
  .groups {
    display: flex;
    flex-direction: column;
    margin-right: 0; /* Zurücksetzen des negativen Margs, da die Gruppen jetzt gestapelt werden */
  }

  .elements {
      margin-right: 0; /* Zurücksetzen des Abstands zwischen den Gruppen für Mobilgeräte */
  }

  .elements div {
      margin-bottom: 15px; /* Größerer Abstand zwischen den Elementen für bessere Lesbarkeit */
      font-size: large; /* Kleinere Schriftgröße für Mobilgeräte */
  }

  .group-icon {
      width: 30px; /* Kleinere Icon-Größe für Mobilgeräte */
      height: 30px;
      margin-right: 5px;
  }

  .icon {
    width: 50px;
    left: 3%;
  }

  .box label {
    font-size: x-large;
    padding: 14px;
  }


}

.tooltip-custom {
  position:relative; /* making the .tooltip span a container for the tooltip text */
}

.tooltip-custom:before {
  content: attr(data-text); /* here's the magic */
  position:absolute;
  
  /* vertically center */
  bottom:-100%;
  
  /* move to right */
  left: 25%;
  /* basic styles */
  width: 250px;
  padding: 10px;
  border-radius: 10px;
  background:#000;
  color: #fff;
  text-align: center;

  display: none;
  z-index: 1000;
}

.tooltip-custom:hover:before {
  display: block;
}

.container-steps {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}

.main-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  height: 100vh;
  align-items: center;
  align-content: center;
}

footer {
  opacity: 0.5;
}

footer p {
  color: white;
}

header {
  display: flex;
  justify-content: center;
}