:root {
     --white: #ffffff;
     --black: #000000;
	 
     --primary: #1C2F3D;
     --primary_light: #445264;
     --primary_dark: #11153B;
     --primary_hr: #445264;
	 
     --topbar_bg: #F7F8FA;
	 
     --dashboard_bg: #F7F8FA;
	 
     --dashboard_card_bg: #1C2F3D;

	 	 
     --graphik_reg: graphik_reg;
     --graphik_med: graphik_med;
     --graphik_bold: graphik_bold;
	     --spacing: clamp(0.25rem, 2vw, 0.5rem);
	 --circle-size: clamp(1.5rem, 5vw, 2.2rem);
	 
}
 * {
     margin: 0;
     padding: 0;
	    -webkit-transition: all 0.5s;
}
 ul{
    list-style:none;
     padding:0;
     margin:0;
}
 li {
     list-style: none;
}
 a, a:active, a:focus, a:hover{
     outline:none;
     color: initial;
     text-decoration: none;
     -webkit-transition: all 0.3s ease-in-out;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 a:hover{
     text-decoration:none;
}

/* MAIN FONT USED BY DASHBOARD */

 @font-face {
     font-family: graphik_reg;
     src: url(../../fonts/graphik_reg.otf) format("opentype");
     font-display: swap;
}

@font-face {
     font-family: graphik_med;
     src: url(../../fonts/graphik_med.otf) format("opentype");
     font-display: swap;
}
 
@font-face {
     font-family: graphik_bold;
     src: url(../../fonts/graphik_bold.otf) format("opentype");
     font-display: swap;
}
 
/* END OF MAIN FONT USED BY DASHBOARD */

 html {
     -webkit-font-smoothing: antialiased;
     scroll-behavior: smooth;
}
 body {
     font-family: var(--graphik_reg);
     font-size: 15px;
	 
}
 section {
     padding: 70px 0;
	 position: relative;
}
 .object-fit {
     object-fit: cover;
     object-position: center;
   
}
/* DISPLAY CLASSES */
 .d-block {
     display: block;
}
 .d-flex {
     display: flex;
}
 .inline-block {
     display: inline-block;
}
/* END OF DISPLAY CLASSES */
/* FLEX CLASSES */
 .flex-centered {
     display: flex;
     align-items: center;
}
/* END OF FLEX CLASSES */
/* CUSTOM SCROLLBAR */
 ::-webkit-scrollbar {
     width: 4px;
}
 ::-webkit-scrollbar-track {
     background: #f1f1f1;
}
 ::-webkit-scrollbar-thumb {
     background: var(--primary);
}
 ::-webkit-scrollbar-thumb:hover {
     background: var(--black);
}

/* LOGIN PAGE CSS STARTS */

.main_content_wrapper {

    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

video#videobg {
    position: fixed;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    transform: translateX(-50%) translateY(-50%);
    transition: 1s opacity;
}

.main_content_wrapper:before {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(119deg, rgba(53, 66, 82, 1) 100%, rgba(93, 111, 132, 1) 0%);
    z-index: -1;
    opacity: 0.9;
}

img.login_logo {
    max-width: 159px;
}

.form_content h2 {
    margin: 20px 0;
    font: normal normal 56px/60px var(--graphik_med);
    letter-spacing: -3.36px;
    color: #FFFFFF;
    opacity: 1;
}

.form_content p {
    width: 585px;
    margin-bottom: 60px;
    font: normal normal normal 16px/26px Open Sans;
    letter-spacing: -0.48px;
    color: #FFFFFF;
    opacity: 0.7;
}

em.play_button {
    width: 60px;
    height: 60px;
    background: rgb(255 255 255 / 20%) 0% 0% no-repeat padding-box;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: 100px;
    float: left;
    margin-right: 15px;
    position: relative;
    z-index: 1;
}

.watch_now p {
    font: normal normal bold 12px/22px Open Sans;
    letter-spacing: -0.36px;
    color: #FFFFFF;
    opacity: 1;
    margin: 0;
    width: auto;
}

.watch_now span {
    font: normal normal normal 12px/18px Open Sans;
    letter-spacing: -0.36px;
    color: #FFFFFF;
    opacity: 1;
    display: block;
}

.watch_now {width: 315px;}

.watch_now:hover em.play_button.fa {transform: scale(1.1);}


.login_form_wrapper {
    width: 480px;
    height: auto;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 20px 40px #0000000d;
    border-radius: 16px;
    opacity: 1;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 30px 40px;
}

.form_content_wrapper {display: flex;flex-direction: column;justify-content: center;padding: 0 100px 0 0;}


.form_head_wrapper h2 {
    margin-bottom: 15px;
    font: normal normal 30px/39px  var(--graphik_med);
    letter-spacing: -1.8px;
    color: #000000;
    opacity: 1;
}

.form_head_wrapper {
    text-align: center;
    margin-bottom: 20px;
	    position: relative;
}

.rsa_tooltip .input_tooltip {
    position: absolute;
    left: 10px;
    top: 0;
}

.form_head_wrapper p {
    font: normal normal 14px/18px var(--graphik_reg);
    letter-spacing: 0px;
    color: #ABAEC5;
    opacity: 1;
    margin-bottom: 0;
}

.login_form_wrapper .input-group input, .login_form_wrapper .form-select {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: none;
    padding-left: 75px;
    height: 60px;
    border: 1px solid #E8EBF3;
    border-radius: 16px;
    transition: all 0.5s ease;
    font: normal normal normal 14px/18px var(--graphik_reg);
    letter-spacing: -0.56px;
    color: #1C2F3D;
    opacity: 1;
}

.login_form_wrapper .input-group input:focus, .login_form_wrapper .form-select:focus {
    box-shadow: none;
}

.login_form_wrapper .input-group {
    /* border: 1px solid #E8EBF3; */
    /* border-radius: 16px; */
    /* justify-content: center; */
    /* align-items: center; */
    /* align-self: center; */
    width: 400px;
    margin: 0 auto;
}

span.input-group-text {
    width: 45px;
    height: 45px;
    background: #F7F8FA 0% 0% no-repeat padding-box;
    border-radius: 16px !important;
    opacity: 1;
    padding: 0;
    justify-content: center;
    border: none;
    margin: 0 10px;
    position: absolute;
    z-index: 1;
}

.form-floating>label {
    display: flex;
    align-items: center;
    padding: 0 0px 0 65px;
    font: normal normal normal 14px/18px  var(--graphik_reg);
    letter-spacing: -0.56px;
    color: #919DAB;
    opacity: 1;
}

.login_form_wrapper .form-floating>.form-control-plaintext~label, .login_form_wrapper .form-floating>.form-control:focus~label, .login_form_wrapper .form-floating>.form-control:not(:placeholder-shown)~label{
    transform: scale(.85) translateY(-0.5rem) translateX(1.45rem);
    font: normal normal normal 10px/18px var(--graphik_reg);
    letter-spacing: -0.4px;
    color: #919DAB;
    opacity: 1;
}

.login_form_wrapper .input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: 0;
	outline: none;
}

