/* general */

html {
    font-family: "Frutiger Neue For Post", sans-serif;

}

body {
    margin: 0;

}

.wrapper {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;

}

main {
    display: block;
}

main section {
    margin-top: 80px;
    display: inline-block;
    padding: 0px 12vw;
}


/* typographie */

h1, h2, h3, h4, h5 {
    margin: 0;
}

p {
    font-size: 20px;
    font-weight: 300;
    margin: 0;
    line-height: 28px;
}

.section-title {
    color: #000000;
    font-size: 32px;
    line-height: 38px;
    font-weight: 600;
    margin-bottom: 16px;
}

.tasks, .profile {
    font-size: 20px;
    font-weight: 300;
}

.tasks ul,
.profile ul {
    padding: 0 30px;
    list-style-type: none;
    margin: 24px 0 0 -30px;
}

.tasks li,
.profile li {
    background-image: url(post-tick.svg);
    background-repeat: no-repeat;
    padding-left: 40px;
    font-size: 20px;
    font-weight: 300;
    margin-bottom: 20px;
    background-size: 24px;
    line-height: 28px;
}

/* begin - fix for IE11 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {

    .tasks li,
    .profile li {
        background-size: 1.5rem 1.5rem;
        background-position-y: 2px;
    }


}
/* end - fix for IE11 */


/* header */
.header {
    padding: 22px 128px;
    overflow: hidden;
    background-color: rgba(0, 73, 118, 1);
    width: 100%;
    width: -moz-available; /* WebKit-based browsers will ignore this. */
    width: -webkit-fill-available; /* Mozilla-based browsers will ignore this. */
    width: fill-available;
    max-width: 1184px;
    position: fixed;
    margin-top: -90px;
    z-index: 99;
}

header .job-title {
    float: left;
    color: #FFFFFF;
    font-size: 20px;
    line-height: 45px;
    width: 52vw;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 840px;
}

header .btn {
    float: right;
}


/* mainpic section */
.mainpic {
    height: 100%;
    position: relative;
    margin-bottom: 75px;
    z-index: -1;
}

.mainpic img {
    width: 100%;
}

.logo {
    height: 72px;
    width: 208px;
    position: absolute;
    margin-top: 30px;
}

.job-info-box {
    background-color: rgba(0, 73, 118, 0.8);
    padding: 32px 32px 48px 32px;
    color: #FFFFFF;
    max-width: 550px;
    margin-top: -310px;
}

.job-info-box .job-title {
    font-weight: 500;
    font-size: 40px;
}

.job-info-box .job-subtitle {
    font-weight: 300;
    font-size: 40px;
}


.post-stripe {
    height: 9px;
    width: 210px;
    background-color: #FFCD00;
    margin-left: -32px;
    margin-top: 32px;
}

.print-only {
    display: none;
}

/* profile */
section.profile, section.benefits {
    margin-top: 60px;
}


/* benefits */
.divided-column {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    margin: 32px auto 25px;
}

.benefit-list ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.benefit-list li {
    margin-bottom: 25px;
    display: inline-block;
    width: 100%;
}

.benefit-list img {
    vertical-align: middle;
    margin-right: 20px;
    display: block;
}

.benefits a {
    color: rgba(0, 0, 0, 1);
    transition: all .3s;
    text-decoration: none;
    border-bottom: 1px solid black;
}

.benefits a:hover {
    color: rgba(0, 0, 0, 0.6);
    transition: all .3s;
    border-bottom: 1px solid rgba(0, 0, 0, 0.6);
}


.benefit-text {
    float: left;
    margin-top: -28px;
    margin-left: 50px;
    font-size: 20px;
    font-weight: 300;
    line-height: 28px;
}

.more-link {
    color: rgba(0, 0, 0, 0.6) !important;
    border-bottom: 0 !important;
    text-decoration: none;
    transition: all .3s;
}

.more-link:hover {
    color: rgba(0, 0, 0, 1) !important;
    transition: all .3s;
}

.more-link::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='3020_arrow-right' viewBox='0 0 32 32'%3E%3Cpath d='M20.667 5.333H18.8L29.467 16H0v1.333h29.467L18.8 28h1.867L32 16.667z'%3E%3C/path%3E%3C/svg%3E");
    display: inline-block;
    width: 17px;
    margin-right: 10px;
    vertical-align: middle;
    opacity: .6;
    transition: all .3s;
}

.more-link:hover::before {
    opacity: 1;
    transition: all .3s;
}


/* job details */

.job-details {
    background-color: rgba(250, 249, 248, 1);
    display: block;
    padding: 0;
    margin: 80px 12vw 48px;
}

.job-details-inner {
    padding: 56px;
}


.job-details-left {
    width: 46%;
    float: left;
    margin-right: 4%;
}


