@font-face {
    font-family: develappers;
    src: url(../font/develappers.eot);
    src: url(../font/develappers.eot?#iefix) format("embedded-opentype"), url(../font/develappers.woff) format("woff"), url(../font/develappers.ttf) format("truetype"), url(../font/develappers.svg#develappers) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* open-sans-300 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local(''), url('../font/open-sans-v18-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-300italic - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 300;
    src: local(''), url('../font/open-sans-v18-latin-300italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-300italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local(''), url('../font/open-sans-v18-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-italic - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 400;
    src: local(''), url('../font/open-sans-v18-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-600 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local(''), url('../font/open-sans-v18-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-600italic - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 600;
    src: local(''), url('../font/open-sans-v18-latin-600italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-600italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-700 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local(''), url('../font/open-sans-v18-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-700italic - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 700;
    src: local(''), url('../font/open-sans-v18-latin-700italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-700italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-800 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 800;
    src: local(''), url('../font/open-sans-v18-latin-800.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-800.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/* open-sans-800italic - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 800;
    src: local(''), url('../font/open-sans-v18-latin-800italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
    url('../font/open-sans-v18-latin-800italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

.m-0 {
    margin: 0 !important;
}

.mt-0,
.my-0 {
    margin-top: 0 !important;
}

.mr-0,
.mx-0 {
    margin-right: 0 !important;
}

.mb-0,
.my-0 {
    margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
    margin-left: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.mt-1,
.my-1 {
    margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
    margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
    margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
    margin-left: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.mt-2,
.my-2 {
    margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
    margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
    margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
    margin-left: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.mt-3,
.my-3 {
    margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
    margin-right: 1rem !important;
}

.mb-3,
.my-3 {
    margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
    margin-left: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.mt-4,
.my-4 {
    margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
    margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
    margin-left: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.mt-5,
.my-5 {
    margin-top: 3rem !important;
}

.mt-6,
.my-6 {
    margin-top: 4rem !important;
}

.mr-5,
.mx-5 {
    margin-right: 3rem !important;
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
    margin-left: 3rem !important;
}

textarea {
    resize: none;
}

[data-icon]:before {
    content: attr(data-icon)
}

[class*=" icon-"]:before, [class^=icon-]:before, [data-icon]:before {
    font-family: develappers !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

*, div {
    box-sizing: border-box
}

html {
    font-size: 10px
}

body, html {
    min-height: 100vh;
    height: auto
}

body {
    font-family: Open Sans,Arial,"sans-serif";
    font-size: 1.4rem;
    background-color: #f4f7f6
}

img {
    max-width: 100%;
    height: auto
}

h1, h2, h3, h4, h5, h6 {
    letter-spacing: .14rem
}

h2 {
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1.5
}

h3 {
    font-size: 2.2rem;
    margin: 3rem 0 2rem 0;
    font-weight: 500;
}

main h2 {
    margin: 4rem 0 3rem 0;
}

.mainBottom p {
    display: flow-root
}

/* h1 */
.subheading-big {
    font-size: 3rem;
    margin: 2rem 0 1rem 0;
    font-weight: 500;
    line-height: 1.1;
}

/* h2 */
.subheading-h2-style {
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1.5; 
    margin: 4rem 0 3rem 0;
}

/* h3 */
.subheading-h3-style {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.4;
    margin: 3rem 0 2rem 0;
}

/* h4 */
.subheading-h4-style {
    font-size: 1.625rem;
    font-weight: 600;
    line-height: 1.4;
    margin: 2.5rem 0 1.5rem 0;
}

/* h5 */
.subheading-h5-style {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 2rem 0 1rem 0;
}

/* h6 */
.subheading-h6-style {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 1.5rem 0 0.75rem 0;
}

/* lists starting with 'a)', 'b)' etc. (included in some markdown texts) */
ol[type="a"] li {
    padding-left: 1rem;
    margin-bottom: 0.5rem;
    line-height: 1.5;
}

/* lists starting with '(1)', '(2)' etc. (included in some markdown texts) */
ol.numbered-parens li {
    padding-left: 0;
    margin-bottom: 0.5rem;
    line-height: 1.5;
}

/* To create bracket surrounded numbers as list item counters (e.g. "(n)") we use CSS counters */
ol.numbered-parens {
    list-style: none;
    counter-reset: parens-counter;
}

ol.numbered-parens li {
    counter-increment: parens-counter;
    padding-left: 0;
    margin-bottom: 0.5rem;
}

ol.numbered-parens li::before {
    content: "(" counter(parens-counter) ") ";
}

b, strong {
    font-weight: 800
}

p {
    font-size: 1.7rem;
    line-height: 1.7;
    margin-bottom: 25px;
}

li {
    font-size: 1.7rem;
    font-weight: 400;
}

.inline-image {
    display: block;
    margin-bottom: 5px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width:640px) {
    h1 {
        font-weight: 300;
        font-size: 4rem
    }

    p {
        font-size: 1.4rem;
    }

    li {
        font-size: 1.4rem;
    }
}

.alert-header {
    font-size: 14px;
    margin: 10px 0 10px 0;
    font-weight: 500;
}

.flowroot {
    display: flow-root
}


.aside-box {
    background: #fff;
    margin: 0 0 3.8rem;
    padding: 2rem; 
}

.text-align-center {
    text-align: center;
}

.text-align-right {
    text-align: right;
}

.centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.text-align-justify {
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
    -webkit-hyphens: auto;
}

.aside-box > div:not(div.aside-social) {
    display: flow-root;
}

.aside-box > div:first-of-type {
    text-transform: uppercase;
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 4rem;
    font-weight: 600;
    letter-spacing: .16rem
}

.aside-box > div:first-of-type:after {
    background-color: #2075b8;
    content: "";
    display: block;
    height: 2px;
    top: 14px;
    position: relative;
    vertical-align: middle;
    margin: auto;
    width: 64px
}


.aside-box > div:before {
    background-color: #BFBFBF;
    content: "";
    display: block;
    height: 1px;
    top: 14px;
    clear: both;
    vertical-align: middle;
    margin: auto;
    margin-right: auto;
    margin-bottom: 3rem;
    margin-top: 3rem;
    width: 200px
}

.aside-box > div:nth-of-type(1):before,
.aside-box > div:nth-of-type(2):before {
    content: none;
}


.aside-textbox-workshop {
    background: #fff;
    margin: 0 0 3.8rem;
    padding: 2rem
}

.aside-box-workshop {
    background: #fff;
    margin: 0 0 2.0rem;
    padding: 2rem
}

.aside-box-workshop > div:first-of-type {
    text-transform: uppercase;
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 4rem;
    font-weight: 600;
    letter-spacing: .16rem
}

.aside-box-workshop > div:first-of-type:after {
    background-color: #2075b8;
    content: "";
    display: block;
    height: 2px;
    top: 14px;
    position: relative;
    vertical-align: middle;
    margin: auto;
    width: 64px
}

.aside-box-textbox-workshop {
    background: #fff;
    margin: 0 0 2.0rem;
    padding: 2rem
}

.aside-box-group {
    margin: 0 0 3.8rem
}

.aside-box-group .aside-box {
    margin: 1px 0
}

.aside-booking {
    padding: 20px 0 0
}

.aside-booking div:not(first-of-type) {
    margin: 0 20px;
}

.aside-booking a.full-width {
    margin-top: 20px;
}

.aside-contact {
    border: 1px solid #000;
    padding: 20px 0 0
}

.aside-contact textarea {
    padding: 20px;
    width: 100%;
    border: none;
}

.aside-contact input {
    padding: 20px;
    width: 100%;
    border: none;
}

.aside-contact button {
    border: none;
    border-top: 1px solid #000
}

.aside-contact-workshop {
    padding: 20px 0;
}

.aside-contact-workshop textarea {
    padding: 20px;
    width: 100%;
    border: none;
}

.aside-contact-workshop input {
    padding: 20px;
    width: 100%;
    border: none;
    margin-bottom: 1rem;
}

.aside-contact-workshop button {
    border: 1px solid #000
}

.aside-contact-person {
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 0;
    min-height: 60px;
}

.aside-contact-picture-mh {
    background: transparent url(../img/contact_mh-aside.png) no-repeat 0 0;
    background-size: 59px;
}

.aside-contact-picture-bb {
    background: transparent url(../img/contact_bb-aside.png) no-repeat 0 0;
    background-size: 59px;
}

.aside-contact-picture-mk {
    background: transparent url(../img/contact_mk-aside.png) no-repeat 0 0;
    background-size: 59px;
}

.aside-contact-picture-aw {
    background: transparent url(../img/contact_aw-aside.png) no-repeat 0 0;
    background-size: 59px;
}

.aside-contact-person > div {
    font-weight: 600;
    line-height: 1.6
}

.aside-contact-person > div:first-of-type {
    padding-left: 7rem;
    text-transform: uppercase;
    letter-spacing: .16rem
}

.aside-contact-person > div:nth-of-type(2) {
    padding-left: 7rem;
    color: #2075b8
}

.aside-sub-headline {
    font-weight: 600;
    letter-spacing: .16rem;
    color: black;
    font-size: 1.8rem;
    margin-bottom: 2rem;
    text-transform: uppercase
}

.aside-social{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    width: 50%
}

.benefits-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.benefits-row > div {
    color: #000;
    border: none;
    display: block;
    height: 42px;
    width: 42px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 2.5rem;
    padding-top: 4px
}


.aside-social > a {
    color: #000;
    border: 1px solid #000;
    display: block;
    height: 42px;
    width: 42px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 2rem;
    padding-top: 4px
}

.aside-social > a:active, .aside-social > a:focus, .aside-social > a:hover {
    text-decoration: none;
    color: #fff;
    background: #000
}

.filtr-item.reference-item {
padding: 10px 15px 40px 15px;
width: inherit;
} 


@media (min-width:893px) {

    .filtr-item.reference-item {
        padding: 0;
    }
}

@media (min-width:990px) {

    h1 {
        font-weight: 300;
        font-size: 4rem
    }


     

    .aside-contact {
        border: none
    }

        .aside-contact button {
            border: 1px solid #000
        }

    .aside-contact-workshop {
        border: none
    }

    .aside-contact-workshop button {
        border: 1px solid #000
    }

    .aside-right {
        position: relative;
        margin: auto
    }

    .aside-right main > div > div, .aside-right main section > div {
            /*padding-right: 36%;*/
            width: 62%;
            float: left;
        }

        .aside-right aside {
            width: 36%;
            padding: 4rem 0 0 5.6rem;
            /*position: absolute;*/
            right: 0;
            top: 0;
            float: right;
        }

    .aside-sub-headline {
        font-size: 1.2rem
    }

}

.navbar {
    border: none;
    padding: 1.2rem 0;
    width: 1170px;
    margin: auto;
    max-width: 100%
}

    .navbar .navbar-toggle .icon-bar {
        background-color: #000;
        width: 38px;
        height: 3px
    }

        .navbar .navbar-toggle .icon-bar + .icon-bar {
            margin-top: 8px
        }

    .navbar #navbar {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        max-width: fit-content;
    }

    .navbar .navbar-brand {
        height: auto;
    }

    .navbar .nav.navbar-nav a {
        font-family: Open Sans,Arial,"sans-serif";
        font-size: 1.4rem;
        text-transform: uppercase;
        color: #000
    }

.navbar-default {
    position: relative;
    width: 1500px;
}
    
    .navbar .navbar-default .navbar-nav > .active > a:focus, .navbar .navbar-default .navbar-nav > .active > a:hover, .navbar .navbar-nav > .active > a {
        color: #555;
        background-color: transparent !important;
        border-bottom: 2px solid #2075b8
    }

    .navbar .nav > li > a {
        margin: 0 8px;
        padding: 12px 0
    }

        .navbar .nav .open > a, .navbar .nav .open > a:focus, .navbar .nav .open > a:hover, .navbar .nav > li > a:focus, .navbar .nav > li > a:hover {
            background-color: transparent
        }

    .navbar .navbar-nav > li > .dropdown-menu {
        border: none;
        box-shadow: none;
        margin-left: 15px
    }

@media (min-width:428px) and (max-width:767px) {
    .navbar .navbar-header {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media (max-width:768px) {
    .navbar .navbar-header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .navbar .navbar-toggle {
        position: absolute;
        right: 0;
        top: 20px;
        border: none;
        border-radius: 0
    }
}

@media (min-width:768px) {
    .navbar > .container-fluid {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: center;
    }

    .inline-image {
        display: inline-block;
        margin-bottom: 5px;
        margin-right: 15px;
        max-width: 25%;
        float: left;
    }

}

@media (min-width:768px) and (max-width:1199px) {
    .navbar .navbar-header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 1;
        -ms-flex: 1 0 100%;
        flex: 1 0 100%
    }

    .navbar #navbar, .navbar .navbar-header {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .navbar #navbar {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
}

@media (min-width:1200px) {
    .navbar .navbar-header {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 200px;
        flex: 0 1 200px
    }
}

@media (min-width:1400px) {
    .navbar .nav > li > a {
        margin: 0 15px
    }

    .navbar .nav.navbar-nav a {
        letter-spacing: .14rem
    }
}

.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
    background-color: transparent;
    outline-offset: -2px;
    outline: 5px auto -webkit-focus-ring-color;
}

.dropdown-toggle:focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px;
}

.swipe {
    visibility: hidden;
    padding: 82px 0 24px
}

.swipe, .swipe-wrap {
    overflow: hidden;
    position: relative
}

    .swipe-wrap > div {
        float: left;
        width: 100%;
        position: relative;
        text-align: center
    }

#slider {
    background: #fff;
    min-height: 200px
}

.swipe-navigation {
    width: 100%;
    height: 64px;
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #fff;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

    .swipe-navigation > div {
        padding: 0 1rem
    }

        .swipe-navigation > div:first-child, .swipe-navigation > div:last-child {
            cursor: pointer
        }

@media (min-width:990px) {
    .swipe-navigation {
        width: 144px
    }

    .swipe {
        padding: 64px 0 24px;
        margin: 6rem 0
    }
}

.header-home {
    padding: 4rem 0
}

.header-logo {
    max-width: 200px;
}

.header-home h1 {
    letter-spacing: 0;
    font-size: 4rem !important;
}

.header-home-skills {
    position: relative;
    pointer-events: none
}

.header-home-skill {
    float: left;
    border: 1px solid #fff;
    height: 0;
    min-height: 200px;
    width: 100%;
    padding-bottom: 70%;
    margin-bottom: -1px
}

    .header-home-skill p {
        padding: 4rem 4%;
        font-size: 1.9rem;
        line-height: 1.58
    }

.header-home-skill-headline {
    font-weight: 800;
    font-size: 2.5rem;
    padding: 20px 4% 0;
    text-transform: uppercase;
    letter-spacing: .14rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (min-width:570px) {
    .header-home-skill {
        padding-bottom: 30%;
    }

    .header-home h1 {
        font-size: 5rem;
    }
}

@media (min-width:735px) {
    .header-home-skill {
        width: 50%;
        padding-bottom: 50%
    }

        .header-home-skill:nth-of-type(2n) {
            position: relative;
            left: -1px
        }
}

.header-home-skill p {
    font-size: 1.5rem;
}

@media (min-width:990px) {
    .header-home .header-jumbo-text {
        max-width: 1170px;
        position: absolute;
        padding-top: 0
    }

    .header-home .header-jumbo-text p {
        width:  50%
    }

    .header-home-skills {
        min-height: 706px;
        margin-top: 160px
    }

    .header-home-skill {
        height: 236px;
        width: 236px;
        padding-bottom: 0;
        position: absolute !important
    }

        .header-home-skill p {
            padding: 8px 14px;
            font-size: 1.3rem;
        }

        .header-home-skill:first-of-type {
            left: inherit;
            right: 156px !important
        }

        .header-home-skill:nth-of-type(2) {
            left: inherit;
            right: 0 !important;
            top: 354px
        }

        .header-home-skill:nth-of-type(3) {
            left: inherit;
            right: 235px !important;
            top: 235px
        }

        .header-home-skill:nth-of-type(4) {
            left: inherit;
            right: 235px !important;
            top: 470px
        }

        .header-home-skill:nth-of-type(5) {
            left: inherit;
            right: 705px !important;
            top: 370px
        }

        .header-home-skill:nth-of-type(6) {
            left: inherit;
            right: 470px !important;
            top: 470px
        }

    .header-home-skill-headline {
        font-size: 1.5rem;
        padding: 20px 14px 0
    }
}

.home-services .container, .home-workshops .container, .workshops {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box
}

.home-service {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    margin: 1px;
    text-align: center;
    padding: 90px 38px 50px;
    color: #ababab;
    position: relative;
    min-height: 300px;
    z-index: 2;
    overflow: hidden;
    background: #fff
}

.home-workshop {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    margin: 1px;
    text-align: left;
    padding: 30px 38px 60px;
    color: #ababab;
    position: relative;
    min-height: 300px;
    z-index: 2;
    overflow: hidden;
    background: #fff
}

.home-workshop-header {
    height: 3.3em;
}

    .home-service a {
        width: 50%;
        position: absolute;
        z-index: 4;
        left: 25%;
        bottom: 25px
    }

.home-workshop a {
    z-index: 4;
    position: absolute;
    bottom: 25px;
    
}


        .home-workshop div {
            font-size: 1.4rem;
            line-height: 1.7;
            margin-bottom: 15px
        }
    .home-workshop div:last-of-type {
        margin-bottom: 35px
    }

            .home-workshop div li {
                font-size: 1.4rem;
            }

            .home-service p {
                font-size: 1.4rem;
                line-height: 1.7;
                margin-bottom: 65px
            }



.home-service:nth-of-type(2):after {
    background: transparent url(../img/icon-section-consulting.png) no-repeat center;
    background-size: 42px;
}

    .home-service:nth-of-type(3):after {
        background: transparent url(../img/icon-section-code.png) no-repeat center;
        background-size: 42px;
    }

    .home-service:nth-of-type(4):after {
        background: transparent url(../img/icon-section-cloud.png) no-repeat center;
        background-size: 42px;
    }

    .home-service:nth-of-type(5):after {
        background: transparent url(../img/icon-section-test.png) no-repeat center;
        background-size: 42px;
    }

    .home-service:nth-of-type(6):after {
        background: transparent url(../img/icon-section-ai.png) no-repeat center;
        background-size: 42px;
    }

    .home-service:nth-of-type(7):after {
        background: transparent url(../img/icon-section-security.png) no-repeat center;
        background-size: 42px;
    }



    .home-service:after {
        content: "";
        display: block;
        height: 100px;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 3
    }

    .home-service h2, .home-service h3, .home-service h4, .home-service h5, .home-service h6,
    .home-workshop h2, .home-workshop h3, .home-workshop h4, .home-workshop h5, .home-workshop h6 {
        font-weight: 600;
        font-size: 1.9rem;
        color: #000
    }


@media (min-width:640px) {
    .home-service, .home-workshop {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 49%;
        flex: 1 1 49%
    }

    .main-bottom-cities {
        min-height: 100px;
    }
}

@media (min-width:990px) {
    .home-service, .home-workshop {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 32%;
        flex: 1 1 32%
    }

    .main-bottom-cities {
        min-height: 700px;
    }
}

.home-customer {
    text-align: center;
    color: #ababab;
    position: relative;
    height: 130px;
    margin: 3rem 0;
    padding: 1rem;
    background: transparent url(../img/customer-funkwerk.png) no-repeat 50%
}

    .home-customer a {
        display: none;
        width: 50%;
        margin-top: 3rem
    }

    .home-customer > div {
        display: none
    }

        .home-customer > div:first-of-type {
            color: #2075b8;
            text-transform: uppercase;
            font-weight: 600
        }

        .home-customer > div:nth-of-type(2) {
            color: #ababab
        }

    .home-customer.focus, .home-customer:active, .home-customer:focus, .home-customer:hover {
        background: transparent
    }

        .home-customer.focus a, .home-customer:active a, .home-customer:focus a, .home-customer:hover a {
            display: inline-block
        }

        .home-customer.focus > div, .home-customer:active > div, .home-customer:focus > div, .home-customer:hover > div {
            display: block
        }

.home-customers .grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
    width: 100%
}

@media (min-width:640px) {
    .home-customers .grid {
        grid-template-columns: repeat(auto-fill, minmax(49%, 1fr));
    }
}

@media (min-width:990px) {
    .home-customers .grid {
        grid-template-columns: repeat(auto-fill, minmax(32%, 1fr));
    }
}

.home-customer-scoolio {
    background: transparent url(../img/customer-logos/logo-scoolio.png) no-repeat 50%;
    background-size: 50%;
    filter: grayscale(1);
}

.home-customer-verkehrsmuseum {
    background: transparent url(../img/customer-logos/logo-verkehrsmuseum.png) no-repeat 50%;
    background-size: 50%;
}

.home-customer-billomat {
    background: transparent url(../img/customer-billomat.png) no-repeat 50%;
    background-size: 90%;
}

.home-customer-caterna {
    background: transparent url(../img/customer-logos/logo-caterna.png) no-repeat 50%;
    background-size: 50%;
}

.home-customer-htw {
    background: transparent url(../img/customer-logos/logo-htw.png) no-repeat 50%;
    background-size: 30%;
}

.home-customer-caresmart {
    background: transparent url(../img/customer-caresmart.png) no-repeat 50%;
    background-size: 41%;
}

.home-customer-sunfire {
    background: transparent url(../img/customer-logos/logo-sunfire.png) no-repeat 50%;
    background-size: 50%;
}

.home-customer-test4 {
    background: transparent url(../img/customer-test4.png) no-repeat 50%
}

.home-customer-ottobock {
    background: transparent url(../img/customer-logos/logo-ottobock.png) no-repeat 50%;
    background-size: 50%;
}

.home-customer-fsd {
    background: transparent url(../img/customer-logos/logo-fsd.png) no-repeat 50%;
    background-size: 30%;
}

.home-customer-propilots {
    background: transparent url(../img/customer-propilots.png) no-repeat 50%
}

.distance-ratings {
    margin-top: 10px;
}

.filtr-container {
    margin-bottom: 40px;
}

.hidden {
    opacity: 0;
    position: absolute;
}

.border-background {
    border: none;
    background: none;
}

.distance-footer {
    margin-bottom: 100px;
}

.height-image-srh {
    max-height: 120px;
}

.partners .container,
.group-members .container,
.home-technologies .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.partner,
.group-member,
.home-technology {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 49%;
    flex: 1 1 49%;
    margin: 1px;
    text-align: center;
    padding: 138px 0 0;
    color: #000;
    position: relative;
    height: 218px;
    z-index: 2;
    font-weight: 600;
    font-size: 1.9rem;
    background: #fff
}

    .home-technology .home-technology-icon {
        position: absolute;
        text-align: center;
        top: 58px;
        width: 100%;
        font-size: 3rem
    }

.home-technology-asp {
    background: #fff url(../img/technology-asp.webp) no-repeat center 70px;
    background-size: 45px;
}

.home-technology-azure {
    background: #fff url(../img/technology-azure.webp) no-repeat center 70px;
    background-size: 21%;
}

.home-technology-xamarin {
    background: #fff url(../img/technology-xamarin.webp) no-repeat center 70px;
    background-size: 21%;
}

.home-technology-ios {
    background: #fff url(../img/technology-ios.webp) no-repeat center 70px;
    background-size: 21%;
}

.home-technology-android {
    background: #fff url(../img/technology-android.webp) no-repeat center 70px;
    background-size: 21%;
}

.home-technology-angular {
    background: #fff url(../img/technology-angular.webp) no-repeat center 70px;
    background-size: 21%;
}

.partner,
.group-member {
    position: relative;
    margin: 10px;
}

.partner.placeholder,
.group-member.placeholder {
    background-color: transparent;
    display: none;
}


.partner img,
.group-member img {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px;
}

@media (min-width:640px) {
    .partner,
    .group-member,
    .home-technology {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 32%;
        flex: 1 1 32%
    }

    .partner.placeholder.show-tile-2,
    .group-member.placeholder.show-tile-2 {
        display: initial;
    }
}

@media (min-width:990px) {
    .partner,
    .group-member,
    .home-technology {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        height: 180px;
        background-position: center 60px;
        padding: 112px 0 0
    }

    .partner.placeholder,
    .group-member.placeholder {
        display: initial;
    }
}

    .partner.transparent.microsoft,
    .group-member.transparent.microsoft {
        background: none !important;
    }

.home-career {
    min-height: 850px;
    background: linear-gradient(80deg,#194f67,#194f67 21%, #2b7655 60%, #3e9e43);
    text-align: center;
    padding: 186px 0 2rem;
    color: #fff;
}

    .home-career p {
        font-size: 1.9rem;
        max-width: 50rem;
        display: block;
        margin: 0 auto 4rem
    }

    .home-career a {
        font-size: 1.9rem;
        font-weight: 600;
        padding: 1.4rem 3rem
    }

.home-career-headlline {
    display: inline-block;
    font-size: 2rem;
    font-weight: 700;
    border-left: 8px solid #fff;
    border-right: 8px solid #fff;
    padding: 4rem 4rem;
    position: relative;
    max-width: 100%
}

    .home-career-headlline:after, .home-career-headlline:before {
        background: #fff;
        content: "";
        display: block;
        height: 8px;
        position: absolute;
        z-index: 0
    }

    .home-career-headlline:before {
        width: 50%;
        top: 0;
        left: 0
    }

    .home-career-headlline:after {
        width: 36%;
        bottom: 0;
        right: 0
    }

    .home-career-headlline .home-career-headlline-border:after, .home-career-headlline .home-career-headlline-border:before {
        background: #fff;
        content: "";
        display: block;
        height: 8px;
        position: absolute;
        z-index: 0
    }

    .home-career-headlline .home-career-headlline-border:before {
        width: 24%;
        top: 0;
        right: 0
    }

    .home-career-headlline .home-career-headlline-border:after {
        width: 36%;
        bottom: 0;
        left: 0
    }

.home-career-claim {
    font-weight: 800;
    font-size: 5rem;
    margin: 8rem 0 2rem
}

@media (min-width:400px) {
    .home-career-headlline {
        font-size: 4rem
    }

    .home-career-claim {
        font-size: 3rem;
    }
}

@media (min-width:640px) {
    .home-career {
        padding: 300px 0 4rem
    }

    .home-career a, .home-career p {
        font-size: 1.6rem
    }

    .home-career-claim {
        margin: 3rem 0 0
    }
}

@media (min-width:990px) {
    .home-career-headlline {
        font-size: 6rem
    }

    .home-career-claim {
        font-size: 5rem;
    }
}

.home-memorials {
    /*display:flex;
    flex-wrap:wrap;*/
}

.home-review-item {
    margin: 30px 0;
}


.contact-widget {
    display: none;
    position: absolute;
    top: 368px;
    right: 4%;
    width: 86px;
    background: #fff;
    border: 1px solid #000;
    border-bottom: none;
    z-index: 9;
}

.contact-widget-social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .contact-widget-social a {
        display: inline-block;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 50%;
        flex: 1 1 49%;
        text-align: center;
        height: 42px;
        color: #000;
        font-size: 1.8rem;
        border-bottom: 1px solid #000;
        line-height: 48px
    }

        .contact-widget-social a:nth-of-type(2n) {
            border-left: 1px solid #000
        }

        .contact-widget-social a:active, .contact-widget-social a:focus, .contact-widget-social a:hover {
            color: #fff;
            background: #000;
            text-decoration: none
        }

.contact-widget-write-us {
    text-align: center;
    text-transform: uppercase;
    padding: 76px 2px 26px;
    background: transparent url(../img/contact.png) no-repeat center 22px;
    font-weight: 600;
    cursor: pointer;
    position: relative;
    border-bottom: 1px solid #000
}

.contact-widget.contact_mk .contact-widget-write-us {
    background: transparent url(../img/contact_mk-aside.png) no-repeat center 22px;
    background-size: 42px;
}

.contact-widget.contact_bb .contact-widget-write-us {
    background: transparent url(../img/contact_bb-aside.png) no-repeat center 22px;
    background-size: 42px;
}

.contact-widget.contact_mh .contact-widget-write-us {
    background: transparent url(../img/contact_mh-aside.png) no-repeat center 22px;
    background-size: 42px;
}

.contact-widget-form-visible .contact-widget-form, .contact-widget-write-us:active .contact-widget-form, .contact-widget-write-us:focus .contact-widget-form {
    display: block
}

.contact-widget-form {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 350px;
    border: 1px solid #000;
    margin: -1px -1px 0 0;
    background: #fff url(../img/contact.png) no-repeat 10px 18px;
    text-align: left
}

.contact-widget.contact_mk .contact-widget-form {
    background: #fff url(../img/contact_mk-aside.png) no-repeat 10px 18px;
    background-size: 42px;
    z-index: 100;
}

.contact-widget.contact_bb .contact-widget-form {
    background: #fff url(../img/contact_bb-aside.png) no-repeat 10px 18px;
    background-size: 42px;
}

.contact-widget.contact_mh .contact-widget-form {
    background: #fff url(../img/contact_mh-aside.png) no-repeat 10px 18px;
    background-size: 42px;
}


.contact-widget-form textarea {
    width: 100%;
    padding: 1rem 1.4rem;
    border: 0
}

.contact-widget-form input {
    width: 100%;
    padding: 1rem 1.4rem;
    border: 0
}

.contact-widget-form button {
    width: 100%;
    border: none;
    border-top: 1px solid #000;
    padding: 1.8rem 1rem
}

.contact-widget-contact-person {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.4rem;
    margin: 2rem 1rem .4rem 6.2rem
}

.contact-widget-contact-type {
    color: #ababab;
    margin: 0 1rem 1rem 6.2rem;
    font-weight: 300
}

@media (min-width:990px) {
    .contact-widget {
        display: block
    }
}

.team-values > div {
    padding-right: 4%;
    padding-bottom: 4.4rem
}

    .team-values > div div:first-of-type {
        font-size: 1.6rem;
        text-transform: uppercase;
        font-weight: 300
    }

    .team-values > div div:nth-of-type(2) {
        font-size: 1.6rem;
        text-transform: uppercase;
        font-weight: 700;
        margin-bottom: 2rem
    }

    .team-values > div p {
        font-weight: 400
    }

.team-image {
    height: 400px;
    background: transparent url(../img/team.jpg) no-repeat 50%;
    background-size: cover
}

.top-image {
    margin-top: 4rem;
}

@media (min-width:990px) {
    .team-image {
        height: 886px
    }
}

.team-how-we-are {
    padding-top: 4rem
}

.team-customers {
    margin-bottom: 6rem;
    margin-top: 4rem;
}

    .team-customers > div:first-of-type {
        padding: 1rem;
        display: none
    }

        .team-customers > div:first-of-type > div {
            height: 100%;
            width: 100%;
            background: transparent url(../img/mac.png) no-repeat 50%
        }

.reference-category-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: 0px
}

    .reference-category-links > a {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 320px;
        flex: 1 1 320px;
        color: #fff;
        text-transform: uppercase;
        font-size: 1.6rem;
        padding: 1rem 0;
        letter-spacing: .16rem
    }

        .reference-category-links > a:hover, a:active {
            font-weight: 600
        }

.reference {
    margin: 2rem 0;
}

.reference-description {
    padding-bottom: 2rem
}

    .reference-description > div:first-of-type {
        text-transform: uppercase;
        font-weight: 600;
        font-size: 1.8rem;
        max-width: 160px;
        margin-bottom: 3rem
    }

    .reference-description > div:nth-of-type(2) {
        margin: 2rem 0
    }

.reference-image-view {
    display: none;
}

@media (min-width:990px) {
    .reference-image-view {
        width: 100%;
        display: grid;
    }

    .reference {
        margin: 2rem 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

        .reference:nth-child(odd) {
            -webkit-box-orient: horizontal;
            -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
            flex-direction: row-reverse
        }

            .reference:nth-child(odd) > div:first-of-type {
                padding: 2.6rem 1.5rem 1rem 9rem
            }


    .reference-description {
        padding: 2.6rem 6rem 1rem 1.5rem;
        position: relative
    }

        .reference-description > div:nth-of-type(2) {
            /*position: absolute;*/
            top: 250px
        }

        .reference-description a {
            /*position: absolute;*/
            bottom: 60px
        }

    .reference-header.header-jumbo-text {
        max-width: 100%
    }

    .esf-image {
        display: none;
    }
}

.reference-settings {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 5.4rem 0 0;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 800px;
}

.reference-settings-item {
    flex-grow: 1;
    width: 200px;
    margin-bottom: 20px;
}

.reference-container {
    padding-bottom: 6rem
}

    .reference-container h3, .reference-container p {
        margin: 4rem 0
    }

.reference-next > div {
    background: #fff
}

.jobs-category-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: 0px
}

.jobs-category-links > a {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 320px;
    flex: 1 1 320px;
    color: #fff;
    text-transform: uppercase;
    font-size: 1.6rem;
    padding: 1rem 0;
    letter-spacing: .16rem
}

.jobs-category-links > a:hover, a:active {
    font-weight: 600
}

.jobs > .container {
    position: relative
}

    .jobs > .container > div {
        position: relative;
        z-index: 2
    }

.job-container h2 {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}


.job-container {
    padding: 3.8rem 2rem 4.6rem;
    background: #fff;
    text-align: center;
    color: #000;
    margin: 1.4rem 0
}

    .job-container h2 {
        font-size: 1.6rem;
        margin: 2rem 0 1.3rem;
        text-transform: uppercase;
        letter-spacing: .14rem;
    }

    .job-container i {
        font-size: 5.6rem;
        color: #676767;
    }

    .job-container p {
        max-width: 754px;
        margin: auto;
        display: block;
        margin-bottom: 1.5rem;
        font-size: 1.4rem;
        height: 60px;
    }

@media (max-width:990px) {
    .job-container {
        padding: 2rem 1.5rem;
    }

    .job-container h2 {
        font-size: 1.6rem;
        height: 40px;
    }

    .job-container p {
        height: 70px;
    }
}


@media (max-width:767px) {
    .job-container {
        padding: 2.8rem 1.5rem 2.6rem;
    }

        .job-container p {
            font-size: 1.4rem;
            padding: 0 30px;
            height: auto;
        }

        .job-container h2 {
            height: auto;
        }
}

.contact-head {
    text-align: center;
    padding-top: 5.2rem
}

    .contact-head > div {
        margin: 2rem 0;
        font-size: 2.4rem
    }

        .contact-head > div > div:first-of-type {
            text-transform: uppercase;
            font-weight: 600
        }

        .contact-head > div > div:nth-of-type(2) {
            line-height: 1.6;
            font-weight: 300;
            margin-top: 2rem
        }

    .contact-head a {
        color: white;
    }

@media (min-width:768px) {
    .contact-head {
        text-align: left
    }

        .contact-head > div {
            font-size: 1.6rem;
            margin: 0
        }
}

.contact-form {
    padding: 8rem 0 6rem
}

    .contact-form input, .contact-form textarea {
        display: block;
        width: 90%;
        margin: 3rem auto;
        border: none;
        border-bottom: 1px solid #000;
        background: transparent;
        padding: 2.4rem 0;
        font-size: 1.6rem
    }

    .contact-form button {
        padding-left: 66px;
        padding-right: 66px
    }

.link-application-form {
    cursor: pointer;
}
    
.application-form {
    padding: 8rem 0 6rem;
}

    .application-form input, .application-form textarea, .application-form label, .application-form p {
        display: block;
        width: 90%;
        margin: 3rem auto;
        border: none;
        border-bottom: 1px solid #000;
        background: transparent;
        padding: 2.4rem 0;
        font-size: 1.6rem;
    }

.application-form-inline {
    margin: -3rem auto -5.5rem auto;
}
    
.application-form-onlineProfiles {
    display: block;
}

.grid-template-auto {
    grid-template-columns: auto auto !important;
}
    
    .application-form form span:not(.application-form-onlineProfiles-info-span) {
        display: grid;
        grid-template-columns: 30% 67%;
        column-gap: 3%;
        width: 90%;
        margin: -1.5rem auto 0;
        background: transparent;
        font-size: 1.6rem;
    }

    .application-form .applicationOptional .application-form-onlineProfiles-info-span {
        display: none;
        font-weight: 300;
        font-size: 11px;
        line-height: 1.42857143;
        background-color: #00000010;
        padding: 2px;
        margin: 0;
        border-radius: 3px;
    }

    .application-form .applicationOptional #application-form-onlineProfiles-info {
        font-size: 12px;
        border: none;
        text-align: unset;
        padding: 0.2rem;
        margin: 0 0.5rem 0 0;
        width: fit-content;
        display: inline-flex;
        cursor: pointer;
        vertical-align: super;
    }

    .application-form #application-form-onlineProfiles-info:hover + .application-form-onlineProfiles-info-span {
        display: inline-flex;
    }

    .application-form form span input, .application-form form span label{
        width: 100%;
    }

    .application-form button {
        padding-left: 66px;
        padding-right: 66px;
    } 

    .application-form .application-form-headline {
        border: none;
        color: grey;
        margin: 0 auto -3rem auto;
        font-weight: 400;
    }

    .application-form .application-form-headlineRequired  {
        opacity: 0;
        margin: -4rem auto -5.5rem;
    }

    .application-form .application-form-headlineRequired:after {
        content: ' *';
    }

    .application-form .applicationOptional input, .application-form .applicationOptional textarea, .application-form .applicationOptional label:not(.application-form-headline) {
        border: 2px solid #00000010;
        border-radius: 3px;
        padding: 2.4rem 1rem;
    }

    .application-form .applicationOptional label:not(.application-form-headline) {
        text-align: center;
        font-weight: lighter;
        color: grey;
        font-size: 13px;
    }

    .application-form #fileList p {
        margin: -3rem auto 3rem auto;
        padding: 1rem;
        border: none;
        border-bottom: 1px solid #00000010;
        background: transparent;
        color: grey;
        font-weight: lighter;
        font-size: 11px;
    }

.file-upload {
    display: block;
    margin: 0 0 1rem;
    font-size: 2rem;
    color: lightgray;
}
    
@media (max-width: 767px){
    .application-form form span:not(.application-form-onlineProfiles-info-span) {
        display: block !important;
    }
}

.application-form-header h1{
    font-size: clamp(2.5rem, 3vw, 3rem);
}

.application-form-header h2 {
    font-size: clamp(3rem, 5vw, 5rem);
    font-weight: 300;
    margin: 20px 0 10px 0;
}

.bg-gradient {
    background: #194f67;
    background: linear-gradient(80deg,#194f67,#194f67 21%, #2b7655 60%, #3e9e43);
}

.bg-gradient-qa {
    background: #194f67;
    background: linear-gradient(80deg,#194f67,#194f67 21%, #3f7995 60%, #66a2c3);
}

.bg-gradient-ai {
    background: #194f67;
    background: linear-gradient(80deg,#194f67,#194f67 21%, #584374 60%, #963882);
}

.small-bg {
    background: linear-gradient(80deg,#194f67,#194f67 21%, #2b7655 60%, #3e9e43);
    height: 10px;
}

.text-white {
    color: #fff
}

.section-header {
    font-weight: 600;
    font-size: 1.8rem;
    text-align: center;
    text-transform: uppercase;
    margin: 9rem auto 6rem;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%
}

    .section-header:before {
        background-color: #2075b8;
        content: "";
        display: block;
        height: 2px;
        top: -18px;
        position: relative;
        vertical-align: middle;
        margin: auto;
        width: 64px
    }

.full-width {
    width: 100%
}

.no-letter-spacing, .no-letter-spacing * {
    letter-spacing: 0;
    /*margin-bottom: 30px;*/
}

.button-wrapper {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.link-button {
    border: 1px solid #000;
    color: #000;
    padding: 1rem;
    background: #fff;
    text-transform: uppercase;
    display: inline-block;
    letter-spacing: .14rem;
    white-space: nowrap;
    text-align: center;
}

.button-fixed-width {
    width: 200px;
    text-align: center;
    display: inline-block;
}

    .link-button:active, .link-button:focus, .link-button:hover {
        text-decoration: none;
        background: #000;
        color: #fff
    }

.link-button-workshop {
    border: 1px solid #000;
    color: #000;
    padding: 1.0rem 3.5rem 1.0rem 3.5rem;
    background: #fff;
    text-transform: uppercase;
    display: inline-block;
    letter-spacing: .14rem;
    white-space: nowrap;
    text-align: center;
    float: right
}

    .link-button-workshop:active, .link-button-workshop:focus, .link-button-workshop:hover {
        text-decoration: none;
        background: #000;
        color: #fff
    }

.header-jumbo-text h1 {
    line-height: 1.4;
    font-size: 5rem;
}

.header-jumbo-text p {
    /*font-size: 2.4rem;*/
    margin: 2rem 0 4rem;
    line-height: 1.56
}

main .section-header h2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

@media (min-width:990px) {
    .header-jumbo-text {
        max-width: 840px;
        padding-top: 1rem
    }

        .header-jumbo-text p {
            font-size: 1.6rem
        }

        .header-jumbo-text.header-jumbo-text-full-width {
            max-width: 100%
        }
}

.text-light {
    font-weight: 300
}

.text-semi-bold {
    font-weight: 600
}

.text-bold {
    font-weight: 700
}

.text-black {
    font-weight: 800
}

.two-col-container > div {
    padding: 4rem
}

    .two-col-container > div:nth-of-type(2) {
        background: #fff;
        padding: 6.4rem 5rem 4.6rem
    }

        .two-col-container > div:nth-of-type(2) div {
            text-transform: uppercase;
            font-weight: 600
        }

        .two-col-container > div:nth-of-type(2) > div:first-of-type {
            font-size: 1.2rem
        }

        .two-col-container > div:nth-of-type(2) > div:nth-of-type(2) {
            font-size: 1.8rem;
            margin: 2rem 0
        }

        .two-col-container > div:nth-of-type(2) a {
            margin-top: 4rem
        }

        .two-col-container > div:nth-of-type(2) p {
            margin: 0 2rem
        }

@media (min-width:640px) {
    .two-col-container {
        margin-bottom: 6rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

        .two-col-container > div {
            -webkit-box-flex: 1;
            -ms-flex: 1 1 50%;
            flex: 1 1 50%
        }

            .two-col-container > div:first-of-type {
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                -webkit-box-pack: center;
                -ms-flex-pack: center;
                justify-content: center;
                -webkit-box-align: center;
                -ms-flex-align: center;
                align-items: center
            }
}

footer {
    padding: 2.6rem 2%;
    background: #fff
}

    footer .container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        box-sizing: border-box;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        font-size: 1.9rem;
        text-align: center;
        line-height: 1.7
    }

        footer .container > div {
            -webkit-box-flex: 1;
            -ms-flex: 1 1 100%;
            flex: 1 1 100%;
            padding: 2rem 0
        }

    footer a {
        color: #000
    }

list-style {
    font-size: 1.9rem;
}

.footer-img {
    max-width: 200px;
}

.footer-second-row {
    text-align: left;
}

@media (min-width:920px) {
    footer .container {
        text-align: left;
        font-size: 1.4rem;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

        footer .container > div {
            -webkit-box-flex: 2;
            -ms-flex: 2;
            flex: 2
        }

            footer .container > div:first-child {
                -webkit-box-flex: 3;
                -ms-flex: 3;
                flex: 3
            }

            footer .container > div:last-child {
                -webkit-box-flex: 1;
                -ms-flex: 1;
                flex: 1;
                text-align: right
            }

    footer .container.footer-contact-headline > div {
        text-align: left;
        padding-bottom: 0;
    }
    footer .container.footer-contact-links > div {
        padding-top: 1rem;
    }
}

@media (max-width: 507px) {
    footer .container .footer-links::after {
        content: " | ";
    }
}

header section:first-of-type.bg-gradient,
header section:first-of-type.bg-gradient-qa,
header section:first-of-type.bg-gradient-ai {
    padding-bottom: 8rem
}

.smartphone-bg {
    width: 100%;
    height: 100%;
    background: transparent url(../img/smartphone.png) no-repeat 50%
}

.list-style {
    font-size: 1.4rem;
    line-height: 1.5;
}

    .list-style li {
        margin-bottom: 5px;
    }

.dhsn-col-text {
    font-size: 1.4rem;
    font-weight: 300;
}

.dhsn-logo {
    margin: 14px 0 10px 0;
    padding-right: 10px;
    max-width: 150px;
}

.dhsn-seal {
    margin: 4px 0 10px 0;
    padding-right: 10px;
    max-width: 150px;
}

/*.list-style li:before{
    content: "- ";
}*/

/* Section Error-Page */

.error-page-body {
    background-color: #f4f7f6;
    color: #333;
}

.error-header {
    margin: 40px 20px;
}

.error-content {
    margin: 40px 20px 50px 20px;
    border-top: 1px solid #7d632d;
}

    .error-content h2 {
        color: #a31515;
        text-align: center;
    }

    .error-content p {
        margin: 40px 0;
    }

    .error-content p {
        margin: 40px 0;
        font-size: 1.5rem;
    }

.header-image-workshop {
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    display: block;
    vertical-align: bottom;
    width: 80%;
}

@media(min-width:640px) {
    .header-image-workshop {
        width: 50%;
    }
}

@media(min-width:1200px) {
    .header-image-workshop {
        width: 30%;
    }
}

.visible {
    max-height: 700px !important;
}

.map {
    height: 450px;
    width: 100%;
}

.h-100px {
    height: 100px;
}

.button-box button {
    margin-right: 10px;
    margin-top: 10px;
    margin-bottom: 5rem;
}

.workshop-smaller-font {
    font-size: 39px;
    font-weight: 500;
}

.workshop-contact-message {
    color: #2075b8;
    text-transform: uppercase;
    font-size: 1.5rem;
    text-align: center;
    font-weight: 600;
    margin-bottom: 20px;
}

.workshop-contact-text {
    font-size: 1.4rem;
    color: grey;
    text-align: center;
}

.workshop-heading-big {
    font-size: 2.5rem;
    font-weight: 700;
    margin-top: 3.0rem;
    margin-bottom: 2.0rem;
}

.workshop-heading-small {
    font-size: 1.5rem;
    font-weight: 600;
    margin-top: 3.0rem;
    margin-bottom: 0.5rem;
}

.aside-box-workshop-promotion {
    background: #194f67;
    background: -webkit-gradient(left top,right bottom,color-stop(0,#194f67),color-stop(100%,#3e9e43));
    background: linear-gradient(102deg,#194f67,#3e9e43);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#194f67", endColorstr="#63a1ca", GradientType=1);
    margin: 2.0rem 0 2.0rem 0;
    padding: 2rem
}

    .aside-box-workshop-promotion > div:first-of-type {
        text-transform: uppercase;
        font-size: 1.4rem;
        text-align: center;
        margin-bottom: 4rem;
        font-weight: 500;
        letter-spacing: .16rem;
        color: white;
    }

        .aside-box-workshop-promotion > div:first-of-type:after {
            background-color: white;
            content: "";
            display: block;
            height: 2px;
            top: 14px;
            position: relative;
            vertical-align: middle;
            margin: auto;
            width: 64px;
        }

.workshop-promotion-text-big {
    font-size: 2.0rem;
    text-align: center;
    font-weight: 600;
    letter-spacing: .16rem;
    color: white;
    margin-bottom: 1.0rem;
}

.workshop-promotion-text-small {
    font-size: 1.4rem;
    text-align: center;
    font-weight: 500;
    letter-spacing: .16rem;
    color: white;
}

.workshop-mail {
    font-size: 1.8rem;
    text-align: center;
    font-weight: 500;
    color: #2075b8;
    margin-top: 1.0rem;
}

.workshop-textbox {
    outline: 0;
    border-width: 0 0 10rem;
    border-color: black;
    margin-bottom: 1rem;
}

    .workshop-textbox:focus {
        border-color: #2075b8;
    }

.generalConditions-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: start;
    align-items: baseline;
    flex-flow: column wrap;
    margin-bottom: 2rem;
}

.generalConditions-item-name {
    font-weight: 600;
    letter-spacing: .16rem;
    color: #2075b8;
    font-size: 1.5rem;
    text-transform: uppercase;
    flex: 0 1 3rem;
}

.generalConditions-item-value {
    font-size: 1.7rem;
}

@media (min-width: 425px) 
{
    .generalConditions-row {
        flex-flow: row wrap;
    }
    .generalConditions-item-name {
        flex: 0 1 13rem;
    }
}

@media (min-width: 990px)
{
    .generalConditions-row {
        margin-bottom: 1rem;
    }

    .generalConditions-item-name {
        font-size: 1.4rem;
        flex: 0 1 10rem;
    }
    
    .generalConditions-item-value {
        font-size: 1.4rem;
    }
    
}
@media (min-width: 1200px)
{
    .generalConditions-item-name {
        flex: 0 1 11rem;
    }
}

.language-selector {
    display: block;
    margin: 0 1rem;
}

.mobile-language {
    position: absolute;
    right: 7rem;
    top: 21px;
    display: none;
}

@media (min-width:769px) and (max-width: 1199px) {
    .language-selector {
        display: block;
        margin: 0 0.5rem;
        position: absolute;
        top: 21px;
        right: 4%;
    }
}
@media (max-width: 768px) {
    .language-selector {
        display: none;
    }

    .mobile-language, .mobile-language > .language-selector {
        display: block;
    }

    .language-selector label {
        display: none;
    }
}

.language-selector-list {
    position: absolute !important;
    display: none;
    border: none;
    box-shadow: none;
    min-width: 120px;
    right: 0;
    left: auto;
    background-color: #fff !important;
}

    .language-selector-list li:hover {
        background-color: #f4f7f6;
    }

    .language-selector-list input {
        display: none;
    }

    .language-selector-list li label,
    .language-selector-list li a {
        cursor: pointer;
        font-family: Open Sans,Arial,"sans-serif";
        font-size: 1.4rem;
        text-transform: uppercase;
        font-weight: 400;
        color: #000;
        display: flex;
        padding: 3px 20px;
    }

#language-selector-button {
    font-size: 2.2rem;
    color: #000;
    padding: 10.35px;
    margin: 0;
    justify-content: center;
    display: flex;
    gap: .5rem;
}

.language-selector label {
    font-family: Open Sans,Arial,"sans-serif";
    font-size: 1.4rem;
    text-transform: uppercase;
    font-weight: 400;
    vertical-align: middle;
    margin: 0;
}

.language-selector label:hover {
    color: #333;
    background-color: transparent !important;
}

.skip-link-invisible:not(:focus) {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    white-space: nowrap;
}


ul.location-list{
    list-style-type: none;
    margin: 0;
    padding: 0;
}

ul.location-list li i {
    margin-right: 2px;
}

#faxnumber{
    display: none !important;
}

.hypens-auto{
    hyphens: auto;
}

.sr-only,
.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.text-transform-none {
    text-transform: none;
}

/* Hubspot form */
aside [data-hsfc-id=Renderer], .aside-box [data-hsfc-id=Renderer] {
    .hsfc-Row {
        margin-bottom: 1rem;
    }

    .hsfc-Step .hsfc-Step__Content {
        padding: 1rem 3rem 2rem;
    }

    .hsfc-NavigationRow {
        margin-top: 2rem;
    }
}

/* cookie consent banner */
.show--preferences #cc-main .pm--box {
    max-width: 900px;
    max-height: 800px;
}