@font-face {
    font-family: 'Poppins';
    src: url('/assets/fonts/Poppins-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'Poppins-regular';
    src: url('/assets/fonts/Poppins-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Poppins-bold';
    src: url('/assets/fonts/Poppins-Bold.ttf') format('truetype');
}

@font-face {
    font-family: 'Poppins-semibold';
    src: url('/assets/fonts/Poppins-SemiBold.ttf') format('truetype');
}

body,
option {
    margin: 0;
    font-family: "Poppins", "Verdana", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    /* background: transparent url(../images/background.svg) 0% 0% no-repeat padding-box !important; */
    /* background-position: top center !important; */
}

textarea{
    font-family: "Poppins";
    padding: 14px 20px !important;
    min-height: 230px;
}

body.homepage,
body.forgot_password,
body.reset_password{
    background: none !important;
}

body.homepage .main_content,
body.forgot_password .main_content,
body.reset_password .main_content,
body.project_completed_feedback .main_content,
body.project_completed_feedback_sent .main_content{
    background: transparent url(/assets/images/background.svg) 0% 0% no-repeat padding-box !important;
    background-position: top center !important;
}

body.logged-in{
    background: transparent url(/assets/images/background.svg) 0% 0% no-repeat padding-box !important;
    background-position-y: 100px !important;
    background-position-x: 50% !important;
}

nav.top_nav,
.main_content, 
.main_content>.row,
.content_title,
.owa_breadcrumb{
    max-width: 1640px;
    margin: auto;
    padding: 0 20px;
}

.top_nav{
    margin-bottom: 10px !important;
}

#main_content {
    min-height: calc(100vh - 449px);
}

a:hover, a:hover span {
    color: #888b8d !important;
    text-decoration: none;
}

button.btn:hover span{
    color: white !important;
}

a.skip-main {
    left: -999px;
    position: absolute;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: -999;
}

a.skip-main:focus, a.skip-main:active {
    color: #fff;
    background-color: #000;
    background: #000;
    left: auto;
    top: auto;
    width: 30%;
    height: auto;
    overflow: auto;
    margin: 10px 35%;
    padding: 5px;
    border-radius: 15px;
    border: 4px solid yellow;
    text-align: center;
    font-size: 1.2rem;
    z-index: 999;
}

body {
    background: white;
    background-color: white;
}

img {
    max-width: 100%;
}

.form-btn {
    float: right;
    width: auto;
    min-width: 170px !important;
}

.status-filter {
    min-width: 100px;
    max-width: 200px;
    padding-right: 30px !important;
}

.modal-title {
    width: 100%;
    text-align: center;
    font-size: 24px;
    color: black;
    font-family: 'Poppins-semibold';
    margin-bottom: 35px;
    word-break: break-word;
}

.custom-filter {
    margin-left: 10px;
    width: auto;
}

.dataTables_filter>label {
    margin-left: 0;
}

.dataTables_filter>label, .dataTables_length>label {
    margin-bottom: 0;
}

.dataTables_filter {
    display: flex;
    justify-content: flex-end;
    width: 100%;
}

.dataTables_filter>label {
    display: inline-flex;
}

.dataTables_filter-item {
    display: inline-flex;
    margin-left: 30px;
}

.dataTables_filter-item label {
    margin-bottom: 0;
}

.dataTables_filter label {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 63px;
}

.form-control:focus {
    border-color: #f9f9f9;
}

.alert ul {
    margin-bottom: 0;
    padding: 0;
}

.hidden {
    visibility: hidden;
    opacity: 0;
}

.close {
    outline: none !important;
}

.date_wrapper {
    display: flex;
    align-items: center;
}

.date_wrapper>span {
    background: #dc3545;
    background-color: #dc3545;
    width: 38px;
    height: 38px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    border: 1px solid #dc3545;
    border-radius: 0.25rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    cursor: pointer;
    color: white;
}

.date_wrapper input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

table.dataTable {
    width: 100% !important;
    border: 1px solid #DDDBDB;
}

table.dataTable.no-footer{
    border-bottom: none;
}

input {
    max-width: 100%;
}

.loading {
    cursor: progress;
}

.spinner-border {
    margin-right: 10px;
}

.top_message_wrapper {
    position: relative;
    /* max-height: 0; */
    text-align: center;
    min-height: 49px;
}

.top_message_wrapper.show {
    max-height: 300px;
}

.top_message {
    opacity: 0;
}

.top_message_wrapper.show .top_message {
    opacity: 1;
}

.content_top .alert {
    margin-bottom: 0;
    text-align: center;
    position: relative;
}

.modal .info {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.modal_actions {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
}

.modal_actions .btn {
    margin-right: 20px;
    min-width: 100px;
}

.modal_actions .btn:last-child {
    margin-right: 0;
}

.display_hidden {
    display: none;
}

.click_row {
    cursor: pointer;
}

.form-group.error input {
    border: 1px solid #ff5050;
}

.message_listing .message.hidden {
    display: none;
}

.message_listing .message.unread {
    opacity: 0;
}

.message_listing .message {
    width: 100%;
    margin-bottom: 40px;
    float: left;
    opacity: 1;
    transition: all 0.5s ease;
}

.message_listing .message_inner {
    float: right;
    max-width: 90%;
    width: 100%;
    background: #0A98B5;
    background-color: #0A98B5;
    color: white;
    padding: 15px 40px 40px 40px !important;
    border: 1px solid #dfdfdf;
    border-radius: 10px;
    position: relative;
    margin-bottom: 20px;
}

.message_listing .message_inner:after {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: -30px;
    right: 30px;
    background-image: url(/assets/images/message_triangle_dark.png);
    background-repeat: no-repeat;
    background-size: 30px;
}

.message_listing .owa .message_inner:after {
    left: 30px;
    background-image: url(/assets/images/message_triangle_light.png);
}

.message_listing .owa .message_inner {
    float: left;
    background: #F1F9FA;
    background-color: #F1F9FA;
    border:2px solid #0A98B4;
    color: black;
}

.message_listing .message_author {
    float: left;
    width: 100%;
    padding-right: 40px;
    padding-left: 10px;
    margin-top: 5px;
    text-align: right;
    font-size: 16px;
    font-family: "Poppins-regular";
}

.message_listing .owa .message_author {
    text-align: left;
    padding-right: 10px;
    padding-left: 40px;
}

.messages_collapsible {
    display: none;
}

.collapsible_button, .collapsible_button_ajax {
    background: black;
    background-color: black;
    color: white;
    padding: 15px 50px 15px 20px;
    margin-bottom: 40px;
    cursor: pointer;
    position: relative;
    font-size: 16px;
    font-family: "Poppins-regular";
}

.collapsible_button_ajax{
    float: left;
    width: 100%;
    margin-top: -20px !important;
    margin-bottom: 40px;
}

.collapsible_button i, 
.collapsible_button_ajax i {
    font-size: 24px;
    position: absolute;
    right: 20px;
    top: 14px;
    transition: all 0.5s ease;
}

.collapsible_button i.rotate, 
.collapsible_button_ajax i.rotate {
    transform: rotate(180deg);
    transform-origin: center center;
}

.main_container {
    width: 100%;
}

.top_buttons {
    width: 100%;
    display: inline-block;
    align-items: center;
}

.top_buttons>* {
    margin-top: 0 !important;
    display: inline-block;
    float: left;
}

.row.listing, .top_buttons+div {
    float: left;
    width: 100%;
}

.top_buttons>*:not(:last-child) {
    margin-right: 20px;
}

.form_bottom_action_buttons {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0 0 0;
    flex-direction: row-reverse;
}

.form_bottom_action_buttons .button_wrapper {
    display: flex;
    align-items: flex-end;
}

.justify-content-md-center {
    margin: auto;
}

.modal-dialog .btn-cancel {
    float: left;
}

.modal-dialog .btn {
    margin-top: 20px;
}

.top_message {
    position: static;
    z-index: 998;
    width: 100%;
}

.top_message.hide_message {
    transform: translate(0, -200px);
}

.status_row i {
    color: #ff4949;
    margin-left: 10px;
}

.table-responsive {
    opacity: 0;
    transition: opacity 0.2s ease;
}

.table-responsive.loaded {
    opacity: 1;
}

.loader_wrapper {
    background: #262626;
    background-color: #262626;
    width: 100vw;
    height: 100vh;
    z-index: 1000;
    position: absolute;
    opacity: 1;
    transition: opacity 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cssload-loading {
    left: 50%;
    top: 50%;
    transform: translate(-50%, 50%);
}

.loader_wrapper.loaded {
    opacity: 0;
}

body {
    overflow: hidden;
    position: fixed;
    display: none;
}

body.loaded {
    overflow: auto;
    position: inherit;
    display: inherit;
}

.top_message_wrapper.show,
.top_message_wrapper.show .top_message{
    transition: all .5s ease-in-out !important;
}

.form-control {
    height: auto;
}

.loader_wrapper {
    background: #53565a;
    background-color: #53565a;
}

.loader_wrapper img {
    width: 200px;
}

.cssload-container img {
    position: absolute;
    width: 100px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
}

#status_output {
    display: inline-block;
}

.feedback_listing_wrapper {
    display: none;
    width: calc(100% - 20px);
}

.load_feedback_list {
    margin-top: 20px;
}

.contract_actions a {
    display: inline-block;
}

.contract-view .contract_header {
    justify-content: center;
}

.contract_actions a:not(:last-child)
{
    margin-right: 20px;
}

.contract_actions{
    margin-top: 10px;
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-bottom: 40px;
}

.contract_header {
    margin-top: 40px;
}

.contract_form_bottom {
    padding-bottom: 40px;
}

.user_name_row i {
    float: right;
}

.timesheet-day {
    width: 20%;
}

.timesheet-description {
    width: 70%;
}

.timesheet-hours {
    width: 10%;
}

.form-control {
    color: black;
}

.actions a,
.page-link,
a {
    color: #E50914;
}

.btn-primary, 
.btn-dark{
    background-color: #E50914 !important;
    border-color: #E50914 !important;
}

th{
    border-bottom: 2px solid black !important;
}

.top_nav .wrapper {
    background: white !important;
    background-color: white !important;
    padding: 32px 0 0 0;
    z-index: 999;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.home_top span, .header_logo span {
    font-size: 2rem;
    margin-left: 10px;
}

.header_logo {
    display: flex;
    text-transform: uppercase;
    font-family: "Poppins", Verdana, Helvetica, sans-serif;
}

.header_logo > a{
    display: flex;
    align-items: baseline;
}

.header-actions>span {
    color: #E50914 !important;
}

.header-actions {
    font-size: 1.2rem;
    order: 3;
}

.header-actions a {
    text-decoration: none;
    position: relative;
    color: black;
    font-family: "Poppins",Verdana,Helvetica,sans-serif;
    font-size: 20px;
    text-transform: uppercase;
}

/* .header-actions a.active:after,
.header-actions a.underline::after,
.contact_phone_top::after {
    content: "";
    background: #E50914;
    background-color: #E50914;
    height: 2px;
    width: 0%;
    position: absolute;
    bottom: -5px;
    left: 0;
} */

.logged_in_user{
    color: #E50914 !important;
}

.header-actions a.active:after,
.header-actions a.underline:hover::after,
.contact_phone_top:hover::after {
    width: 100%;
}

.header-actions a.underline.logout:hover::after{
   max-width: 82px;
}

.logout{
    margin-right: 0;
}

.header-actions i {
    font-size: 20px;
}

.top_nav span {
    color: black;
}

.contact_phone_top span{
    font-family: Poppins;
    letter-spacing: initial;
}

.top_nav span a {
    color: #E50914 !important;
}

.home_top {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    background: black;
    background-color: black;
    color: white;
}

.dataTables_wrapper .col-md-6 {
    flex: none;
    max-width: 100% !important;
    width: auto;
}

.dataTables_wrapper .row:first-child {
    justify-content: flex-end;
}

.is_admin_flag {
    color: #E50914;
    font-size: 11px;
    height: 100%;
    position: absolute;
    right: 10px;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.user_name_row {
    padding-right: 60px !important;
    position: relative;
}

.main_phone .custom-control-label::before{
    top: 3;
}

.phone_label {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.main_phone span{
    display: none;
}

.main_phone .custom-control.custom-checkbox{
    padding-left: 15px;
    /* display: flex;
    justify-content: flex-end; */
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::before {
    background-color: #E50914;
    border-color: #E50914;
}

.custom-control-input:focus~.custom-control-label::before {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
}

.alert-close:not(:disabled):not(.disabled) {
    cursor: pointer;
}

.alert-dismissible .alert-close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.75rem 1.25rem;
    color: inherit;
}

button.alert-close {
    padding: 0;
    background-color: transparent;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
}

.dataTables_wrapper .row:last-child {
    display: inline-block;
    width: 100%;
}

.dataTables_wrapper .row:last-child>div {
    display: inline-block;
    width: 100%;
    float: left;
    flex: 1;
    max-width: 100%;
    text-align: right;
    margin: 0;
    padding: 0;
}

.center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-body {
    text-align: center;
}

.reset_filter {
    margin-right: 30px;
}

.contract_header {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: flex-start;
}

.contract_actions a {
    margin-top: 0;
    margin-bottom: 0;
}

.contractsTable {
    margin-bottom: 40px;
}

.contract-list .contractsTable {
    margin-bottom: 80px;
}

.custom-control.mark_completed {
    margin-right: 40px;
    display: flex;
}

.mark_completed .custom-control-label::before, 
.mark_completed .custom-control-label::after{
    height: 20px;
    width: 20px;
    margin-top: -1px;
    left: -25px;
}

.main_phone .custom-control-label::before,
.main_phone .custom-control-label::after{
    height: 20px;
    width: 20px;
    margin-top: 5px;
    left: -15px;
}

.custom-control-label::before{
    border: 1px solid #1C1C1B;
}

.contract_permissions .custom-control-label::before,
.contract_permissions .custom-control-label::after{
    margin-top: -5px;
}

.custom-control.custom-checkbox, .custom-control.custom-checkbox * {
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    outline: 0;
}

.toggle-off.btn {
    background: #888B8D;
    background-color: #888B8D;
    color: white;
}

.toggle.btn {
    border: 1px solid #888b8d;
    width: 90px !important;
}

.btn.toggle-on {
    color: white;
}

.card .form-group {
    margin-bottom: 40px;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::before, .custom-checkbox .custom-control-label::before, select, input, .alert, .btn-sm, .btn-group-sm>.btn, .top_message, textarea, .form-btn, .toggle.btn, .card, .paginate_button {
    border-radius: 0 !important;
}

.alert li {
    list-style: none;
}

/*******************/
/*** FOOTER START **/
/*******************/

footer > *{
    text-align: center;
}

footer {
    font-size: 0.8rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px 20px 40px 20px;
    width: 100%;
}

footer a,
footer a span{
    color:#999999 !important;
    text-decoration: none !important;
}

footer a:hover span,
footer a:hover{
    color:#E50914 !important;
    text-decoration: underline !important;
}


.footer_copyright{
    color: #999999;
    margin-bottom: 10px;
}

footer a,
footer a span,
.footer_copyright{
    font-size: 15px;
}


.footer_social_media a{
    color: white;
}

.footer_social_media a,
.footer_social_media a:hover{
    text-decoration: none !important;
}

.footer_social_media i{
    font-size: 1rem;
    color: white;
}

.footer_social_media i:hover{
    color: #888b8d;
}

footer img{
    width: 100px;
}

.footer_social_media{
    margin: 30px 0;
}

.footer_social_media a:not(:last-child){
    margin-right: 50px;
}

.footer_contact_info{
    margin-top: 20px;
}

.footer_contact_info a{
    margin-top: 10px;
}

.footer_contact_info a {
    margin-top: 15px;
    display: block;
}

.footer_bottom-links {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer_bottom-links a{
    padding: 0;
}

.footer-split{
    margin: 0 5px;
    color: #848484;
}

/*******************/
/*** FOOTER END **/
/*******************/

.ruler-h {
    width: 1px;
    max-width: 1px;
    margin: auto;
}

.alert {
    margin-bottom: 0;
}

.form_style,
form {
    margin: 0 auto;
}

.form_style,
form{
    width: 75%;
    min-width: 600px;
    max-width: 900px;
}

.contract-list .main_content {
    width: calc(75% + 60px);
    min-width: 660px;
    max-width: 960px;
}

.card-body, .contract-list .main_content {
    padding: 30px 30px;
}

.contract-list .main_content {
    margin: 0 auto !important;
}

.contract-list .info_box {
    margin-bottom: 40px;
}

.reset_password .page_title {
    text-align: center;
}

.page_title {
    font-size: 2rem;
    margin: 0;
    padding: 0 20px 0 0;
    color: black;
}

.page_type {
    font-size: 1.2rem;
    color: #E50914;
}

.content_title {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 100px;
    margin-bottom: 25px;
}

.content_title .title{
    margin: 0;
}

.content_title_buttons {
    display: flex;
    align-items: flex-end;
}

.content_title_buttons>a:not(:last-child) {
    margin-right: 30px;
}

button.btn,
a.btn,
.btn-popup-confirm:hover{
    background: #E50914 !important;
    color: white;
}

button.btn,
a.btn{
    text-transform: uppercase !important;
    font-family: "Poppins", Verdana, Helvetica, sans-serif;
    border: 1px solid #e50914;
    transition: all 0.2s linear;
    position: relative;
    overflow: hidden;
    z-index: 0;
    min-width: 120px;
    width: auto;
    border-radius: 0;
    font-size: 18px !important;
    height: 60px;
    padding: 20px 35px;
    display: flex;
    justify-content: center;
    align-items: center;
}

button.btn:hover,
a.btn:hover,
a.owa_btn_active,
button.btn.owa_btn_active,
.btn-popup-confirm{
    background: #000000 !important;
    border-color: #000000 !important;
}

button.btn:hover,
a.btn:hover,
a.owa_btn_active,
button.btn.owa_btn_active,
a.btn:hover span{
    color: white !important;
}

.login_form .form-group,
.reset_form .form-group {
    position: relative;
    margin-bottom: 20px !important;
}

.contract-list .contractsTable {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 40px;
}

.contract_header+.contractsTable{
    margin-top: 0;
    margin-bottom: 90px;
    position: relative;
}

.table-striped tbody tr:nth-of-type(odd) {
    background: #FAFAFA ;
    background-color: #FAFAFA;
    border: 1px solid #DDDBDB;
}

.table-striped tbody tr:nth-of-type(even) {
    background: white;
    background-color: white;
    border: 1px solid #DDDBDB;
}

.contract-view table {
    margin-bottom: 0;
}

.timesheet_total {
    display: flex;
    justify-content: space-between;
    background: #e50914;
    background-color: #e50914;
    color: white;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
}

#main_content {
    padding-top: 40px;
    padding-bottom: 40px;
}

.timesheet_total, 
.footer_bottom, 
.footer_top {
    padding-top: 20px; 
    padding-bottom: 20px;
}

.timesheet_total, .content_title, .footer_bottom, .footer_top, #main_content {
    padding-right: 30px;
    padding-left: 30px;
}

div.card-body {
    background: white !important;
    padding: 40px 60px 60px 40px;
}

.row {
    margin: 0
}

.table th, .table td {
    border: none;
}

.table .td-title{
    word-break: break-word;
}

.incident_detailsTable {
    background: white;
    background-color: white;
    border: none;
    margin-bottom: 0;
}

.incident_details {
    margin: 20px 0 50px 0;
    border-bottom: none;
    padding-bottom: 0;
}

.incident_details-text {
    color: black;
    padding: 30px 50px;
    font-size: 16px;
    font-family: "Poppins-regular";
    background: #FAFAFA;
    border: 1px solid #DDDBDB;
}

li.paginate_button.page-item, 
li.paginate_button.page-item a {
    outline: none !important;
    box-shadow: none !important;
}

button:focus,
.btn:focus, 
.btn:active,
li.paginate_button.page-item:focus,
li.paginate_button.page-item a:focus,
.custom-control-input:focus {
    -moz-box-shadow: 0 0 0 0.1rem rgb(136, 139, 141) !important;
    -webkit-box-shadow: 0 0 0 0.1rem rgb(136, 139, 141) !important;
    box-shadow: 0 0 0 0.1rem rgb(136, 139, 141) !important;
}
.custom-control-input:focus:not(:checked)~.custom-control-label::before{
    border: 1px solid #E50914;
}

.info_box{
    display: flex;
    align-items: center;
    font-size: 16px;
    font-family: "Poppins-regular";
    margin-bottom: 30px;
}

.login_form .form-group.forgot_password_link {
    text-align: right;
    width: 100%;
    display: inline-block;
    padding: 0;
    margin-top: 20px;
}

.logout span {
    margin-right: 10px;
}

.h-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.login_form-title {
    background: black;
    background-color: black;
    color: white;
}

.latest_title, 
.login_form-title,
.login_form-title h1 {
    font-size: 1.4rem;
    margin: 0;
}

.latest_title {
    color: black;
    position: relative;
    margin-bottom: 10px;
    margin-top: -10px;
}

.login_form-title, .latest_title {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    text-transform: uppercase;
    font-family: "Poppins", Verdana, Helvetica, sans-serif;
    height: 60px;
}

.latest_content {
    display: flex;
}

.latest_content>* {
    flex: 1;
}

.latest_content>*:first-child {
    margin-right: 40px;
}

.latest_item__text {
    padding: 10px;
    color: black;
    font-size: 0.9rem;
}

.latest_item__title {
    padding: 30px 10px;
    height: 100px;
    display: flex;
    overflow: hidden;
    font-size: 1.3rem;
    font-weight: bold;
    margin-top: 10px;
    color: black;
}

.latest_item a {
    display: inline-block;
    bottom: 70px;
    position: absolute;
    transform: translate(-50%, 0);
    left: 50%;
}

.latest_item {
    position: relative;
    padding-bottom: 60px;
    background: #f9f9f9;
    background-color: #f9f9f9;
    min-height: 570px;
}

.latest_item__type {
    font-size: 1.2rem;
    width: auto;
    display: inline-block;
    position: absolute;
    top: 0;
    background: white;
    background-color: white;
    padding: 5px 20px;
}

body.homepage #main_content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    flex-direction: column;
}

body.homepage #main_content::after {
    content: "";
    background-size: cover !important;
    background-position: 55% center !important;
    opacity: 1;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
    z-index: -1;
}

.reset_form {
    max-width: 600px;
    width: 100%;
    margin: auto;
}

.dataTables_wrapper input, .dataTables_wrapper select {
    padding: 5px 10px;
    width: auto;
}

.dataTables_length select {
    width: 65px !important;
}

.dataTables_length{
    margin-bottom: -2px;
}

.dataTables_wrapper>.row:first-child .col-sm-12, .dataTables_length {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.dataTables_wrapper>.row:first-child {
    margin-bottom: 30px !important;
}

.contract_header:first-child {
    margin-top: 15px;
}

.incident_files a {
    display: inline-block;
    width: 100%;
}

.message_files-item {
    margin-top: 10px;
}

.message_files.no_description{
    border-top: none;
    margin-top: 0;
    padding-top: 0;
}

.message_files.no_description .message_files-item:first-child{
    margin-top: 0;
}

.message.owa .message_files {
    border-top: 2px solid #53565a;
}

.custom-control-label::before, .custom-control-label::after {
    height: 20px;
    width: 20px;
}

.user_form_title {
    color: black;
    font-size: 24px;
    margin-bottom: 40px;
    font-family: "Poppins-semibold";
}

.user-edit form, .user-add form {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.user-edit .card:not(.first), .user-add .card:not(.first) {
    margin-top: 60px;
}

.form-group.contract_permissions {
    margin-bottom: 0 !important;
}

.form-group.contract_permissions>div {
    padding-left: 20px;
    padding-right: 10px;
    padding-bottom: 15px;
}

.form-group.contract_permissions>div:last-child {
    padding-bottom: 15px;
}

.form-group.contract_permissions>div:nth-child(2) {
    margin-top: 10px;
}

.contract_permissions .custom-checkbox label:hover {
    color: black;
}

.contract_permissions .custom-control.custom-checkbox{
    cursor: initial;
}

.custom-control-label {
    padding-left: 5px;
}

.grouped_form {
    display: flex;
}

.grouped_form>div {
    flex: 1;
}

.grouped_form .half{
    max-width: calc(50% - 10px);
}

.grouped_form>div:not(:last-child) {
    margin-right: 20px;
}

.tr-reference {
    width: 15% !important;
}

.tr-contract{
    width: 25% !important;
}

.tr-title{
    width: 30% !important;
}

.tr-name, .tr-email {
    width: 25% !important;
}

.tr-updated{
    width: 15% !important;
} 

.tr-created, .tr-completed, .tr-assigned {
    width: 10% !important;
}

.tr-status {
    width: 15% !important;
}

.form-group-half {
    width: 50%;
}

li.paginate_button.page-item.active  a:hover {
    color: white !important;
}

table.dataTable thead .sorting:before, 
table.dataTable thead .sorting:after, 
table.dataTable thead .sorting_asc:before, 
table.dataTable thead .sorting_asc:after, 
table.dataTable thead .sorting_desc:before, 
table.dataTable thead .sorting_desc:after, 
table.dataTable thead .sorting_asc_disabled:before, 
table.dataTable thead .sorting_asc_disabled:after, 
table.dataTable thead .sorting_desc_disabled:before, 
table.dataTable thead .sorting_desc_disabled:after {
    bottom: calc(50% - 12px);
    color: black;
    opacity: 1;
    font-size: 18px;
}

table.dataTable thead .sorting:before, 
table.dataTable thead .sorting:after{
    color: #aeaeae;
}

table.dataTable thead .sorting_asc:before,  
table.dataTable thead .sorting_desc:after, 
table.dataTable thead .sorting_asc_disabled:before,  
table.dataTable thead .sorting_desc_disabled:after{
    color: #e50914;
    font-size: 18px;
}

table.dataTable thead .sorting:before, 
table.dataTable thead .sorting_asc:before, 
table.dataTable thead .sorting_desc:before, 
table.dataTable thead .sorting_asc_disabled:before, 
table.dataTable thead .sorting_desc_disabled:before{
    right: 0;
    left: 1em;
}

table.dataTable thead .sorting:after, 
table.dataTable thead .sorting_asc:after, 
table.dataTable thead .sorting_desc:after, 
table.dataTable thead .sorting_asc_disabled:after, 
table.dataTable thead .sorting_desc_disabled:after{
    right: 0;
    left: 0.5em;
}

table.dataTable thead>tr>th.sorting_asc, 
table.dataTable thead>tr>th.sorting_desc, 
table.dataTable thead>tr>th.sorting, 
table.dataTable thead>tr>td.sorting_asc, 
table.dataTable thead>tr>td.sorting_desc, 
table.dataTable thead>tr>td.sorting{
    padding-right: 10px;
    padding-left: 10px;
}

th {
    vertical-align: middle !important;
}

.owa_breadcrumb {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 30px;
    flex-wrap: wrap;
    font-family: "Poppins-regular";
    font-size: 14px;
    margin-bottom: 30px;
}

.owa_breadcrumb a {
    padding: 0;
}

.breadcrumb_item-page_title, .breadcrumb_item-split {
    display: inline-block;
}

.breadcrumb_item-split {
    color: #53565a;
    margin: 0 10px;
}

.ruler {
    background: #888b8d;
    background-color: #888b8d;
    height: 1px;
}

.homepage .ruler{
    display: none;
}

.btn-primary.disabled, 
.btn-primary:disabled{
    color: white;
}

.btn-upload-files{
    float: left;
    margin: 20px 0px;
}

.btn.btn-upload-files.collapsed {
    width: 100% !important;
    height: 0 !important;
    padding: 0 !important;
    border-color: #f9f9f9 !important;
    pointer-events: none !important;
    margin: 0 !important;
}

.file-uploader-wrapper{
    display: none;
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
    position: relative;
}

.no_margin_bottom{
    margin-bottom: 0;
}

.no_margin_top{
    margin-top: 0;
}

.form-control:focus {
    -moz-box-shadow: 0px 0px 4px 1px #888b8d;
    -webkit-box-shadow: 0px 0px 4px 1px #888b8d;
    box-shadow: 0px 0px 4px 1px #888b8d;
}

textarea{
    margin-bottom: 4px;
}

textarea:required {
    box-shadow: none;
}

button{
    display: flex !important;
    justify-content: center;
    align-items: center;
}

.form-group > label,
.card_row > label,
.phone_label > label,
.main_phone > label{
    width: 100%;
    font-size: 18px;
}

.form-group>label.required {
    font-family: 'Poppins-bold';
}

.phone_label label {
    width: auto;
}

.status_row.attention{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.full_width{
    width: 100%;
    max-width: 100%;
}

/* WHITE BACKGROUND DESIGN - START */
#main_content{
    padding-top: 10px;
}

.top_buttons{
    margin-bottom: 90px;
}

.table .thead-dark th{
    color: white;
    background: #0A98B4;
    background-color: #0A98B4;
    font-family: "Poppins-semibold";
    border-bottom: none !important;
    font-size: 16px;
    padding: 17px 17px 17px 20px  !important;
}

table tr.click_row:hover {
    background: #ececec !important;
    background-color: #ececec !important;
}

.cssload-speeding-wheel{
    width: 169px !important;
    height: 169px !important;
    margin: 0 auto !important;
    border: 10px solid #b1b1b3 !important;
    border-radius: 50% !important;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    animation: cssload-spin 2000ms infinite linear !important;
    -o-animation: cssload-spin 2000ms infinite linear !important;
    -ms-animation: cssload-spin 2000ms infinite linear !important;
    -webkit-animation: cssload-spin 2000ms infinite linear !important;
    -moz-animation: cssload-spin 2000ms infinite linear !important;
}

.loader_wrapper {
    background: white;
    background-color: white;
}

/* WHITE BACKGROUND DESIGN - END */

.top_message_wrapper .alert{
    border-right: none;
    border-right: none;
    border-top: none;
    color: black;
}

.top_message_wrapper .alert-error{
    background: #ffc8cb;
    background-color: #ffc8cb;
    border-color: #e48489;
}

.top_message_wrapper .alert-success{
    background: #ececec;
    background-color: #ececec;
    border-color: #f9f9f9;
}

.top_message_wrapper .alert-warning{
    background: #f8ff9d;
    background-color: #f8ff9d;
    border-color: #e4d584;
}

.fake_input{
    display: block;
    width: 100%;
    padding: 13px 20px;
    font-size: 18px;
    line-height: 1.5;
    color: #231F20;
    background: #FAFAFA;
    background-color: #FAFAFA;
    background-clip: padding-box;
    border: 1px solid #00000080;
    cursor: no-drop;
    height: 50px;
    opacity: 50%;
    font-family: "Poppins-regular";
    overflow: hidden;
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 10000;
}

.listing.no_result{
    margin-top: 30px;
}

.dashboard_column-item.no_link,
.dashboard_column-item.no_link:hover {
    background: #f9f9f9 !important;
    background-color: #f9f9f9 !important;
    color: black;
}

.no_link .dashboard_column-item__text {
    text-align: left;
    margin-top: 0;
    padding: 20px;
}

.no_link .dashboard_column-item__text p:last-child,
.info_box-text p:last-child{
    margin-bottom: 0;
}

.login_form__right {
    padding: 0;
    background: white;
}

.latest_item .btn span,
.contract_actions .btn span,
.footer_social_media a span,
.phone_label label span{
    display: none;
}

.modal-body form {
    width: calc(50% - 10px);
    max-width: 100%;
    min-width: 1px;
    display: inline-block;
    float: right;
}

tr:nth-of-type(odd){
    background: white;
    background-color: white;
}

.latest_item__image img {
    height: calc(100% + 2px);
    width: calc(100% + 2px);
    margin-left: -1px;
    margin-top: -1px;
    max-width: none;
}

.latest_item__image {
    height: 100%;
    max-height: 200px;
    background: white;
    border: 1px solid #d9d9d6;
}

.pagination{
    margin-top: 20px !important;
    align-items: center;
}

div.dataTables_wrapper div.dataTables_info{
    white-space: normal !important;
}

.dataTables_wrapper > .row{
    padding-top: 2px;
    padding-right: 2px;
}

.contract-view .contract_actions{
    display: none;
}

.contract-filter{
    max-width: 220px;
    padding-right: 30px !important;
}

.owa_breadcrumb,
label,
.dashboard_wrapper,
.top_nav{
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
}

div.dataTables_wrapper div.dataTables_filter input{
    margin-left: 10px;
}

.latest_content .latest_item:last-child .latest_item__image{
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
}

.latest_content .latest_item:last-child .latest_item__image img{
    width: auto;
    height: auto;
}

.top_username{
    position: absolute;
    top: 10px;
    right: 40px;
    font-size: .8rem;
    color: #e50914 !important;
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgb(255, 104, 112);
    border-color: #ff6870;
}

.user_form_sub-title {
    margin-top: -15px;
    margin-bottom: 20px;
    font-size: 0.9rem;
}

.btn.btn-upload-files{
    color: black !important;
    font-size: 16px !important;
    border-color: black !important;
    padding: 0;
    letter-spacing: 0;
    border-radius: 30px !important;
    width: auto;
    min-width: 1px !important;
    background: white !important;
    background-color: white !important;
    margin-top: 30px;
    height: 40px;
    width: 160px;
    border: 2px solid black;
}

.btn.black_button:hover,
.btn.btn-upload-files:hover{
    background: black !important;
    background-color: black !important;
    color: white !important;
}

.login_btn{
    margin: 40px auto 80px auto;
    width: 200px !important;
}

.warranty_form .info_box{
    margin: 0 0 30px 0;
}

.contact_phone_top{
    position: relative;
    font-size: 20px;
}

.contract-list td.detailsTable_text {
    text-align: right;
}

.dashboard #main_content {
    padding-top: 40px;
}

div.dataTables_wrapper div.dataTables_length label{
    line-height: 30px;
}

div.dataTables_wrapper div.dataTables_length select{
    height: 50px;
    margin-top: -4px;
    width: 120px !important;
    
    margin-left: 10px;
    margin-right: 10px;
}

.latest_title:before{
    content: "";
    width: 140px;
    height: 1px;
    color: black;
    position: absolute;
    left: 50%;
    background: black;
    bottom: 12px;
    transform: translate(-50%, 0);
}

.mobile_only{
    display: none;
}

.mobile-menu{
    order: 3;
    display: none;
}

.hamburger {
    width: 40px;
}

.hamburger div,
.hamburger:after, 
.hamburger:before{
    background-color: black;
}

/* .hamburger div{
    background-color: #e40b18;
} */

.hamburger:after, 
.hamburger:before, 
.hamburger div{
    border-radius: 3px;
    content: '';
    display: block;
    height: 4px;
    margin: 8px 0;
    transition: all .2s ease-in-out;
}

.hamburger.is-active:before {
    transform: translateY(12px) rotate(135deg);
    /* background-color: #e40b18; */
}

.hamburger.is-active:after {
    transform: translateY(-12px) rotate(-135deg);
}

.hamburger.is-active div {
    transform: scale(0);
}

.form-control.disabled,
.form-group.disabled,
.form-group.disabled input {
    pointer-events: none;
}

.form-control.disabled,
.form-group.disabled input {
    background: #FAFAFA;
    background-color: #FAFAFA;
    border: 1px solid #00000080;
    opacity: 0.5;
    padding-right: 10px !important;
}

table.dataTable td.click_row-icon{
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    color: black;
    padding: 0 !important;
    display: none;
    font-size: 40px;
    opacity: 0.5;
}

/* .dashboard_column-item.no_link .dashboard_column-item__text {
    font-family: Verdana;
} */

.dashboard_column-item.no_link:hover svg path, 
.dashboard_column-item.no_link:hover svg circle{
    fill: black;
}

.dashboard_column-item.no_link:hover i, 
.dashboard_column-item.no_link:hover svg {
    transform: scale(1);
}

/* TEMPORARY */
.check1, .check2, .check3, .check4{
    width: 100%;
    margin-top: 10px;
}

.check1, .check3{
    font-weight: bold;
    margin-bottom: 15px;
}

.checklist em{
    font-weight: normal;
    font-size: 12px;
    font-style: italic;
    margin-left: 10px;
}

.checklist input[type="checkbox"]{
    margin-right: 10px;
}

.checklist input[type="checkbox"]:checked + span{
    color: red;
    text-decoration: line-through;
}

.check1{
    margin-left: 20px;
    margin-top: 60px;
}

.check2{
    margin-left: 40px;
}

.check3{
    margin-left: 60px;
}

.check4{
    margin-left: 80px;
}

.logged-out .header-actions{
    display: inline-flex;
}

.field-description {
    width: 100%;
    /* text-align: right; */
    font-style: italic;
    font-size: 0.8rem;
    margin-top: -10px;
}

.password-description{
    margin-bottom: 20px;
}

.timesheet_summary.timesheet_monthly_summary{
    background: white !important;
    border-top: 1px solid #e50914;
}

.show_when_closed{
    display: none;
}

.top_username a:hover{
    text-decoration: underline;
}

.current_user{
    font-weight: bold;
}

.user_permissions_group .custom-control-label::before, 
.user_permissions_group .custom-control-label::after {
    height: 15px;
    width: 15px;
    top: 10px;
    left: -20px;
}

.user_permissions_group .custom-control-label {
    padding-left: 0;
}

.sub-header{
    font-style: italic;
    margin-top: -5px !important;
    margin-bottom: 15px;
    font-size: 12px;
    color: #53565a;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.custom_tooltip{
    cursor: pointer;
    z-index: 9999;
}

.custom_tooltip-info {
    overflow: hidden;
    position: absolute;
    transition: .3s linear;
    opacity: 0;
    width: 200px;
    height: auto;
    font-size: 0.8rem;
    padding-bottom: 10px;
    pointer-events: none;
}

.custom_tooltip i:hover + .custom_tooltip-info {
    background-color: #888b8d;
    color: white;
    padding: 10px;
    opacity: 1;
    z-index: 1;
}

input:invalid,
select:invalid,
textarea:invalid{
    border: 1px solid #e50914;
}

input:invalid:focus,
select:invalid:focus,
textareainvalid:focus{
    box-shadow: 0px 0px 4px 1px #e40b18;
}

a.owa_btn_disabled,
button.btn.owa_btn_disabled{
    background-color: #e9ecef !important;
    border-color: #ced4da !important;
    color: black !important;
    cursor: not-allowed!important;
    pointer-events: none !important;
}

.owa_tab{
    display: none;
}

.owa_tab.active_tab{
    display: block;
}

.dataTables_wrapper{
    padding-top: 5px;
    padding-right: 1px;
}

.tfa_form p {
    margin-bottom: 15px;
}

.tfa_form .collapsible_area-content {
    padding-top: 50px;
}

.tfa_form h3 {
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 15px;
    display: inline-block;
}

.tfa_secret {
    font-weight: bold;
    font-size: 26px;
    margin-bottom: 15px;
}

p.tfa_text_header {
    font-weight: bold;
    font-size: 18px;
    margin-top: 50px;
}

.tfa_code {
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
}

.tfa_code label {
    font-weight: bold;
    color: black;
    margin-top: 10px;
}

.tfa_form .top_buttons {
    display: flex;
    justify-content: flex-end;
}

.submit_button_wrapper.disable_tfa_buttons {
    margin-top: 40px;
    margin-bottom: -20px;
}

.tfa_form
,#tfa_form{
    margin-top: 40px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: transparent;
    border: 1px solid transparent;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    min-width: 1px;
    margin: 0;
    padding: 10px;
}

.login_description {
    margin-top: 50px;
    margin-bottom: 30px;
    font-family: "Poppins-semibold";
    font-size: 18px;
    text-align: center;
}

.form-control,
.login_form input:invalid,
#request_password_form input:invalid,
#reset_password_form input:invalid{
    border: 1px solid #000000;
}

.login_form input:invalid:focus,
#request_password_form input:invalid:focus,
#reset_password_form input:invalid:focus{
    box-shadow: 0px 0px 4px 1px #888b8d;
}

.login_form input::placeholder,
#request_password_form input::placeholder,
#reset_password_form input::placeholder {
    color: #231F20;
    font-size: 18px;
}

