/**
 * Fonts.
 */
@font-face {
    font-family: "National-2";
    src: url("../fonts/national2/OTF/National2-Regular.otf") format("OTF"),
    url("../fonts/national2/WOFF2/national-2-regular.woff2") format("woff2"),
    url("../fonts/national2/TTF/National2-Regular.ttf") format("truetype");
    font-style: normal;
}
@font-face {
    font-family: "National-2-Medium";
    src: url("../fonts/national2/OTF/National2-Medium.otf") format("OTF"),
    url("../fonts/national2/WOFF2/national-2-medium.woff2") format("woff2"),
    url("../fonts/national2/TTF/National2-Medium.ttf") format("truetype");
    font-style: normal;
}
@font-face {
    font-family: "National-2-Bold";
    src: url("../fonts/national2/OTF/National2-Bold.otf") format("OTF"),
    url("../fonts/national2/WOFF2/national-2-bold.woff2") format("woff2"),
    url("../fonts/national2/TTF/National2-Bold.ttf") format("truetype");
    font-style: normal;
}
body {
    font-family: 'National-2', Helvetica, Arial, sans-serif;
    font-weight:normal;
    color: #333;
    font-size: 16px;
    line-height: 24px;
    margin:0 auto;
}
/**
 * Layout
 */

#wrapper {
    position: relative;
    width: 100%;
    max-width:1200px;
    margin:0 auto;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.3), 0 0 0 rgba(0, 0, 0, 0.1);
    overflow: hidden;
}
img{
    width: 100%;
    height: auto;
}
#header-img img {
    display: block;
}
.icons {
    width: 40px;
    height: 40px;
}
header .icons {
    width: 50px;
    height: 50px;
}
/**
 * Typography.
 */
h1 {
    font-family: 'National-2-Bold', Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size: 30px;
    line-height: 40px;
    margin-bottom:15px;
    margin-top:10px!important;
}

h3 {
    font-family: 'National-2-Bold', Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size:20px;
    line-height:24px;
    margin-bottom: 15px!important;
}

h4 {
    font-family: 'National-2-Medium', Helvetica, Arial, sans-serif;
    font-size:16px;
    line-height: 24px;
}

a {
    color: #CA0018;
    text-decoration: none;
    transition: color .3s;
}

a:hover, a:focus {
    color: #9A0612;
}

b, strong {
    font-family: 'National-2-Bold', Helvetica, Arial, sans-serif;
    font-weight: normal;
    margin-bottom:10px;
}
ul {
    padding-left: 18px;
}

/**
 * Header
 */
#logo {
    width: 36%;
    max-width: 540px;
    position: absolute;
    top: 0;
}
#header-icons {
    position: absolute;
    left: 50px;
    top:50px;
    width: 120px;
}
.icon-print {
    position: absolute;
    top:0px;
    left:0px;
}
.ui.button, .ui.button:hover {
    background: transparent;
    position: absolute;
    right: 0px;
    top:0px;
    margin:0px;
    padding: 0px;
    z-index: 2;
}
.share-box .icons {
    background: white;
    border-radius: 100%;
    border:solid 1px white;
}
.share-box {
    width: 50px;
    height: 0px;
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    transition-duration: 0.5s;
    border-radius: 50px;
    z-index: 1;
}
.open .share-box {
    height: 270px;
    opacity: 1;
}
.share-box a {
    text-align: center;
    position: absolute;
    width:35px;
    height:35px;
    background-color: white;
    background-size: cover;
    background-repeat: no-repeat;
    transition: all 0.3s ease-in-out;
    border-radius: 100%;
    display:none;
    opacity: 0;
}
.open .share-box a {
    display:block;
    opacity:1;
    z-index: 3;
}
.share-box .xing {
    background-image: url("../images/icons/icon-xing.svg");
}
.share-box .linkedin {
    background-image: url("../images/icons/icon-linkedin.svg");
}
.share-box .twitter {
    background-image: url("../images/icons/icon-twitter.svg");
}
.share-box .facebook {
    background-image: url("../images/icons/icon-facebook.svg");
}
.share-box .mail {
    background-image: url("../images/icons/icon-mail.svg");
}
.share-box a:nth-of-type(1) {
    left: 7px;
    top: 54px;
}
.share-box a:nth-of-type(2) {
    left: 7px;
    top: 97px;
}
.share-box a:nth-of-type(3) {
    left: 7px;
    top: 140px;
}
.share-box a:nth-of-type(4) {
    left: 7px;
    top: 183px;
}
.share-box a:nth-of-type(5) {
    left: 7px;
    top: 226px;
}

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1);
        transform: scale3d(0.1, 0.1, 0.1);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale3d(0.5, 0.5, 0.5);
        transform: scale3d(0.5, 0.5, 0.5);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}
@keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1);
        transform: scale3d(0.1, 0.1, 0.1);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale3d(1.2, 1.2, 1.2);
        transform: scale3d(1.2, 1.2, 1.2);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.open .share-box a:nth-of-type(1) {
     -webkit-animation-name: zoomIn;
     animation-name: zoomIn;
     -webkit-animation-duration: 1s;
     animation-duration: 1s;
     animation-delay: .25s;
     -webkit-animation-fill-mode: both;
     animation-fill-mode: both;
 }
.open .share-box a:nth-of-type(2) {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    animation-delay: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.open .share-box a:nth-of-type(3) {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    animation-delay: .75s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.open .share-box a:nth-of-type(4) {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    animation-delay: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.open .share-box a:nth-of-type(5) {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    animation-delay: 1.25s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.sticky-header {
    width:100%;
    max-width: 1200px;
    opacity:0;
    position: fixed;
    top:-100px;
    background: #F5F5F5;
    transition: all .15s ease-in-out;
    z-index: 3;
    padding: 24px 35px;
    box-shadow: 0 4px 15px 0 rgba(0,0,0,0.5);
}
header.sticky .sticky-header {
    opacity:1;
    top:0px;
}
header.sticky .sticky-header h1 {
    margin-bottom:0px;
    margin-top:0px!important;
    width: calc(-150px + 100%);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
#sticky-icons {
    position: absolute;
    right: 35px;
    top: 18px;
    width: 120px;
}
#sticky-icons .share-box {
    
}
#sticky-icons.open .share-box {
    height: 270px;
    opacity: 1;
}

/**
 * Content
 */
.content {
    width:100%;
    max-width:670px;
    margin:0px auto;
    padding:50px 0px;
}
ul {
    margin-top: 0;
    margin-bottom: 0;
    list-style-type: "-";
}
.abstand {
    margin-top: 30px;
}
#infoline {
    padding-top: 10px;
    margin-bottom: 30px;
}
#infoline div{
    display: table-cell;
    font-size: 24px;
    position: relative;
    left: 30px;
}
#infoline div:first-of-type{
    padding-right: 75px;
}
.material-icons {
    position: absolute;
    font-size: 24px !important;
    left: -35px;
    color:#9185be;
}
.company h3, .img-bg h3 {
    margin-bottom: 15px;
}
.link-text {
    margin-top: 10px;
}
.link-text, .link-text a {
    color:#891350;
}
.link-text:hover, .link-text a:hover {
    color:#ed1b2f;
}
.link-text:active, .link-text a:active {
    color:#9185be;
}
.video {
    margin-top: 40px;
}
.video .iframe {
    min-height: 350px;
}
/**
 * Contact.
 */
.grey-bg {
    background-color: #F0F0F0;
    padding: 35px 0px;
}
.grey-bg .content {
    padding:0px;
}
.grey-bg h3 {
    margin-bottom:25px!important;
}
.contact-foto  {
    float: left;
}
.width-66  {
    width: 100%;
    float: right;
    padding-left: 30px;
}
.width-66.specialCase {
    float:left;
    padding-left:0px;
}
#mail-overlay.specialCase .icons {
    width:21px;
    height:21px;
}
.round-img {
    border-radius: 200px;
    -moz-border-radius: 200px;
    -webkit-border-radius: 200px;
    max-width: 150px;
}
#foto-mail {
    position: relative;
    float:left;
    width: 106px;
}
#mail-overlay {
    position: absolute;
    bottom: 0;
    left: 66%;
    cursor: pointer;
}
#mail-overlay.specialCase {
    position: absolute;
    bottom: 15px;
    left: 15%;
    cursor: pointer;
}
.linkedin, .linkedin:hover, .linkedin:active, .linkedin:visited {
    color:transparent!important;
}
.linkedin {
    background-image: url("../images/icons/icon-linkedin.svg");
    background-repeat: no-repeat;
    background-size: 20px;
    position: relative;
    top: 10px;
}
/**
 * Benefits
 */
