.container {
  padding: 0 20vw;
}

.anchor {
  display: block;
  position: relative;
  top: -70px;
  visibility: hidden;
}

.qrcode-text-box {
  margin: 9vh 0 0 0;
  display: flex;
  flex-direction: row;
  justify-content: left;
  align-items: center;
  /* gap: 30px; */
}

.qrcode {
  height: auto;
  width: 7vw;
  margin: 0 30px 0 0;
}

.row-1 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 15vh 0 0 0;
}

.col-1-1 {
  flex-basis: 70%;
  position: relative;
  /* margin: 0 0 0 50px; */
}

.col-1-1 h2,
.col-1-1 h3 {
  font-size: 6vh;
  color: #000;
  font-weight: bold;
  margin: 2px 0;
}

.col-1-1 h4 {
  margin: 1vh 0;
  font-size: 2vh;
  font-weight: normal;
}

.col-1-1 p {
  font-size: 30px;
  /* color: #b7b7b7; */
  font-weight: bold;
}

.col-1-2 {
  position: relative;
  flex-basis: 60%;
  display: flex;
  align-items: center;
}

.col-1-2 .screenshot {
  width: auto;
  height: 100%;
  max-height: 600px;
  margin: 0 0 0 100px;
  z-index: -2;
}


/* hide mobile style rows in desktop viewport*/

.qrcode-text-box-mobile,
.row-2,
.row-3 {
  display: none;
}


/* desktop smaller size */

@media screen and (min-width:1340px) and (max-width:1600px) {
  .row-1 {
    margin: 15vh 0 0 0;
  }
  .col-1-2 .screenshot {
    width: 300px;
    height: auto;
  }
  .col-1-1 h2,
  .col-1-1 h3 {
    font-size: 5vh;
  }
  .col-1-1 p {
    font-size: 26px;
  }
  .col-1-1 h4 {
    font-size: 20px;
  }
}

@media screen and (min-width:900px) and (max-width:1340px) {
  .row-1 {
    margin: 20vh 0 0 0;
  }
  .col-1-2 .screenshot {
    width: 300px;
    height: auto;
  }
  .col-1-1 h2,
  .col-1-1 h3 {
    font-size: 4vh;
  }
  .col-1-1 p {
    font-size: 2vh;
  }
  .col-1-1 h4 {
    font-size: 1.5vh;
  }
  .col-1-2 .screenshot {
    max-width: 20vw;
    height: auto;
  }
}


/* mobile site rows */