.login_form .grouped_form{
    font-family: "Poppins-regular";
    font-size: 18px;
}

.login_form .custom-checkbox{
    color: #231F20;
}

.login_form-content {
    display: flex;
    flex-direction: column;
}

.login_form,
#request_password_form,
#reset_password_form{
    padding: 60px 120px;
    width: 100%;
    max-width: 670px;
    margin-top: 120px;
    margin-bottom: 220px;
}

.title{
    font-family: "Poppins-bold";
    font-size: 50px;
    text-align: center;
}

.title:after{
    content: "";
    background: #e50914;
    height: 10px;
    width: 10px;
    display: inline-block;
    border-radius: 50%;
    margin-left: 3px;
}

.color_orange.title:after,
.color_orange .title:after,
.color_orange .dashboard_column-item{
    background: #ED7002;
}

.color_green.title:after,
.color_green .title:after,
.color_green .dashboard_column-item{
    background: #4BA749;
}

.color_blue.title:after,
.color_blue .title:after,
.color_blue .dashboard_column-item{
    background: #0A98B4;
}

.dashboard_wrapper {
    display: flex;
    margin-top: 120px;
    padding: 0 20px;
    margin-bottom: 340px;
}

.dashboard_column{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    align-items: stretch;
    align-content: stretch;
    border-top: none;
}

