@font-face { font-family: Poppins-Regular; src: url('../fonts/Poppins-Regular.ttf'); }
@font-face { font-family: Poppins-Medium; src: url('../fonts/Poppins-Medium.ttf'); }
@font-face { font-family: proxima-nova-bold; src: url('../fonts/proxima-nova-bold.otf'); }

html {
    position: relative;
    height: 100%;
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-family: sans-serif;
}

body{
    font-family: Arial, sans-serif;
    overflow-x: hidden;
    padding: 0px;
    margin: 0px;
    background-color: #ffff;
    overflow-x: hidden;
    font-size: 18px;
    color: #37435D;
}
.nopadding{
    padding: 0px !important;
}
a, a:hover{
    color: inherit;
    text-decoration: none;
}
.proxima-bold{
    font-family: proxima-nova-bold; 
}
.medium{
    font-family: Poppins-Medium;
}
.sec-pad{
    padding: 50px 0 60px 0;
}
.theme-color, .text-blue{
    color: #1656ff !important;
}


.menu-header{
    width: 100%;
    /* background-color: #0e2141; */
    padding: 1.5rem 0;
    z-index: 99;
}
.theme-blue-bg{
    background-color: #0e2141;
    color: #F2F7FF;
}
.ft-75{
    font-size: 75px;
}
.ft-55{
    font-size: 55px;
}
.ft-30{
    font-size: 35px;
}
.ft-25{
    font-size: 30px;
}
.ft-20{
    font-size: 25px;
}
.ft-18{
    font-size: 20px!important;
}
.ft-16{
    font-size: 16px!important;
}
.title{
    font-size: 65px;
    font-family: proxima-nova-bold; 
}
.round-input-btn-box{
    background-color: #ffffffe6;
    border-radius: 50px;
    display: flex;
    align-items: center;
    width: 80%;
    height: 60px;
    margin: auto;
    overflow: hidden;
}
.round-input-btn-box .form-control{
    padding: 7px 20px;
    background-color: transparent!important;
    border: none!important;
    border-radius: 0px!important;
    min-width: 170px;
}
.round-input-btn-box select.form-control{
    padding-right: 30px!important;
}
.round-input-btn-box .btn{
    height: 100%;
}
.radius-0{
    border-radius: 0px!important;
}
.start-input-icon-div{
    width: 100%;
    position: relative;
}
.start-input-icon-div .form-control{
    padding-left: 45px!important;
}
.start-input-icon{
    position: absolute;
    left: 15px;
    bottom: 7px;
}
.border-right{
    border-right: 1px solid #B4B4B4;
}

