.elementor-19 .elementor-element.elementor-element-6bda184{--display:flex;}.elementor-19 .elementor-element.elementor-element-bf58d40{--display:flex;}/* Start custom CSS */.job_filters .showing_jobs {
    background: #f9f9f900;
    border-top: 0px solid #e5e5e5;
    display: none;
    font-size: .83em;
    padding: .5em 1em;
}

/* ---------------------------
   Showing jobs (empile et centre tout)
   --------------------------- */
.showing_jobs {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 8px;               /* espace entre les lignes */
    padding: 10px 12px;
    background: #f9f9f900; /* kept from .job_filters .showing_jobs */
    border-top: 1px solid #e5e5e500; /* kept from .job_filters .showing_jobs */
}

/* éléments enfants (span, reset, rss_link) */
.showing_jobs > span,
.showing_jobs > a.reset,
.showing_jobs > a.rss_link {
    display: inline-block;
    margin: 0;
    line-height: 1.1;
    color: #000;
}

/* boutons/links spécifiques */
.showing_jobs > a.reset {
    margin-top: 6px;
    padding: 6px 10px;
    border-radius: 8px;
    background: red;
    color: #fff;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,0.06);
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 2px solid #2563eb;
    border-radius: 100px;
    display: none;
}

/* overrides pour .job_filters context */
.job_filters .showing_jobs a {
    color: white !important;
}

.showing_jobs.wp-job-manager-showing-all {
    color: black !important;
}

/* Responsive small for showing_jobs */
@media (max-width:420px) {
    .showing_jobs { gap:6px; padding:8px; }
    .showing_jobs > a.reset { padding:5px 8px; }
}

/* ---------------------------
   Job listing general
   --------------------------- */


/* list container */
ul.job_listings {
    border-top: 0px solid #eee !important;
    margin-top: 10px !important;
}

/* job content card (appliqué aux deux sélecteurs existants) */
ul.job_listings .jm-job-content,
.jm-job-list .jm-job-content {
    background: #fff;
    border-radius: 30px;
    padding: 30px;
    text-decoration: none;
    position: relative;
    margin: 10px 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

/* hover outline */
ul.job_listings .jm-job-content:hover,
.jm-job-list .jm-job-content:hover {
    outline: 3px solid #2563eb; /* bleu unifié */
}

/* ---------------------------
   Arrow / redirect
   --------------------------- */
.jm-job-arrow {
    top: 15px;
    right: 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
}

.arrow-icon {
    font-size: 40px;
    font-weight: 900 !important;
    color: black;
    transition: transform 0.3s ease, color 0.3s ease;
}

.jm-job-content:hover .arrow-icon {
    transform: translateX(5px);
    color: #2563eb; /* bleu unifié */
}

/* ---------------------------
   Job type / main / logo / info
   --------------------------- */
.jm-job-types {
    margin-bottom: 0px;
}

.jm-job-main {
    display: flex;
    align-items: center;
    gap: 15px;
}

.jm-job-logo {
    width: 70px;
    height: 70px;
    overflow: hidden;
    border-radius: 100px;
    border: solid black 2px;
    flex-shrink: 0;
}

.jm-job-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.jm-job-info {
    flex: 1;
}

.jm-job-info .job-title {
    margin: 0;
    font-size: 17px;
    font-weight: 900;
    color: black;
}

.jm-job-info .job-title a {
    text-decoration: none;
    color: inherit;
}

/* job_listing anchors small tweak kept */
.job_listing a {
    border: 0;
    display: inline !important;
    padding: 0 !important;
}

.jm-job-info .company {
    color: #666;
    font-size: 14px;
    margin: 5px 0;
}

.jm-job-info .company strong {
    font-weight: 600;
    color: #333;
}

.jm-job-info .tagline {
    opacity: 0.8;
}

/* meta info list */
.meta {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.meta .job-type {
    background: #fff;
    color: black;
    padding: 3px 8px;
    border: solid 2px;
    border-radius: 100px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
}

/* ---------------------------
   Job filters / container
   --------------------------- */
.jm-filters-container {
    margin-bottom: 10px;
}

.job_filters {
    zoom: 1;
    background: transparent;
}

/* hide some built-in search pieces */
.search_remote_position,
.search_location,
.search_submit {
    display: none !important;
}

/* ---------------------------
   Search keywords input
   --------------------------- */
.search_keywords {
    position: relative;
    display: flex;
    background: #fff;
    border-radius: 100px;
    border: 2px solid #000;
    overflow: hidden;
    transition: all 0.3s ease;
    height: 60px;
    padding: 10px;
    flex-direction: row;
    align-items: center;
}

.search_keywords:focus-within {
    border-color: #2563eb;
}

.search_keywords input {
    flex: 1;
    font-size: 16px;
    font-weight: 500;
    border: none;
    outline: none;
    background: transparent;
    height: 100%;
}

.search_keywords input:focus {
    box-shadow: none;
}

/* ---------------------------
   Dropdown catégories (Select2)
   --------------------------- */

/* base select2 single selection appearance */
.search_categories {
    position: relative;
    width: 250px;
    border-radius: 100px !important;
    line-height: 2.4;
    border: solid #000 2px !important;
}

/* hide clear button */
.select2-selection__clear {
    display: none !important;
}

/* open container styles */
.select2-container--open .select2-selection--single {
    border-color: #2563eb00 !important;
    box-shadow: 0 0 0 3px rgb(255 255 255 / 0%) !important;
}

/* default single selection */
.select2-container--default .select2-selection--single {
    background-color: #ffffff00 !important;
    border: 0px solid #aaa !important;
    border-radius: 100px !important;
}

/* arrow styling */
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
    right: 20px;
    top: 0;
    width: 20px;
}

/* blue arrow triangle */
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #2563eb transparent transparent transparent;
    border-width: 6px 6px 0 6px;
}

