*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root{
    --lightgray:#d7dfea;
    --gray:#adb6c3;
    --darkgray:#979ca3;
    --lightblue:#e2eaf7;
    --blue:#136acd;
    --darkblue:#06449f;
    --font-family: 'Montserrat';
    --icon-family:FontAwesome;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-ExtraBold.woff2') format('woff2'),
        url('fonts/Montserrat-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Bold.woff2') format('woff2'),
        url('fonts/Montserrat-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-BlackItalic.woff2') format('woff2'),
        url('fonts/Montserrat-BlackItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-BoldItalic.woff2') format('woff2'),
        url('fonts/Montserrat-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-ExtraBoldItalic.woff2') format('woff2'),
        url('fonts/Montserrat-ExtraBoldItalic.woff') format('woff');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Black.woff2') format('woff2'),
        url('fonts/Montserrat-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-SemiBoldItalic.woff2') format('woff2'),
        url('fonts/Montserrat-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-MediumItalic.woff2') format('woff2'),
        url('fonts/Montserrat-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-LightItalic.woff2') format('woff2'),
        url('fonts/Montserrat-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Medium.woff2') format('woff2'),
        url('fonts/Montserrat-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-SemiBold.woff2') format('woff2'),
        url('fonts/Montserrat-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Regular.woff2') format('woff2'),
        url('fonts/Montserrat-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Light.woff2') format('woff2'),
        url('fonts/Montserrat-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}




html body{
    font-family: var(--font-family);
    letter-spacing: 0.2px;
}
html a{
    text-decoration: none;
}
a:focus,th:focus,button:focus{
    outline: none;
}
html ul{
    list-style: none;
}
html .text-right{
    text-align: right;
}
html .btn-blue{
    background-color: var(--blue);
    border-color: var(--blue);
    color:white;
    font-size: 14px;
    padding: .375rem .8rem;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
}
html .btn-blue:hover{
    background-color: var(--darkblue);
    border-color: var(--darkblue);
    color:white;
}
html .form-control:focus,
html .form-check-input:focus,
html .btn-check:active+.btn-blue:focus, 
html .btn-check:checked+.btn-blue:focus, 
html .btn-blue.active:focus, 
html .btn-blue:active:focus, 
html .show>.btn-blue.dropdown-toggle:focus,
html .btn-check:focus+.btn-blue,
html .btn-blue:focus,
html .form-select:focus,
html .btn:focus{
    box-shadow: none;
}
html .form-control{
    border-width: 0.5px;
    font-size: 0.9rem;
    padding: .500rem 1rem;
}
html .form-control:hover{
    border-color: #86b7fe;
}
html .form-control,
html .form-select,
html .form-control::placeholder,
html input::placeholder{
    color:#a5a5a6;
}

.pl-0{
    padding-left: 0!important;
}
.pr-0{
    padding-right: 0!important;
}

html .form-select:disabled ,
html .form-control:disabled,
html .form-control[readonly]{
    background-color: #fbfcfd;
}

/* ......................................................................      Log In page   ................................................... */

.form{
    width:auto;
    max-width: 500px;
    padding:50px;
    height: auto;
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}
.form .logo{
    width: 80%;
    display: block;
    margin: 0 auto;
}
.form h1{
    font-size: 30px;
    font-weight: 600;
    margin: 25px 0;
}
.form a{
    font-weight: 800;
    font-size: 13px;
    color:var(--blue);
}
.form .btn-blue{
    width: 100%;
    font-weight: 600;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
}
.form span{
    font-size: 14px;
    text-align: center;
    display: block;
    color: #4d6575;
}
.form span a{
    text-decoration: underline;
    color: #6c6c6c;
}
.form span a:hover{
    color:var(--blue);
}


@media(max-width:767px){
    .form{
        width: 100%;
    }
}
@media(max-width:575px){
    .form{
        border:0;
        box-shadow: none;
    }
}


/* ......................................................................     Job Posting page   ................................................... */


.left-side{
    width: 100%;
    height: 100vh;
    background: #ebeef3;
}
.admin-name{
    width: 100%;
    height: auto;
    padding:10px 15px;
    padding-right: 50px;
    background: #d7dfea;
    color: #555;
    position: relative;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
}
.admin-name:hover{
    background:#d6dce7;
}
.admin-name:before{
    position: absolute;
    content: "\f054";
    font-family: FontAwesome;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    color: #555;
}
.admin-logo{
    width: 35px;
    height: auto;
    margin-right: 15px;
}
.admin-name h6{
    font-size: 13px;
    font-weight: 700;
}
.left-options img{
    width: 22px;
    margin-right: 18px;
}
.left-options ul:nth-child(1){
    padding-top: 20px;
}
.left-options ul{
    margin:0;
    padding: 0 20px 20px 25px;
}
.left-options ul li a{
    color: #777;
    font-size: 13px;
    font-weight: 500;
    line-height: 34px;
    letter-spacing: 0.3px;
}
.left-options ul li{
    position: relative;
}
.left-options ul li.active a{
    font-weight:700;
    color: #555;
}
.left-options .disable, 
.left-options .disable a {
    opacity: 0.5;
    cursor: default;
    pointer-events: none;
}
.btn-wrap{
    width: 100%;
    height: auto;
    padding: 6px 30px;
    background:#d7dfea;
    text-align: right;
}
.btn-wrap i{
    padding-right: 8px;
}
.btn-wrap a{
    margin-left:10px;
    color: #555;
    font-size: 13px;
    font-weight: 500;
}
.right-side{
    padding:0!important;
    height: auto;
    max-height: 100vh;
    overflow-y: auto;
}
.right-side-content{
    padding: 30px 40px;
}
.right-side .page-title h1{
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 12px;
    color: #555;
}
.count{
    background: var(--lightblue);
    font-size: 12px;
    padding:1px 5px;
    font-weight:600;
    border-radius: 50px!important;
    -webkit-border-radius: 50px!important;
    -moz-border-radius: 50px!important;
    -ms-border-radius: 50px!important;
    -o-border-radius: 50px!important;
    vertical-align:middle;
    margin-right: 8px;
}
.count-label{
    font-size: 14px;
    font-weight: 500;
}
html .form-select,
html .form-control,
html .input-group .btn{
    padding:.4rem 2.25rem .4rem .75rem;
    font-size: 0.8rem;
    font-style: italic;
    border:1px solid #b2c2cd;
}
.search-icon{
    position: relative;
}
.search-icon input{
    padding-left: 35px;
    padding-right: 5px;
}
.search-icon::before{
    position: absolute;
    content: "\f002";
    font-family: var(--icon-family);
    top: 7px;
    left: 10px;
    color: var(--gray);
    font-size: 14px;
}
html .filter li{
    width: 15%;
}
html .filter .date{
    width:35%;
}
html .filter div{
    padding:0 5px;
}
.hasDatepicker{
    padding-right: .75rem!important;
}
html .filter .date .input-group{
    width:45%;
}
.posting-id input,.recruiter input{
    padding-right: .75rem;
}
html .btn.btn-gray {
    padding: .33rem .75rem !important;
    background-color: var(--lightgray);
    border-color: var(--gray);
    cursor: default;
    color: #555;
    /*font-size: 0.9rem;*/
    font-size: 20px;
}
html .gray-btn-small{
    cursor: pointer!important;
}
html .gray-btn-small:hover{
    background-color:var(--gray);
    color:white;
}
.table-tabs .nav-link{
    font-weight: 500;
    color: var(--darkgray);
    border-bottom: 3px solid transparent;
    font-size: 15px;
    padding: .5rem;
}
.table-tabs .nav-link.active{
    font-weight: 500;
}
.table-tabs .nav-tabs .nav-link:focus, 
.table-tabs .nav-tabs .nav-link:hover{
    border-color: transparent transparent;
}
.table-tabs .nav-tabs .nav-item.show .nav-link, 
.table-tabs .nav-tabs .nav-link.active{
    background: unset;
    border:transparent;
    color:#7b8593;
    border-bottom:3px solid var(--blue);
}
.table-tabs .count{
    margin-left: 8px;
}
.different-structure thead tr:nth-child(1) th{
   border:0;
}
.different-structure thead tr:nth-last-child(1) th{
    transform: translateY(-2px);
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
}
html .different-structure .different-structure-cell {
    text-align: center;
}
html .table{
    color: #444;
    font-size: 14px;
    table-layout: fixed;
}
.data-table th, .data-table td {
    /*width:155px!important;*/
    font-size: 13px;
    padding: .5rem .5rem .5rem 1rem!important;
}
.data-table td{
    font-weight: 500;
}
html .table>:not(caption)>*>*{
    border-bottom-width:2px;
}
html .table>:not(:last-child)>:last-child>* {
    border-bottom-color: var(--gray);
}
.tab-content {
    padding: 12px 0;
}
.table-content{
    overflow-x: auto;
    overflow-y: hidden;
}
table a{
    color:var(--darkblue);
}

.right-side h6{
    color:#555;
    font-size: 14px;
    font-weight: 700;
}
.gray-span{ 
    color: gray;
    font-size: 10px; 
}
.account-form label,
.posting-form label,
.submission-form label{
    font-size: 13px;
    color: var(--bs-gray);
    font-weight: 600;
    text-align: right;
    display: block;
    line-height: 31px;
}
html .text-danger{
    padding-left: 5px;
}
.primary-contact{
    background:#ebeef3;
    padding:15px;
    border:1px solid #ced4da;
    border-radius: .25rem;
    -webkit-border-radius: .25rem;
    -moz-border-radius: .25rem;
    -ms-border-radius: .25rem;
    -o-border-radius: .25rem;
}
.primary-contact input{
    font-size: 11px;
    height: 55px;
    padding-top: 0;
    padding-bottom: 1.5rem;
    padding-right: .75rem;
    font-style: unset;
    font-weight: 500;
}
#append-contact-field div:nth-last-child(1){
    margin-bottom: 0!important;
}
#append-contact-field input{
    width: 85%;
}
#append-contact-field i{
    margin-left: 15px;
    cursor: pointer;
}
.billing-address input,
.billing-address select,
.shipping-address input,
.shipping-address select{
    border:0;
}
.billing-address table,
.shipping-address table{
    border-radius: 0.25px;
    -webkit-border-radius: 0.25px;
    -moz-border-radius: 0.25px;
    -ms-border-radius: 0.25px;
    -o-border-radius: 0.25px;
}
.billing-address td,
.shipping-address td{
    border-width: 1px;
    border-color:#ced4da;
}
.billing-address a,
.shipping-address a{
    font-size: 14px;
}