.company #benefits h3{
    margin-top: 50px;
}
#benefits {
    margin-top: 35px;
    margin-bottom: 35px;
    border-top:solid 1px #ddd;
}
.icons-benefits {
    display: inline-block;
}
.icons-benefits img{
    width: auto;
    height: 40px;
    display:block;
}
.icon-content {
    width: calc(100% - 55px);
    float:right;
    padding-top: 5px;
}
.benefit {
    overflow: hidden;
    padding: 10px 30px 0px 10px;
    background: url("../images/icons/icon-arrow-down.svg") right 10px top 28px no-repeat;
    border-bottom:solid 1px #ddd;
    cursor: pointer;
}
.benefit.open {
    background: #f5f5f5 url("../images/icons/icon-arrow-up.svg") right 10px top 28px no-repeat;
}
.benefit h4 {
    padding-top:6px;
}
.benefit ul{
    opacity: 0;
    height:0px;
    transition: all .15s ease-in-out;
}
.benefit.open ul {
    margin-top: 15px;
    margin-bottom:15px;
    opacity: 1;
    height:120px;
}
.icons-small {
    width: 16px;
    height: 16px;
    margin-left: 5px;
    padding-top: 5px;
}
#benefits .link-text {
    font-family: 'National-2', Helvetica, Arial, sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    padding: 0;
    margin-left: 110px;
    padding-right:20px;
    background: url("../images/icons/icon-arrow-down.svg") no-repeat center right;
    background-size: 16px;
    cursor: pointer;
}
#benefits .link-text:focus {
    outline: none;
}

/**
 * Arbeitsplatz
 */
.company #arbeitsort h3{
    margin-top: 20px;
}
.iframe {
    border: none;
    width: 100%;
    min-height: 270px;
}
.glider-slide img {
    display:block;
}
.glider-prev, .glider-next {
    display: none;
}
.glider-dots {
    position: absolute;
    left: 50%;
    bottom: 15px;
    transform: translateX(-50%);
}

.glider-dot {
    background: none;
    color: #CA0018;
    border: 1px solid #CA0018;
    z-index: 5000;
}
.glider-dot:hover, .glider-dot:focus, .glider-dot.active {
    background: #CA0018;
}
.yellow-bg.ui.grid {
    background-color: #FFF374;
    margin: 0;
}
.yellow-bg.ui.grid>.column:not(.row) {
    padding:0;
}
.yellow-bg .six.wide.computer.column {
    padding: 0px 55px;
    font-family: 'National-2-Medium', Helvetica, Arial, sans-serif;
    position:relative;
}
.yellow-bg .link-text a {
    color:#9185BE;
}
.yellow-bg .link-text a:hover {
    color: #891350;
}
.yellow-bg .link-text a:active {
    color:#891350;
}
.v-centered {
    position:relative;
    top:50%;
    transform: translateY(-50%);
}
.yellow-bg .icons-small {
    margin-left: 0;
}
.blockquote {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}
.blockquote h4{
    font-family: 'National-2', Helvetica, Arial, sans-serif;
    font-size: 18px;
    font-weight: normal;
    margin-bottom: -5px;
}
blockquote:before {
    content: " ";
    position: absolute;
    background: url(../images/icons/icon-blockquote.svg);
    background-repeat: no-repeat;
    background-size: 25px 25px;
    top: 0;
    left: -40px;
    line-height: 1.2em;
    width: 25px;
    height: 25px;
}

/**
 * Team und Karriere
 */
.img-bg {
    background: #EBD7C1;
    margin-top:15px;
}
.img-bg .ui.grid.left{
    padding: 60px 50px 60px 0px;
    margin-left: -1rem;
}
.img-bg .ui.grid.right{
    padding: 60px 0px 60px 50px;
    margin-right: -1rem;
}
.img-bg .ui.grid>*, .img-bg .ui.grid>.column:not(.row), .img-bg .ui.grid>.row>.column {
    padding: 0 1rem 0 0;
}
.img-bg .seven.wide.computer.column, .img-bg .nine.wide.computer.column {
    background: rgba(255,255,255,0.8);
    padding: 0px 0px 0px 45px;
}
.img-bg .ui.grid.right .seven.wide.computer.column, .img-bg .ui.grid.right .nine.wide.computer.column {
    padding:35px;
}
.img-bg .ui.grid.left img  {
    display: block;
}
.abstand-rechts {
    margin-right: 50px;
}
.img-bg .link-text {
    padding-top: 15px;
}
#karriere-logos {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    display: table;
}
#karriere-logos .item {
    width:33%;
    display: table-cell;
    text-align: left
}
#karriere-logos img {
    display: inline-block;
    width:100px;
    height:auto;
}
#karriere-logos #logo2 {
    width:158px;
    height:100px;
}
/**
 * Footer
 */