.dashboard_column:not(:first-child){
    margin-left: 50px;
}

.dashboard_column a:hover {
    text-decoration: none;
}

.dashboard_column i {
    font-size: 4rem;
}

.dashboard_column i,
.dashboard_column svg {
    transition: transform 0.5s linear;
}

.dashboard_column-item a {
    display: flex;
    align-items: center;
    flex-direction: row;
    transition: color 0.1s ease;
    width: 100%;
    border: 3px solid transparent;
    padding: 20px;
    color: white;
    max-height: 100%;
    height: 100%;
}

.dashboard_column-item:hover a{
    border-color: white;
    color: white !important;
}

.dashboard_column-item__icon svg {
    width: 60px;
}

.dashboard_column-item svg * {
    fill: white;
}

.dashboard_column-item{
    padding: 10px;
    align-items: center;
    display: flex;
    flex: 1;
    transition: 0.3s ease;
    margin-top: 30px;
    max-height: 126px;
}

.dashboard_column-item.link{
    cursor: pointer;
}

.dashboard_column-item__text{
    margin-top: 0;
    text-align: left;
    padding-left: 40px;
    text-transform: none;
    font-size: 24px;
}

.logged_in_user {
    border-right: 3px solid #000000;
    padding-right: 14px;
    margin-right: 10px;
}