.form-floating>.form-select~label {
    transform: scale(1) translateY(0) translateX(0);
}

.form-floating>.form-select:focus~label, .form-floating>.form-select:not([value=""]):valid ~ label {
    transform: scale(.85) translateY(-0.5rem) translateX(1.35rem);
	font: normal normal normal 10px/18px var(--graphik_reg);
    letter-spacing: -0.4px;
    color: #919DAB;
    opacity: 1;
}

.login_form_wrapper .form-floating {
    display: flex;
    align-items: center;
    align-self: center;
}

.btn.login_btn {
    width: 400px;
    height: 60px;
    background: #0062FF 0% 0% no-repeat padding-box;
    border-radius: 16px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    font: normal normal 18px/24px var(--graphik_med);
    letter-spacing: -0.72px;
    color: #FFFFFF;
    border: none;
    text-transform: uppercase;
    opacity: 1;
}

.btn.login_btn:hover {
    color: var(--white);
	    border: none;
    background: #0062FF;
}

p.forgot_pass {
    text-align: right;
    margin-bottom: 0.3rem;
    font: italic normal 14px/18px var(--graphik_reg);
    letter-spacing: -0.42px;
    color: #5E6F84;
    opacity: 1;
}

p.forgot_pass a {
    color: #ABAEC5;
}

