/**
 * buttons, links, text, title - default settings
 */
body, h1, h2, h3, h4, h5, li, p, span, label, input, textarea, a, a:hover {
    color: #000;
    font: normal normal normal 18px/24px FSAlbert-Regular, sans-serif;
    hyphens: auto;
}
img,
svg {
    display: block;
    height: auto;
    max-width: 100%;
    vertical-align: top;
}
svg {
    max-width: initial;
}
a,
button,
p,
span,
svg,
path,
input,
.buttonWrapperSecondary div,
.slick-dots li button:before,
.buttonWrapperPrimary,
.buttonWrapperSecondary,
.similarJob {
    transition: all ease-in-out 0.3s;
    -moz-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
}
a, a:hover {
    display: inline-block;
    text-decoration: none;
}
#resetButton:hover,
a:hover p:first-child,
a:hover span {
    color: #449DC2;
}
h1 {
    font: normal normal normal 40px/51px FSAlbert-Regular, sans-serif;
    margin: 0;
    padding: 0 0 40px;
}
h2 {
    font: normal normal normal 20px/26px FSAlbert-Bold, sans-serif;
    margin: 0;
    padding: 0 0 30px;
}
h3 {
    font: normal normal normal 22px/28px FSAlbert-Bold, sans-serif;
    margin: 0;
    padding: 0;
}
ul {
    margin: 0;
    padding-left: 48px;
}
li {
    font: normal normal normal 20px/30px FSAlbert-Regular, sans-serif;
    list-style: none;
    padding-bottom: 10px;
}
li:before {
    content: '\2014';
    font: normal normal normal 16px/26px FSAlbert-Regular, sans-serif;
    margin-left: -48px;
    position: absolute;
}
li:last-child {
    padding-bottom: 0;
}
.svgColor {
    background-color: #77C5D8;
    border-radius: 25px;
    padding: 6px;
}
.buttonWrapperPrimary,
.buttonWrapperPrimary button {
    background-color: #77C5D8;
    border: none;
    cursor: pointer;
}
.buttonWrapperSecondary {
    padding-bottom: 46px;
    width: max-content;
}
.buttonWrapperPrimary a,
.buttonWrapperSecondary a,
.buttonWrapperPrimary button {
    align-items: center;
    display: flex;
    font: normal normal normal 18px/23px FSAlbert-Bold, sans-serif;
    gap: 15px;
    height: 52px;
    justify-content: center;
    overflow: hidden;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.buttonWrapperPrimary a {
    padding: 0 20px;
}
.buttonWrapperSecondary a {
    font: normal normal normal 19px/24px FSAlbert-Bold, sans-serif;
    padding: 0;
}
.buttonWrapperPrimary:hover,
.buttonWrapperPrimary button:hover {
    background-color: #449DC2;
}
.buttonWrapperPrimary button div {
    display: initial;
}
.buttonWrapperPrimary button div:first-child {
    padding-top: 4px;
}
.buttonWrapperSecondary div:first-child {
    padding-left: 10px;
}
.buttonWrapperSecondary:hover div {
    color: #449DC2;
}
.buttonWrapperSecondary:hover svg path {
    fill: #449DC2 !important;
}
.buttonWrapperThird,
.buttonWrapperFourth {
    background-color: #77C5D8;
    border: none;
    cursor: pointer;
    display: flex;
    font: normal normal normal 18px/23px FSAlbert-Bold, sans-serif;
    gap: 20px;
    margin: 25px auto 0;
    overflow: hidden;
    padding: 15px 60px 15px 40px;
    position: relative;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.buttonWrapperThird::after,
.buttonWrapperFourth::after {
    background: url("../images/icons/arrow-down.svg") no-repeat right;
    content: '';
    font: normal normal normal 32px/18px system-ui, sans-serif;
    height: 53px;
    position: absolute;
    right: 10px;
    top: 0;
    width: 32px;
}
.buttonWrapperFourth {
    display: none;
    visibility: hidden;
}
button#resetButton {
    background-color: initial;
    border: none;
    border-bottom: 2px solid #449DC2;
    cursor: pointer;
    font: normal normal normal 16px/20px FSAlbert-Regular, sans-serif;
    padding: 0;
}
.mobile {
    display: none;
    visibility: hidden;
}
/**
* header
*/
header {
    margin: 0 auto;
    max-width: 1720px;
    padding: 0 0 40px 50px;
    width: 100%;
}
.logoWrapper {
    padding: 25px 0;
}
.logoWrapper img {
    max-width: 242px;
    min-width: 242px;
}
header img {
    width: 100%;
}
/**
 * benefits: slick
 */
#slickHeader button.slick-prev,
#slickHeader button.slick-next {
    display: none !important;
    visibility: hidden;
}
.headerContainer {
    cursor: pointer;
}
.slick-dotted.slick-slider {
    margin: 0;
}
.slick-dots {
    bottom: 0;
    right: 0;
    padding: 0 92px 15px 0;
    text-align: right;
}
.slick-dots li:before {
    content: initial;
}
.slick-dots li button:before {
    color: #77C5D8;
    font-size: 15px;
}
.slick-dots li button:before {
    color: #FFF;
    opacity: 1;
}
.slick-dots li.slick-active button:before,
.slick-dots li button:hover:before {
    color: #77C5D8;
    opacity: 1;
}
/**
 * main
 */