.header-actions.center a{
    margin-left: 60px;
}

.header-actions.center a.first{
    margin-left: 0;
}

/* .dashboard_column-item:hover i,
.dashboard_column-item:hover svg {
    transform: scale(1.1);
} */

.form_description {
    font-size: 18px;
    font-family: "Poppins-semibold";
    margin-bottom: 50px;
}

/* .form-group>label.required:after {
    content: "*";
} */

input.form-control,
select.form-control{
    font-size: 18px;
    height: 50px;
}

label{
    margin-bottom: 15px;
}

.logged-in .main_content > form,
.box,
.row.listing,
.card.message_card{
    margin-bottom: 300px;
}

select.form-control{
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-left: 10px;
    background-image: url(/assets/images/select_arrow.png);
    background-repeat: no-repeat;
    background-position-x: 100%;
    background-position-y: 0;
    cursor: pointer;
    padding-right: 50px;
    border: 1px solid #767676;
    background-size: 50px;
    padding-right: 60px !important;
}

.login_form,
.box,
.card,
.row.listing,
#request_password_form,
#reset_password_form,
#completed_project_feedback,
#mailchimp_preferences_form{
    background: #FFFFFF 0% 0% no-repeat padding-box !important;
    box-shadow: 0px 2px 6px #0000000D;
    border: none
}

