
html {
    scroll-behavior: smooth;
}

#new-header {

    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

#new-header .toggle {
    position: absolute;
    right: 1rem;
    top: 1rem;
    transition: all 0.1s ease-in-out;
}

#new-header .toggle svg {
    width: 60px;
    height: 60px;

    fill: #fff;
    transition: all 0.1s ease-in-out;
/ / filter: drop-shadow(3 px 3 px 2 px rgb(0 0 0 / 0.8));
}


#new-header nav .toggle svg {
    fill: #999;
}

#new-header .toggle:hover svg {
/ / filter: drop-shadow(1 px 1 px 2 px rgb(0 0 0));
/ / transform: translate(2 px, 2 px);
}

.navi-open #new-header nav {
    transform: translate(0, 0);
}

.navi-open #new-header > .toggle {
    opacity: 0;
}

#new-header nav {
    transform: translate(0, -100%);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    line-height: 3;
    transition: all 0.1s ease-in-out;
}

#new-header nav::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.9);
}

#new-header nav a {
    position: relative;
    z-index: 2;
    font-size: 2rem;
    text-decoration: none;
    padding:0.5rem 1rem;
    line-height: 1;
    margin:0.5rem 0;
    color: rgb(82, 82, 82);
    text-align: center;
}

#new-header nav a span{
    position:relative;
    z-index: 2;
}

#new-header nav a::before{
    z-index: 1;
    position:absolute;
    height:0;
    left:0;
    right:0;
    bottom:0;
    content: " ";
    background: #fff;
    color: #000;
    opacity:0;
    transition: opacity 222ms, height 222ms;
}

#new-header nav a:hover,
#new-header nav a:hover span{
    text-decoration: none !important;
}

#new-header nav a.active::before{
    opacity:0.6;
    height: 100%;
}

#new-header nav a:hover::before{
    opacity:1;
    height: 100%;
}


#new-header nav a:hover {
    text-decoration: underline;
}

.advs-box-top-icon-img:not(.niche-box-post):after, .advs-box-blog:after {
    height: 100%;
}

.advs-box-top-icon-img:not(.niche-box-post):hover .img-box {
    transform: scale(1.0808) translateY(0px);
}


#logo {
    /*height: calc(90px * 2);*/

    display: block;
    position: absolute;
    top: 10px;
    left: 10px;


    max-width: 50vw;
    aspect-ratio: 1/1;
    max-height: 180px;
}



#logo img {
    object-fit: contain;
    border: 2px solid #fff;
    background-color: #fff;
    width:100%;
    height:100%;
}

#logo img#fgr-logo {
    display: none;
}

.fitnessgeraetereparatur #logo img#bf-logo {
    display: none;
}

.fitnessgeraetereparatur #logo{
    max-width: 50vw;
    aspect-ratio: 233/137;
    max-height: 180px;
}

.fitnessgeraetereparatur #logo img#fgr-logo {
    display: block;

}

.custom-size-50vh {
    height: 50vh;
}
.custom-size-33vh {
    height: 33vh;
}

.custom-size-66vh {
    height: 66vh;
}


.section-slide{
    text-shadow: 1px 1px 1px #fff;
}

.btn-xxs{
    padding:2px 10px;
    font-size: 13px;
    letter-spacing: 0.1px;
}

.three-box-icon-box{
    height: 120px;

}

.three-box-icon-box i{
    transform: translate(-50%, 0);
    margin: 0;
    color:#ff5d00;
}


.location-link small{
    display:block;
    font-size: 100%;
    line-height: 1.4;
}

.ref-slider-item{
    position:relative;
    display: block;
}

.ref-slider-item::before {
    display: block;
    padding-top: 80%;
    content: "";
}
.ref-slider-item>div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ref-slider-item>div::before {
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    bottom:50%;
    background-image:var(--image);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    content:"";
}


.ref-slider-item>div .lower{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    box-sizing: border-box;
    padding: 10px;

}
.ref-slider-item>div .lower h4{
    font-size: 1.5rem;
    text-align: center;
}



.fitnessgeraetereparatur .fgr-hidden{
    display:none;
}

body:not(.fitnessgeraetereparatur) .fgr-hidden{
    display:block;
}

body:not(.fitnessgeraetereparatur) .fgr-hidden-initial{
    display:initial;
}

.fitnessgeraetereparatur .fgr-visible{
    display:block;
}

.fitnessgeraetereparatur .fgr-visible-initial{
    display:initial;
}


body:not(.fitnessgeraetereparatur) .fgr-visible{
    display:none;
}

.footer-parallax-container{
    margin-bottom: 50vh;
}

.footer-parallax{
    height: 50vh;
}

#referenzenslider .flex-direction-nav .flex-prev {
        left:-100px;
    opacity: 1;
}

#referenzenslider .flex-direction-nav .flex-next {
    right:-100px;
    opacity: 1;
}

#dienstleistungen{
    & img {
        width: 100%;
        object-fit: contain;
    }
}

#fgr-slider a{
    background-color:#ff5d00;
    border:none;
}

.address-box{
    padding-bottom:30px;
    position:relative;
    height:170px;
    bottom:0
}

@media screen and (min-width:768px) {

    .address-box a[href*="facebook"] {
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 80%;
        transform: translateX(-50%);
    }
}

@media screen and (max-width:767px) {
    .address-box{
        display:block;
        height: auto;
    }


}
.section-slide a{
    margin-bottom:1rem;
    text-shadow: none;
}
