@font-face {
  font-family: "Inter";
  src: url("../font/Inter-Regular.ttf");
}

@font-face {
  font-family: "InterM";
  src: url("../font/Inter-SemiBold.ttf");
}

@font-face {
  font-family: "BarlowBold";
  src: url("../font/BarlowCondensed-Bold.ttf");
}

@font-face {
  font-family: "Barlow";
  src: url("../font/BarlowSemiCondensed-Regular.ttf");
}

* {
  margin: 0;
  padding: 0;
}

html {
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Inter";
  background: linear-gradient(rgb(222 228 240), #ffffff, #ffffff, #ffffff, #ffffff);
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

a, a:hover, a:visited, a:active {
  color: inherit;
  text-decoration: none;
 }

.top-container {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 250px;
  padding-top: 18px;
  box-sizing: border-box;
}

.photo {
  position: absolute;
  width: 10.8rem;
  border-radius: 50%;
}

.flow {
  display: flex;
  position: relative;
  width: 11.4rem;
  height: 11.4rem;
  border-radius: 50%;
  background: linear-gradient(#0dcffb, #e8f6f9, #018ce2);
  animation: animate 6s linear infinite;
  z-index: -23;
}

@keyframes animate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.company {
  font-family: "BarlowBold";
  color: rgb(100 116 139);
  font-size: 1.2rem;
  text-align: center;
  letter-spacing: 0.04rem;
}

.description {
  color: rgb(108 119 149);
  font-size: 0.8rem;
  text-align: center;
  margin: 1rem 0 0 0;
  line-height: 1.157rem;
}

.mt-0 {
  margin-top: 0rem !important;
}

.name {
  color: rgb(2 6 23);
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 1px;
  text-align: center;
  margin-top: 1.2rem;
}

.title {
  font-family: "Barlow";
  color: rgb(51 65 85);
  font-weight: 200;
  font-size: 0.79rem;
  letter-spacing: 0.187rem;
  text-align: center;
  margin: .1rem 0 .5rem 0;
}

.qr {
  width: 170px;
  margin: 1.4rem auto 0 auto;
  border-radius: 0px;
}

.services {
  font-family: "InterM";
  color: rgb(148 163 184);
  font-size: 0.82rem;
  text-align: center;
  margin: 1.2rem 0 0 0;
}

.label {
  font-family: "Barlow";
  color: rgb(71 85 105);
  font-size: 0.72rem;
  font-weight: 100;
  text-align: center;
  margin-top: 0.8rem;
  letter-spacing: 0.12rem;
  text-transform: uppercase;
}

.detail {
  margin-top: 0.14rem;
  color: rgb(51 65 85);
  font-size: .95rem;
  letter-spacing: 0.05rem;
  font-weight: 400;
  text-align: center;
  text-transform: uppercase;
}

.footer a {
  color: rgb(158 173 184);
  font-size: 0.568rem;
  text-align: center;
  font-weight: 100;
  letter-spacing: 0.02rem;
  display: block;
}

.footer {
  color: rgb(158 173 184);
  margin-top: auto;
  margin-bottom: 1.3rem;
 
}

/* buttons */

.holder-btn {
  width: 100%;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  justify-content: center;
}

.btn-save-vcf {
  font-family: "InterM";
  background-color: rgb(87, 102, 122);
  color: white;
  padding: 16px 0px;
  text-align: center;
  display: block;
  font-size: .985rem;
  margin: 10px auto;
  cursor: pointer;
  border-radius: 38px;
  max-width: 324px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 6px 29px 0px;
}

.btn-save-img {
  background-color: rgb(226 232 240);
  color: rgb(100 116 139);
  padding: 16px 0px;
  text-align: center;
  display: block;
  font-size: .985rem;
  margin: 10px auto;
  cursor: pointer;
  border-radius: 38px;
  max-width: 324px;
}

.hide {
  display: none;
}


@media (max-width: 320px) {
  .photo {
    position: absolute;
    width: 11rem;
    border-radius: 50%;
  }

  .flow {
    width: 11.7rem;
    height: 11.7rem;
  }

  .qr {
    width: 160px;
    margin: 1rem auto 0 auto;
  }

  .company {
    font-size: 0.7rem;
  }

  .services {
    font-size: 0.62rem;
    text-align: center;
    margin: 1rem 0 0.9rem 0;
  }

  .label {
    font-size: 0.645rem;
  }

  .detail {
    font-size: 0.8rem;
    letter-spacing: 0.03rem;
  }

  .btn-save-vcf {
    max-width: 310px;
  }
  
  .btn-save-img {
    max-width: 310px;
  }
}