main {
    margin: 0 auto;
    max-width: 1720px;
    padding: 0 50px 25px;
    width: 100%;
}
section {
    padding: 0 0 50px;
    position: relative;
}
.columnWrapper {
    display: grid;
    gap: 25px 50px;
    grid-template-columns: 1fr 1fr;
}
.columnWrapperTwoOneTwo {
    display: grid;
    gap: 25px;
    grid-template-columns: 2fr 1fr 2fr;
}
.columnWrapperTwoThree {
    display: grid;
    gap: 50px;
    grid-template-columns: 2fr 3fr;
}
.columnWrapperFilter {
    display: flex;
}
.columnWrapperThree {
    display: grid;
    float: left;
    gap: 30px;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 0 30px 30px 0;
    width: 60%;
}
#filter-4\ pensumSlider {
    float: left;
    padding-bottom: 30px;
    width: 40%;
}
.columnWrapperFour {
    display: grid;
    gap: 25px 50px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
#forwardWrapper {
    background-color: #F0F0F0;
    padding: 25px;
}
#forwardWrapper .boldWrapper {
    font: normal normal normal 18px/23px FSAlbert-Bold, sans-serif;
}
#forwardWrapper .buttonWrapperPrimary {
    max-width: none;
}
#jobsDesktop {
    border-top: 2px solid #F0F0F0;
    padding-top: 20px;
}
#jobsDesktop > div {
    padding-left: 20px;
}
#jobsDesktop > div:last-child {
    padding-left: 0;
}
#jobsDesktop h2 {
    padding: 0;
}
#jobsDesktop a {
    width: 100%;
}
#jobsDesktop p {
    margin: 0;
}
.jobsWrapper a {
    padding: 18px 0;
}
.jobsWrapper:nth-child(odd) {
    background-color: #F0F0F0;
}
.jobsWrapper span {
    padding-left: 25px;
}
#noJobs {
    background-color: #F0F0F0;
    margin-top: 50px;
    padding: 60px 0;
    text-align: center;
}
#companyWording {
    padding: 80px 0 25px;
}
/**
* Form
 */
#careercenter-form .columnWrapper,
#careercenter-form .columnWrapperTwoThree {
    padding-bottom: 30px;
}
#search {
    position: relative;
}
#search:hover input,
#search input:focus {
    color: #449DC2;
}
#search:hover svg path,
#search input:focus + svg path {
    fill: #449DC2 !important;
}
.ui.form input:not([type]),
.ui.form input[type=date],
.ui.form input[type=datetime-local],
.ui.form input[type=email],
.ui.form input[type=file],
.ui.form input[type=number],
.ui.form input[type=password],
.ui.form input[type=search],
.ui.form input[type=tel],
.ui.form input[type=text],
.ui.form input[type=time],
.ui.form input[type=url] {
    border: 2px solid #77C5D8;
    border-radius: 0;
    color: #384252;
    font: normal normal normal 18px/23px FSAlbert-Bold, sans-serif;
    padding: 10px 20px;
}
.ui.form input:not([type]):focus,
.ui.form input[type=date]:focus,
.ui.form input[type=datetime-local]:focus,
.ui.form input[type=email]:focus,
.ui.form input[type=file]:focus,
.ui.form input[type=number]:focus,
.ui.form input[type=password]:focus,
.ui.form input[type=search]:focus,
.ui.form input[type=tel]:focus,
.ui.form input[type=text]:focus,
.ui.form input[type=time]:focus,
.ui.form input[type=url]:focus {
    border-color: #77C5D8;
    border-radius: 0;
}
#search svg {
    position: absolute;
    right: 20px;
    top: 12px;
}
/**
 * Multi select
 */