@media screen and (max-width:900px) {
  .row-1 {
    margin: 10vh 0 0 0;
  }
  .col-1-1 {
    margin: 0 5vh;
  }
  .col-1-1 h2 {
    font-size: 8vw;
  }
  .col-1-1 p {
    font-size: 5vw;
  }
  /* disable dots */
  .row-2 .dot-large-1 {
    position: absolute;
    left: -32%;
    top: 45%;
    z-index: -3;
  }
  .row-2 .dot-small-1 {
    position: absolute;
    right: -26%;
    top: -13%;
    z-index: -3;
  }
  .row-3 .dot-large-1 {
    position: absolute;
    left: -35%;
    top: 40%;
    z-index: -3;
  }
  .row-3 .dot-small-1 {
    position: absolute;
    right: -26%;
    top: -10%;
    z-index: -3;
  }
  /* disable desktop legal-record */
  .legal-record {
    display: none;
  }
  /* disable container margin and padding */
  .container {
    margin: 0;
    padding: 0;
  }
  /* mobile qrcode box layout */
  .qrcode-text-box-mobile {
    margin: 5px 0 0 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .qrcode-text-box-mobile h4 {
    margin: 4px 0;
    font-size: 18px;
    text-align: center;
  }
  .qrcode-text-box-mobile .qrcode {
    margin: 0 0 15px 0;
  }
  .qrcode-text-box-mobile p {
    color: #909090;
    font-size: 15px;
    text-align: center;
  }
  /* end mobile qrcode layout */
  .row-2,
  .row-3 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: left;
    align-items: center;
    margin: 30px 0;
    padding: 0 5px;
    z-index: 0;
  }
  /* mobile cards */
  .col-2-1 {
    display: flex;
    flex-direction: column;
    position: relative;
    margin: 0;
    padding: 0 20px;
  }
  .col-2-1 h7 {
    font-weight: bold;
    font-size: 30px;
    margin: 0 0 30px 0;
  }
  .col-2-1 p,
  .col-3-1 p {
    font-size: 16px;
    margin: 0px 0 10px 0;
    line-height: 25px;
    /* text-indent: 4ch; */
  }
  .col-2-2,
  .col-2-3 {
    width: 100%;
  }
  .col-2-2,
  .col-2-3 {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
  }
  .col-2-2 .card,
  .col-2-3 .card {
    margin: 5px;
    flex-basis: 50%;
  }
  .card h8 {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 15px 0;
  }
  .card img {
    width: 44px;
    margin: 20px;
    height: auto;
  }
  .card p {
    font-size: 13px;
    color: #878787;
  }
  /* end mobile cards */
  /* mobile about us section */
  .col-3-1 {
    display: flex;
    flex-direction: column;
    position: relative;
    margin: 0;
    padding: 0 20px;
  }
  .col-3-1 h9 {
    font-weight: bold;
    font-size: 30px;
    margin: 0 0 30px 0;
  }
  .col-3-1 p:last-child {
    margin: 0px 0 50px 0;
    /* text-indent: 4ch; */
  }
  .col-3-2 {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    margin: 0 50px;
  }
  .col-3-2 img {
    max-height: 100%;
    max-width: 100%;
  }
  /* buttons */
  .col-3-3,
  .col-3-4 {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-content: center;
    align-items: center;
  }
  .col-3-3 {
    margin: 60px 0 0 0;
  }
  .col-3-4 {
    margin: 20px 0 0 0;
  }
  .col-3-3 .btn,
  .col-3-4 .btn {
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    line-height: 100%;
    font-size: 14px;
    text-align: center;
    width: 80px;
    height: 20px;
    padding: 4px 6px;
    border: 1px solid #ff135b;
    border-radius: 20px;
    z-index: 2;
  }
  .col-3-3 .btn {
    margin: 0 10px;
  }
  .col-3-4 .btn {
    width: 100px;
    margin: 0 5px;
  }
  .btn.bg-color {
    background: linear-gradient(226deg, #ffe0b7 3%, #fb4995 81%);
    border: none;
    border-radius: 20px;
    color: #fff;
  }
  .btn span {
    display: inline-block;
    height: 13px;
    line-height: 13px;
    overflow: visible;
    font-size: 13px;
  }
  /* end mobile about us section */
}


/* medium size screens */

@media only screen and (min-width: 380px) and (max-width:900px) {
  .row-1 {
    position: relative;
    flex-direction: column;
    z-index: 0;
    margin: 10vh 0 0 0;
  }
  .col-1-1 {
    margin: 0 5vh;
  }
  .col-1-1 h2 {
    font-size: 8vw;
  }
  .col-1-1 p {
    font-size: 5vw;
  }
  .col-1-2 {
    flex-basis: 100%;
    margin: 50px 10% 50px 10%;
    justify-content: center;
  }
  .col-1-2 .screenshot {
    max-width: 100%;
    width: 75%;
    height: auto;
    justify-self: center;
    margin: 0;
    max-height: 100%;
  }
  .qrcode {
    width: auto;
    height: 120px;
  }
  .qrcode-text-box {
    /* margin: 30px 0 0 0; */
    display: none;
  }
  .qrcode-text-box h4 {
    font-size: 16px;
    margin: 10px 0 0 0;
  }
  .legal-record {
    width: 100%;
    left: 0;
    display: none;
  }
  .social-links {
    display: none;
  }
}


/* smaller mobile like iPhone SE 1 */

@media screen and (max-width:380px) {
  .row-1 {
    flex-direction: column;
    margin: 10vh 0;
  }
  .qrcode-text-box {
    display: none;
  }
  .col-1-1 {
    margin: 0 3vw;
  }
  .col-1-1 h2 {
    font-size: 7vw;
    font-weight: bold;
  }
  .col-1-1 p {
    margin: 1vh 0 0 0;
    font-size: 5vw;
  }
  .col-1-2 {
    flex-basis: 100%;
    margin: 50px 5% 30px 5%;
    justify-content: center;
  }
  .col-1-2 .screenshot {
    max-width: 100%;
    width: 75%;
    height: auto;
    justify-self: center;
    margin: 0;
    max-height: 100%;
  }
  .qrcode {
    width: auto;
    height: 80px;
  }
  .qrcode-text-box-mobile {
    margin: 30px 0 0 0;
  }
  .qrcode-text-box-mobile h4 {
    font-size: 4vw;
    margin: 10px 0 0 0;
  }
  .qrcode-text-box-mobile p {
    font-size: 3vw;
    margin: 10px 0 0 0;
  }
  .legal-record {
    width: 100%;
    left: 0
  }
  .social-links {
    display: none;
  }
  .col-2-2 .card,
  .col-2-3 .card {
    padding: 25px 0;
    margin: 5px 10px;
    flex-basis: 50%;
  }
  .card img {
    width: 35px;
    margin: 10px;
    height: auto;
  }
  .card h8 {
    font-size: 4.2vw;
    font-weight: bold;
  }
  .card p {
    font-size: 3.2vw;
    margin: 0.3vh 0;
  }
}

@media screen and (min-width:1921px) {
  .qrcode-text-box {
    margin: 10vh 0 0 0;
    display: flex;
    flex-direction: row;
    justify-content: left;
    align-items: center;
    /* gap: 30px; */
  }
  .qrcode {
    height: 12vh;
    width: auto;
    margin: 0 2vw 0 0;
  }
  .row-1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 8vh 2.5vw;
  }
  .col-1-1 {
    /* flex-basis: 50%; */
    position: relative;
    margin: 0;
  }
  .col-1-1 h2,
  .col-1-1 h3 {
    font-size: 2.5vw;
    color: #000;
    font-weight: bold;
    margin: 2px 0;
  }
  .col-1-1 p {
    font-size: 1.8vw;
    /* color: #b7b7b7; */
    font-weight: bold;
  }
  .col-1-2 {
    margin: 0 2vw 0 0;
    position: relative;
    /* flex-basis: 50%; */
    display: flex;
    align-items: flex-start;
  }
  .col-1-2 .screenshot {
    width: auto;
    height: 67vh;
    max-height: 67vh;
    margin: 0 0 0 100px;
    z-index: -2;
  }
}