.radio-select-box{
    background-color: #FFFFFF;
    border: 2px solid #F2F2F2;
    border-radius: 10px;
    padding: 40px 35px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    margin-bottom: 30px;
}
.radio-select-box-text{
    display: flex;
    align-items: center;
}
.radio-select-box-icon{
    margin-right: 20px;
}
.radio-select-active-icon{
    opacity: 0;
}
.radio-select-box.active-box{
    box-shadow: 0px 3px 15px #00000014;
    border: 2px solid #2E65FF;
    color: #2E65FF;
}
.radio-select-box.active-box .radio-select-box-icon{
    color: #2E65FF;
}
.radio-select-box.active-box .radio-select-active-icon{
    opacity: 1;
}
.form-group{
    margin-bottom: 22px;
}
.form-group label{
    margin-bottom: 8px;
}
.form-control{
    background-color: #fff!important;
    border-radius: 50px;
    border: 1px solid #E3E3E3;
    padding: 16px 30px;
}
.form-control:focus{
    box-shadow: none!important;
    outline: 0!important;
    border-color: #2E65FF;
}
.form-control::placeholder{
    color: #a09f9f;
}
.theme-green-btn{
    background-color: #62c70f;
    color: #F2F7FF!important;
    border-radius: 50px;
    padding: 16px 30px;
    min-width: 98px;
    font-family: Poppins-Medium;
    transition: all ease .5s;
    box-shadow: none!important;
    outline: 0!important;
}
.theme-green-btn:hover{
    background-color: #43860b;
}
.theme-red-btn{
    background-color: rgb(220, 53, 69);
    color: #F2F7FF!important;
    border-radius: 50px;
    padding: 16px 30px;
    min-width: 170px;
    font-family: Poppins-Medium;
    transition: all ease .5s;
    box-shadow: none!important;
    outline: 0!important;
}
.theme-red-btn:hover{
    background-color: rgb(175, 39, 53);;
}
.theme-blue-btn{
    background-color: #2E65FF;
    color: #F2F7FF!important;
    border-radius: 4px;
    padding: 16px 30px;
    min-width: 170px;
    font-family: Poppins-Medium;
    transition: all ease .5s;
    box-shadow: none!important;
    outline: 0!important;
    -webkit-appearance: none;
}
.theme-blue-btn:hover{
    background-color: #123baf;
}
.custom.checkbox > label, .custom.radio > label{
  position: relative;
  cursor: pointer;
  font-size: 16px;
  padding-left: 32px;
}
.custom input[type="checkbox"], .custom input[type="radio"]{
  position: relative;
  margin-left: -26px;
  margin-right: 12px;
  cursor: pointer;
}
.custom input[type="checkbox"]:after, .custom input[type="radio"]:after{
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 1px solid #9399A8;
  border-radius: 3px;
  cursor: pointer;
}
.custom input[type="checkbox"]:before {
  transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transform: rotate(-45deg) scale(0, 0);
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  z-index: 1;
  width: 10px;
  height: 6px;
  border: 2px solid #2E65FF;
  border-top-style: none;
  border-right-style: none;
}
.custom input[type="checkbox"]:checked:before {
  transform: rotate(-45deg) scale(1, 1);
}
.custom input[type="checkbox"]:checked:after, .custom input[type="radio"]:checked:after {
    border-color: #2E65FF;
}
.custom input[type="radio"]:before {
  transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transform: scale(0, 0);
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  z-index: 1;
  width: 12px;
  height: 12px;
  background: #2E65FF;
  border-radius: 50%;
}
.custom input[type="radio"]:checked:before {
  transform: scale(1, 1);
}
.custom input[type="radio"]:after {
  border-radius: 50%;
  top: -3px;
}
.step-form {
    position: relative;
}
.step-form fieldset {
    background: white;
    border: 0 none;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    position: relative;
}
.step-form fieldset:not(:first-of-type) {
    display: none
}
.step-progress {
    padding-left: 0px;
    margin-bottom: 4rem;
    overflow: hidden;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 2px;
}
.step-progress::-webkit-scrollbar {
    display: none;
}
.step-progress .active {
    color: #673AB7
}
.step-progress li {
    list-style-type: none;
    width: 100%;
    float: left;
    position: relative;
}
.step-progress li span.step-text{
    border: 1px solid #F2F7FF;
    background-color: #F2F7FF;
    border-radius: 50px;
    padding: 16px 30px;
    min-width: 170px;
    font-size: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
}
.step-check{
    margin-right: 6px;
    display: none;
}
.step-progress li:after {
        content: '';
    width: 100%;
    height: 10px;
    background: #F2F7FF;
    position: absolute;
    left: 2px;
    top: 26px;
    z-index: -1;
}
.step-progress li.current-active span.step-text{
    border-color: #2E65FF;
    color: #2E65FF;
}
.step-progress li.active span.step-text{
    background-color: #2E65FF;
    border-color: #2E65FF;
    color: #F2F7FF;
}
.step-progress li.active .step-check{
    display: inline-block;
}
.step-progress li.active:after {
    background: #2E65FF;
}
.step-progress li:last-child {
    width: auto;
}
.step-progress li:last-child:after{
    display: none;
}
.input-icon-div{
    position: relative;
}
.input-icon-div  .form-control{
    padding-right: 45px;
}
.input-icon{
    position: absolute;
    right: 18px;
    bottom: 13px;
}
.bill-list{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.bill-list p{
    font-size: 16px;
    margin-bottom: 10px;
}
.nowrap{
    white-space: nowrap;
}
.content-list{
    display: flex;
    align-items: flex-start;
}
.p-number{
    height: 35px;
    min-width: 35px;
    width: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    background-color: #FFFFFF;
    border: 2px solid #2E65FF;
    color: #2E65FF;
    font-family: Poppins-Medium;
}
.light-color{
    color: #4D5567!important;
}
.content-list .light-color{
    font-size: 16px;
}
.display-none{
    display: none;
}
.plan-total-box{
    background-color: #2E65FF;
    border-radius: 14px;
    padding: 25px 35px;
    color: #F2F7FF;
    margin-bottom: 30px;
}
.plan-total-box .bill-list{
    align-items: flex-end;
}
.plan-total-box .bill-list p {
    width: auto; 
    white-space: nowrap;
}
.bill-center-border{
    width: 100%!important;
    margin: 0px 20px;
    border-bottom: 1px dashed #E4E4E4;
}
.form-control.code-input{    
    border: 2px solid #2E65FF;
}
.form-control.code-input::placeholder{
    color: #37435D;
}
.form-control.code-input-success{    
    border: 2px solid #62c70f;
}
.form-control.code-input-danger{    
    border: 2px solid rgb(220, 53, 69);
}
.white-plan-box-margin{
    margin-bottom: 30px;
}
.white-plan-box{
    height: 100%;
    background-color: #FFFFFF;
    box-shadow: 0px 3px 10px #0000000F;
    border: 1px solid #E3E3E3;
    border-radius: 20px;
    padding: 40px 30px 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all ease .5s;
    cursor: pointer;
}
.small-white-plan-box{
    border-radius: 10px;
    padding: 25px 30px;
    transform: translateY(0px)!important;
}
.white-plan-box.plan-active-box{
    background-color: #2E65FF;
    box-shadow: none;
    color: #FFFFFF!important;
    transform: translateY(-20px);
}
.white-plan-box.plan-active-box .theme-color, .white-plan-box.plan-active-box .light-color{
    color: #ECF1FF!important;
}
.white-plan-box.plan-active-box .theme-blue-btn{
    background-color: #ECF1FF!important;
    color: #37435D!important;
}
.white-plan-box .theme-blue-btn span{
    display: none;
}
.white-plan-box.plan-active-box .theme-blue-btn span{
    display: inline-block;
}
.white-plan-box .theme-blue-btn p{
    display: inline-block;
    margin-bottom: 0;
}
.white-plan-box.plan-active-box .theme-blue-btn p{
    display: none;
}
.light-btn{
    background-color: #ECF1FF!important;
    color: #37435D!important;
}
.theme-small-btn{
    padding: 7px 30px;
}

textarea.form-control {
    border-radius: 16px;
    resize: none;
}

/* Review page */
.review-container {
    width: 370px;
}

.rating {
    display: inline-table;
    /* align-items: center;
    justify-content: space-evenly; */
    width: 100%;
    height: 40px;
    margin: 0 auto;
    padding: 40px 10px;
}

.rating input {
    display: none;
}

.rating label {
    float: right;
    position: relative;
    width: 40px;
    height: 40px;
    cursor: pointer;
    margin-right: 22px;
}

.rating label:not(:first-of-type) {
    padding-right: 2px;
}

.rating label:before {
    content: "\2605";
    font-size: 42px;
    color: #CCCCCC;
    line-height: 1;
}

.rating input:checked~label:before,
.rating:not(:checked)>label:hover:before,
.rating:not(:checked)>label:hover~label:before {
    color: #F9DF4A;
}

.plan-active-box .ft-25 {
    color: #f1c232;
}

.input-group-info {
    width: 100%;
    display: block;
    font-size: 10px;
}

.promo-label {
    font-weight: 700;
    color: #000;
}

.promo-description {
    padding-left: 3px;
    color: #868686;
}

.code-input {
    border: none;
    outline: none;
}

.promo-code-container {
    flex-direction: column;
    border-radius: 14px;
}

#btn-promo-code {
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
}