#mailchimp_preferences_form,
.subscription_confirmed .card{
    margin-bottom: 50px;
}

.user-details .box{
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    float: none;
    display: block;
}

.user-details .box{
    padding: 40px 60px 60px 40px !important;
}

.row.listing{
    padding: 60px 50px;
}

.contract-list .box{
    padding: 40px 60px 0 40px !important;
}

.contract-view .box{
    padding: 60px 50px 100px 50px !important;
}

.box{    
    display: inline-block;
}

.contract_name{
    font-size: 18px;
    font-family: "Poppins-semibold";
    margin-bottom: 40px;
}


.btn.black_button,
.paginate_button.page-item.previous,
.paginate_button.page-item.next{
    border: 2px solid black !important;
    color: black !important;
    background: transparent !important;
    font-size: 16px !important;
    font-family: "Poppins-regular" !important;
    border-radius: 30px !important;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.2s ease !important;
}

.paginate_button.page-item.previous,
.paginate_button.page-item.next{
    width: 160px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.paginate_button.page-item.previous:hover,
.paginate_button.page-item.next:hover{
    background: black !important;
    color: white !important;
}

.paginate_button.page-item.previous:hover a,
.paginate_button.page-item.next:hover a{
    color: white !important;
    background: transparent;
}

.paginate_button.page-item.disabled{
    cursor: not-allowed !important;
    opacity: 0.5;
}

.paginate_button.page-item.previous a,
.paginate_button.page-item.next a{
    background: transparent;
    color: black;
    border: none;
    font-size: 14px !important;
    font-family: "Poppins-regular" !important;
    width: 100%;
}

.paginate_button.page-item.previous{
    margin-right: 60px;
}

.paginate_button.page-item.next{
    margin-left: 60px;
}

.col-sm-12.col-md-6{
    padding: 0;
}

.dataTables_length {
    margin-right: 30px;
}


div.dataTables_wrapper div.dataTables_length select,
.dataTables_wrapper input, 
.dataTables_wrapper select{
    padding-left: 10px;
    font-size: 16px;
    font-family: "Poppins-regular";
    color: #797b8c;
}

.dataTables_filter input[type=search]{
    background-image: url(/assets/images/search_icon.png);
    background-repeat: no-repeat;
    background-position-x: 100%;
    background-position-y: 0;
    padding-right: 60px;
    padding-left: 10px;
    min-width: 200px;
}

table.dataTable thead .sorting:before,
table.dataTable thead .sorting:after{
    display: none;
}

table.dataTable thead .sorting:after {
    position: relative;
}

table.dataTable thead .sorting:after, 
table.dataTable thead .sorting_asc:after, 
table.dataTable thead .sorting_desc:after, 
table.dataTable thead .sorting_asc_disabled:after, 
table.dataTable thead .sorting_desc_disabled:after{
    content: ">";
}

.sorting_desc:after {
    transform: rotate(270deg);
}

.sorting_asc:after {
    transform: rotate(90deg);
}

.sorting_desc:after,
.sorting_asc:after{
    color: white !important;
    display: inline-block !important;
}

table.dataTable tbody th, 
table.dataTable tbody td {
    padding: 12px 10px 12px 20px;
    vertical-align: middle;
    border-bottom: 1px solid #DDDBDB;
    font-size: 16px;
    font-family: "Poppins-regular";
}

div.dataTables_wrapper div.dataTables_paginate {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

ul.pagination a {
    color: black;
    border: 1px solid #1C1C1B;
    width: 42px;
    font-size: 16px;
    font-family: "Poppins-bold";
    padding: 10px 8px;
}

.page-item.active .page-link,
.page-link:hover{
    background: black;
    color: white !important;
    border-color: black;
}

.dataTables_wrapper label{
    font-size: 18px;
    font-family: "Poppins-semibold";
}

.card.incident_view_card {
    padding: 50px 60px 90px 40px;
}

.card.incident_view_card > .card-body {
    padding: 0;
}

table.incident_detailsTable.table .detailsTable_label{
    width: 180px;
    font-size: 18px;
    font-family: "Poppins-semibold";
}

table.incident_detailsTable.table .detailsTable_text{
    font-size: 18px;
    font-family: "Poppins-regular";
}

.card.incident_view_card textarea {
    margin-top: 10px;
    display: inline-block;
}

.mark_completed label{
    font-size: 16px;
    font-family: "Poppins-regular";
}

.incident-view .form_bottom_action_buttons .button_wrapper{
    align-items: center;
    justify-content: center;
}

.contract-view .contract_name{
    font-size: 24px;
    margin-bottom: 30px;
}

.contract-view .row.listing{
    padding: 0;
    box-shadow: none;
}

.timesheet-listing .table-responsive.loaded{
    overflow-x: hidden;
}

.row.listing.timesheet-listing {
    margin-bottom: 40px;
    margin-left: 0;
}

.row.listing.timesheet-listing td{
    font-family: 'Poppins-regular';
    padding-left: 17px;
    padding-right: 17px;
}

.timesheet_monthly_summary,
.timesheet_summary_total{
    font-family: 'Poppins-semibold' !important;
}

tr.timesheet_summary.timesheet_monthly_summary td {
    background: #F1F9FA;
    border: 0.1em solid #0A98B4;
}

tr.timesheet_summary.timesheet_monthly_summary > td:last-child{
    border-left: none;
}

tr.timesheet_summary.timesheet_monthly_summary > td:first-child{
    border-right: none;
}

.main_phone {
    margin-top: 10px;
}

.main_phone label {
    font-size: 16px;
    font-family: "Poppins-regular";
    height: 30px;
    color: black;
    display: flex;
    align-items: flex-end;
    padding-left: 15px;
}

.user-edit .form-btn {
    min-width: 300px !important;
}

.grouped_form > .form-group.current_password_group{
    margin-right: 50px;
}

.top_buttons .btn{
    min-width: 300px !important;
    margin-top: 20px !important;
}

#registration_form div.card-body {
    padding: 60px 40px 90px 40px;
}

.user_permissions_group {
    padding: 40px 40px 70px 40px;
    background: #FAFAFA;
    border: 1px solid #00000080;
    margin-bottom: 40px;
    margin-top: 40px;
}

.user_permissions_group .user_form_title {
    font-family: 'Poppins';
    margin-bottom: 20px;
}

.user_permissions_group .sub-header {
    font-style: normal;
    color: black;
    font-size: 16px;
    font-family: 'Poppins-regular';
    margin-bottom: 20px;
    padding: 0 !important;
}

.toggle.btn.btn-sm.btn-primary,
label.btn.btn-primary.btn-sm.toggle-on {
    background: #65A455 !important;
    background-color: #65A455 !important;
    border-color: #65A455 !important;
}

.toggle.btn.btn-sm.btn-primary,
label.btn.btn-primary.btn-sm.toggle-on,
.toggle.btn.btn-sm.btn-default.off{
    border-radius: 20px !important;
    height: 40px !important;
    font-size: 14px;
    font-family: 'Poppins-regular';
    transition: none;
}

.toggle.btn.btn-sm.btn-default.off,
.toggle-off.btn,
.toggle.off .toggle-group .toggle.btn.btn-sm.btn-primary,
.toggle.off .toggle-group label.btn.btn-primary.btn-sm.toggle-on{
    background: #999999 !important;
    background-color: #999999 !important;
    border-color: #999999 !important;
}

span.toggle-handle.btn.btn-default.btn-sm {
    border-radius: 50% !important;
    margin-left: -36px;
}

.toggle-handle {
    background: white;
    background-color: white;
    width: 32px;
    height: 32px;
    margin-top: 3px;
}

.toggle.btn.btn-sm.btn-primary {
    padding: 0;
}

label.btn.btn-primary.btn-sm.toggle-on {
    display: flex;
    align-items: center;
    padding: 0 0 0 15px;
}

.toggle.off .toggle-group{
    left: -50px;
}

label.btn.btn-default.btn-sm.active.toggle-off {
    padding: 0 0 0 15px;
    display: flex;
    align-items: center;
}

.user_permissions_group .form-group {
    margin-bottom: 60px;
}

.detailsTable .detailsTable_label,
.detailsTable .detailsTable_text{
    font-size: 18px;
}

.detailsTable .detailsTable_text {
    text-align: right;
}

.btn-cancel.modal-btn-close {
    height: 60px !important;
    border-radius: 0 !important;
    font-size: 18px !important;
    width: calc(50% - 10px);
}

.modal-body form .btn {
    width: 100%;
}

@media (min-width: 576px){
    .modal-dialog {
        max-width: 700px;
    }
}

.modal-body__text {
    width: 100%;
    display: block;
    margin-bottom: 10px;
    font-family: 'Poppins-regular';
}

.modal-header {
    padding: 0;
    border-bottom: none;
    border-top-left-radius: none;
    border-top-right-radius: none;
}

.modal-body{
    padding: 0;
}

.modal-content {
    border-radius: 0;
    padding: 80px 40px 60px 40px;
}

.modal button.close{
    padding: 0;
    background-color: transparent;
    border: 0;
    position: absolute;
    right: 40px;
    top: 20px;
    width: 40px;
    height: 40px;
    opacity: 1;
    background-image: url(/assets/images/close_btn.svg);
    font-size: 0;
}

@media (min-width: 576px){
    .modal-dialog {
        margin-top: 300px;
    }
}

.forgot_password .row.home_main.container,
.reset_password .row.home_main.container {
    padding: 0;
}

#request_password_form .form_bottom_action_buttons,
#reset_password_form .form_bottom_action_buttons,
#completed_project_feedback .form_bottom_action_buttons,
#mailchimp_preferences_form .form_bottom_action_buttons{
    justify-content: center;
    margin-bottom: 100px;
    margin-top: 40px;
}

