.chat-skip-link {
    position: absolute; /* Position it absolutely to take it out of the normal flow */
    left: -9999px;    /* Move it far off-screen */
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden; /* Hide overflowing content */
    z-index: -999;    /* Ensure it's behind other content when hidden */
}

.chat-skip-link:focus {
    left: auto;       /* Bring it back onto the screen when focused */
    top: auto;
    width: auto;
    height: auto;
    overflow: auto;
    position: static; /* Or you can use 'relative', 'fixed', etc., depending on desired display */
    margin: 10px;     /* Add some margin for visibility */
    padding: 8px 12px;
    background-color: #f0f0f0; /* Example background */
    border: 1px solid #ccc;    /* Example border */
    color: #333;      /* Example text color */
    text-decoration: none;
    font-weight: bold;
    z-index: 9999;    /* Bring it to the front when visible */
}

.ck-editor__editable,
textarea {
    min-height: 150px;
}

.datatable {
    width: 100% !important;
}

table.dataTable tbody td.select-checkbox::before,
table.dataTable tbody td.select-checkbox::after,
table.dataTable tbody th.select-checkbox::before,
table.dataTable tbody th.select-checkbox::after {
    top: 50%;
}

.dataTables_length,
.dataTables_filter,
.dt-buttons {
    margin-bottom: 0.333em;
    margin-top: .2rem;
}

.dataTables_filter {
    margin-right: .2rem;
}

.dt-buttons .btn {
    margin-left: 0.333em;
    border-radius: 0;
}

.table.datatable {
    box-sizing: border-box;
    border-collapse: collapse;
}

table.dataTable thead th {
    border-bottom: 2px solid #c8ced3;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom: 1px solid #c8ced3;
}

.select2 {
    max-width: 100%;
    width: 100% !important;
}

.select2-selection__rendered {
    padding-bottom: 5px !important;
}

.has-error .invalid-feedback {
    display: block !important;
}

.btn-info,
.badge-info {
    color: white;
}

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc {
    background-image: none;
}

.sidebar .nav-item {
    cursor: pointer;
}

.btn-default {
    color: #23282c;
    background-color: #f0f3f5;
    border-color: #f0f3f5;
}

.btn-default.focus,
.btn-default:focus {
    box-shadow: 0 0 0 .2rem rgba(209, 213, 215, .5);
}

.btn-default:hover {
    color: #23282c;
    background-color: #d9e1e6;
    border-color: #d1dbe1;
}

.btn-group-xs > .btn,
.btn-xs {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}

.searchable-title {
    font-weight: bold;
}
.searchable-fields {
    padding-left:5px;
}
.searchable-link {
    padding:0 5px 0 5px;
}
.searchable-link:hover   {
    cursor: pointer;
    background: #eaeaea;
}
.select2-results__option {
    padding-left: 0px;
    padding-right: 0px;
}

.form-group .required::after {
    content: " *";
    color: red;
}

.form-check.is-invalid ~ .invalid-feedback {
    display: block;
}

.c-sidebar-brand .c-sidebar-brand-full:hover {
    color: inherit;
}

.custom-select.form-control-sm {
    padding: 0.25rem 1.5rem;
}

.article-card__image {
    border-radius: 15px 0 0 15px;
}

.article-close {
    /*position: -webkit-sticky; !* Necessary for Safari *!*/
    /*position: sticky;*/
    position:relative;
    top: 25px;
    float:right;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.article-close__button {

}

.text-wrap {
    overflow:auto;
}

/**
     Questionnaire Styling
 */

.questionnaire-form .question-title {
    font-size:2.5rem;
}
/* Hide the radio input */
.radio-checkbox-style input[type="radio"] {
    display: none;
}

/* Mimicking a checkbox */
.radio-checkbox-style label {
    display: inline-block;
    margin-right: 10px;
    padding-left: 30px;
    cursor: pointer;
    position: relative;
}

/* Checkmark style */
.radio-checkbox-style label::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-color: white;
    border: 2px solid #dcdcdc;
    border-radius: 3px;
}

/* Style when radio is checked to show as checked box */
.radio-checkbox-style input[type="radio"]:checked + label::before {
    content: "\2713";
    font-size: 25px;
    color:black;
    line-height: 15px; /* Ensure line height matches height for vertical centering */
    vertical-align: middle;
    /*background-color: #4CAF50;*/
    /*border-color: #4CAF50; */
}

.radio-checkbox-style label:hover {
    border:0.5px solid white;
}

/* Article View Layout */
.view-article #contentPdfold p {
    font-weight:400;
}

/*Contact Phone Number - No Link */
#contactPhoneNumber.no-link {
    text-decoration: none;
    color: inherit;
    cursor: default;
}

/* JLP Chat Styling */
.chat-content h3 {
    font-size: 2rem;
}
.chat-content__wrapper {
    /*background-color: #fff;*/
    margin: 0 auto;
    max-width:80%;
}
.chat-content__wrapper p{
    /*background-color: #fff;*/
    font-weight:300;
}
.chat-content__wrapper img {
    height:100px;
}
.chat-content ul li, .chat-content ul li a{
    font-weight:300;
}

.ac_content {
    position:relative;
}
.ac_content .title{
    font-size:4rem;
    width:40%;
}
.ac_content .logo.mobile img {
    position:absolute;
    height:50px;
    top:25px;
    left:40px;
    z-index:9999;
}
.ac_content .logo.desktop img {
    position:absolute;
    height:80px;
    top:40px;
    right:40px;
    z-index:9999;
}