.form-buttons .btn{
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
    padding:5px 18px;
    font-size: 16px;
    margin:0 5px;
    border:1.5px solid rgba(0,0,0,0.4);
}
.form-buttons .btn.btn-blue{
    border-color: var(--blue);
    
}
html .btn-blue:hover{
    border-color: var(--darkblue);
}
.pay-rate label{
    margin-right:10px;
    font-weight: 500;
}
.pay-rate input{
    width: 90px;
    padding: 5px;
    margin-right:25px;
}
.visa-checkbox label,
.contact-checkbox label{
    display: inline-block;
    line-height: 1.5;
    cursor: pointer;
    font-weight: 500;
}
.dob select{
    width:48%!important;
}
html .edit-recruiter .btn {
    padding: 4px 7px!important;
    font-size: 12px;
    line-height: 0;
    cursor: pointer;
}
 .dropbtn {
    background-color: white;
    color: gray;
    padding:5px;
    padding-right: 20px;
    padding-left:20px;
    font-size: 16px;
    border: 1px solid gray;
    cursor: pointer;
    border-radius:10%;
}
.dropbtn1{
    border:none;
    background-color: #ebeef3;
    color:blue;
}
.dropbtn:hover, .dropbtn:focus {
    background-color: white;
}
.dropbtn1:hover, .dropbtn1:focus {
    background-color: #ebeef3;
}