/* when select2 is opened (visual focus) */
.select2-container--open .select2-selection--single {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,0.15);
}

/* rendered text line-height tweak */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 5px !important;
}

/* dropdown list appearance (results container) */
.select2-container--default .select2-results > .select2-results__options {
    max-height: 280px;
    overflow-y: auto;
    padding: 10px;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    border: 2px solid #2563eb;
    animation: dropdownFade 0.2s ease;
}

/* dropdown container general (override / final) */
.select2-container .select2-dropdown {
    font-size: 1rem;
    background: #ffffff;
    border: none;
    border-radius: 14px;
    margin-top: 5px;
}

/* results item */
.select2-container--default .select2-results__option {
    padding: 8px 12px;
    border-radius: 10px;
    margin: 3px 0;
    transition: background 0.2s ease, color 0.2s ease;
    font-size: 14px;
}

/* hover / highlighted */
.select2-container--default .select2-results__option--highlighted {
    background: #2563eb !important;
    color: #fff !important;
    border-radius: 10px;
}

/* selected */
.select2-container--default .select2-results__option[aria-selected="true"] {
    background: #e0e7ff;
    color: #2563eb;
    font-weight: 600;
    border-radius: 10px;
}

/* when select2 open dropdown below spacing */
.select2-container.select2-container--open .select2-dropdown--below {
    margin-top: 10px;
}

/* ---------------------------
   Custom select (fallback)
   --------------------------- */
.jm-custom-select {
    width: 100%;
    height: 100%;
    padding: 0 45px 0 25px;
    border: none;
    background-color: transparent;
    font-size: 14px;
    font-weight: 500;
    appearance: none;
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 15px;
    cursor: pointer;
    color: #4b5563;
}

.jm-custom-select:focus {
    outline: none;
    box-shadow: none;
}

/* ---------------------------
   Animation dropdown
   --------------------------- */
@keyframes dropdownFade {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* simple small helper */
.job-location {
    font-size: 13px;
}

/* ---------------------------
   Responsive rules (merged)
   Note: merged both original @media (max-width:768px) blocks into one
   --------------------------- */
@media (max-width: 768px) {
    /* hide arrow on small screens */

    /* meta adjustments */
    .meta {
        margin-top: 8px;
        justify-content: flex-start;
    }

    .meta .job-type {
        font-size: 12px;
        padding: 2px 6px;
    }

    /* keep listing spacing */
    ul.job_listings {
        border-top: 0px solid #eee !important;
        margin-top: 10px !important;
    }

    /* search keywords stack */
    .search_keywords {
        flex-direction: column;
        height: auto;
        border-radius: 30px;
        overflow: visible;
    }

    .search_keywords input {
        padding: 20px 25px;
        height: 60px;
    }

    .search_categories {
        width: 100%;
        border-left: none;
    }

    .jm-custom-select {
        padding: 20px 45px 20px 25px;
        height: 60px;
    }
}/* End custom CSS */