$primary: #49adfe !default;
$gray-100: #dddddd !default;
$gray-200: #66737d !default;
$white: #ffffff !default;
$black: #1e262d !default;
.bg-primary {
  background-color: $primary !important;
}
.text-black {
  color: $black !important;
}
.text-primary {
  color: $primary !important;
}

.text-gray-200 {
  color: $gray-200 !important;
}
.btn {
  border-radius: 10px;
  font-weight: 500;
  padding: 10px 30px;

  &:focus {
    outline: none !important;
    box-shadow: none !important;
  }
}
.btn-primary {
  color: $white;
  background-color: $primary;
  box-shadow: none;
  border: 1px solid $primary;
  &:hover,
  &:focus,
  &.active {
    color: $primary;
    background-color: $white;
    border: 1px solid $primary;
  }
}
// @font-face {
//   font-family: "Rubik";
//   font-style: normal;
//   font-weight: 400;
//   src: url(../fonts/Rubik/Rubik-Regular.ttf) format("truetype");
//   font-display: swap;
// }

// @font-face {
//   font-family: "Rubik";
//   font-style: normal;
//   font-weight: 500;
//   src: url(../fonts/Rubik/Rubik-Medium.ttf) format("truetype");
//   font-display: swap;
// }
// @font-face {
//   font-family: "Rubik";
//   font-style: normal;
//   font-weight: 600;
//   src: url(../fonts/Rubik/Rubik-SemiBold.ttf) format("truetype");
//   font-display: swap;
// }
// @font-face {
//   font-family: "Rubik";
//   font-style: normal;
//   font-weight: 700;
//   src: url(../fonts/Rubik/Rubik-Bold.ttf) format("truetype");
//   font-display: swap;
// }

