.banner {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  border-radius: 40px;
  padding: 40px;
  margin: 10px 0;
  gap: 20px;
  position: relative;
}

.banner-title {
  display: flex;
  flex-direction: column;
}
.banner-desc {
  display: flex;
  flex-direction: column;
}
.banner-btn {
  width: 280px;
}

.mob {
  display: none;
}

.banner-img {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  border-top-right-radius: 40px;
  border-bottom-right-radius: 40px;
}

@media screen and (max-width: 1200px) {
  .banner-img {
    width: 60%;
    object-fit: cover;
  }
}

@media screen and (max-width: 960px) {
  .banner-img {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .banner {
    height: 510px;
    padding: 30px;
    border-radius: 30px;
  }
  .mob {
    display: block;
  }
  .desk {
    display: none;
  }

  .banner-img {
    display: block;
    width: 100%;
    height: 180px;
    top: auto;
    bottom: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
  }
}

@media screen and (max-width: 360px) {
  .banner {
    height: 540px;
    gap: 10px;
  }
  .banner-btn {
    width: 250px;
  }
  .banner-title span {
    white-space: nowrap;
  }
}