footer {
    text-align: center;
    padding: 50px;
}
.apply{
    margin: 25px 0px 0px;
    overflow: auto;
}
a.apply-btn {
    background: #9185be;
    border-radius:6px;
    padding: 10px 80px;
    color: #fff;
    font-family: 'National-2-Bold', Helvetica, Arial, sans-serif;
    display: block;
    width: 275px;
    margin: 0 auto;
    text-align: center;
}
a.apply-btn:hover {
    background-color: #891350;
}
a.apply-btn:active {
    background-color: #ED1B2F;
}
.follow {
    padding-top: 50px;
}
.follow h3 {
    margin-bottom: 30px!important;
}
.follow a{
    margin-left: 40px;
}
.follow a:first-of-type{
    margin-left: 0;
}

/**
 * Modals
 */
.ui.dimmer {
    z-index: 1001;
}
.ui.modal {
    top:10%;
    border-radius: 0px;
    background: transparent;
}
.modal .modal-content {
    width: 100%;
    max-width: 930px;
    margin:0 auto;
    padding:0px;
    position:relative
}
.modal iframe {
    width:100%;
    display:block;
    min-height: 680px;
    overflow: hidden;
}
.contact-modal iframe {
    min-height: 980px;
}
.modal-close {
    transition: color .1s ease;
    -o-box-shadow: 0 0 10px rgba(0,0,0,.5);
    -ms-box-shadow: 0 0 10px rgba(0,0,0,.5);
    box-shadow: 0 0 10px rgba(0,0,0,.5);
    background: white;
    text-align: center;
    text-decoration: none;
    color: #fff;
    border-radius: 50%;
    border: 2px solid #fff;
    top: -10px!important;
    right: -10px!important;
    cursor: pointer;
    z-index: 8040;
    position: absolute;
    width: 36px;
    height: 36px;
}
.modal-close:hover {
    color:#fff;
}
.modal-close:before {
    font-weight: lighter;
    font-size: 32px;
    line-height: 30px;
    content: "\00d7"!important;
    transform: rotate(45deg);
    color:#B60B19;
}


@media screen and (max-width: 670px) {
    .modal iframe {
        min-height: 850px;
    }
    .contact-modal iframe {
        min-height: 1200px;
    }
}

/**
 * Only
 */
.print-only {
    display:none;
}
.mobile-only{
    display:none;
}
.mobile-team{
    display:none;
}
/* To the Top Button*/
#tothetop {
    display: none;
    text-align: center;
    z-index: 1000;
    cursor: pointer;
    padding-top: 50px;
}
/**
 * Media Queries
 */