.btn.pass_login_btn {
    width: 400px;
    height: 60px;
    background: #F7F8FA url(../../images/login/fingerprint.svg);
    border: 1px solid #EFEFEF;
    border-radius: 16px;
    background-position: 8px 5px;
    background-size: 44px;
    background-repeat: no-repeat;
    font: normal normal 600 14px/18px var(--graphik_reg);
    letter-spacing: -0.56px;
    color: #0062FF;
    text-transform: uppercase;
    opacity: 1;
}

.btn.pass_login_btn:hover {
    background-color: #F7F8FA;
    color: #0062FF;
}

.has-tooltip {
    position: relative;
}

.input_tooltip {
    position: absolute;
    right: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 6;
    height: 100%;
    opacity: 1;
}


em.play_button:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
    width: 55px;
    height: 55px;
    background: #ffffff1c;
    border-radius: 50%;
    -webkit-animation: pulse-border 1500ms ease-out infinite;
    animation: pulse-border 1500ms ease-out infinite;
    z-index: -1;
}

@keyframes pulse-border {
  0% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
    opacity: 0;
  }
}





.login_form_wrapper .input-group input:hover, .login_form_wrapper .input-group input:focus {
    border-color: #0062FF;
}

.login_form_wrapper .form-floating:hover svg path {
    fill: #0062FF;
}

.login_form_wrapper .input-group input:hover label {opacity: 0;}

