.bg-green {
  background: #49D983;
  color: white !important;
}

.bg-red {
  background: #E31A56;
  color: white !important;
}

.bg-white {
  background-color: white;
  color: #34495e !important;
}

.bg-green-gradient {
  background: #49d983;
  background: linear-gradient(221deg, #49d983 0%, #c6e2d1 89%);
  color: white !important;
}

.bg-red-gradient {
  background: #e31a56;
  background: linear-gradient(189deg, #e31a56 0%, #ffdce7 100%);
  color: white !important;
}

.bg-outline-green {
  color: #49D983 !important;
  border: 1px solid #49D983;
}
.bg-outline-green:hover {
  background: #49D983 !important;
  color: white !important;
}

.bg-outline-red {
  color: #E31A56 !important;
  border: 1px solid #E31A56;
}
.bg-outline-red:hover {
  background: #E31A56 !important;
  color: white !important;
}

.text-primaryColor {
  color: #34495e !important;
}

.text-green {
  color: #49D983 !important;
}

.text-red {
  color: #E31A56 !important;
}

.text-yellow {
  color: #FFC83D !important;
}

@-webkit-keyframes sky {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(20px, 20px);
  }
  50% {
    transform: translate(20px, 0);
  }
  75% {
    transform: translate(0, 20px);
  }
  100% {
    transform: translate(0, 0);
  }
}

@keyframes sky {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(20px, 20px);
  }
  50% {
    transform: translate(20px, 0);
  }
  75% {
    transform: translate(0, 20px);
  }
  100% {
    transform: translate(0, 0);
  }
}
.info {
  margin-bottom: 20px;
}
.info img {
  border-radius: 10px;
  margin-bottom: 20px;
}
.info span {
  display: block;
}
.info .title {
  font-size: 23px;
  font-weight: bold;
}
.info .description {
  font-size: 18px;
  margin-bottom: 20px;
}
.info .mentor {
  font-size: 15px;
  font-weight: bold;
  color: grey;
  margin-bottom: 5px;
}
.info a {
  font-size: 18px;
  font-weight: bold;
}

.detail .class-info {
  background: #F8F9FA;
  padding: 10px 25px;
  border-radius: 10px;
  margin-bottom: 20px;
}
.detail .class-info .class-info-item {
  font-size: 18px;
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 10px;
}
.detail .accordion {
  background: #F8F9FA;
  padding: 5px;
  border-radius: 10px;
}
.detail .accordion .accordion-flush .accordion-item .accordion-button {
  background: #F8F9FA !important;
}
.detail .accordion .accordion-button {
  background: #F8F9FA !important;
  font-size: 18px;
}
.detail .accordion .accordion-body {
  font-size: 18px;
  background: #F8F9FA !important;
}
.detail .accordion .accordion-body p b {
  display: block;
}
.detail .accordion .accordion-button:not(.collapsed) {
  color: #34495e !important;
  background: #F8F9FA !important;
  border-bottom: 1px solid #DFDFDF !important;
}

@media screen and (max-width: 768px) {
  .info img {
    margin-bottom: 10px;
  }
  .info .title {
    font-size: 20px;
  }
  .info .description {
    font-size: 17px;
  }
  .info a {
    font-size: 17px;
  }

  .detail {
    padding: 0;
  }
  .detail .class-info .class-info-item {
    font-size: 17px;
  }
  .detail .accordion {
    margin-top: 10px;
  }
  .detail .accordion .accordion-button {
    font-size: 17px;
  }
  .detail .accordion .accordion-body {
    font-size: 17px;
  }
}
