:root {
  --neulandNext_animationTime: 0s; /* * Wird durch JS gesetzt */
  --events_animationTime: 0s; /* * Wird durch JS gesetzt */
  --neuland_blue: #0b83ff;
  --progressbar_background: #ccc;
}

body {
  margin: 0px;
  padding: 0px;
  font-family: Arial, sans-serif;
  text-align: center;
  display: flex;
  justify-content: center;
  min-height: 100vh;
  align-items: center;
}

h2 {
  font-size: 40px;
}

.diashow {
  margin-top: 50px;
}
.diashow .container {
  width: 80%;
  margin: 0 auto;
  max-width: 800px;
  padding-top: 50px;
}
.diashow .container2 {
  position: relative;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.diashow .container3 {
  position: relative;
  display: flex;
  position: relative;
  justify-content: center;
}
.diashow .container3 > img {
  max-height: 750px;
  border-radius: 10px;
}
.diashow .container,
.diashow .container2,
.diashow .container3 {
  width: inherit;
}
.diashow .progressbarContainer {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
.progressbar,
.progressbar > div,
.progressbar > div > div {
  width: 25px;
  height: 7px;
  border-radius: 5px;
  /* transition: background-color 0.5s ease; */
}
.diashow .diashow_text {
  font-size: 40px;
  margin-top: 10px;
  font-weight: bold;
  height: 100px;
  /* word-break: break-all; */
  max-width: 350px;
}
.diashow .progressbar {
  margin: 0px 5px 0px 5px;
  position: relative;
  overflow: hidden; /* Somit sind die blauen balken runder */
}
.diashow .progressbar > div {
  background-color: var(--progressbar_background);
  position: absolute;
}
.diashow .progressbar > div > div {
  position: absolute;
}
.diashow .progressbarCurrent > div > div {
  background-color: var(--neuland_blue) !important;
  animation: fillAnimation var(--neulandNext_animationTime) linear forwards;
}
@keyframes fillAnimation {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}

#screen_neulandNext {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#screen_neulandNext > section {
  width: 35vw;
  min-width: 500px;
}

#screen_neulandNext #neulandNext_appInfo_imgs > div,
#neulandNext_appInfo_badge > div {
  margin: 0px 30px 0px 30px;
}
#screen_neulandNext #neulandNext_appInfo_imgs > div > img {
  width: 200px;
  height: 200px;
}
#screen_neulandNext #neulandNext_appInfo_imgs > div:nth-child(1) > img {
  border-radius: 50px;
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2), 0 12px 40px 0 rgba(0, 0, 0, 0.19);
}

._3d_druck_workshop_imgs {
  display: flex;
}
._3d_druck_workshop_imgs img {
  width: 100%;
}
._3d_druck_workshop_imgs_side {
  width: 24vw;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
._3d_druck_workshop_imgs_center {
  width: 50vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
._3d_druck_workshop_imgs_center h2 {
  margin-top: 90px;
}
._3d_druck_workshop_imgs_center > div {
  display: flex;
}
._3d_druck_workshop_imgs_center > div > img {
  width: 50%;
}

#screen_neuland {
  background-color: #222325;
  color: white;
  width: 100vw;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.screen_neuland_div {
  display: flex;
  flex-direction: row;
  width: 1600px;
  margin-top: 30px;
  margin-bottom: 60px;
  align-items: top;
}
.screen_neuland_div_side img {
  width: 260px;
  border-radius: 5px;
}
.screen_neuland_div_side p {
  width: 300px;
  font-size: 25px;
  margin-bottom: 0px;
}
.screen_neuland_div_center {
  margin: 0px 80px;
}
.screen_neuland_div_center > h3 {
  font-size: 30px;
  margin-top: 35px;
  margin-bottom: 15px;
  text-align: left;
}
.screen_neuland_div_center > p {
  text-align: left;
  font-size: 25px;
  margin-top: 0px;
}

#screen_events {
  display: flex;
  align-items: center;
  gap: 100px;
}
#screen_events #events_diashow_img {
  min-width: 600px;
  max-width: 600px;
}
#screen_events .diashow_text {
  font-size: 35px;
}

#screen_events .list h2 {
  margin-top: -80px !important;
}
#screen_events .list h3 {
  font-size: 30px;
  margin-top: 20px;
  margin-bottom: 10px;
}
#screen_events .list p {
  font-size: 22px;
  margin: 10px 0px;
}

#screen_neuland2 {
  background-color: #222325;
  color: white;
  width: 100vw;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.screen_neuland2_div {
  display: flex;
  flex-direction: column;
  width: 1600px;
  margin-top: 30px;
  margin-bottom: 60px;
  align-items: center;
}
.screen_neuland2_div_img {
  display: flex;
  flex-direction: column;
}

.screen_neuland2_div_img > img {
  width: 250px;
  border-radius: 5px;
}
.screen_neuland2_div_img > p {
  font-size: 25px;
}

#screen_hochschulkino h2 {
  font-size: 60px;
}
.screen_hochschulkino_img {
  max-width: 97vw;
  border-radius: 10px;
  box-shadow: rgba(0, 0, 0, 0.45) 0px 15px 25px,
    rgba(0, 0, 0, 0.15) 0px 5px 10px;
  max-height: 80vh;
}