.job-details-left > *,
.job-details-right > * {
    border-top: 1px solid rgba(0, 0, 0, 0.19519927536232);
    display: flow-root;
    padding: 10px 0;
}

.job-details-left, .job-details-left p, .job-details-right, .job-details-right p {
    font-size: 17px;
}


.kontakt {
    width: 100%;
    display: inline-block;
    margin-top: 40px;
}

.kontakt, .kontakt p {
    font-size: 17px;
}

.kontakt a {
    color: rgba(0, 0, 0, 1);
    transition: all .3s;
    text-decoration: none;
    border-bottom: 1px solid black;
}

.kontakt a:hover {
    color: rgba(0, 0, 0, 0.6);
    transition: all .3s;
    border-bottom: 1px solid rgba(0, 0, 0, 0.6);
}


/* disclaimer */

section.disclaimer {
    margin-top: 0;
}

.disclaimer p {
    color: rgba(0, 0, 0, 0.6);
    font-size: 15px;
    line-height: 24px;
}

/* video container */

.video-lehre {
    display: block;
}

.video-text {
    color: rgba(0, 0, 0, 0.6);
    font-size: 17px;
    line-height: 24px;
    margin-top: 10px;
}


/* share */

.share {
    text-align: center;
    display: block;
}

.share a {
    text-decoration: none;
    margin: 5px;
}

.share-title {
    margin-bottom: 10px;
    font-size: 15px;
    font-weight: 400;
    color: rgba(0, 0, 0, 0.6);
}

.svg.icon {
    height: 56px;
    width: 56px;
}

.svg.icon:hover .default,
.svg.icon .hover {
    display: none;
}

.svg.icon .default,
.svg.icon:hover .hover {
    display: inline-block;
}

/* department-info */

.department-info {
    background: #FAF9F8;
    padding: 80px 12vw 90px;
    display: block;
}

.department-head {
    color: #000000;
    font-size: 32px;
    line-height: 38px;
    margin-bottom: 25px;
}

.department-info p {
    margin-bottom: 30px;
}

/* similar jobs */

.similar-jobs {
    padding: 0 128px;
    overflow: hidden;
}

.similar-jobs a {
    text-decoration: none;
    color: #000000;
}

.similar-jobs .section-title {
    padding: 0 180px;
    margin-bottom: 38px;
}

.column.similar-job {
    background: #F4F3F1;
    display: table-cell;
    width: 33%;
    border: 10px solid white;
    padding: 20px;
}

.similar-jobs .row {
    display: table;
    width: 100%;
}


.similar-job-title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 600;
}

.similar-info {
    font-size: 20px;
    margin-top: 8px;
    font-weight: 300;
}

/* jobabo teaser */

.jobabo-teaser {
    background-color: #004976;
    display: block;
    padding: 80px 310px;
}

.jobabo-teaser .section-title, .jobabo-teaser p {
    color: #FFFFFF;
}

.jobabo-teaser .section-title {
    margin-bottom: 20px;
}

/* berufsbildung divier */

.berufsbildung-divider {
    background: rgba(0, 0, 0, 0.2);
    height: 2px;
    width: 100%;
    padding: 0;
}


/* footer */

footer {
    padding: 55px 128px;
}

.footer-container {
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    -moz-box-orient: horizontal;
    -webkit-box-orient: horizontal;
    box-orient: horizontal;
    width: 100%;
    font-size: 17px;
}

.jobs-career a, .die-post a {
    font-weight: 300;
    display: block;
    text-decoration: none;
    color: rgba(0, 0, 0, 0.6);
    margin-bottom: 15px;
}

.jobs-career a:hover, .die-post a:hover {
    color: rgba(0, 0, 0, 1) !important;
    transition: all .3s;
}

.footer-title {
    font-weight: 500;
    margin-bottom: 15px;
}

.jobs-career {
    -moz-box-flex: 1;
    -webkit-box-flex: 1;
    box-flex: 1;
    margin-right: 130px;
    width: 268px;
}

.die-post {
    -moz-box-flex: 1;
    -webkit-box-flex: 1;
    box-flex: 1;
    margin-right: 130px;
    width: 268px;

}

.follow-us {
    -moz-box-flex: 1;
    -webkit-box-flex: 1;
    box-flex: 1;
    margin-right: 1%;
    float: right;
}

.follow-us img {
    width: 24px;
    height: 24px;
    opacity: .6;
    transition: all .3s;
    margin-bottom: 10px;
}

.follow-us a:hover img {
    opacity: 1;
    transition: all .3s;
}

.follow-us a {
    margin-right: 15px;

}


/* buttons */

