/* =========================================================
   SINGLE JOB PAGE
   ========================================================= */


/* =========================================================
   PAGE WRAPPER
   ========================================================= */

.job-page-wrapper {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    clear: both;
}


/* =========================================================
   BANNER
   ========================================================= */

.job-banner {
    position: relative;

    display: flex !important;
    align-items: center;

    width: 100% !important;
    min-height: 450px;

    margin: 0 !important;
    padding: 0 !important;

    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;

    float: none !important;
    clear: both !important;
}


/* Overlay */

.job-banner-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background: rgba(0, 0, 0, 0.45);
}


/* Banner inner width */

.job-banner-content {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: none;

    margin: 0;
    padding: 0 15px;
}


/* Banner title */

.job-banner-content h1 {
    margin: 0 !important;

    color: #ffffff !important;

    font-size: 42px !important;
    line-height: 1.1 !important;

    font-weight: 800 !important;

    text-transform: uppercase;

    letter-spacing: 1px;
}


/* =========================================================
   MAIN GRID
   ========================================================= */

.job-single-layout {
    display: grid !important;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(340px, 0.9fr);

    gap: 58px;

    align-items: start;

    width: 100% !important;
    max-width: 1320px !important;

    margin: 0 auto !important;

    padding:
        60px
        20px
        90px !important;

    float: none !important;

    clear: both !important;
}


/* =========================================================
   LEFT COLUMN
   ========================================================= */