.ui-multiselect {
    background-color: #77C5D8;
    border: none;
    border-radius: 0;
    cursor: pointer;
    height: 45px;
    overflow: hidden;
    padding: 0 20px;
    position: relative;
    text-align: left;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}
.ui-multiselect span {
    display: block;
    font: normal normal normal 18px/23px FSAlbert-Bold, sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 90%;
}
.ui-multiselect span.ui-icon::after {
    background: url("../images/icons/arrow-down.svg") no-repeat;
    content: '';
    font: normal normal normal 34px/18px system-ui, sans-serif;
    height: 33px;
    position: absolute;
    right: 0;
    top: 12px;
    width: 32px;
}
.ui-multiselect.ui-state-active span.ui-icon::after {
    background: url("../images/icons/arrow-up.svg") no-repeat;
}
.ui-multiselect-header {
    margin-bottom: 3px;
    padding: 0 0 0 4px;
}
.ui-multiselect-header ul {
    font-size: 1em;
}
.ui-multiselect-header ul li {
    display: none;
    float: left;
    padding: 0 10px 0 0;
}
.ui-multiselect-header a {
    text-decoration: none;
}
.ui-multiselect-header li.ui-multiselect-close {
    display: block;
    float: right;
    padding-right: 0;
    text-align: right;
}
.ui-multiselect-menu {
    background: #FFF;
    border: 1px solid #AAA;
    display: none;
    max-width: 100%;
    position: absolute;
    text-align: left;
    z-index: 10000;
}
.ui-multiselect-menu ul {
    margin: 0;
    padding: 0;
}
.ui-multiselect-checkboxes {
    height: inherit !important;
    margin-bottom: 10px;
    max-height: 400px !important;
    position: relative;
}
.ui-multiselect-checkboxes label {
    border-bottom: 1px solid #AAA;
    cursor: pointer;
    display: block;
    padding: 0 0 10px;
}
.ui-multiselect-checkboxes li:last-child label {
    border-bottom: none;
}
.ui-multiselect-checkboxes li:first-child {
    padding-top: 10px;
}
.ui-multiselect-checkboxes li:last-child {
    padding-bottom: 0;
}
.ui-multiselect-checkboxes li {
    clear: both;
    padding: 0 20px 10px;
}
.ui-widget-header.ui-corner-all.ui-multiselect-header.ui-helper-clearfix {
    display: none;
}
.ui-corner-all input[type='checkbox']:not(:checked),
.ui-corner-all input[type='checkbox']:checked {
    left: -9999px;
    opacity: 0;
    position: absolute;
}
.ui-corner-all input[type='checkbox'] + span {
    backface-visibility: hidden;
    display: inline-block;
    font-size: 17px;
    line-height: 24px;
    padding-left: 35px;
    position: relative;
    user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-backface-visibility: hidden;
    -webkit-user-select: none;
}
.ui-corner-all input[type='checkbox'] + span::before,
.ui-corner-all input[type='checkbox'] + span::after {
    content: '';
    left: 0;
    position: absolute;
    top: 1px;
    z-index: 0;
}
.ui-corner-all input[type='checkbox'] + span::before {
    border: 2px solid #77C5D8;
    height: 22px;
    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
    width: 22px;
}
.ui-corner-all input[type='checkbox'] + span::after {
    background: #77C5D8;
    color: #77C5D8;
    content: "\002D";
    font-size: 18px;
    height: auto;
    line-height: 22px;
    text-align: center;
    transform: scale(0);
    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
    width: 22px;
    -webkit-transform: scale(0);
}
.ui-state-hover input[type='checkbox'] + span::after {
    transform: scale(0.5);
    -webkit-transform: scale(0.5);
}
.ui-corner-all input[type='checkbox']:checked + span::after {
    transform: scale(1);
    -webkit-transform: scale(1);
}
.pensum-label {
    color: #000;
    font: normal normal normal 16px/30px FSAlbert-Bold, sans-serif;
    left: initial;
}
.pensum-label.de:after {
    left: 125px;
    top: -6px;
}
.pensum-label.en:after {
    left: 165px;
    top: -6px;
}
.slider-container {
    margin-top: 10px;
}
.slider-container .back-bar {
    background: #F0F0F0;
    border: none;
    height: 2px;
}
.slider-container .back-bar .selected-bar {
    background: #449DC2;
}
.slider-container .back-bar .pointer {
    background: #449DC2;
    box-shadow: none;
    cursor: pointer;
    height: 18px;
    top: -8px;
    width: 18px;
}
.slider-container .back-bar .pointer-label {
    color: #000;
    font: normal normal normal 16px/30px FSAlbert-Bold, sans-serif;
    top: -40px;
}
.pointer.low {
    margin-left: 9px;
}
.pointer.high {
    margin-left: -9px;
}
.slider-input.de + .slider-container .pointer-label.low {
    left: 85px !important;
}
.slider-input.de + .slider-container .pointer-label.high {
    left: 140px !important;
}
.slider-input.en + .slider-container .pointer-label.low {
    left: 125px !important;
}
.slider-input.en + .slider-container .pointer-label.high {
    left: 180px !important;
}
/**
 * Parsley
 */