#request_password_form,
#reset_password_form,
#completed_project_feedback,
#mailchimp_preferences_form,
.subscription_confirmed .card {
    margin-top: 0;
    padding: 40px;
}

#completed_project_feedback{
    margin-bottom: 220px;
    margin-top: 160px;
}

.forgot_password .top_buttons,
.reset_password .top_buttons {
    margin-top: 60px;
}

.no_result td{
    vertical-align: middle;
    text-align: center;
    height: 70px;
}

table.incident_detailsTable.table td {
    padding-left: 0;
}

.incident_details-label {
    font-size: 18px;
    font-family: 'Poppins-semibold';
    margin-bottom: 15px;
}

.card.message_card .info_box {
    justify-content: center;
    margin: 0;
}

.card.message_card .card-body {
    padding: 40px;
}

.disable_tfa_buttons .form-btn {
    width: calc(50% - 10px);
}

.timesheet-listing .table-responsive{
    display: table;
}

.no_link > .dashboard_column-item__icon {
    display: none;
}

.dashboard_column-item.no_link {
    max-height: 100%;
    height: 100%;
    color: white;
}

.color_orange .dashboard_column-item.no_link,
.color_orange .dashboard_column-item.no_link:hover{
    background: #ED7002 !important;
    color: white !important;
}

