/***GLOBAL****/ 
@font-face {
    font-family: "SpaceGroteskBold";
    src: url('fonts/Space_Grotesk/SpaceGrotesk-Bold.ttf');
    font-weight: normal;
    font-style: normal; 
}
@font-face {
    font-family: "SpaceGroteskMedium";
    src: url('fonts/Space_Grotesk/SpaceGrotesk-Medium.ttf');
    font-weight: normal;
    font-style: normal; 
}
@font-face {
    font-family: "Montserrat"; 
    src: url('fonts/Montserrat/Montserrat-Regular.ttf');
    font-weight: normal;
    font-style: normal; 
}
@font-face {
    font-family: "MontserratMedium";
    src: url('fonts/Montserrat/Montserrat-Medium.ttf');
    font-weight: normal;
    font-style: normal; 
}
@font-face {
    font-family: "MontserratSemiBold";
    src: url('fonts/Montserrat/Montserrat-SemiBold.ttf');
    font-weight: normal;
    font-style: normal; 
}
:root{
    --heading-font: "SpaceGroteskBold" !important;
    --heading-font-medium: "SpaceGroteskMedium" !important;
    --text-font: "Montserrat" !important;
    --text-font-m: "MontserratMedium";
    --text-font-sb: "MontserratSemiBold";
    --input-height: 2.5rem;
}
body,
p {
    font-family: var(--text-font);
    font-size: 1rem;
    line-height: 1.625rem;
}
label, legend {
    font-weight: normal;
}
.p-bold p,
p strong {
    font-weight: normal;
    font-family: var(--text-font-sb);
}
body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
    font-family: var(--heading-font);
    font-weight: normal;
    letter-spacing: 0;
    opacity: 1;
    margin-bottom: 1.5rem;
}
body h1,
body .banner h2,
body .banner-page h2,
body .banner h1 {
    font-size: 2.75em;
    line-height: 3.5rem;
}
body h2 {
    font-size: 2.25rem;
    line-height: 2.5rem;
}
body h3,
body .banner h3 {
    font-size: 1.375rem;
    line-height: 2.125rem;
}
body .banner h4 ,
body h4 {
    font-size: 1.25rem;
    line-height: 2.188rem;
}
body h5 {
    font-size: 1rem;
    line-height: 1.75rem;
}
body h6 {
    line-height: 1.5625rem;
}
body a.lead, body p.lead {
    font-size: 1rem;
    line-height: 1.25rem;
    margin-bottom: 0.25rem;
    font-family: var(--text-font-m);
}
.row.row-small {
    max-width: 100% !important;
}
.star-rating{
    width: 100% !important;
}