.login_form_wrapper .form-floating:hover label {color: #1C2F3D;}

.here_to_help h3 {
    font: normal normal 24px/31px var(--graphik_reg);
    letter-spacing: -1.44px;
    color: #FFFFFF;
    opacity: 1;
    margin-bottom: 20px;
}


.here_to_help_card {
    background: rgba(255, 255, 255, 0.2);
    border-radius: 24px;
    opacity: 1;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    padding: 20px;
    margin-bottom: 80px;
}

.here_to_help_card .card-title {
    font: normal normal 22px/28px var(--graphik_med);
    letter-spacing: -1.32px;
    color: #FFFFFF;
    text-transform: capitalize;
    opacity: 1;
    margin-bottom: 20px;
}

.here_to_help_card .scanner_img img {
    max-width: 150px;
    padding: 10px;
    background: #fff;
    border-radius: 16px;
}

.links_wrapper ul li a {
    font: normal normal 12px/30px var(--graphik_reg);
    letter-spacing: -0.24px;
    color: #FFFFFF;
    text-transform: uppercase;
    opacity: 0.7;
}

.links_wrapper ul {
    display: flex;
}

.links_wrapper ul li {
    margin: 0 42px 0 0;
}


.form_logo_wrapper {
    margin-bottom: 80px;
}


button.btn.login_btn:disabled,
button.btn.login_btn[disabled] {
    background: #BDBDBD !important;
}

.password_ico img {
    max-width: 20px;
	cursor: pointer;
    height: 20px;
    filter: contrast(0.3);
}

button.btn.register_here_btn {
    width: 480px;
    height: 68px;
    margin-top: 20px;
    background: rgb(0 98 255 / 20%) 0% 0% no-repeat padding-box;
    box-shadow: 0px 20px 40px #0000000D;
    border-radius: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    font: normal normal 16px/18px var(--graphik_reg);
    letter-spacing: -0.64px;
    color: #FFFFFF;
}

button.btn.register_here_btn span {
    font: normal normal 16px/21px var(--graphik_med);
    letter-spacing: -0.64px;
    color: #FFFFFF;
    text-transform: uppercase;
    opacity: 1;
    padding-left: 10px;
}

button.btn.register_here_btn:hover {
    background: #0062FF;
}

.input_tooltip.password_ico{cursor: pointer;}



/** Custom Select **/
.custom-select-wrapper {
  position: relative;
  display: inline-block;
  user-select: none;
  width: 100%;
}
  .custom-select-wrapper select {
    display: none;
    width: 100%;
  }
  .custom-select {
    position: relative;
    width: 100%;
    display: inline-block;
  }
    .custom-select-trigger {
      position: relative;
          display: flex;
    align-items: center;
      cursor: pointer;
      background: #FFFFFF 0% 0% no-repeat padding-box;
      padding-left: 75px;
      height: 60px;
      border: 1px solid #E8EBF3;
      border-radius: 16px;
      transition: all 0.5s ease;
      font: normal normal normal 14px/18px var(--graphik_reg);
      letter-spacing: -0.56px;
      color: #1C2F3D;
      opacity: 1;
    }
      .custom-select-trigger:after {
        position: absolute;
        display: block;
        width: 10px;
        height: 10px;
        right: 10px;
        margin-top: -3px;
        transition: all .4s ease-in-out;
        transform-origin: 50% 0;
        font-family: "Font Awesome 6 Free";
        content: "\f0d7";
        font-weight: 900;
      }

.custom-options {
    position: absolute;
    display: block;
    top: 100%;
    left: 0;
    right: 0;
    min-width: 100%;
    margin: 15px 0;
    border: 1px solid #b5b5b5;
    border-radius: 4px;
    box-sizing: border-box;
    box-shadow: 0 2px 1px rgb(0 0 0 / 7%);
    background: #fff;
    transition: all .4s ease-in-out;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    border-radius: 16px;
    overflow: hidden;
    transform: translateY(-15px);
}
  .custom-select.opened .custom-options {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    transform: translateY(0);
  }

    .option-hover:before {
      background: #f9f9f9;
    }
.custom-option {
    position: relative;
    display: block;
    padding: 0 22px;
    border-bottom: 1px solid #b5b5b5;
    cursor: pointer;
    transition: all .4s ease-in-out;
    font: normal normal normal 14px/47px var(--graphik_reg);
    letter-spacing: -0.56px;
    color: #1C2F3D;
    opacity: 1;
}
    .custom-option:first-of-type {
      border-radius: 4px 4px 0 0;
    }
    .custom-option:last-of-type {
      border-bottom: 0;
      border-radius: 0 0 4px 4px;
    }
    .custom-option:hover,
    .custom-option.selection {
      background: #f9f9f9;
    }


.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated .form-control:valid, .form-control.is-valid {
    background-image: none;
}

div#register_form_div span.custom-select-trigger {
    padding: 0 0;
    border: none;
    background: none;
}

span.separator_phone {
    border: 1px solid #D0D5DB;
    height: 25px;
    position: absolute;
    left: 15%;
}

.phone_field label {
    padding-left: 0px;
    margin-left: 100px;
}



input#register_phone:focus-visible {
    outline: none;
}

.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background: none;
}

.iti__selected-flag {
    padding-left: 15px;
}

.iti__country-list {

    border-radius: 16px;
    /* overflow: hidden; */
    top: 110%;
    overflow-x: hidden;
    width: 400px;
}

.input_tooltip span i {
    font-size: 20px;
    color: #919DAB;
}

i.custom_icon {
    color: #5E6F84;
    font-size: 18px;
}

.form-floating:hover i.custom_icon {
    color: #0062FF;
}


.tooltip-inner {
  
    opacity: 1 !important;
    font: italic normal  10px/1.4 var(--graphik_med);
letter-spacing: 0px;
color: #ffffff;
opacity: 1;
    text-align: left;
    padding:10px 20px;
     position: absolute;
    width:200px;
    top: -30px;
    right: -10px;
background: #000000 0% 0% no-repeat padding-box;
border-radius: 5px;
opacity: 1;
}


/* ERROR STATE */