.color_green .dashboard_column-item.no_link,
.color_green .dashboard_column-item.no_link:hover{
    background: #4BA749 !important;
    color: white !important;
}

.privacy h1{
    width: 100%;
    margin-bottom: 20px;
}

.support-list select.status-filter {
    max-width: 320px;
}

.tr-updated,
.tr-created{
    width: 130px !important;
    min-width: 130px !important;
}

.contract_actions a {
    min-width: 231px;
}

.submit_button_wrapper.disable_tfa_buttons .top_buttons {
    justify-content: center;
}

div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:first-child {
    padding-left: 0;
    margin-bottom: 30px;
}

div.dataTables_wrapper div.dataTables_filter{
    margin-left: 30px;
    margin-bottom: 30px;
}
.page404 p {
    text-align: center;
    margin-bottom: 120px;
    margin-top: 120px;
}

.message_files {
    border-top: 1px solid white;
    margin-top: 30px;
    padding-top: 5px;
}

.message_files-item a:hover {
    color: #d3d3d3 !important
}

.message_files-item a {
    color: white;
    font-style: italic;
}

.message.owa .message_files{
    border-top: 1px solid black;
}

.message.owa .message_files-item a {
    color: black;
}

.message.owa .message_files-item a:hover {
    color: #898989 !important
}

