/*Welcome page css */

.welcome-header {
  position: relative;
  height: max(calc(100vh - 50px), 35vw);
}

#welcome-svg svg {
    width: calc(100% + 30px);
    left: 0;
    top: 0;
    min-width: 300px;
    transform: translate(-15px, -50px);
}

.welcome-header .card {
  height: calc(20vw - 50px);
  width: calc(20vw - 50px);
  background-color: #f4f4f4;;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  border: solid 5px rgb(38 137 192 / 31%);
  max-width: 200px;
  max-height: 200px;
  min-width: 100px;
  min-height: 100px;
  box-shadow: 1.5rem 2.5rem 5rem 0.7rem rgba(0,0,0,0.1);
  transform-style: preserve-3d;
  transform: perspective(1000px);
}

.welcome-header .card:hover {
  cursor: pointer;
}

.welcome-header .card img {
  transform: translateZ(80px);
  height: 50%;
}

.welcome-header .card:nth-of-type(even) img{
  width: 55%;
}

.welcome-header .card:nth-of-type(odd) img{
  width: 50%;
}

.welcome-header .card.disabled {
  cursor: not-allowed;
  border-color: rgb(217, 83, 79, 0.3);
}
.welcome-header .card.disabled img, .welcome-header .card.missing img {
  filter: grayscale(1);
}

.welcome-header .card.missing {
  border-color: rgb(243, 156, 18, 0.3);
}

.card.wf {
  margin-top: calc(1vw - 110px);
  margin-left: 2vw;
}

.card.canvas {
  margin-top: calc(1vw - 250px);
  margin-left: 65vw;
}

.card.visualization {
  margin-top: calc(1vw - 150px);
  margin-left: 35vw;
}


@media screen and (max-width: 1160px) {
  .card.wf {
    margin-top: calc(1vw - 50px);
  }
  .card.visualization {
    margin-top: calc(1vw - 130px);
  }

  .card.canvas {
    margin-top: calc(1vw - 200px);
  }
}

@media screen and (max-width: 930px) {
  .welcome-cards {
    display: flex;
    justify-content: space-around;
  }
  .card.wf, .card.visualization, .card.canvas  {
    margin-top: 0;
    margin-left: 0;
  }
}

.welcome-header .card span {
  margin: 0 auto;
  font-size: min(2rem, max(1.5vw, 1rem));
  font-weight: bold;
  white-space: nowrap;
  transform: translateZ(100px);
}

.welcome-text {
  padding-left: 15px;
  padding-right: 15px;
}

#core_welcome-vis_modal .modal-dialog {
    top: 50vh;
    transform: translateY(-50%);
}

#core_welcome-vis_modal .modal-body .cards {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

#core_welcome-vis_modal .mod-desc {
  padding-top: 20px;
}

#core_welcome-go_down {
  position: absolute;
  margin: 0 auto;
  top: max(calc(93vh - 50px), 34vw);
  left: 50%;
  transform: translate(-50%, 0);
  background: linear-gradient(#2689c0, #6d7fc6);
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  #core_welcome-go_down {
    top: max(calc(88vh - 50px), 34vw);
  }
}

.welcome-header .mod-desc {
  padding-top: min(100px, 6vw);
}

.mod-desc h5 {
  display: none;
  font-size: min(3rem, max(1.5vw, 2rem));
  font-weight: 700;
  color: #2c8abf;
  text-align: center;
}
