/**
 * buttons, links, text, title - default settings
 */
body, h1, h2, h3, h4, h5, li, p, span, a, a:hover {
    color: #555;
    font: normal normal normal 15px/22px Helvetica, Arial, sans-serif;
    hyphens: auto;
}
a,
a:hover {
    color: #FFF;
    display: block;
}
svg {
    display: block;
}
h1 {
    color: #CFA35C;
    font: normal normal bold 40px/48px Helvetica, Arial, sans-serif;
    padding: 45px 0 22px;
}
h2 {
    font: normal normal bold 30px/36px Helvetica, Arial, sans-serif;
    margin-bottom: 30px;
}
h3 {
    color: #B19A75;
    font: normal normal bold 22px/26px Helvetica, Arial, sans-serif;
    padding-top: 20px;
}
ul {
    margin: 0;
    padding-left: 18px;
}
li {
    line-height: 18px;
    padding-bottom: 20px;
}
li:last-child {
    padding-bottom: 0;
}
.parsley-errors-list {
    margin-bottom: 20px;
}
.parsley-errors-list li {
    color: #7A000E;
    max-width: fit-content;
}
img {
    vertical-align: top;
}
.buttonWrapper {
    justify-self: center;
}
.buttonWrapperPrimary,
.buttonWrapperSecondary {
    background-color: #523924;
    border: none;
    border-radius: 4px;
    color: #FFF;
    cursor: pointer;
    display: inline-block;
    font: normal normal normal 15px/18px Helvetica, Arial, sans-serif;
    padding: 18px 75px;
    text-transform: uppercase;
}
.buttonWrapperSecondary {
    background-color: #CCB062;
    border: none;
    border-radius: unset;
    margin-top: 20px;
}
.buttonWrapperSecondary a {
    font: normal normal bold 22px/26px Helvetica, Arial, sans-serif;
}
.hiddenContent,
.displayPrint,
.followUsMobile,
.shareUsMobile,
.grecaptcha-badge {
    display: none;
    visibility: hidden;
}
/**
 * stickyHeader
 */
#stickyHeader {
    background-color: #FFF;
    border-bottom: 1px solid #F2F2F2;
    padding: 0;
    position: fixed;
    top: -120px;
    transition: all ease-in-out 0.3s;
    visibility: hidden;
    width: 100%;
    z-index: 2;
    -moz-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
}
#stickyHeader.active {
    top: 0;
    visibility: visible;
}
#stickyHeaderWrapper {
    display: grid;
    gap: 20px;
    grid-template-columns: auto auto;
    margin: 0 auto;
    max-width: 1200px;
    padding: 20px;
    width: 100%;
}
#stickyHeaderJobTitleWrapper {
    overflow: hidden;
}
#stickyHeaderJobTitleWrapper h1 {
    font: normal normal bold 30px/36px Helvetica, Arial, sans-serif;
    margin: 0;
    overflow: hidden;
    padding: 25px 0 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/**
 * header
 */
header {
    margin: 0 auto;
    max-width: 1200px;
    padding: 55px 45px 25px;
    width: 100%;
}
.logoWrapper img {
    width: 230px;
}
.jobMetaInfos {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr 1fr 40%;
}
.jobMetaInfos div:first-child {
    grid-template-columns: 15px auto;
}
.jobMetaInfos a p {
    color: #917236;
}
.jobMetaInfosWrapper {
    display: grid;
    gap: 12px;
    grid-template-columns: 20px auto;
}
.jobMetaInfosWrapper p {
    font: normal normal normal 15px/18px Helvetica, Arial, sans-serif;
}
/**
 * main
 */
main {
    background-color: #F2F2F2;
}
#mainWrapper {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: 100%;
}
section {
    padding: 30px 0 60px;
}
.sectionWrapper {
    background-color: #FFF;
    margin-bottom: 30px;
    padding: 30px;
}
#jobInfoWrapper {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr;
}
.contentTile,
#contactWrapper {
    background-color: #FFF;
    border-radius: 2px;
    box-shadow: 0 2px 2px #00000029;
    margin-top: 30px;
    padding: 30px;
}
.alternate-show {
    display: none;
}
#benefitWrapper {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr 1fr;
}
.benefitTile {
    border: 1px solid #523924;
    padding: 20px 20px 30px;
}
.benefitTileHeaderWrapper {
    display: grid;
    gap: 20px;
    grid-template-columns: auto 75px;
    min-height: 142px;
    padding-bottom: 30px;
}
#contactWrapper {
    display: grid;
    gap: 30px 20px;
    grid-template-columns: 1fr 1fr;
    margin-top: 0;
}
.contactFormWrapper,
.contactFormConfirmation,
label {
    display: none;
}
.contactColumnRight {
    grid-column: 2;
}
.contactFormConfirmation {
    color: #CCB062;
    font: normal normal normal 15px/18px Roboto-Bold, Helvetica, Arial, sans-serif;
}
.contactFormWrapper input[type="text"],
.contactFormWrapper input[type="email"],
.contactFormWrapper textarea {
    border: none;
    border-bottom: 1px solid #A0A0A0;
    font: normal normal normal 15px/18px Helvetica, Arial, sans-serif;
    margin-bottom: 20px;
    outline: none;
    padding: 10px 20px 5px 0;
    width: 100%;
}
.contactFormWrapper textarea {
    border: 1px solid #A0A0A0;
    min-height: 72px;
    padding: 10px 20px;
    resize: vertical;
    vertical-align: top;
}
/**
 * fixedFooter
 */
