.job {
    width: 100%;
    
    pointer-events: none;
    isolation: isolate;
}

/*--------------------------------------------------------------------------------------------*/

.job > .job-container {
    position: relative;
    display: flex; width: 100%;
    padding: 30px;
    
    background-color: #FFF;
    border-radius: 30px;
    
    font-size: 14px;
}
.loaded .job > .job-container { transition: background-color .2s ease-out; }
.job > .job-container:hover { background-color: var(--main-color); }
@media (min-width: 900px) {
    .job > .job-container {
        flex-direction: row;
        column-gap: 30px;
    }
}
@media (max-width: 899.99px) {
    .job > .job-container {
        flex-direction: column;
        row-gap: 25px;
    }
}

/*--------------------------------------------------------------------------------------------*/

.job > .job-container > .thumbnail-wrapper > .thumbnail {}
.job > .job-container > .thumbnail-wrapper > .thumbnail > img {}
.loaded .job > .job-container > .thumbnail-wrapper > .thumbnail > img { transition: transform .2s ease-out; }
.job:hover > .job-container > .thumbnail-wrapper > .thumbnail > img { transform: scale(1.1); }
@media (min-width: 900px)    { .job > .job-container > .thumbnail-wrapper { flex: 0 0 300px; } }
@media (max-width: 899.99px) { .job > .job-container > .thumbnail-wrapper { width: 100%; } }

/*--------------------------------------------------------------------------------------------*/

.job > .job-container > .content { font-size: 14px; }
.job > .job-container > .content > .title {
    font-size: 24px;
    font-weight: 700;
}
.job > .job-container > .content > .excerpt {}
.job > .job-container > .content > .meta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.job > .job-container > .content > .meta > div {
    position: relative;
    padding-left: 35px;
    
    font-weight: 700;
}
.job > .job-container > .content > .meta > div:before {
    content: '';
    position: absolute; top: 50%; left: 0; transform: translateY(-50%);
    display: block; height: 20px; width: 20px;
    
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
.job > .job-container > .content > .meta > .field:before    { background-image: url("../../images/icons/field.svg"); }
.job > .job-container > .content > .meta > .location:before { background-image: url("../../images/icons/location.svg"); }
.job > .job-container > .content > .meta > .type:before     { background-image: url("../../images/icons/briefcase.svg"); }
@media (min-width: 900px) {
    .job > .job-container > .content {
        display: flex; flex: 1; overflow: hidden;
        flex-direction: column;
        align-items: stretch;
        padding: 20px 130px 5px 0;
    }
    .job > .job-container > .content > .title {
        overflow: hidden;
        
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .job > .job-container > .content > .meta {
        overflow: hidden;
        row-gap: 10px;
        margin-top: auto;
    }
    .job > .job-container > .content > .meta > div {
        max-width: 100%; overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        line-height: 20px;
    }
}
@media (max-width: 899.99px) {
    .job > .job-container > .content {
        padding-bottom: 40px;
    }
    .job > .job-container > .content > .title {
        margin-bottom: 30px;
    }
    .job > .job-container > .content > .meta {
        row-gap: 15px;
    }
}

/*--------------------------------------------------------------------------------------------*/

.job > .job-container > .arrow-link {
    position: absolute; bottom: 35px; right: 30px;
    pointer-events: auto;
}
.job > .job-container > .arrow-link:hover > .arrow { background-color: #000; }
.job > .job-container > .arrow-link:hover > .arrow:after  { background-color: #FFF; }