@media screen and (max-width: 1150px) {
    .img-bg .seven.wide.computer.column {
        padding: 35px;
    }
}
@media screen and (max-width: 1110px) {
    .img-bg .seven.wide.computer.column {
        padding: 25px;
    }
    .content, .grey-bg {
        padding: 50px 0px;
    }
}
@media screen and (max-width: 1055px) {
    .img-bg .seven.wide.computer.column, .img-bg .nine.wide.computer.column {
        width: 100% !important;
        margin-bottom: 0;
    }
    .img-bg .ui.grid {
    padding-top: 80px;
    }
    .mobile-team {
        display: block;
    }
}
@media screen and (max-width: 900px) {
    .yellow-bg .six.wide.computer.column {
        padding: 80px 35px;
    }
}
@media screen and (max-width: 767px) {

    .img-bg .ui.grid {
        padding: 50px;
    }
    h1 {
        font-size:25px;
        line-height:32px;
    }
    #infoline div {
        font-size: 20px;
        line-height: 22px;
        left: 20px;
    }
    #infoline {
        padding-top: 15px;
        margin-bottom: 20px;
    }
    .material-icons {
        font-size: 20px !important;
        left: -27px;
    }
    .linkedin {
        background-size: 35px;
        height: 35px;
        width: 35px;
        display: inline-block;
    }
    .secondary {
        margin-top:20px;
        margin-bottom:20px;
    }
    .icons-benefits {
        width:60px;
    }
    .icons-benefits img {
        width:auto;
        height:60px;
    }
    .icon-content {
        width: calc(100% - 80px);
    }
    #karriere-logos {
        text-align: center;
    }
    #karriere-logos #logo1{
        padding-left: 0;
        padding-right: 50px;
    }
    .ui.modal {
        width: 95%;
    }
    .ui.modal>.content{
        padding: 0 !important;
    }
    .modals.dimmer .ui.scrolling.modal {
        margin:0;
    }
    .ui.modal>.close {
        color: #fff;
    }
    .yellow-bg .six.wide.computer.column {
        padding: 30px;
        text-align: center;
    }
    #tothetop:hover {
        color: #CA0018;
    }
    #tothetop.show {
        opacity: 1;
        display: block;
    }
    .content, .grey-bg, footer {
        padding: 35px 20px;
    }
    #mail-overlay.specialCase {
        position: absolute;
        bottom: 13px;
        left: 12%;
        cursor: pointer;
    }
    #mail-overlay.specialCase .icons {
        width:35px;
        height: 35px;
    }
}
@media screen and (max-width: 580px) {
    #mail-overlay.specialCase {
        position: absolute;
        bottom: -30px;
        left: calc(50% - 17px);
        cursor: pointer;
    }
    #mail-overlay.specialCase .icons {
        width:35px;
        height: 35px;
    }
    .desktop {
        display: none;
    }
    .mobile-only {
        display: block;
    }
    .grey-bg {
        padding-bottom:50px;
    }
    #header-icons {
        left: 20px;
        top: 20px;
        width: 35px;
    }
    .width-33, .width-66 {
        width: 100%;
        clear: both;
        padding-left: 0;
    }
    .video .iframe {
        min-height: 250px;
    }
    .grey-bg {
        text-align: center;
    }
    .img-bg .ui.grid {
        padding: 35px 20px;
    }
    #karriere-logos img {
        width: 70px;
        height:auto;
    }
    #karriere-logos #logo2 {
        width:108px;
        height:auto;
    }
    a.apply-btn {
        padding: 10px 75px;
    }
    .follow a {
        margin-left: 20px;
    }
    .follow a:first-of-type {
        margin-left: 0;
    }
    #benefits .link-text {
        margin-left:0px;
    }
    header .icons {
        width:35px;
        height:35px;
    }
    .sticky-header {
        top:-200px;
        padding: 20px
    }
    header.sticky .sticky-header h1 {
        width: calc(-50px + 100%);
        margin-bottom:0px;
        font-size: 22px;
        line-height: 22px;
        padding-right:0px;
    }
    header.sticky .header-icons {
        top: -9px;
        right: 0;
    }
    .share-box {
        width:35px;
    }
    .open .share-box, #sticky-icons.open .share-box {
        height: 210px;
    }
    .share-box a {
        width: 25px;
        height: 25px;
    }
    .share-box a:nth-of-type(1) {
        left: 5px;
        top: 40px;
    }
    .share-box a:nth-of-type(2) {
        left: 5px;
        top: 75px;
    }
    .share-box a:nth-of-type(3) {
        left: 5px;
        top: 110px;
    }
    .share-box a:nth-of-type(4) {
        left: 5px;
        top: 145px;
    }
    .share-box a:nth-of-type(5) {
        left: 5px;
        top: 180px;
    }
    #sticky-icons {
        right: 21px;
        top: 11px;
    }
    #foto-mail, .contact-foto {
        float:none;
        margin: 0 auto;
    }
    .benefit.open ul {
        height:310px;
    }
    .img-bg .ui.grid.left {
         padding-right:35px;
     }
    .img-bg .ui.grid.right {
        padding-left:35px;
        padding-right:35px;
    }
    .img-bg .nine.wide.computer.column {
        padding-left:0px;
    }
    .blockquote {
        margin-top:0px;
    }
    .img-bg .ui.grid.right .seven.wide.computer.column, .img-bg .ui.grid.right .nine.wide.computer.column {
        padding:20px;
    }
    .abstand-rechts {
        margin-right: 35px;
    }
}
@media screen and (max-width: 420px) {
    .video .iframe {
        min-height: 180px;
    }

}