.error_state {
    height: 25px;
    background: #FFEEED 0% 0% no-repeat padding-box;
    border-radius: 6px;
    font: normal normal 12px/15px var(--graphik_reg);
    letter-spacing: -0.72px;
    color: #FF241B;
    display: flex;
    opacity: 1;
    align-items: center;
    justify-content: center;
    width: 300px;
    margin: 10px auto 0;
}

/* ERROR STATE */

.has-value i.custom_icon {
    color: #0062FF;
}

.input_error_state  {
    border-color: #E93936 !important;
}

.error_text {
    font: normal normal 12px/18px var(--graphik_reg);
    letter-spacing: -0.36px;
    color: #E93936;
    opacity: 1;
}

.error_state a {
    font: normal normal 12px/15px var(--graphik_med);
    letter-spacing: -0.36px;
    color: #0062FF;
    text-transform: uppercase;
    opacity: 1;
    padding-left: 5px;
}

.opt-boxes {
    display: flex;
    gap: 10px;
}
.opt-boxes input {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #E8EBF3;
    border-radius: 16px;
    width: 58px;
    height: 58px;
    text-align: center;
    font: normal normal 24px var(--graphik_med);
    letter-spacing: -1.44px;
    color: #000000;
    opacity: 1;
}

.rsa_input .input-group label, .rsa_input .input-group input {
    padding-left: 20px;
}

.login_form_wrapper .rsa_input .form-floating>.form-control:not(:placeholder-shown)~label {
    transform: scale(.85) translateY(-0.5rem) translateX(0.45rem);
}
.rsa_has_value input {
    background: #FAFAFA !important;
}


.password-validation ul li > span {
    margin-right: 6px;
}

.password-validation ul li:not(:last-child){
    margin-bottom: 10px;
}
.password-validation ul li {
    font-size: 14px;
    color: #919DAB;
}
.password-validation ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.password-validation {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 0px 30px #0000001a;
    padding: 2em;
    border-radius: 16px;
    text-align: left;
    position: absolute;
    width: 400px;
    z-index: 2;
    margin-top: -5px;
}

.password-validation::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 12px solid #fff;
    top: -10px;
    left: 50px;
}

.password-validation{
    display: none;
}

.error-msz {
    color: red;
    display: block;
    margin: 10px;
    text-align: left;
}


.password-validation .progress {
    background: #E8E8E8 0% 0% no-repeat padding-box;
    border-radius: 30px;
    height: 3px;
        width: 75%;

}

.password-validation .progress .progress-bar.bg-danger {
    background-color: #E93936 !important;
}


.step-form .step {
  display: none;
}

.step-form .step.active {
  display: block;
}



.c-stepper {
    display: flex;
    padding: 0;
}

.c-stepper__item {
  display: flex;
  flex-direction: column;
  flex: 1;
  text-align: center;
}
.c-stepper__item:before {
  --size: 3rem;
    content: attr(data-count);
  display: flex;
      justify-content: center;
          align-items: center;
      color: #fff;
  width: var(--circle-size);
  height: var(--circle-size);
  border-radius: 50%;
  background-color: transparent;
      border: 2px solid #fff;
  background-color: transparent;
  margin: 0 auto 1rem;
  transition: 0.5s;
}

.c-stepper__item.active::before {
    background-color: #E6E6E6;
    color: #000;
    border-color: #E6E6E6;
}
.c-stepper__item.completed::before {
    background-color: #3FC57D;
    color: #fff;
    border-color: #3FC57D;
}

.c-stepper__item:not(:last-child):after {
    content: '';
  position: relative;
  top: calc(var(--circle-size) / 2);
  width: calc(100% - var(--circle-size) - calc(var(--spacing) * 2));
  left: calc(50% + calc(var(--circle-size) / 2 + var(--spacing)));
  height: 2px;
    border-bottom: 1px dashed #fff;
  order: -1;
}

.c-stepper__title {
    color: #FFFFFF;
    text-transform: uppercase;
    font-size: 12px;
  margin-bottom: 0.5rem;
}

.c-stepper__desc {
  color: grey;
  font-size: clamp(0.85rem, 2vw, 1rem);
  padding-left: var(--spacing);
  padding-right: var(--spacing);
}
