/* Scoped fixes for the standalone Optima job search and job archives. */
body:is(.page-template-template-jobs, .archive) #breadcrumbs ul li:not(:last-child)::after {
    content: "\203a";
    font-family: Arial, sans-serif;
}
.wpjm-container article form.job_filters[hidden] {
    display: none !important;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    float: none;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content h4 {
    grid-column: 1 / -1;
    line-height: 1.3;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content :is(.job-icons, .listing-desc) {
    width: 100%;
    min-width: 0;
    float: none;
    box-sizing: border-box;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .job-icons span.first {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    line-height: 1.4;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .job-icons span.first img {
    flex: 0 0 30px;
    margin: 0;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .job-icons span.first p {
    max-width: none;
    min-width: 0;
    overflow-wrap: anywhere;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .job-icons .cat-item {
    display: inline;
    float: none;
    margin: 0;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .listing-desc {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .listing-desc p {
    line-height: 1.45;
    margin: 0;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content .listing-desc a {
    position: static;
    display: inline-block;
    margin: auto 0 0;
    width: auto;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types {
    padding: 12px;
    box-sizing: border-box;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types li:last-child {
    margin-bottom: 0;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types li {
    display: block;
    float: none;
    width: 100%;
    border: 0;
    padding: 0;
    margin: 0 0 10px;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types.checkboxes li {
    display: flex;
    align-items: center;
    gap: 10px;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget .checkboxes input[type=radio] {
    display: inline-block;
    position: static;
    appearance: auto;
    opacity: 1;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin: 0;
    accent-color: #0b958c;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget .checkboxes label {
    margin: 0;
    line-height: 1.4;
    cursor: pointer;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget .checkboxes label::before {
    display: none;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget.radio-type ul.job_types label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.4;
    cursor: pointer;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget.radio-type input[type=checkbox] {
    appearance: auto;
    position: static;
    display: inline-block;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin: 0;
    accent-color: #0b958c;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget.radio-type label::before {
    display: none;
}
/* Shared appearance only: radios remain single-choice, checkboxes multi-choice. */
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types input:is([type=radio], [type=checkbox]) {
    appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    border: 1px solid #cfb3d6;
    border-radius: 2px;
    background: #fff;
    cursor: pointer;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types input:is([type=radio], [type=checkbox]):checked {
    border-color: #0b958c;
    background: #0b958c url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='m4 9 3 3 7-7' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
}
body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container .sidebar form .widget ul.job_types input:is([type=radio], [type=checkbox]):focus-visible {
    outline: 2px solid #0d4769;
    outline-offset: 3px;
}
@media (max-width: 1150px) {
    body:is(.page-template-template-jobs, .archive) #wrapper .wpjm-container article .job_listings ul.job-list li.job_listing .job-list-content {
        grid-template-columns: minmax(0, 1fr);
    }
}
