@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;600&display=swap");
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: 'Nunito', sans-serif !important;
}

body {
  background-color: #191919;
  font-size: 16px;
}

body, p, h6, h5, h4, h3, h2, h1 {
  margin: 0;
}

a {
  text-decoration: none;
  color: inherit;
}

.img-fluid {
  max-width: 100%;
}

.cta {
  font-size: 18px;
  padding: 8px 28px;
  border-radius: 90px;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.cta--primary {
  color: #FFF;
  border: 1px solid #986CFD;
  background-color: #986CFD;
}

.cta--primary:hover {
  background-color: transparent;
  color: #986CFD;
}

.section-title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.section-subtitle {
  font-size: 24px;
  color: #11ABF5;
  font-weight: 600;
  margin-bottom: .5rem;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  background-color: #090424;
  border-radius: 30px;
}

section {
  margin-bottom: 4rem;
  color: #FFF;
}

.top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  color: #FFF;
}

.top .top-text {
  margin-left: 2rem;
}

.top .top-text .box {
  margin-left: 2rem;
  margin-top: 2rem;
}

.top .top-text .title {
  font-size: 42px;
  font-weight: 600;
  margin-bottom: 2rem;
}

.top .top-text .title span {
  font-size: 38px;
  color: #986CFD;
}

.top .top-img img {
  border-radius: 30px;
}

@media screen and (max-width: 1049px) {
  .top {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 0;
  }
  .top .top-text {
    margin-top: 3rem;
    margin-left: 0;
    text-align: center;
  }
  .top .top-text .logo {
    padding: 2rem 0;
  }
  .top .top-text .box {
    margin-left: 0;
    margin-top: 1rem;
  }
  .top .top-img {
    display: none;
  }
}

.s2, .s4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.s2 .s2-text, .s2 .s4-text, .s4 .s2-text, .s4 .s4-text {
  margin-right: 2rem;
}

.s2 .s2-text p, .s2 .s4-text p, .s4 .s2-text p, .s4 .s4-text p {
  margin-bottom: 1rem;
}

@media screen and (max-width: 1049px) {
  .s2, .s4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    margin-bottom: 0;
    margin: 0 1rem 2rem;
  }
  .s2 img, .s4 img {
    border-radius: 30px;
    margin-bottom: 1rem;
  }
  .s2 .s2-text, .s2 .s4-text, .s4 .s2-text, .s4 .s4-text {
    margin-right: 0rem;
  }
}

.s3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.s3 .s3-text {
  margin-left: 2rem;
}

.s3 .s3-text p {
  margin-bottom: 1rem;
}

@media screen and (max-width: 1049px) {
  .s3 {
    -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    margin-bottom: 0;
    margin: 0 1rem 2rem;
  }
  .s3 img {
    border-radius: 30px;
    margin-bottom: 1rem;
  }
  .s3 .s3-text {
    margin-left: 0;
  }
}

.s4 {
  background: url("../img/s4_bg.png") right bottom no-repeat;
}

@media screen and (max-width: 1049px) {
  .s4 {
    background-image: none;
  }
}

.product-section {
  background: url("../img/product_bg.png") top center no-repeat;
  border-radius: 30px;
  text-align: center;
}

.product-section .product-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  margin: 2rem 0 0;
  padding-bottom: 2rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.product-section .product-wrapper .product-card {
  background-color: #171233;
  border-radius: 30px;
  text-align: center;
  margin: 2rem .5rem;
}

.product-section .product-wrapper .product-card .img-section .product-image {
  position: relative;
  bottom: 1.5rem;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.product-section .product-wrapper .product-card .product-name {
  font-size: 21px;
  padding: 0 2rem;
  color: #FFF;
  margin-bottom: 1rem;
}

.product-section .product-wrapper .product-card p {
  padding-bottom: 2rem;
}

.product-section .product-wrapper .product-card .cta-container {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.product-section .product-wrapper .product-card .cta-container .arrow-btn {
  position: absolute;
  background-color: #986CFD;
  border-radius: 90px;
  height: 40px;
  width: 40px;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.product-section .product-wrapper .product-card .cta-container .arrow-btn .arrow {
  position: relative;
  top: 10px;
  stroke: #FFF;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.product-section .product-wrapper .product-card:hover .img-section .product-image {
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}

.product-section .product-wrapper .product-card:hover .cta-container .arrow-btn {
  position: absolute;
  background-color: #171233;
  border-radius: 90px;
  height: 40px;
  width: 40px;
}

.product-section .product-wrapper .product-card:hover .cta-container .arrow-btn .arrow {
  position: relative;
  top: 10px;
  stroke: #986CFD;
}

@media screen and (max-width: 738px) {
  .product-section {
    background-image: none;
  }
}

.footer {
  text-align: center;
}

.footer .desc {
  font-size: 14px;
  padding-bottom: 2rem;
  margin: 0 1rem;
}