.job-content {
    width: 100%;
    min-width: 0;

    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   BASE TYPOGRAPHY
   ========================================================= */

.job-content p,
.job-content li,
.job-content a {
    font-size: 18px;

    line-height: 1.55;
}


/* =========================================================
   INTRO
   ========================================================= */

.job-intro {
    margin: 0 !important;

    padding:
        0
        0
        40px !important;
}


/* Intro title */

.job-intro-heading {
    margin:
        0
        0
        10px !important;

    color: #2f4024 !important;

    font-weight: 800 !important;
}


/* Intro paragraph */

.job-intro p:not(.job-intro-heading) {
    margin: 0 !important;
}


/* =========================================================
   JOB TITLE
   ========================================================= */

.job-title-area {
    margin: 0 !important;

    padding:
        0
        0
        36px !important;
}


.job-title {
    margin: 0 !important;
    padding: 0 !important;

    color: #2f4024 !important;

    font-size: 30px !important;
    line-height: 1.2 !important;

    font-weight: 800 !important;

    text-transform: uppercase;
}


.job-title-text {
    display: inline;
}


/*
 * Pensum darf als Ganzes umbrechen,
 * aber niemals mitten in "50 - 100 %".
 */

.job-title-pensum {
    display: inline-block;

    white-space: nowrap;
}


/* =========================================================
   COMPANY DESCRIPTION
   ========================================================= */

.job-company-description {
    margin: 0 !important;

    padding:
        0
        0
        28px !important;
}


.job-company-description p {
    margin: 0 !important;
}


/* =========================================================
   PDF
   ========================================================= */

.job-pdf-link-wrap {
    margin: 0 !important;

    padding:
        0
        0
        30px !important;
}


.job-pdf-link {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    color: #728355 !important;

    text-decoration: none !important;
}


.job-pdf-link:hover {
    color: #52633d !important;

    text-decoration: underline !important;
}


/* =========================================================
   JOB SECTIONS
   ========================================================= */

.job-section {
    display: block;

    margin: 0 !important;

    padding:
        0
        0
        40px !important;
}


/* Section heading */

.job-section h2 {
    display: flex;

    align-items: center;

    gap: 9px;

    margin:
        0
        0
        12px !important;

    padding: 0 !important;

    color: #2f4024 !important;

    font-size: 22px !important;
    line-height: 1.25 !important;

    font-weight: 800 !important;
}


/* Heading icon */

.job-section h2 i {
    flex:
        0
        0
        20px;

    width: 20px;

    text-align: center;

    color: #2f4024;
}


/* =========================================================
   IMPORTED CONTENT
   ========================================================= */

.job-section-content {
    margin: 0 !important;

    padding: 0 !important;
}


.job-section-content ul {
    margin: 0 !important;

    padding-left: 24px !important;
}


.job-section-content li {
    margin:
        0
        0
        5px !important;

    padding: 0 !important;

    line-height: 1.5;
}


.job-section-content li:last-child {
    margin-bottom: 0 !important;
}


.job-section-content p {
    margin:
        0
        0
        8px !important;
}


.job-section-content p:last-child {
    margin-bottom: 0 !important;
}


/* =========================================================
   CLOSING
   ========================================================= */

.job-closing-text {
    margin: 0 !important;

    padding:
        4px
        0
        38px !important;
}


.job-closing-text p {
    margin:
        0
        0
        26px !important;
}


.job-closing-text p:last-child {
    margin-bottom: 0 !important;
}


.job-closing-text a {
    color: #728355 !important;

    text-decoration: none !important;
}


.job-closing-text a:hover {
    color: #52633d !important;

    text-decoration: underline !important;
}


.job-closing-text i {
    margin-right: 4px;
}


/* =========================================================
   CONTACT
   ========================================================= */

.job-contact {
    margin: 0 !important;

    padding:
        30px
        0
        0 !important;

    border-top:
        1px
        solid
        #b8b8b8;
}


/* Heading */

.job-contact h2 {
    margin:
        0
        0
        16px !important;

    padding: 0 !important;

    color: #2f4024 !important;

    font-size: 22px !important;
    line-height: 1.25 !important;

    font-weight: 800 !important;
}


/* Name */

.job-contact-name {
    margin:
        0
        0
        4px !important;

    padding: 0 !important;

    font-weight: 800 !important;
}


/* Role */

.job-contact-role {
    margin:
        0
        0
        14px !important;

    padding: 0 !important;
}


/* Optional subtitle */

.job-contact-subtitle {
    margin:
        -8px
        0
        14px !important;

    padding: 0 !important;

    font-size: 16px !important;

    font-style: italic;
}


/* Phone */

.job-contact-phone {
    margin:
        0
        0
        7px !important;

    padding: 0 !important;
}


/* Email */

.job-contact-email {
    margin: 0 !important;

    padding: 0 !important;
}


/* Contact links */

.job-contact-phone a,
.job-contact-email a {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    color: #2f4024 !important;

    text-decoration: none !important;

    line-height: 1.4;
}


.job-contact-phone a:hover,
.job-contact-email a:hover {
    color: #728355 !important;
}


/* Contact icons */

.job-contact-phone i,
.job-contact-email i {
    flex:
        0
        0
        15px;

    width: 15px;

    text-align: center;
}


/* =========================================================
   FORM
   ========================================================= */

.job-form {
    align-self: start;

    width: 100%;
    min-width: 0;

    margin: 0 !important;

    padding: 40px !important;

    background: #b6ca9b;

    border-radius: 14px;
}


.job-form .forminator-ui {
    width: 100% !important;

    margin: 0 !important;
}

.job-form h1 {
	color: #FDFAF1;
    font-size: 34px;
    font-weight: 800;
    text-transform: uppercase;
    margin: 0 0 32px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1050px) {

    .job-single-layout {
        grid-template-columns:
            minmax(0, 1.15fr)
            minmax(330px, 0.85fr);

        gap: 42px;
    }


    .job-title {
        font-size: 28px !important;
    }


    .job-form {
        padding: 34px !important;
    }
}


/* =========================================================
   MOBILE / SMALL TABLET
   ========================================================= */

@media (max-width: 921px) {

    .job-banner {
        min-height: 320px;
    }


    .job-single-layout {
        grid-template-columns:
            1fr !important;

        gap: 40px;

        padding:
            40px
            20px
            70px !important;
    }


    .job-form {
        padding: 30px !important;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 544px) {

    .job-banner {
        min-height: 260px;
    }


    .job-banner-content h1 {
        font-size: 34px !important;
    }


    .job-title {
        font-size: 26px !important;
    }


    .job-section h2,
    .job-contact h2 {
        font-size: 20px !important;
    }


    .job-content p,
    .job-content li,
    .job-content a {
        font-size: 16px;
    }


    .job-form {
        padding: 24px !important;
    }
}