.star-rating:before, .woocommerce-page .star-rating:before, .star-rating span:before {
    letter-spacing: 0.25rem;
}
.ml-0,
.ml-0 > .col-inner,
.m-left-0 > * ,
.m-left-0 {
    margin-left: 0 !important;
}
.m-auto .col-inner,
.m-auto {
    margin-inline: auto !important;
}
.col-pb-0 .col{
    padding-bottom: 0 !important;
}
.mb-0,
.mb-0>*,
.mb-0 p {
    margin-bottom: 0;
}
.row-small {
    margin-inline: auto !important;
}
.icon-box-img img, .icon-box-img svg {
    padding-top: 0;
}
.fs-10 p{
    font-size: 0.625rem;
    line-height: 1.25em;
}
.fs-11 p{
    font-size: 0.688rem;
    line-height: 1.25em;
}
.fs-12 p{
    font-size: 0.75rem;
    line-height: 1.3125em;
}
.fs-13 p{
    font-size: .813rem;
    line-height: 1.25rem;
}
.fs-14 p{
    font-size: .875rem;
    line-height: 1.25rem;
}
.fs-15 p{
    font-size: .938rem;
    line-height: 1.25rem;
}
.fs-16 p{
    font-size: 1rem;
    line-height: 1.625rem;
}
.fs-18 p{
    font-size: 1.125rem;
    line-height: 1.75rem;
}
.fs-20 p{
    font-size: 1.25rem;
    line-height: 1.875rem;
}
.fs-28 p{
    font-size: 1.75rem;
    line-height: 2.625rem;
}
img.size-full.alignnone {
    margin-bottom: 0;
}
.img-auto img{
    width: auto !important;
}
.badge+.badge,
.badge-frame {
    height: auto;
    margin-left: auto;
    width: auto;
    min-width: auto;
    opacity: 1;
}
.button, button, fieldset, input, select, textarea {
    margin: 0;
}
a.button.white, a.button.primary, a.button.secondary {
    height: var(--input-height);
    line-height: calc(var(--input-height) - 1px);
    font-size: .875rem;
    padding: 0 2rem;
    font-family: var(--heading-font);
    min-height: auto;
    font-weight: normal;
    text-transform: inherit;
    text-decoration: none !important;
    box-shadow: none !important;
    color: #fff;
    border: 1px solid var(--primary-color);
    margin: 0;
    background-color: var(--primary-color);
    letter-spacing: 0.053rem;
}
a.button.white:hover, 
a.button.primary:hover, 
a.button.secondary:hover{
    border: 1px solid var(--primary-color) !important;
    background-color: #fff !important; 
    color: var(--primary-color) !important;
}
a.button.secondary{
    border: 1px solid #000 !important;
    background-color: #fff !important; 
    color: #000 !important;
}
a.button.white{
    border: 1px solid #fff !important;
    background-color: transparent !important; 
    color: #fff !important;
}
a.button.is-outline{
    border: 0;
    padding: 0;
    height: auto;
    line-height: normal;
    text-align: center;
}
a.button .icon-angle-right:before {
    content: url(../images/arrow-right.svg) !important;
}
a.button.secondary .icon-angle-right:before {
    filter: brightness(0);
}
span.amount {
    font-weight: normal;
}
body .row-full-width {
    max-width: 120rem!important;
}
.button:not(.icon)>span+i {
    margin-left: 0;
    margin-right: 0;
}
figure.gallery-item {
    padding-bottom: 0;
}
.container, .container-width, .full-width .ubermenu-nav, .row  ,.row.row-collapse{
    max-width: 79rem !important;
}
.row-1053 {
    max-width: 67.6875rem !important;
}
.flickity-prev-next-button {
    width: 2.75rem;
    height: 2.75rem;
    transform: none !important;
    margin: 0 !important;
}
.ml-auto > .col-inner{
	margin-left: auto !important;
	margin-right: 0 !important;
}
.mr-auto > .col-inner{
	margin-right: auto !important;
	margin-left: 0 !important;
}
.pt-80{
    padding-top: 5rem !important;
}
.pb-80{
    padding-bottom: 5rem !important;
}
.pt-60{
    padding-top: 3.75rem !important;
}
.pb-60{
    padding-bottom: 3.75rem !important;
}
/*global*/

/*HEADER*/
#logo {
    width: auto !important;
}
#masthead .nav>li {
    margin: 0 1.125rem;
}
body .stuck #logo img, .home #logo img, #logo img {
    max-height: 3.75rem!important;
}
.header-main .nav>li>a:hover {
    color: var(--primary-color) !important;
}
.header-main .nav>li>a {
    letter-spacing: 0.026rem;
    font-family: var(--text-font-sb);
    font-weight: normal;
    font-size: .875rem;
    color: #060929 !important;
}

.page-template-page-blank .gtranslate_wrapper a.glink:nth-child(1):after{
    background: #000;
}
body .stuck .header-main {
    height: auto!important;
    padding: 1rem 0;
}
.nav-dropdown-has-arrow li.has-dropdown:after, .nav-dropdown-has-arrow li.has-dropdown:before{
    display: none;
}
#masthead .header-cart-icon:after {
    top: 1rem;
    right: .5rem;
}
#masthead .account-link span:not(.image-icon), #masthead .header-cart-link span:not(.image-icon), #masthead .nav-top-not-logged-in span:not(.image-icon), #masthead .wishlist-link span:not(.image-icon) {
    margin-top: 0;
}
.header-cart-title{
    margin-left: .5rem;
}
#masthead .flex-right .nav>li.html_topbar_left{
    margin-left: 2rem;
}
#masthead .flex-right .nav>li {
    margin: 0;
    margin-left: 3.125rem;
}
.nav-right .sub-menu.nav-dropdown p {
    margin-bottom: .5rem;
}
.nav li.has-icon-left>a>i, .nav li.has-icon-left>a>img, .nav li.has-icon-left>a>svg {
    margin-top: -3px;
}
.header-main li.html.custom.html_topbar_right::before {
    content: url(../images/phone.svg);
    display: inline-block;
    margin-right: .5rem;
}
.header-main .nav-left {
    justify-content: center;
}
.logo-left .logo {
    margin-left: 0;
    margin-right: 0;
}
.header-main li.html.custom.html_topbar_right {
    font-size: .75rem;
    font-family: var(--text-font-m);
    letter-spacing: 0.023rem;
    color: #060929;
    max-width: 10rem;
}
/*HEADER*/
/*FOOTER*/
.ft-form .row .col:nth-child(2) .forminator-row:nth-child(3) {
    display: flex;
    flex-wrap: nowrap !important; 
}
#footer .absolute-footer.dark {
    display: none;
}