.button {
    position: relative;
    display: inline-block;
    background: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 0;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    color: #333;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    transition-property: background, color;
    transition-duration: .3s;
    transition-timing-function: ease-in;
    font-size: 15px;
    font-weight: 400;
    font-style: normal;
    line-height: 1em;
    padding: 11px 32px;
    font-family: "Frutiger Neue For Post", sans-serif;
}


.button .label {
    display: inline-block;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: transform .3s;
    -moz-transition: transform .3s;
    transition: transform .3s;
}

.button .label::before {
    content: "";
    background: transparent url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBhdGggZD0iTTkuNiwxNy40TDE1LDEyTDkuNiw2LjZMOC45LDcuM2w0LjcsNC43bC00LjcsNC43TDkuNiwxNy40eiIvPgo8L3N2Zz4K") 0 0 / 26px 26px no-repeat;
    height: 26px;
    width: 26px;
    display: block;
    opacity: 0;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: right .3s;
    -moz-transition: right .3s;
    transition: right .3s;
}


.share.button .label::before {
    background: transparent url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNS4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iRWJlbmVfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQoJLnN0MHtmaWxsOiNGRkZGRkY7fQ0KPC9zdHlsZT4NCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05LjYsMTcuNEwxNSwxMkw5LjYsNi42TDguOSw3LjNsNC43LDQuN2wtNC43LDQuN0w5LjYsMTcuNHoiLz4NCjwvc3ZnPg0K") 0 0 / 26px 26px no-repeat;
}


.button:hover .label {
    -webkit-transform: translateX(-13px);
    -moz-transform: translateX(-13px);
    transform: translateX(-13px);
}

.button:hover .label::before {
    opacity: 1;
    right: -2rem;
}

.header .button.share, .header .button.apply {
    float: right;
}


.button.share {
    border: 2px solid #FFFFFF;
    background-color: transparent;
    margin-right: 15px;
    color: #FFFFFF;
}

.button.apply {
    background: #FFFFFF;
    border: 2px solid #FFFFFF;
    color: #000000;
}

.job-info-box .button {
    padding: 20px 40px;
    background-color: #FFFFFF;
    border-radius: 3px;
    color: #000000;
    border: none;
    font-size: 17px;
    font-weight: 600;
    line-height: 17px;
    margin-top: 32px;
}


.job-details-apply {
    float: right;
    margin-top: -50px;
    background-color: rgba(0, 73, 118, 1);
    color: #FFFFFF;
    border: none;
    padding: 15px 32px;;
}

.job-details-apply.button .label::before {
    background: transparent url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNS4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iRWJlbmVfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQoJLnN0MHtmaWxsOiNGRkZGRkY7fQ0KPC9zdHlsZT4NCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05LjYsMTcuNEwxNSwxMkw5LjYsNi42TDguOSw3LjNsNC43LDQuN2wtNC43LDQuN0w5LjYsMTcuNHoiLz4NCjwvc3ZnPg0K") 0 0 / 26px 26px no-repeat;
}

.job-details-apply:hover {
    background-color: rgba(0, 73, 118, 1);
}

.button.jobabo {
    margin-top: 40px;
    border: none;
    padding: 15px 32px;
    font-size: 17px;
    font-weight: 500;
}


/**
 * Popup.
 */
.ui.popup.share {
    max-width: 220px;
    width: 100%;
}

.ui.popup.share a {
    display: block;
    color: #666666;
    text-align: left;
}

.ui.popup.share a:hover {
    color: #000000;
}

.ui.popup.share .icons svg.icon {
    fill: rgba(0, 0, 0, .6);
    width: 24px;
    height: 24px;
    position: relative;
    top: 6px;
    padding-right:  5px;
    display: inline-block;
}

.ui.popup.share .icons a:hover svg.icon {
    fill: rgba(0, 0, 0, 1);
}

/*.ui.bottom.left.popup {*/
/*    background-color: rgba(255, 204, 0, 1);*/
/*}*/


/**
 * Alternate.
 */
.alternate-show {
    display: none;
}



/* media queries */

@media only screen and (min-width: 1439px) {
    main section {
        padding: 0px 200px;
    }

    .job-details {

        margin: 80px 200px 48px;
    }

    .department-info {
        padding: 80px 200px 90px;
    }


}

@media only screen and (max-width: 1200px) {
    header .job-title {
        width: 45vw;
    }
}

@media only screen and (max-width: 1045px) {
    header .job-title {
        width: 35vw;
    }
}

@media only screen and (max-width: 1023px) {
    .job-info-box {
        max-width: 448px;
        margin-top: -230px;
    }

    .jobabo-teaser {
        background-color: #004976;
        display: block;
        padding: 80px 12vw;
    }


    .jobs-career, .die-post {
        margin-right: 80px;
    }
}

@media only screen and (max-width: 885px) {
    header .job-title {
        width: 30vw;
    }
    .contactInfo {
        max-width: 140px;
    }
}

