.hero-title {
  font-size: 69px;
  font-weight: 400;
  font-style: normal;
  color: rgb(255, 255, 255);
  line-height: 77px;
  margin-bottom: 15px;
}

.section-title {
  font-size: 52px;
  font-weight: 400;
  font-style: normal;
  color: rgb(255, 255, 255);
  margin-bottom: 20px;
}

.section-titleDark {
  font-size: 52px;
  font-weight: 400;
  font-style: normal;
  color: rgb(0, 0, 0);
  margin-bottom: 20px;
}

.section-text {
  font-size: 20px;
  font-weight: 300;
  font-style: normal;
  color: rgb(214, 214, 214);
}

.text-primary {
  color: rgb(254, 216, 49);
}

.bg-primary {
  background: rgba(19, 18, 19, 1);
}

.btn-primary {
  border-style: none;
  border-radius: 100px;
  background: rgba(254, 216, 49, 1);
  color: #000000;
  font-size: 20px;
  font-weight: 400;
  font-style: normal;
  text-decoration: none;
  padding: 16px 40px;
  display: inline-block;
  cursor: pointer;
}

.btn-primary:hover {
  background: rgba(241, 198, 37, 1);
  color: #000000;
}

.btn-secondary {
  border: 1px solid #fff;
  border-radius: 100px;
  background: none;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  font-style: normal;
  text-decoration: none;
  padding: 10px 22px;
  display: inline-block;
  cursor: pointer;
}

.btn-secondary:hover {
  border-color: rgb(254, 216, 49);
  color: rgb(254, 216, 49);
}

.box {
  background: rgba(29, 29, 32, 1);
  border-style: none;
  border-radius: 15px;
  padding: 38px;
  flex: 1;
  margin: 8px;
  position: relative;
}

.box.box--light {
  background: rgba(228, 231, 236, 1);
}

.box__title {
  color: rgb(255, 255, 255);
  font-size: 22px;
  position: relative;
  z-index: 1;
}

.box.box--light .box__title {
  color: rgb(0, 0, 0);
}

.box__bottom-title {
  color: rgb(214, 214, 214);
  font-size: 20px;
}

.box__text {
  font-size: 18px;
  font-weight: 300;
  color: rgb(194, 194, 194);
}

.box.box--light .box__text {
  color: rgb(0, 0, 0);
}

.box__icon {
  width: 100%;
  max-width: 65px;
  margin: auto;
  object-fit: contain;
}

.box__icon img {
  max-width: 100%;
}

.box__content-center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.box__image-wrapper img {
  max-width: 100%;
}

.box.box__img-right img {
  position: absolute;
  right: 0;
  bottom: 0;
}

.box.box__img-center .box__image-wrapper img {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0%);
  bottom: 0;
}

.grid-row {
  display: flex;
}

.grid-image {
  margin: 10px;
  overflow: hidden;
  position: relative;
}

.grid-image img {
  border-radius: 15px;
}

.grid-image .box__title {
  position: absolute;
  top: 5%;
  left: 5%;
}

.rounded-number {
  background: rgba(19, 18, 19, 1);
  border-style: none;
  border-radius: 145px;
  width: 40px;
  height: 40px;
  position: relative;
}

.rounded-number__Large {
  background: rgb(47, 49, 57);
  border-style: none;
  border-radius: 145px;
  width: 50px;
  height: 50px;
  position: relative;
}

.rounded-number__text {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.rounded-number p {
  color: #fff;
  font-size: 18px;
  font-weight: 400;
}

.rounded-number__Large p {
  color: rgb(254, 216, 49);
  font-size: 20px;
  font-weight: 400;
}

.box .rounded-number.bottomLeft,
.box .rounded-number__Large.bottomLeft {
  position: absolute;
  bottom: 30px;
  left: 39px;
}

.box .topRight {
  position: absolute;
  top: 30px;
  right: 30px;
}

.counter-number {
  font-weight: 400;
  font-size: 58px;
  color: rgb(254, 216, 49);
  font-style: normal;
}

.counter-number p.counter-value {
  display: inline;
}

.mb-10 {
  margin-bottom: 10px;
}
.mb-15 {
  margin-bottom: 15px;
}
.mb-20 {
  margin-bottom: 20px;
}
.mb-25 {
  margin-bottom: 25px;
}
.mb-30 {
  margin-bottom: 30px;
}
.mb-35 {
  margin-bottom: 35px;
}
.mb-40 {
  margin-bottom: 40px;
}
.mb-50 {
  margin-bottom: 50px;
}
.mb-60 {
  margin-bottom: 60px;
}
.mb-80 {
  margin-bottom: 80px;
}
.mb-90 {
  margin-bottom: 90px;
}
.mb-120 {
  margin-bottom: 120px;
}
.mt-40 {
  margin-top: 40px;
}
.mt-80 {
  margin-top: 80px;
}
.mr-10 {
  margin-right: 10px;
}
.mr-20 {
  margin-right: 20px;
}
.text-center {
  text-align: center;
}
.small {
  font-size: 11px;
  font-weight: 300;
  color: rgb(172, 172, 172);
}
.align-items-center {
  align-items: center;
}
.justify-content-between {
  justify-content: space-between;
}
.justify-content-evenly {
  justify-content: space-evenly;
}
.justify-content-around {
  justify-content: space-around;
}
.justify-content-center {
  justify-content: center;
}
.h330 {
  height: 330px;
}
.h350 {
  height: 350px;
}
.d-flex {
  display: flex;
}
.sm-visible {
  display: none;
}
.md-visible {
  display: none;
}

@media (max-width: 992px) {
  .box.box__img-right {
    text-align: center;
  }
  .grid-md-col {
    flex-direction: column;
  }
  .rounded-number {
    width: 37px;
    height: 37px;
  }
  .rounded-number__Large {
    width: 45px;
    height: 45px;
  }
  .grid-image {
    overflow: unset;
  }
}

@media (max-width: 768px) {
  .hero-title {
    font-size: 52px;
    line-height: unset;
  }
  .hero-title span {
    color: rgb(255, 255, 255);
  }
  .grid-row {
    flex-direction: column;
  }
  .box {
    max-width: 300px;
    margin: 8px auto;
    width: 100%;
    text-align: center;
  }
  .box__text {
    margin-bottom: 20px;
  }
  .counter-number {
    margin-bottom: 50px;
    font-size: 40px;
  }
  .counter-number .section-text {
    margin-top: 10px;
  }
  .section-text {
    font-size: 16px;
  }
  .md-none {
    display: none;
  }
  .md-visible {
    display: inline-block;
  }
}

@media (max-width: 576px) {
  .hero-title,
  .section-title,
  .section-titleDark {
    font-size: 32px;
  }
  .box__bottom-title {
    font-size: 16px;
  }
  .btn-primary {
    font-size: 16px;
    padding: 16px 52px;
  }
  .sm-none {
    display: none;
  }
  .sm-visible {
    display: inline-block;
  }
  .mt-80 {
    margin-top: 40px;
  }
  .mb-90 {
    margin-bottom: 50px;
  }
}