div#support_label {
    padding-left: 0;
    font-family: Poppins;
    font-size: 18px;
}
.project_completed_feedback_sent h1,
form#completed_project_feedback h1,
#mailchimp_preferences_form h1,
.subscription_confirmed h1{
    margin-bottom: 50px;
}

.grouped_form.feedback_description {
    margin-top: 50px;
}

.grouped_form.feedback_description label,
.grouped_form.feedback_rating label {
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
    font-size: 20px;
}

.grouped_form.feedback_rating label{
    margin-top: 50px;
}

.grouped_form.feedback_rating .form-group{
    margin-bottom: 0;
}

.letters_counter {
    margin-top: 5px;
    text-align: right;
}

.letters_counter.invalid {
    color: #e50914;
}

.project_completed_feedback_sent .card{
    margin-top: 80px;
    padding: 40px;
    width: 100%;
    max-width: 670px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 220px;
}

.project_completed_feedback_sent .card p{
    text-align: center;
}

.rating.invalid{
    -webkit-animation: invalid-bounce 0.5s ease-in-out;
    border: 3px solid #e50914;
}

.project_completed_feedback_info {
    text-align: center;
    font-size: 18px;
}

.project_completed_feedback_sent h1:after,
form#completed_project_feedback h1:after{
    margin-left: -22px;
    height: 12px;
    width: 12px;
    margin-bottom: -2px;
}

/*****************************/
/**** STAR RATING - START ****/
/*****************************/
.star_wrapper{
    display: inline-block;
}

.rating {
    text-align: center;
    margin: 0 0 50px 0;
    position: relative;
    width: 100%;
    padding: 20px;
    border-radius: 5px;
    background: #d8d8d8;
    border: 3px solid #d8d8d8;
}

.hidden {
    opacity: 0;
}

.star {
    display: inline-block;
    margin: 5px;
    font-size: 30px;
    /* color: #ffe972; */
    color: white;
    position: relative;
    cursor:pointer;
}

.star.animate {
    -webkit-animation: stretch-bounce 0.5s ease-in-out;
}

.rating-input{
    display: none;
}

.star.hidden {
    opacity: 0;
}

.full:before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    display: inline-block;
    content: "\f005";
    position: relative;
    float: right;
    z-index: 2;
}

.star-colour:before {
    font-weight: 900;
    /* color: #ffd700; */
    color: #d6b400;
    color: #E31019;
    color: #ED7002;
}

@-webkit-keyframes stretch-bounce {
    0% {
        -webkit-transform: scale(1);
    }
    25% {
        -webkit-transform: scale(1.5);
    }
    50% {
        -webkit-transform: scale(0.9);
    }
    75% {
        -webkit-transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
    }
}

@-webkit-keyframes invalid-bounce {
    0% {
        -webkit-transform: scale(1);
    }
    25% {
        -webkit-transform: scale(1.2);
    }
    50% {
        -webkit-transform: scale(0.9);
    }
    75% {
        -webkit-transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
    }
}

.selected:before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 400;
    display: inline-block;
    content: "\f005";
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: scale(1);
    opacity: 1;
    z-index: 1;
}

.selected.pulse:before {
    -webkit-transform: scale(3);
    opacity: 0;
}

.selected.is-animated:before{
    transition: 1s ease-out;
}

/***************************/
/**** STAR RATING - END ****/
/***************************/


.grouped_form.full_width{
    flex-direction: column;
    background: #fdfdfd;
    border: 1px solid #d5d5d5;
    padding: 40px 20px;
}

.grouped_form.preferences .form-group{
    margin: 0;
    width: 100%;
    display: flex;
    align-items: center;
}

.grouped_form.preferences .form-group > label {
    display: flex;
    margin: 0 0 0 20px;
    align-items: center;
    width: auto;
}

.grouped_form.preferences .form-group:not(:last-child){
    margin-bottom: 40px;
}

.grouped_form.subscriptions {
    flex-direction: column;
    margin-top: 40px;
}

.subscriptions__title {
    font-family: 'Poppins-bold';
    font-size: 18px;
    margin-bottom: 15px;
}

.subscription_confirmed .card {
    width: 100%;
    margin-top: 40px;
    padding: 40px 40px 80px 40px;
    margin-bottom: 50px;
}

.subscription_confirmed .btn {
    max-width: 350px;
    margin: 40px auto 0 auto;
}

.subscription_confirmed p {
    display: block;
    margin-top: 20px;
    text-align: center;
    font-size: 18px;
    font-family: 'Poppins-bold';
}

#mailchimp_preferences_form .owa_site_button .form_bottom_action_buttons {
    margin-bottom: 40px;
}

.white_button .btn-block.form-btn{
    background: white !important;
    color: #e50914 !important;
}

#mailchimp_preferences_form .white_button .form_bottom_action_buttons .btn{
    min-width: 320px !important;
    max-width: 100%;
}

.grouped_form.feedback_rating {
    margin-top: 50px;
}

.project_completed_feedback_sent h1:after {
    margin-left: -16px;
}