@media only screen and (max-width: 820px) {
    header .job-title {
        width: 25vw;
    }
    .divided-column {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
        margin: 32px auto 10px;
    }


}


@media only screen and (max-width: 780px) {
    .job-info-box {
        max-width: 379px;
        margin-top: -48vw;
        padding: 32px 32px 40px 32px;
    }

    .job-info-box .job-title, .job-subtitle {
        -moz-hyphens: auto;
        -o-hyphens: auto;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }

    .section-title {
        font-size: 24px;
    }

    .job-details-inner {
        padding: 56px 40px;
    }

    .section-subtitle {
        font-size: 24px;
    }

    .logo {
        width: 161px;
        margin-top: 20px;
    }

    .post-stripe {
        margin-top: 24px;
    }

    .header {
        padding: 22px 32px;
    }

    .post-stripe {
        width: 161px;
    }

    .department-info {
        padding: 80px 12vw 90px;
    }

    .similar-jobs .section-title {
        padding: 0 63px;
    }

    .similar-jobs {
        padding: 0 42px 0 32px;
    }

    .similar-job-container {
        display: block;
    }

    .similar-job {
        margin-bottom: 10px;
        display: table;
        margin-right: 0;
    }

    .jobabo-teaser {
        background-color: #004976;
        display: block;
        padding: 80px 32px;
    }

    .jobabo-teaser .section-title {
        font-size: 32px;
    }

    footer {
        padding: 55px 32px;
    }

    .column.similar-job {
        width: 100%;
        display: block;
        padding: 20px;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        border: 0px solid white;
    }

    .job-info-box button.button {
        padding: 16px 32px;
        font-size: 15px;
        margin-top: 32px;
    }

    button.button.jobabo {
        font-size: 15px;
    }

    .footer-container {
        display: block;
    }

    .jobs-career {
        width: auto;
        float: left;
        margin-right: 10%;
    }

    .die-post {
        width: auto;
    }

    .follow-us {
        float: none;
        margin-top: 70px;
    }
    .tasks, .profile {
        font-size: 20px;
        line-height: 28px;
    }
    .benefit-text {
        font-size: 16px;
    }
    .department-head {
        font-size: 24px;
        line-height: 28px;
    }
    .department-info p {
        font-weight: 300;
    }

    header .job-title {
        width: 39vw;
    }
}

@media only screen and (max-width: 639px) {
    .job-info-box {
        max-width: 347px;
    }

    header .job-title {
        display: none;
    }

    .jobs-career {
        margin-bottom: 40px;
    }

    .die-post {
        float: left;
        width: 100%;
        margin-bottom: 40px;
    }

    .follow-us {
        float: left;
        margin-bottom: 40px;
        max-width: 210px;
    }

    .job-details-apply {
        float: none;
        margin-top: 30px;
    }

}

@media only screen and (max-width: 419px) {

    .logo {
        width: 138px;
    }

    .job-info-box .job-title, .job-info-box .job-subtitle {
        font-size: 28px;
        line-height: 30px;
    }

    .job-info-box button.button {
        padding: 7px 20px;
        font-size: 15px;
        margin-top: 32px;
    }

    .job-info-box {
        max-width: 270px;
        margin-top: -140px;
        padding: 32px 12px 40px 12px;
    }

    .header {
        padding: 22px 30px;
    }

    main section {
        margin-top: 40px;
        padding: 0px 12px;
    }

    p {
        font-size: 17px;
        font-weight: 300;
    }

    .tasks, .profile {
        font-size: 17px;
        line-height: 28px;
    }

    .tasks li, .profile li {
        font-size: 17px;
        background-size: 20px;
        padding-left: 30px;
    }

    section.profile, section.benefits {
        margin-top: 40px;
    }



    .job-details {
        margin: 80px 12px 48px;
    }

    .job-details-inner {
        padding: 56px 10px;
    }

    .job-details-left {
        float: none;
        width: 100%;
    }

    button.job-details-apply {
        float: none;
        margin-top: 20px;
    }

    .disclaimer p {
        font-size: 13px;
    }

    .department-info {
        padding: 40px 12px 40px;
    }

    .similar-jobs .section-title {
        padding: 0;
    }

    .similar-job-title, .similar-info {
        font-size: 17px;
        margin-top: 0;
    }

    .similar-jobs {
        padding: 0 12px;
    }

    .job-details-left, .job-details-left p, .job-details-right, .job-details-right p {
        font-size: 15px;
    }
    .follow-us {
        margin-top: 0px;
    }

}

@media only screen and (max-width: 320px) {
    .job-info-box {
        max-width: 216px;
        font-size: 28px;
    }

    .button {
        padding: 5px 15px;
    }
}