.have-questions {
    max-width: 320px;
}

@media (min-width: 992px) {
    .promo-code-container {
        flex-direction: row;
        border-radius: 50px;
    }

    .input-group-info {
        font-size: 16px;
        padding-left: 20px;
    }

    .theme-green-btn {
        min-width: 170px;
    }

    .code-input {
        width: 36%;
    }

    #btn-promo-code {
        border-top-right-radius: 50px;
        border-bottom-right-radius: 50px;
    }
}

/** Events  */
h1, h2 {
    color: #14213d;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -1px;
}
.form-container {
    width: 80%;
    margin: 0 auto;
}
.events .round-input-btn-box {
    width: 100%;
}
.events .theme-blue-btn:focus-visible {
    background-color:#123baf;
}
.events .theme-blue-btn:disabled {
    background-color: #2E65FF;
}
.events input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #e8e9ec inset;
}
.events :-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
}
.gray-bg {
    background-color: #ededed !important;
}

.order-resume .round-input-btn-box {
    width: 100%;
}
.order-resume [data-email] {
    width: 56%;
}
.order-resume .phone-container {
    width: 44%;align-items: center;
}
.order-resume .phone-icon {
    width:10%;color:#bcbcbc;text-align: center;
}
.order-resume .phone-input {
    width:90%; padding-left:0px!important;
}

/** Service card */
.service-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem; /* Adjust the gap between items as needed */
}
.service-card {
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 20px;
    width: 260px;
}
.service-speed {
    font-size: 24px;
    font-weight: 700;
}
.service-description {
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 10px;
    margin-top: 10px;
}
.service-price {
    font-size: 34px;
    font-weight: 700;
}
.price-interval {
    font-size: 14px;
    color: #acacac;
}

.logout {
    border: none;
    background: none;
    padding: 0px;
}

@media only screen and (max-width: 1200px) {
    .service-container {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media only screen and (max-width: 992px) {
    .service-container {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media only screen and (max-width: 768px) {
    h1 {
        font-size: 56px !important;
        line-height: 52px;
    }
    .form-container {
        width: 94%;
    }
    .events .round-input-btn-box {
        display: flex;
    }
    .events .round-input-btn-box .btn {
        height: auto;
        width: auto !important
    }
    .service-container {
        grid-template-columns: 1fr;
    }
    .service-card {
        width: 100%;
    }
    .order-resume [data-email] {
        width: 100%;
    }
    .order-resume .phone-container {
        width: 100%;
    }
}
@media only screen and (min-width: 1400px) {
    .events #pac-input {
        width: 70%;
    }
}

@media only screen and (max-width: 768px) {
    .btn-previous {
        padding: 12px 16px !important;
        background-color: #2E65FF;
        color: #fff;
    }
}

@media only screen and (min-width: 769px) {
    .btn-previous {
        padding: 16px 30px !important;
        text-decoration: none !important;
    }
}