#myInput:focus {
    outline:none;
    box-shadow: none;
}
.dropdown {
    position: relative;
    display: inline-block;
}
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f6f6f6;
    border: 1px solid #ddd;
    z-index: 1;
    left: 5px;
    right: 5px;
    padding: 7px!important;
    font-size: 13px;
    z-index: 9;
}

.dropdown-content a {
    color:#555;
    padding: 8px;
    text-decoration: none;
    display: block;
    font-size: 12px;
    font-weight: 600;
}
.dropdown-content a:hover {
    color:#555;
    background-color: #f1f1f1;
}
.dropdown-content a span{
    font-size: 11px;
    font-weight:500;
}
.add-phone-btn .dropdown-content a{
    font-weight: 500;
}
.show {
    display:block;
}
.all-customers-btn{
    text-align: left;
    position: relative;
}
.all-customers-btn i{
    position: absolute;
    top: 12px;
    right: 15px;
    font-size: 12px;
    color: #111;
}
.add-phone-btn{
    width: 100%;
}
.add-phone-btn label{
    cursor: pointer;
    text-align: center!important;
}
.billing-address .form-control,
.shipping-address .form-control{
    line-height: 2;
}
.add-documents i{
    margin-right: 8px;
}
.remove i{
    line-height: 31px;
}