body {
  font-family: "Rubik";
  font-weight: 400 !important;
}
.px-40 {
  padding-left: 40px;
  padding-right: 40px;
  @media (max-width: 575px) {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.fs-24 {
  font-size: 24px;
}
.main-content {
  position: relative;
  z-index: 2;
}
.bg-img {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}
.banner-section {
  position: relative;
}
.banner-img {
  width: 100%;
  height: 380px;
  aspect-ratio: 1/1;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  -webkit-mask-image: url(../../../public/assets/img/vcard18/vector.png);
  mask-image: url(../../../public/assets/img/vcard18/vector.png);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  transition: -webkit-mask-image 2s ease-in-out;
  transition: mask-image 2s ease-in-out;
  transition: mask-image 2s ease-in-out, -webkit-mask-image 2s ease-in-out;
  @media (max-width: 575px) {
    height: 370px;
  }
  @media (max-width: 518px) {
    height: 335px;
  }
  @media (max-width: 472px) {
    height: 300px;
  }
  @media (max-width: 424px) {
    height: 264px;
  }
  @media (max-width: 386px) {
    height: 260px;
  }
  @media (max-width: 368px) {
    height: 215px;
  }
  @media (max-width:286px) {
    height:180px;
  }
  @media (max-width:245px) {
    height: 165px;
  }
  @media (max-width:225px) {
    height: 148px;
  }

}
.curve-img {
  position: absolute;
  bottom: -7px;
  @media (max-width:313px) {
    bottom:-1px;
  }
}
.profile-section {
  .card {
    position: relative;
    background-color: transparent !important;
    border: none;
    .card-img {
      border-radius: 50%;
      min-width: 170px;
      width: 170px;
      height: 170px;
      position: absolute;
      top: -68px;
      @media (max-width: 575px) {
        position: relative;
        top: 0;
      }
    }
    .card-body {
      padding-bottom: 0;
    }
  }
  .social-media {
    .social-icon {
      width: 40px;
      height: 40px;
      min-width: 40px;
      border-radius: 10px;
      box-shadow: 0 5px 10px rgba(78, 84, 89, 0.1);
      margin-right: 20px;
      &:hover {
        border: 1px solid $primary;
      }
      svg,
      img {
        width: 22px;
        height: 22px;
        object-fit: cover;
      }
      &:last-child {
        margin-right: 0;
      }
    }
  }
}

.section-heading.text-start {
  h2 {
    font-size: 24px;
    font-weight: 600;
    position: relative;
    display: inline-block;
    @media (max-width: 425px) {
      font-size: 20px;
    }
    &:after {
      position: absolute;
      content: "";
      background-image: url("../../../public/assets/img/vcard18/Line.png");
      background-repeat: no-repeat;
      background-size: 100px;
      top: 16%;
      width: 100px;
      height: 18px;
      margin-left: 20px;
      @media (max-width: 425px) {
        background-size: 75px;
        top: 25%;
        width: 75px;
        height: 13px;
        margin-left: 10px;
      }
    }
  }
}
.section-heading.text-end {
  h2 {
    font-size: 24px;
    font-weight: 600;
    position: relative;
    display: inline-block;
    @media (max-width: 425px) {
      font-size: 20px;
    }
    &:after {
      position: absolute;
      content: "";
      background-image: url("../../../public/assets/img/vcard18/Line.png");
      background-repeat: no-repeat;
      background-size: 100px;
      top: 16%;
      right: 0;
      left: -120px;
      width: 100px;
      height: 18px;
      transform: rotateY(180deg);
      @media (max-width: 425px) {
        background-size: 75px;
        top: 25%;
        width: 75px;
        height: 13px;
        left: -100px;
        margin-left: 10px;
      }
    }
  }
}
.contact-section {
  position: relative;
  .contact-bg {
    position: absolute;
    right: 40px;
    top: -40px;
  }
  .contact-box {
    .contact-icon {
      width: 50px;
      min-width: 50px;
      height: 50px;
      background-color: $white;
      border: 1px solid $primary;
      border-radius: 10px;
      margin-right: 20px;
    }
    .contact-desc {
      a {
        word-break: break-all;
        font-size: 13px !important;
      }
    }
  }
}
.our-services-section {
  position: relative;
  .amount-bg {
    position: absolute;
    top: 10px;
    left: 5px;
  }
  .bag-bg {
    position: absolute;
    top: 10px;
    left: 30%;
  }
  .dollar-bg {
    position: absolute;
    top: 10px;
    right: 40px;
  }
  .services {
    .service-card {
      padding: 15px;
      border-radius: 10px;
      border: 0;
      box-shadow: 0 5px 10px rgba(78, 84, 89, 0.1);
      position: relative;
      .card-img {
        width: 40px;
        height: 40px;
        min-width: 40px;
        svg,
        img {
          height: 100%;
          width: 100%;
          object-fit: cover;
        }
      }
    }
  }
}
.timePick {
    @media (min-width:768px) {
        padding:0 5px !important;
    }
}
.appointment-section {
  position: relative;
  .appointment-bg {
    position: absolute;
    top: 20px;
    right: 40px;
  }
  .appointment {
    .appointment-input {
      width: 100%;
      height: 50px;
      padding: 12px 20px;
      background-color: transparent;
      border: 1px solid $gray-100;
      color: $gray-200;
      border-radius: 10px;
      &::placeholder {
        color: $gray-200;
      }
      &:focus {
        box-shadow: none;
        outline: none;
      }
    }
    .calendar-icon {
      position: absolute;
      right: 18px;
      top: 11px;
    }
    .hour-input {
      padding: 13px;
      border: 1px solid $gray-100;
      border-radius: 10px;
      color: $gray-200;
    }
  }
}

.time-slot{
    font-size: 13px;
    background-color: #ffffff !important;
    border: 1px solid #009ef7 !important;
    color: #1e262d !important;
    height: 50px;
    display: flex;
    border: none;
    border-radius: 0.25rem !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;

    &:hover {
        border: 1px solid #1e262d;
    }
}
.activeSlot {
    font-size: 12px !important;
    background-color: #009ef7 !important;;
    color: #ffffff !important;
    padding: 7px !important;
    width: 100% !important;
    border: none;
    cursor: pointer;

    &:hover {
        border: 1px solid #ffffff;
    }
}
.gallery-section {
  position: relative;
  .bag-bg {
    position: absolute;
    top: 20px;
    left: 10px;
  }
  .gallery-slider {
    .gallery-img,.gallery-item {
      position: relative;
      max-width: 145px;
      height: 145px;
      border-radius: 10px;
      margin: 0 auto;
      overflow: hidden;
      background-size: cover;
      background-position: center;
      video,iframe {
        width:100% !important;
        height:100% !important;
        object-fit: cover;
      }
    }
    .slick-dots {
      position: relative;
      bottom: -15px;
    }
    .slick-current.slick-active {
      transform: scale(1);
    }
  }
}

.product-section {
  position: relative;
  .product-bg {
    position: absolute;
    top: 30px;
    right: 40px;
  }
  .product-slider {
    .slick-slide {
      margin: 0 10px;
    }
    .product-card {
      max-width: 240px;
      margin: 0 auto;
      height: 100%;
      border-radius: 10px;
      overflow: hidden;
      border: 0;
      box-shadow: 0 5px 10px rgba(78, 84, 89, 0.1);
      .product-img {
        height: 180px;
      }
      .product-desc {
        padding: 10px 20px;
        .product-title,
        p {
          display: -webkit-box;
          -webkit-line-clamp: 1;
          -webkit-box-orient: vertical;
          overflow: hidden;
        }
      }
    }
  }
}
.testimonial-section {
  .testimonial-card {
    position: relative;
    background: $white;
    background-clip: padding-box;
    border: solid 5px transparent;
    border-radius: 30px;
    padding: 0 40px 40px 40px;
    height: 320px !important;
    @media (max-width: 575px) {
      padding: 0 20px 20px 20px;
    }
    &:before {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: -1;
      margin: -5px;
      border-radius: inherit;
      background: linear-gradient($white 18%, $primary);
    }
    .card-img {
      width: 130px;
      height: 130px;
      border-radius: 50%;
      border: 5px solid $white;
      outline: 5px solid $primary;
      margin: 0 auto;
      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 50%;
      }
    }
    .card-body {
      .card-desc {
        display: -webkit-box;
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-align: center !important;
      }
    }
  }
}
.blog-section {
  position: relative;
  .blog-bg {
    position: absolute;
    top: 40px;
    left: 80px;
  }
.blog-slider {
    position: relative;
    .blog-card {
      position: relative;
      .card-img {
        max-width: 200px;
        width: 100%;
        min-width: 200px;
        height: 170px;
        border-radius: 10px;
        overflow: hidden;
        @media (max-width: 575px) {
          margin: 0 auto;
        }
      }
      .card-body {
        border: 1px solid $primary;
        box-shadow: 0 5px 10px rgba(78, 84, 89, 0.1);
        max-width: 330px;
        min-width: 330px;
        min-height:116px;
        max-height:116px;
        overflow:hidden;
        margin-left: auto;
        border-radius: 10px;
        position: absolute;
        right: 0;
        top: 30px;
        @media (max-width: 575px) {
          position: relative;
          top: -15px;
          max-width: 100%;
          min-width: 100%;
          z-index: -1;
        }
        .blog-desc {
          line-height: normal;
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical;
          overflow: hidden;
        }
        .blog-head {
          line-height: normal;
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical;
          overflow: hidden;
        }
      }
    }
    .slick-arrow {
      position: absolute;
      z-index: 2;
      top: auto;
      bottom: -15px;
      opacity: 1 !important;
      width: 30px;
      min-width: 30px;
      height: 30px;
      border-radius: 50%;
      background-color: transparent;
      color: $black;
      border: 1px solid $black;
    }
    .next-arrow {
      right: 16px;
    }
    .prev-arrow {
      right: 65px;
    }
    .slick-dots {
        bottom: -15px;
    }
  }
}

.qr-code-section {
  position: relative;
  .qr-bg-img {
    position: absolute;
    left: 0;
    top: 30px;
  }
  .code-img {
    position: absolute;
    right: 0;
    top: 75px;
  }

  .qr-code {
    max-width: 400px;
    width: 100%;
    border-radius: 15px;
    background-color: $white;
    padding: 70px 20px 30px 20px;
    border: 1px solid $primary;

    .qr-profile-img {
      position: absolute;
      top: -45px;
      left: 0;
      margin: 0 auto;
      right: 0;
      width: 90px;
      height: 90px;
      min-width: 90px;
      border-radius: 50%;
      border: 3px solid $primary;
      background-color: white;
      overflow: hidden;
    }
    .qr-code-img {
      width: 120px;
      height: 120px;
      min-width: 120px;
      margin-bottom: 30px;
    }
    .btn {
      max-width: 300px;
    }
  }
}
.business-hour-section {
  position: relative;
  .time-bg-1 {
    position: absolute;
    top: 20px;
    right: 40px;
  }
  .time-bg-2 {
    position: absolute;
    bottom: 0;
    left: 5px;
  }
  .business-hours {
    padding: 20px;
    max-width: 400px;
    border-radius: 15px;
    border: 1px solid $primary;
    margin: 0 auto;
    span {
      font-size: 16px;
      @media (max-width: 575px) {
        font-size: 14px;
      }
    }
  }
}
.contact-us-section {
  position: relative;
  .contact-form {
    form {
      .input-group {
        background-color: $white;
        border: 1px solid $gray-100;
        height: 50px;
        border-radius: 6px;
        .input-group-text {
          padding: 12px 15px;
          background-color: transparent;
          border: 0;
        }
      }
      .form-control {
        border: 0;
        padding: 12px 15px 12px 0;
        border-radius: 6px;
        &:focus {
          box-shadow: none;
          outline: none;
        }
        &::placeholder {
          color: $gray-200;
        }
      }
    }
  }
}
.create-vcard-section {
  .vcard-link-card {
    background-color: $white;
    padding: 20px;
    border-radius: 10px;
    border: 1px solid $gray-100;
    position: relative;

    .link-text {
      word-break: break-all;
    }
  }
}
.add-to-contact-section {
  width: 100%;
  position: fixed;
  bottom: 60px;
  left: 0;
  .add-contact-btn {
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 250px!important;
    position: absolute;
    bottom: -25px;
  }
}
.btn-section {
  .fixed-btn-section {
    .corporate-bars-btn {
      background-color: $primary;
    }
    .sub-btn {
      .corporate-sub-btn {
        background-color: $white;
        border: 1px solid $gray-100;
        i {
          color: $primary;
        }
      }
    }
  }
}
.slick-dotted.slick-slider {
  margin-bottom: 10px;
}
.slick-dots {
  position: relative;
  bottom: -15px;
  li {
    button {
      &:before {
        color: $gray-100;
      }
    }
    &.slick-active {
      button {
        &:before {
          opacity: 1;
          color: $primary;
        }
      }
    }
  }
}

//custom scss code

.px-30 {
    padding-left: 30px;
    padding-right: 30px;
    @media (max-width: 575px) {
      padding-left: 20px;
      padding-right: 20px;
    }
  }
  .fs-12 {
    font-size: 12px;
  }
  .fs-14 {
    font-size: 14px;
  }
  .fs-18 {
    font-size: 18px;
    @media (max-width: 575px) {
      font-size: 16px;
    }
  }
  .fs-20 {
    font-size: 20px;
  }
  .mt-10 {
    margin-top: 10px;
  }
  .mt-40 {
    margin-top: 40px;
    @media (max-width: 575px) {
      margin-top: 30px;
    }
  }
  .mb-40 {
    margin-bottom: 40px;
    @media (max-width: 575px) {
      margin-bottom: 30px;
    }
  }
  .mx-30 {
    margin-left: 30px;
    margin-right: 30px;
    @media (max-width: 575px) {
      margin-left: 20px;
      margin-right: 20px;
    }
  }
  .mb-20 {
    margin-bottom: 20px;
  }
  .mb-10 {
    margin-bottom: 10px;
  }
  .pb-50 {
    padding-bottom: 50px;
    @media (max-width: 575px) {
      padding-bottom: 40px;
    }
  }
  .pt-40 {
    padding-top: 40px;
    @media (max-width: 575px) {
      padding-top: 25px;
    }
  }
  .pb-40 {
    padding-bottom: 40px;
    @media (max-width: 575px) {
      padding-bottom: 25px;
    }
  }
  .pt-60 {
    padding-top: 60px;
    @media (max-width: 575px) {
      padding-top: 40px;
    }
  }
  .pb-60 {
    padding-bottom: 60px;
    @media (max-width: 575px) {
      padding-bottom: 40px;
    }
  }
  .pt-30 {
    padding-top: 30px;
    @media (max-width: 575px) {
      padding-top: 20px;
    }
  }
  .pb-30 {
    padding-bottom: 30px;
    @media (max-width: 575px) {
      padding-bottom: 20px;
    }
  }
  .pt-50 {
    padding-top: 50px;
    @media (max-width: 575px) {
      padding-top: 40px;
    }
  }
  .pt-80 {
    padding-top: 80px;
    @media (max-width: 575px) {
      padding-top: 40px;
    }
  }
  .pb-80 {
    padding-bottom: 80px;
    @media (max-width: 575px) {
      padding-bottom: 40px;
    }
  }
  .px-10 {
    padding-left: 10px;
    padding-right: 10px;
  }
  .fw-5 {
    font-weight: 500;
  }
  .fw-6 {
    font-weight: 600;
  }
  .fw-7 {
    font-weight: 700;
  }
  .fs-12 {
    font-size: 12px;
  }
  .fs-36 {
    font-size: 36px;
    @media (max-width: 575px) {
      font-size: 30px;
    }
  }
  .fs-30 {
    font-size: 30px;
    @media (max-width: 575px) {
      font-size: 28px;
    }
  }
  .fs-28 {
    font-size: 28px;
    @media (max-width: 575px) {
      font-size: 24px;
    }
  }
  a {
    text-decoration: none;
  }
  .main-content {
    max-width: 576px;
    min-height: 100vh;
  }
  .object-fit-cover {
    object-fit: cover;
  }
  .flex-1 {
    flex: 1;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .btn-section {
    position: absolute;
    top: 50%;
    right: 80px;
    z-index: 9;
    .fixed-btn-section {
      position: fixed;
      top: 50%;
      display: flex;
      align-items: center;
      .bars-btn {
        width: 65px;
        height: 65px;
        min-width: 65px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      .sub-btn {
        position: absolute;
        right: 75px;
        display: none;
        .social-btn {
          width: 50px;
          height: 50px;
          border-radius: 50%;
          display: flex;
          justify-content: center;
          align-items: center;
          i {
            font-size: 24px;
          }
        }
      }
    }
  }
  .slick-dots {
    li {
      margin: 0;

      button {
        &:before {
          font-size: 30px;
          opacity: 1;
        }
      }
    }
  }
  .social-media {
    .social-media-icon {
        padding: 20px 10px;
    }

    .social-icon {
        width: 25px;
        min-width: 25px;
        height: 25px;
        margin: 0px 20px;

        @media (max-width: 425px) {
            width: 22px;
            min-width: 22px;
            height: 22px;
            margin: 0px 16px;
        }
    }
}
.social-icons {
    a {
        width: 40px;
        height: 40px;
        min-width: 40px;
        border-radius: 10px;
        box-shadow: 0 5px 10px rgba(78,84,89,.1);
        margin:0 20px 20px 0;
        display:flex;
        align-items:center;
        justify-content:center;
        color: #49adfe;
    }
}
.social-icons img{
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
}
//language btn
.language {

    ul {
        list-style: none;

        .lang-list {
            padding: 10px 20px;
            background: $primary;
            border: none;
            outline: none;
            border-radius: 5px;
            transition: all 0.3s ease;
            width: -moz-fit-content;
            width: fit-content;

            .lang-head {
                color: white;

                i {
                    color: white;
                }
            }

            .lang-hover-list {
                margin: 15px 0 0;
                font-size: 15px;
                width: 115%;
                left: unset !important;
                right: 0;
                min-width: 150px;

                li {
                    padding: 5px 15px;

                    &:hover {
                        background-color: #f1faff !important;


                        a {
                            color: #009ef7 !important;
                        }
                    }

                    &.active {
                        background-color: #f1faff !important;

                        a {
                            color: #009ef7 !important;
                        }
                    }

                    a {
                        color: #5e6278 !important;
                        text-decoration: none;
                        font-size: 14px !important;
                    }

                    img {
                        height: 20px !important;
                        width: 25px !important;
                    }
                }
            }
        }
    }
}
.vcard18-sticky-btn {
    background: $primary;
    color: $white;
    border: 1px solid $gray-100;
    height: 40px;
}

.vcard18-btn-group {
    width: 50px;
    height: 50px;
    color: $primary;
    background-color: $white;
    border-radius: 50px !important;
}
.vcard-eighteen {
    &.main-content {
        max-width: 576px;
        min-height: 100vh;
        text-align: center !important;
        background-color: $primary;
        color: $black;
    }

    .vcard-eighteen-heading {
        font-weight: 500;
        font-size: 28px;
        color: $white;
    }
    .vcard-prodcut-heading{
        font-weight: 500;
        font-size: 35px;
        color: #009ef7;
    }
}
.vcard-eighteen-btn {
    padding: 10px 20px;
    background: $white;
    border: none;
    outline: none;
    border-radius: 5px;
    transition: all 0.3s ease;
    width: fit-content;
    color: $black;

    &:hover {
        color: $black;
    }
}
.add-contact-btn{
    height: 40px;
    i{
        font-size: 1rem;
    }
}
.modal-backdrop {
    background-color: transparent !important;
}
.send-btn
{
    height: 40px;
    padding: 5px;
    width: 250px !important;
}
.product-btn {
    padding: 10px 20px;
    background: #009ef7;
    border: none;
    outline: none;
    border-radius: 5px;
    transition: all 0.3s ease;
    // position: absolute;

    &:hover {
        background-color: transparentize($primary, 0.1);
    }
}
.testimonial-desc{
    text-align: center !important;
    margin-top: 15px;
}