.parsley-error {
    border: 1px solid #F00 !important;
}
.parsley-errors-list li {
    color: #F00 !important;
    font-size: 16px;
    list-style: none;
    margin: 5px 0 15px;
    padding: 0;
}
/**
* media screen (smartphones, tablets, etc.)
 */
@media only screen and (max-width: 1600px) {
    .columnWrapperTwoOneTwo {
        grid-template-columns: 1fr auto 1fr;
    }
    .columnWrapperTwoThree {
        grid-template-columns: 1fr 1fr;
    }
    .columnWrapperFilter {
        display: initial;
    }
    .columnWrapperThree {
        float: initial;
        padding: 0 0 30px 0;
        width: 100%;
    }
    #filter-4\ pensumSlider {
        float: initial;
        width: 32%;
    }
}
@media only screen and (max-width: 1000px) {
    .desktop {
        display: none;
        visibility: hidden;
    }
    .mobile {
        display: block;
        visibility: visible;
    }
    header,
    .buttonWrapperSecondary,
    section > h2 {
        padding: 0 25px 30px;
    }
    main {
        padding: 0 0 25px;
    }
    .columnWrapperTwoOneTwo {
        grid-template-columns: 1fr;
    }
    .columnWrapperTwoOneTwo > div:first-child,
    form {
        padding: 0 25px;
    }
    .columnWrapperTwoThree {
        grid-template-columns: 1fr;
    }
    #filter-4\ pensumSlider {
        width: 66%;
    }
    #jobsMobile {
        border-top: 2px solid #F0F0F0;
        padding: 20px 25px 0;
    }
    #jobsMobile > div {
        padding-left: 20px;
    }
    #jobsMobile > div:last-child {
        padding-left: 0;
    }
    #jobsMobile h2 {
        padding: 0 0 20px;
    }
    #jobsMobile a {
        padding: 0;
        width: 100%;
    }
    #jobsMobile p {
        margin: 0;
    }
    #jobsMobile span,
    #jobsMobile p:first-child {
        font: normal normal normal 18px/23px FSAlbert-Bold, sans-serif;
        padding: 0;
    }
    .columnWrapperFour {
        grid-template-columns: 1fr;
    }
    .jobsWrapper:nth-child(even) {
        background-color: #F0F0F0;
    }
    .jobsWrapper:nth-child(odd) {
        background-color: initial;
    }
    .jobsWrapper {
        padding: 20px 25px;
    }
    .buttonWrapperThird {
        display: none;
        visibility: hidden;
    }
    .buttonWrapperFourth {
        display: flex;
        visibility: visible;
    }
}
@media only screen and (max-width: 800px) {
    .columnWrapperThree {
        grid-template-columns: 1fr;
    }
    #filter-4\ pensumSlider {
        width: 100%;
    }
}
@media only screen and (max-width: 600px) {
    .columnWrapper,
    .columnWrapperTwoThree {
        grid-template-columns: 1fr;
    }
}