#fixedFooter {
    background-color: #523924;
    bottom: 0;
    display: grid;
    gap: 20px;
    grid-template-columns: 2fr 3fr 2fr;
    max-width: 1200px;
    padding: 15px 45px 23px;
    position: fixed;
    width: 100%;
    z-index: 1;
}
.fixedFooterTile:last-child {
    justify-self: flex-end;
    align-self: center;
}
.followUsItem {
    display: inline-block;
    margin-right: 10px;
    vertical-align: top;
}
.followUsItem svg {
    fill: #B19A75;
}
.shareUsWrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    row-gap: 10px;
    column-gap: 20px;
}
.shareUsWrapper div,
.shareUsWrapper div a {
    color: #B19A75;
    display: inline-block;
}
.shareUsButton {
    cursor: pointer;
    position: relative;
    width: auto;
}
.shareUsButton:hover .shareUsContainer {
    opacity: 1;
    top: -220px;
    transition-delay: 0s;
    visibility: visible;
}
.shareUsContainer {
    background-color: #CCB062;
    left: -100%;
    opacity: 0;
    padding: 10px;
    position: absolute;
    top: -270px;
    transition: 0.25s all ease;
    transition-delay: 0.25s;
    visibility: hidden;
    z-index: 2;
}
.shareUsContainer:after {
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 20px solid #CCB062;
    content: "";
    left: 42%;
    position: absolute;
    top: 100%;
}
.shareUsContainer div a {
    display: flex;
    gap: 10px;
}
.shareUsItem a p {
    color: #FFF;
    font: normal normal normal 15px/18px Helvetica, Arial, sans-serif;
    hyphens: initial;
}
.shareUsItem svg {
    fill: #FFF;
}
.shareUsItem {
    padding-bottom: 10px;
    vertical-align: top;
}
.shareUsItem:last-child {
    padding-bottom: 0;
}
#diversity {
    display: flex;
    column-gap: 40px;
    row-gap: 26px;
    flex-direction: row;
    align-items: center;
    margin-bottom: 60px;
    border-radius: 2px;
    box-shadow: 0 2px 2px #00000029;

}
/**
 * footer
 */
footer {
    margin: 0 auto;
    max-width: 1200px;
    padding-bottom: 120px;
    position: relative;
    width: 100%;
}
/**
* media screen (tablets, smartphones)
 */
@media only screen and (max-width: 1200px) {
    .buttonWrapperPrimary,
    .buttonWrapperSecondary {
        padding: 15px 25px;
    }
}
@media only screen and (min-width: 901px) {
    footer > div {
        display: none !important;
    }
}
@media only screen and (max-width: 900px) {
    #stickyHeaderWrapper {
        display: block;
    }
    #stickyHeaderWrapper h1 {
        padding: 10px 0 0;
    }
    #stickyHeaderWrapper .jobMetaInfos {
        display: none;
        visibility: hidden;
    }
    .logoWrapper img {
        width: 180px;
    }
    h1, h2, #stickyHeaderJobTitleWrapper h1 {
        font-size: 26px;
        line-height: 31px;
    }
    h3 {
        font-size: 22px;
        line-height: 26px;
    }
    .buttonWrapperSecondary {
        margin: 0;
    }
    .buttonWrapperSecondary a {
        font-size: 15px;
        line-height: 18px;
    }
    header {
        padding: 10px 20px 40px;
    }
    .jobMetaInfos {
        grid-template-columns: 1fr 1fr 1fr 20%;
    }
    section {
        padding: 15px 0 30px;
    }
    #diversity {
        margin-bottom: 30px;
    };
    .sectionWrapper,
    #contactWrapper {
        padding: 30px 20px;
    }
    .contentTile {
        margin-top: 15px;
        padding: 30px 20px;
    }
    #benefitWrapper {
        grid-template-columns: 1fr 1fr;
    }
    .followUsMobile {
        display: block;
        visibility: visible;
    }
    .shareUsMobile {
        visibility: visible;
        justify-content: center;
    }
    .followUsMobile h3 {
        color: #555;
    }
    .followUsMobile .followUsItem svg {
        fill: #555;
    }
    footer {
        padding-bottom: 72px;
    }
    .shareUsMobile {
        left: 50%;
        position: absolute;
        top: 62%;
        transform: translate(-50%,-50%);
        width:100%;
        text-align: center;
    }
    #fixedFooter {
        display: block;
        gap: initial;
        grid-template-columns: initial;
        padding: 12px 20px;
    }
    .fixedFooterTile {
        display: none;
    }
    .fixedFooterTile.buttonWrapper {
        display: block;
        text-align: center;
    }
}
@media only screen and (max-width: 768px) {
    .jobMetaInfos {
        grid-template-columns: 1fr 1fr 1fr;
    }
    #jobInfoWrapper {
        gap: 0;
        grid-template-columns: 1fr;
    }
    #benefitWrapper,
    #contactWrapper {
        grid-template-columns: 1fr;
    }
    .contactColumnRight {
        grid-column: initial;
    }
}
@media only screen and (max-width: 600px) {
    .jobMetaInfos {
        grid-template-columns: 1fr 1fr;
    }

    .shareUsMobile {
        position: relative;
        transform: initial;
        left: initial;
        right: initial;
        background-color: #523924;
        padding-right: 10%;
        padding-left: 10%;
        padding-bottom: 20px;
    }

}

@media only screen and (max-width: 460px) {
    #diversity {
        flex-direction: column;
    }
}