footer a,
footer p{
    font-size: 1rem;
    font-family: var(--text-font);
    color: #DBDBDB !important;
}
footer .ux-menu-link__link {
    min-height: auto;
    padding-bottom: .25rem;
    padding-top: .25rem;
    transition: all .2s;
    font-size: 1rem;
    font-family: var(--text-font);
    color: #DBDBDB !important;
    letter-spacing: 0;
}
.st-footer .logo-ft{
    max-width: 13.938rem;
}
.st-footer .row:nth-child(1) > .col:nth-child(2){
    padding-left: 5.5rem;
}
.st-footer .row:nth-child(1) > .col:nth-child(3){
    padding-left: 3rem;
}
.st-footer .row:nth-child(1) > .col:nth-child(4){
    padding-left: 4rem;
}
.st-footer .is-divider {
    margin-bottom: 1.25rem !important;
}
.st-footer .row-copy a{
    color: #8E8E8E !important;
    letter-spacing: 0.045rem;
    font-size: .75rem;
}
.st-footer .row-copy p{
    font-size: .75rem;
    color: #ADADAD;
}
.txt-logo {
    max-width: 11rem;
    margin: 0 auto;
    padding-left: 1rem;
}
.st-footer .row:nth-child(1) > .col:nth-child(4) a.button.white {
    margin-bottom: 1.5rem;
}
.st-footer .row:nth-child(1) > .col:nth-child(4) .mb-0 img{
    margin-right: .5rem;
}
.st-footer .row:nth-child(1) > .col:nth-child(4) .mb-0 p {
    display: flex;
    margin-bottom: .5rem !important;
}
.st-footer .row{
    max-width: 72rem !important;
}
.st-footer h6 {
    color: #fff;
    font-size: .875rem;
    font-family: var(--text-font-sb);
    letter-spacing: 0.026rem;
    text-transform: inherit;
}
.ft-form .row.row-collapse{
    max-width: 100% !important;
}
.ft-form h2{
    color: #fff;
}
.ft-form .row .col:nth-child(2){
    padding: 6rem !important;
    background-image: linear-gradient(78deg,#8F2E0E,#FECC17);
}
.ft-form .row .col:nth-child(1) .btn-arrow{
    position: absolute !important;
    top: 3rem;
    right: 0;
}
.ft-form .row .col > .col-inner{
    max-width: 33rem;
    margin-left: auto;
}
.ft-form .row .col:nth-child(2) > .col-inner{
    margin-right: auto;
}
.ft-form .row .col:nth-child(1) .img{
    width: 20.063rem !important;
    position: absolute;
    top: -6rem;
    left: -6rem;
    z-index: 1;
}
.ft-form .row .col:nth-child(2) .img{
    width: 26.063rem !important;
    position: absolute;
    bottom: -6rem;
    right: -6rem;
    z-index: 1;
}
.ft-form .row .col .col-inner > *:not(.img){
    position: relative;
    z-index: 2;
}
.ft-form .row .col:nth-child(1) p{
    padding-right: 5rem;
}
.ft-form .row .col:nth-child(1){
    padding: 7rem !important;
    background-image: linear-gradient(77deg,#004291,#2099CB);
}
a.button.btn-arrow:hover{
    background-color: transparent !important;
    border: 1px solid #fff !important;
}
.btn-arrow {
    width: 2.75rem;
    height: 2.75rem !important;
    background-color: transparent !important;
    border: 1px solid #fff !important;
    font-size: 0 !important;
    max-width: 2.75rem !important;
    padding: 0 !important;
    background-image: url(../images/arrow-right.svg) !important;
    background-position: center;
    background-repeat: no-repeat;
    background-size: .75rem;
}
/*FOOTER*/
/***g translate **/
.gt_float_switcher .gt-selected {
    background-color: transparent !important;
}
.gt_float_switcher {
    font-family: var(--text-font) !important;
    font-size: .75rem !important;
    border-radius: 0 !important;
    color: #000 !important;
    display: inline-block !important;
    box-shadow: none !important;
    background: transparent !important;
    transform: translateY(0.25rem);
}
.gt_float_switcher img {
    width: 1.25rem !important;
    border-radius: 0 !important;
}
.gt_float_switcher .gt-selected .gt-current-lang {
    padding: 0 !important;
    color: #060929 !important;
    font-weight: normal !important;
    font-size: .75rem !important;
}
.gt_float_switcher .gt_options {
    z-index: 2;
    background-color: #fff;
    min-width: 7rem;
    position: absolute !important; 
}
.gt_float_switcher .gt_options a {
    color: #000 !important;
}
.gt_float_switcher {
    overflow: visible !important;
}
/***g translate **/
/*FOOTER*/
.flickity-prev-next-button{
    width: 2.75rem !important;
    height: 2.75rem !important;
    background-color: transparent !important;
    border-radius: 10px !important;
    background-image: url(../images/left.svg) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    opacity: 1 !important;
}
.flickity-prev-next-button.next{
    background-image: url(../images/right.svg) !important;
}
.flickity-prev-next-button svg {
    opacity: 0 !important;
}
.arrow-top .flickity-prev-next-button {
    left: auto !important;
    right: 3.75rem;
    top: -2.75rem;
}
.arrow-top .flickity-prev-next-button.next {
    right: 0;
}
@media screen and (max-width: 1250px){
    /*HEADER*/
    #masthead .nav>li {
        margin: 0 .5rem;
    }
    body .stuck #logo img, .home #logo img, #logo img {
        max-height: 2rem !important;
    }
    /*HEADER*/
}
@media screen and (max-width: 1200px){
    /*HEADER*/
    .icon-menu:before {
        content: "" !important;
        background: url(../images/MenuIcon.svg);
        width: 27px;
        height: 20px;
        display: inline-block;
        background-size: contain;
        background-repeat: no-repeat;
        top: 1px;
        position: relative;
    }
    /*HEADER*/
}
@media screen and (max-width: 949px){
    /*HEADER*/
    .header-main li.html.custom.html_topbar_right {
        font-size: .625rem;
        letter-spacing: 0;
        max-width: 7rem;
    }
    .header-main .nav>li>a {
        letter-spacing: 0;
        font-size: .75rem;
    }
    /*HEADER*/
}
@media screen and (max-width: 849px){
    /* footer */
    .st-footer .row:nth-child(1) > .col:nth-child(4) .mb-0 p:last-child {
        margin-bottom: 20px !important;
    }
    .txt-logo p:nth-child(2) {
        margin-right: 40px;
    }
    .st-footer .row:nth-child(1) > .col:nth-child(4) .mb-0 img {
        margin-bottom: 0;
    }
    .st-footer.section > .section-content > .row:not(.row-copy) > .col {
        padding-bottom: 20px !important;
    }
    .st-footer .row-copy p {
        font-size: .75rem;
        text-align: center;
        line-height: 15px;
        margin-bottom: 20px;
    }
    .st-footer h6 {
        font-size: 14px;
        letter-spacing: 0.42px;
        margin-bottom: 10px;
        cursor: pointer;
    }
    .col-has-dropdown h6.active:after {
        content: '\f106';
    }
    .footer-section .col h6 {
        text-align: center;
        margin-bottom: 40px;
        display: inline-flex;
        justify-content: space-between;
        cursor: pointer;
        line-height: 18px;
    }
    .col-has-dropdown h6:after {
        content:"\f107";
        font-family: fl-icons !important;
        color: #fff;
        float: right;
        margin-left: 10px;
    }
    .col-has-dropdown h6 + .ux-menu {
        display: none;
    }
    .col-has-dropdown h6.active + .ux-menu {
        display: block;
        margin-bottom: 0px;
    }
    .st-footer .row:nth-child(1) > .col:nth-child(4),
    .st-footer .row:nth-child(1) > .col:nth-child(3),
    .st-footer .row:nth-child(1) > .col:nth-child(2) {
        padding-left: 20px;
    }
    footer .ux-menu-link__link,
    footer p {
        font-size: 15px;
    }
    .ft-form .row .col:nth-child(2) .img {
        width: 298px !important;
        bottom: -50px;
        right: -65px;
        z-index: 1;
    }
    .ft-form .forminator-ui .forminator-col.html-checkbox {
        max-width: 23rem;
    }
    .ft-form .forminator-ui .forminator-button-submit {
        width: 38px !important;
        height: 38px !important;
    }
    .st-footer .row:nth-child(1) > .col:nth-child(4) .mb-0 p > a{
        font-size: 15px;
        color: #DBDBDB !important;
    }
    footer a{
        font-size: 16px;
        color: #E6E6E6 !important;
    }
    .st-footer .logo-ft {
        max-width: 223px;
        margin-bottom: 30px !important;
    }
    .st-footer{
        padding-top: 40px !important;
    }
    .st-footer .row {
        max-width: 428px!important;
    }
    .txt-logo {
        max-width: 100%;
        margin: 0 auto;
        padding-left: 0;
        display: flex;
        flex-wrap: wrap;
    }
    .ft-form .row .col:nth-child(1) .img {
        width: 238px !important;
        top: unset;
        left: -3rem;
        z-index: 1;
        bottom: -70px;
    }
    .ft-form .row .col:nth-child(2){
        padding: 50px 20px 40px 20px!important;
    }
    .ft-form .row .col:nth-child(1) {
        padding: 60px 20px 50px 20px!important;
    }
    .ft-form .row .col > .col-inner {
        max-width: 388px !important;
    }
    /* footer */
    /* HEADER */
    body .stuck #logo img, .home #logo img, #logo img {
        max-height: 44px !important;
    }
    #logo {
        width: 167px !important;
    }
    .header-main {
        height: 80px !important;
    }
    /* HEADER */
    /* Global */
    :root {
        --input-height: 38px !important;
    }
    html{
        font-size: 100%;
    }
    .slider-wrapper .flickity-prev-next-button {
        display: flex;
    }
    body .container,
    .section > .section-content > .row > .col{
        padding-left: 20px;
        padding-right: 20px;
    }
    body .medium-1,
    body .medium-2,
    body .medium-3,
    body .medium-4,
    body .medium-5,
    body .medium-6,
    body .medium-7,
    body .medium-8,
    body .medium-9,
    body .medium-10,
    body .medium-11,
    body .medium-12{
        max-width: 100%;
        flex-basis: 100%;
    }
    body, p {
        font-size: 15px;
        line-height: 25px;
    }
    body a.lead, body p.lead {
        font-size: 14px;
    }
    body h1, body .banner h1 {
        font-size: 30px;
        line-height: 40px;
    }
    body .banner h2,
    body h2 {
        font-size: 26px;
        line-height: 36px;
    }
    body h3, body .banner h3 {
        line-height: 30px;
        font-size: 20px;
    }
    body h4, body .banner h4 {
        line-height: 28px;
        font-size: 18px;
    }
    
    a.button.white, a.button.primary, a.button.secondary{
        padding: 0 30px;
        letter-spacing: .84px;
    }
    body h1, body h2, body h3, body h4, body h5, body h6 {
        margin-bottom: 1.25rem;
    }
    .slider-wrapper .flickity-prev-next-button {
        display: flex;
    }
    .st-slide-das .slider-wrapper {
        margin-left: 0;
        margin-bottom: 34px !important;
    }
    .st-slide-das .arrow-top .slider:hover .flickity-prev-next-button,
    .st-slide-das .arrow-top .flickity-prev-next-button {
        top: unset;
        left: 50% !important;
        right: unset;
        transform: translateX(-54px) !important;
        bottom: -64px;
    }
    .st-slide-das .arrow-top .slider:hover .flickity-prev-next-button.next,
    .st-slide-das .arrow-top .flickity-prev-next-button.next {
        left: 50% !important;
        transform: translateX(10px) !important;
    }
    .st-partner .flickity-slider>div:not(.col) {
        width: 171px!important;
        height: 79px;
        padding: 25px !important;
        margin: 0 10px !important;
    }
    .st-partner {
        padding-bottom: 20px !important;
    }
    .custom-h2 h2 {
        font-size: 26px;
        line-height: 36px;
    }
    .verwirklichen{
        padding-bottom: 60px !important;
        padding-top: 60px !important;
    }
    .verwirklichen .row{
        max-width: 428px !important;
    }
    /* Global */
}
@media screen and (max-width: 375px){
    body h1, body .banner h1 {
        font-size: 28px;
        line-height: 40px;
    }
}