.vendor-class {
    display: none;
}
.add_doc {
    font-size: 14px;
    font-weight: 500;
}
.clear-address{
    font-weight: 600;
}

/* ........................  Start Table Features   ....................... */

.dataTables_filter{
    display: none;
}
.two-functions span{
    display: none;
}
.dataTables_filter{
    width: 20%;
    margin-left: auto;
    margin: 15px 0 15px auto;
}
.dataTables_length{
    display: inline-block;
    width:235px;
}
.dataTables_filter label,
.dataTables_length label{
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.dataTables_filter p,
.dataTables_length p{
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 0;
    margin-right: 10px;
}
.dataTables_length select{
    width:38%;
}
.dataTables_length p{
    margin-left: 10px;
}
.dataTables_filter input{
    padding:.250rem .75rem;
}
.three-functions{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    margin-top: 25px;
}
.two-functions{
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

.dataTables_info,
.dataTables_paginate{
    font-size: 14px;
    color:#555;
}
.dataTables_paginate{
    margin-left:15px ;
}
.dataTables_paginate a{
    padding: .375rem .75rem;
    border: 1px solid #dee2e6;
    cursor: pointer;
    border-right: 0;
}
.dataTables_paginate a.previous{
    border-radius:50px 0 0 50px;
    -webkit-border-radius:50px 0 0 50px;
    -moz-border-radius:50px 0 0 50px;
    -ms-border-radius:50px 0 0 50px;
    -o-border-radius:50px 0 0 50px;
    border-right:0;
}
.dataTables_paginate a.next{
    border-radius:0 50px 50px 0;
    -webkit-border-radius:0 50px 50px 0;
    -moz-border-radius:0 50px 50px 0;
    -ms-border-radius:0 50px 50px 0;
    -o-border-radius:0 50px 50px 0;
    border-right:1px solid #dee2e6;
}
.paginate_button.disabled{
    opacity: 0.6;
    pointer-events: none;
}
.edit-recruiter select:disabled {
    font-weight: 500;
    background: none;
    border: none;
    -webkit-appearance: none;
}
/* ........................  End Table Features   ....................... */

@media (min-width:1200px) and (max-width:1471px){
    .admin-name h6 {
        font-size: 11px;
    }
    .admin-logo {
        width: 25px;
    }
    .admin-logo{
        margin-right: 5px;
    }
    .admin-name{
        padding-right:35px;
    }
}   

@media (min-width:1200px) and (max-width:1350px){
    html .btn-blue {
        font-size: 13px;
        padding: .375rem .6rem;
    }
}
@media (min-width:1200px){
    
}
@media (min-width:992px) and (max-width:1199px){
    .filter div {
        padding: 0 3px;
    }
    .dropdown-content{
        left:4px;
        right:4px;
        padding: 5px!important;
    }
    html .form-select, html .form-control, html .input-group .btn {
        padding: .250rem 1.25rem .250rem .60rem;
        font-size: 0.8rem;
    }
    html .filter .btn{
        padding: .249rem .50rem;
        font-size: 0.8rem;
    }
    .table-tabs .nav-link{
        font-size: 14px;
    }
    html .table{
        font-size: 12px;
    }
    html .table>:not(caption)>*>*{
        padding:.5rem .3rem;
    }
    .data-table th, .data-table td {
        width:150px!important;
    }
}
@media (min-width:992px){
    .right-side .page-title h1 {
        font-size: 22px;
        margin-bottom: 0;
    }
}
@media (min-width:768px) and (max-width:991px){
    .left-options ul {
        padding: 0 20px 20px 20px;
    }
    .left-options ul li a {
        font-size: 13px;
        line-height: 28px;
    }
    .left-options ul li.active:after {
        top: -10px;
        right: 0;
    }
    .admin-logo {
        width: 22px;
        height: auto;
        margin-right: 7px;
    }
    .admin-name{
        padding:10px 10px;
        padding-right: 30px;
    }
    .admin-name h6 {
        font-size: 12px;
    }
    .filter div{
        margin-bottom: 10px;
    }
    html .table{
        font-size: 13px;
    }
    .data-table th, .data-table td {
        width:130px!important;
    }
}
@media (min-width:768px){
    html .navbar-expand-md .navbar-collapse{
        display: block!important;
    }
    .filter div div{
        margin-bottom: unset;
        padding: 0;
    }
}
@media (max-width:767px){
    .filter div{
        margin-bottom: 10px;
    }
    .filter div div{
        margin-bottom: unset;
        padding:0!important;
    }
    .left-side{
        height: auto;
        position: relative;
    }
    .admin-name:before{
        display: none;
    }
    html .navbar-toggler{
        position: absolute;
        z-index:999;
        top: 20px;
        right: 22px;
        border-radius: 50px;
        padding: .50rem 1rem;
        font-size: unset;
    }
    html .navbar-toggler:focus{
        box-shadow: none;
    }
    html .navbar-toggler-icon{
        width:1rem;
        height: 1rem;
    }
    html .btn-blue{
        font-size: 13px;
        padding:.375rem .7rem;
    }
    .account-form label,
    .posting-form label,
    .submission-form label{
        text-align: left;
    }
    .pay-rate label {
        margin-right: 10px;
    }
    .pay-rate input {
        width: 45px;
        margin-right: 10px;
    }
    .data-table th, .data-table td {
        width:140px!important;
    }
    html .filter div {
        padding: 0 15px;
    }
    .right-side-content {
        padding: 25px;
    }
    .btn-wrap{
        text-align:center;
    }
}
@media (max-width:575px){
    .three-functions{
        margin-top: 15px!important;
    }
    .dataTables_length p:nth-last-child(1){
        display: none;
    }
    .dataTables_filter label, .dataTables_length label{
        justify-content: flex-start;
    }
    .dataTables_length{
        width: 150px;
    }
    .dataTables_length select {
        width: 45%;
        padding: 5px 8px;
    }
    
}
@media (max-width:360px){
    .dataTables_length p:nth-child(1){
        display: none;
    }
    .dataTables_length {
        width: 90px;
    }
    .dataTables_length select {
        width: 80%;
    }    
}

.wrap-text {
    word-wrap: break-word;
    white-space: normal;
    overflow-wrap: break-word;
}