/* outfit-300 - latin */
@font-face {
    font-display: swap;
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/outfit-v14-latin-300.woff2') format('woff2');
}

/* outfit-regular - latin */
@font-face {
    font-display: swap;
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/outfit-v14-latin-regular.woff2') format('woff2');
}

/* outfit-500 - latin */
@font-face {
    font-display: swap;
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/outfit-v14-latin-500.woff2') format('woff2');
}

/* outfit-600 - latin */
@font-face {
    font-display: swap;
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/outfit-v14-latin-600.woff2') format('woff2');
}

/* outfit-700 - latin */
@font-face {
    font-display: swap;
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/outfit-v14-latin-700.woff2') format('woff2');
}

:root {

    --cyan: #0098d8;
    --hblau: #49B3E0;
    --dblau: #005C83;
    --anthrazit: #002736;
    --danthrazit: #00202F;
    --orange: #f76b0b;
    --horange: #F39352;
    --offweiss: #EBF0F4;
    --grau: #A1A5AB;
    --weiss: #ffffff;

    --cyan-gradient: linear-gradient(135deg, #49b3e0 0%, #0098d8 100%);
    --anthrazit-gradient: linear-gradient(135deg, #002736 0%, #00202F 100%);
    --orange-gradient: linear-gradient(135deg, #F39352 0%, #F76B0B 100%);
    --orange-blau-gradient: linear-gradient(135deg, #49B3E0 0%, #F39352 100%);


    --fs-headline-xl: 85px;
    --fs-headline-lg: 54px;
    --fs-headline-md: 40px;
    --fs-headline-sm: 28px;
    --fs-headline-xs: 24px;

    --fs-body-lg: 22px;
    --fs-body-sm: 20px;
    --fs-body-xs: 18px;

    --fs-body-rezession: 28px;

    --fs-header: 20px;
    --fs-cta: 24px;


/*
    --fs-headline-xl: 90px;
    --fs-headline-lg: 60px;
    --fs-headline-md: 45px;
    --fs-headline-sm: 30px;
    --fs-headline-xs: 26px;

    --fs-body-lg: 24px;
    --fs-body-sm: 22px;
    --fs-body-xs: 20px;

    --fs-body-rezession: 35px;

    --fs-header: 24px;
*/
}

@media screen and (max-width: 1399px) {
    :root {
        --fs-headline-xl: 67px;
        --fs-headline-lg: 45px;
        --fs-headline-md: 34px;
        --fs-headline-sm: 22px;
        --fs-headline-xs: 20px;

        --fs-body-lg: 16px;
        --fs-body-sm: 14px;
        --fs-body-xs: 12px;

        --fs-body-rezession: 28px;

        --fs-header: 18px;
    }
}

@media screen and (max-width: 991px) {
    :root {
        --fs-headline-xl: 45px;
        --fs-headline-lg: 30px;
        --fs-headline-md: 22px;
        --fs-headline-sm: 22px;
        --fs-headline-xs: 16px;

        --fs-body-rezession: 24px;

    }
}


/********
Global Styles
********/


body {
    font-family: 'Outfit', sans-serif;
    font-weight: 400;
    font-size: var(--fs-body-lg);
    line-height: 1.3;
    background-color: var(--weiss);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}

@media screen and (max-width: 767px) {
    body {
        hyphens: auto;
    }
}

*:focus,
.btn.focus,
.btn:focus,
button:focus {
    outline: 0 none;
    border: 0;
    border-color: transparent;
    -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}

::-webkit-scrollbar {
    width: 6px
}

::-webkit-scrollbar-track {
    background: var(--dblau);
    border-radius: 0px
}

::-webkit-scrollbar-thumb {
    background: var(--hblau);
    border-radius: 3px
}

::selection {
    background: var(--hblau);
    color: #fff;
}

::-moz-selection {
    background: var(--hblau);
    color: #fff;
}

a {
    color: var(--anthrazit);
    text-decoration: underline;
}

a:hover {
    color: var(--hblau);
    ;
}

figure {
    margin: 0;
    padding: 0;
}

small,
.small {
    font-size: var(--fs-body-sm);
    font-weight: 300;
    line-height: 1.4;
    opacity: 0.7;
}


.default-header .navbar-nav .nav-link.active, 
.default-header .navbar-nav .nav-link.show {
    color: var(--weiss);
}

.default-header.scrolled .navbar-nav .nav-link.active,
.default-header.scrolled .navbar-nav .nav-link.show  {
    color: var(--anthrazit);
}


li.item-239 .dropdown-menu.show,
li.item-246 .dropdown-menu.show{
    top: calc(100% + 20px) !important;
    left: 0;
    margin-top: var(--bs-dropdown-spacer);
  min-width:250px;
    max-width: 350px;
    border: none;
  border-radius:0px;
}


li.item-239 .dropdown-item,
li.item-246 .dropdown-item{white-space: normal;color: var(--anthrazit);font-size:var(--fs-body-sm)}

.dropdown-toggle::after {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-left: .255em;
    vertical-align: middle;

    border: 0;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;

    transform: rotate(45deg) translateY(-1px);
}




/********
Headline Styles 
********/


h1,
h2,
.h1,
.h2 {
    font-size: var(--fs-headline-xl);
    font-weight: 600;
    line-height: 1;
    color: var(--anthrazit);
}

.bg-anthrazit h1,
.bg-anthrazit h2,
.bg-anthrazit .h1,
.bg-anthrazit .h2,
.bg-anthrazit-gradient h1,
.bg-anthrazit-gradient h2,
.bg-anthrazit-gradient .h1,
.bg-anthrazit-gradient .h2,
.bg-orange h1,
.bg-orange h2,
.bg-orange .h1,
.bg-orange .h2{
    color: var(--weiss);
}

h1.eyebrow {
    font-size: var(--fs-headline-xs);
    font-weight: 700;
    line-height: 1;

}

h2.large {
    font-size: var(--fs-headline-lg);
    font-weight: 600;
    line-height: 1;
}

h3 {
    font-size: var(--fs-headline-md);
    font-weight: 600;
    line-height: 1;
}

h4 {
    font-size: var(--fs-headline-sm);
    font-weight: 500;
    line-height: 1.1;
}

h5 {
    font-size: var(--fs-headline-xs);
    font-weight: 500;
    line-height: 1.2;
}

h1 span,
h2 span,
.h1 span,
.h2 span {
    color: var(--cyan);
    text-transform: uppercase;
}


.fakeh1 {
    color: var(--cyan)!important;
    font-size: var(--fs-body-lg);
}

header nav a.boldfont {
    font-size: var(--fs-header);
    font-weight: 700;
    text-decoration: none;
}

header nav a {
    font-size: var(--fs-header);
    font-weight: 500;
    text-decoration: none;
}

header nav a.readon {
    display: inline-block;
    padding: 15px 50px !important;
    font-size: var(--fs-header);
    font-weight: 500;
    background-color: var(--cyan);
    border-radius: 4px;
    color: var(--weiss);
    text-decoration: none;
    transition: background-color 0.5s ease;
}

header nav a.readon:hover {
    background-color: var(--orange);
    color: var(--weiss) !important;
    transition: background-color 0.5s ease;
}


/********
Button Styles 
********/


.readon-lg {
    display: inline-block;
    padding: 20px 50px;
    font-size: var(--fs-header);
    font-weight: 600;
    background-color: var(--cyan);
    border-radius: 4px;
    color: var(--weiss);
    border: 2px solid var(--cyan);
    text-decoration: none;
    transition: all 0.5s ease;
    cursor: pointer;
}

.readon-lg:hover {
    border: 2px solid var(--orange);
    background-color: var(--orange);
    color: var(--weiss);
    transition: all 0.5s ease;
    cursor: pointer;
}

.readon-lg-orange,
.rsform-submit-button.btn.btn-primary {
    display: inline-block;
    padding: 20px 50px;
    font-size: var(--fs-header);
    font-weight: 600;
    background-color: var(--orange);
    border-radius: 4px;
    color: var(--weiss);
    border: 2px solid var(--orange);
    text-decoration: none;
    transition: all 0.5s ease;
    cursor: pointer;
}

.readon-lg-orange:hover,
.rsform-submit-button.btn.btn-primary:hover {
    border: 2px solid var(--cyan);
    background-color: var(--cyan);
    color: var(--weiss);
    transition: all 0.5s ease;
    cursor: pointer;
}

.readon-lg-outline {
    display: inline-block;
    padding: 20px 50px;
    font-size: var(--fs-header);
    font-weight: 600;
    background-color: transparent;
    border-radius: 4px;
    border: 2px solid var(--cyan);
    color: var(--cyan);
    text-decoration: none;
    transition: all 0.5s ease;
    cursor: pointer;
}

.readon-lg-outline:hover {
    color: var(--orange);
    border: 2px solid var(--orange);
    transition: all 0.5s ease;
    cursor: pointer;
}

.cta-small {
    display: inline-block;
    padding: 0px;
    font-size: var(--fs-cta);
    font-weight: 600;
    color: var(--cyan);
    text-decoration: none;
    background: url(../images/cta-small-arrow.svg);
    background-repeat: no-repeat;
    background-position: -34px center;
    transition: all 0.5s ease;
    cursor: pointer;
}

.cta-small:hover {
    padding: 0px 0px 0px 35px;
    color: var(--orange);
    background: url(../images/cta-small-arrow.svg);
    background-repeat: no-repeat;
    background-position: left center;
    transition: all 0.5s ease;
}

.cta-extern {
    display: inline-block;
    padding-right: 25px;
    background: url(../images/extern.svg);
    font-size: var(--fs-header);
    font-weight: 600;
    color: var(--cyan);
    text-decoration: none;
    background-repeat: no-repeat;
    background-position: right center;
    transition: all 0.5s ease;
}

footer .cta-extern {
    display: inline-block;
    padding-right: 25px;
    background: url(../images/extern-footer.svg);
    font-size: var(--fs-header);
    font-weight: 600;
    color: var(--cyan);
    text-decoration: none;
    background-repeat: no-repeat;
    background-position: right center;
    transition: all 0.5s ease;
}

.cta-extern:hover {
    background: url(../images/extern-hover.svg);
    background-repeat: no-repeat;
    background-position: right center;
    color: var(--orange);
    transition: all 0.5s ease;
}


.sm-pad {
    padding: 15px 38px;
}

/********
Container Styles
********/


.bg-cyan {
    background-color: var(--cyan);
}

.bg-hblau {
    background-color: var(--hblau);
}

.bg-dblau {
    background-color: var(--dblau);
}

.bg-anthrazit {
    background-color: var(--anthrazit);
}

.bg-danthrazit {
    background-color: var(--danthrazit);
}

.bg-orange {
    background-color: var(--orange);
}

.bg-horange {
    background-color: var(--horange);
}

.bg-offweiss {
    background-color: var(--offweiss);
}

.bg-grau {
    background-color: var(--grau);
}

.bg-cyan,
.bg-hblau,
.bg-dblau,
.bg-anthrazit,
.bg-danthrazit,
.bg-orange,
.bg-horange {
    color: var(--weiss);
}

.bg-offweiss,
.bg-grau {
    color: var(--anthrazit);
}

.text-cyan {
    color: var(--cyan);
}

.text-hblau {
    color: var(--hblau);
}

.text-dblau {
    color: var(--dblau);
}

.text-anthrazit {
    color: var(--anthrazit)!important;
}

.text-danthrazit {
    color: var(--danthrazit);
}

.text-orange {
    color: var(--orange);
}

.text-horange {
    color: var(--horange);
}

.text-offweiss {
    color: var(--offweiss);
}

.text-grau {
    color: var(--grau);
}

.bg-cyan-gradient {
    background: var(--cyan-gradient);
}

.bg-anthrazit-gradient {
    background: var(--anthrazit-gradient);
}

.bg-orange-gradient {
    background: var(--orange-gradient);
}

.bg-orange-blau-gradient {
    background: var(--orange-blau-gradient);
}

.bg-cyan-gradient,
.bg-anthrazit-gradient,
.bg-orange-gradient,
.bg-orange-blau-gradient {
    color: var(--weiss);
}


/********
Responsive Containers
********/


@media (min-width: 1400px) {
    .container-xxl {
        /*max-width: 2040px*/
        max-width: 1800px
    }

    .container {
        max-width: 1480px
    }
}

.section-padding {
    padding-top: 140px;
    padding-bottom: 140px;
}

.section-padding-top {
    padding-top: 140px;
}

.section-padding-bottom {
    padding-bottom: 140px;
}

.section-padding-xl {
    padding-top: 300px;
    padding-bottom: 300px;
}

.section-padding-xl-top {
    padding-top: 300px;
}

.section-padding-xl-bottom {
    padding-bottom: 300px;
}

.mt-xl {
    margin-top: 300px;
}
.mb-xl-negative {
    margin-bottom: -300px;
} 

@media screen and (max-width: 1399px) {
    .section-padding {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .section-padding-top {
        padding-top: 100px;
    }

    .section-padding-bottom {
        padding-bottom: 100px;
    }

    .section-padding-xl {
        padding-top: 200px;
        padding-bottom: 200px;
    }

    .section-padding-xl-top {
        padding-top: 200px;
    }

    .section-padding-xl-bottom {
        padding-bottom: 200px;
    }

    .mt-xl {
        margin-top: 200px;
    }
    .mb-xl-negative {
        margin-bottom: -200px;
    }    
}

@media screen and (max-width: 991px) {
    .section-padding {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .section-padding-top {
        padding-top: 60px;
    }

    .section-padding-bottom {
        padding-bottom: 60px;
    }

    .section-padding-xl {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .section-padding-xl-top {
        padding-top: 100px;
    }

    .section-padding-xl-bottom {
        padding-bottom: 100px;
    }

    .mt-xl {
        margin-top: 100px;
    }
    .mb-xl-negative {
        margin-bottom: -100px;
    }     
}


/********
Header Scroll Styles
********/


.default-header {
    background: var(--anthrazit-gradient);
}

.default-header a {
    color: var(--weiss);
}

.default-header a.boldfont {
    color: var(--cyan);
}

.default-header a:hover:not(.readon) {
    color: var(--orange);
}

.default-header .navbar-brand {
    width: 254px;
    height: 35px;
    background: url(../images/prolag-one-logo-dark.svg) no-repeat center;
    text-indent: -9999px;
}

.default-header.scrolled {
    background: var(--offweiss);
}

.default-header.scrolled a {
    color: var(--anthrazit);
}

.default-header.scrolled .navbar-brand {
    width: 254px;
    height: 35px;
    background: url(../images/prolag-one-logo-light.svg) no-repeat center;
    text-indent: -9999px;
}

.default-header .navbar-toggler {
    border: var(--bs-border-width) solid var(--offweiss);
    border-radius: 4px;
}

.default-header.scrolled .navbar-toggler {
    border: var(--bs-border-width) solid var(--anthrazit);
    border-radius: 4px;
}

.default-header .navbar-toggler-icon {
    background-image: url(../images/burger-wht.svg);
}

.default-header.scrolled .navbar-toggler-icon {
    background-image: url(../images/burger-dark.svg);
}

@media screen and (max-width: 1199px) {
    header .navbar-nav.ms-auto {
        margin-left: 0 !important;
    }

    header .navbar-nav.align-items-center {
        align-items: start !important;
    }
}


/********
Header Slider styles
********/


@media screen and (min-width: 1200px) {
    #home-slider.f-carousel {
        --f-carousel-gap: 8px;
        --f-carousel-slide-width: calc((100% - 88px) / 12);
    }
}

@media screen and (max-width: 1199px) {
    #home-slider.f-carousel {
        --f-carousel-gap: 8px;
        --f-carousel-slide-width: calc((100% - 40px) / 8);
    }
}

@media screen and (max-width: 991px) {
    #home-slider.f-carousel {
        --f-carousel-gap: 8px;
        --f-carousel-slide-width: calc((100% - 40px) / 6);
    }
}

@media screen and (max-width: 767px) {
    #home-slider.f-carousel {
        --f-carousel-gap: 8px;
        --f-carousel-slide-width: calc((100% - 24px) / 5);
    }
}

#home-slider::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 25%;
    height: 100%;
    background: url(../images/home-slider-overlay-left.svg) no-repeat left center;
    background-size: 100% auto;
    z-index: 10;
}

#home-slider::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 25%;
    height: 100%;
    background: url(../images/home-slider-overlay-right.svg) no-repeat left center;
    background-size: 100% auto;
    z-index: 10;
}


/********
Accordeon Styles
********/


.accordion-item {
    background: transparent;
    border: 0;
}

.accordion-button:focus {
    border-color: transparent;
    box-shadow: none;
}

.accordion-button {
    background-color: transparent;
    color: var(--danthrazit);
    font-size: var(--fs-headline-sm);
    font-weight: 500;
    padding: 35px 20px 35px 0px;
    border: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.bg-anthrazit-gradient .accordion-button,
.bg-orange .accordion-button {
    background-color: transparent;
    color: var(--weiss);
    font-size: var(--fs-headline-sm);
    font-weight: 500;
    padding: 35px 20px 35px 0px;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.accordion-button:not(.collapsed) {
    color: var(--cyan);
    box-shadow: none;
    border: 0;
    background-color: transparent !important;
}

.bg-orange .accordion-button:not(.collapsed) {
    color: var(--weiss)
}

.bg-anthrazit-gradient .accordion-header {
    color: var(--cyan);
    font-size: var(--fs-headline-sm);
}

.bg-anthrazit-gradient .accordion-body,
.bg-orange .accordion-body {
    color: var(--weiss);
    border: none;
    padding-left: 0px;
}

.bg-anthrazit-gradient .accordion-button::after,
.bg-orange .accordion-button::after {
    background-image: url(../images/arrow-down-wht.svg);
}

.image-container,
.image-container2 {
    position: relative;
    width: 100%;
    height: 550px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.image-container img,
.image-container2 img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    position: absolute;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}


.bg-white .image-container,
.bg-white .image-container2 {
    position: relative;
    width: 750px;
    height: 750px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    /*border: 1px solid #000;*/
}

.bg-white .image-container img,
.bg-white .image-container2 img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    position: absolute;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}


.image-container img.active,
.image-container2 img.active {
    opacity: 1;
    pointer-events: auto;
}

.animated {
    animation-duration: 0.6s;
    animation-fill-mode: both;
}

@keyframes slideOutUp {
    from {
        transform: translateY(0);
        opacity: 1;
    }

    to {
        transform: translateY(-100%);
        opacity: 0;
    }
}

@keyframes slideInUp {
    from {
        transform: translateY(100%);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.slideOutUp {
    animation-name: slideOutUp;
}

.slideInUp {
    animation-name: slideInUp;
}


/********
Footer Styles
********/


footer h6 {
    font-size: var(--fs-headline-sm);
    font-weight: 300;
    line-height: 1;
    margin-bottom: 20px;
    color: var(--cyan);
}

footer a.nav-link {
    padding-left: 0px;
    font-size: var(--fs-body-sm);
    font-weight: 300;
    line-height: 28px;
    color: var(--weiss);
    text-decoration: none;
}

footer a.nav-link:hover {
    color: var(--orange);
    text-decoration: none;
}

footer a.disabled {
    opacity: 0.36;
    color: var(--weiss) !important;
    pointer-events: none;
    cursor: default;
}

/********
Rezession Styles 
********/

.rezessionen-text {
    background-image: url(../images/bg-rezession.svg);
    background-repeat: no-repeat;
    background-position: 25px top;
    background-size: 50px auto;
    padding-top: 80px;
}

.rezessionen-text p {
    font-size: var(--fs-body-rezession);
    font-weight: 300;
    line-height: 1.1;
    color: var(--danthrazit);
}

.rezessionen-text p b {
    font-size: var(--fs-body-sm);
    font-weight: 300;
    line-height: 1.1;
    color: var(--danthrazit);
}

#rezessionenSlider.f-carousel {
    --f-carousel-gap: 0px;
    --f-carousel-slide-width: calc((100% - 0px) / 1);
}


.f-button.is-arrow {
    --f-button-width: 90px;
    --f-button-height: 90px;
    --f-button-svg-width: 80px;
    --f-button-svg-height: 80px;
    --f-button-svg-stroke-width: 1.25;
}
.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
    left: -8vw
}

.is-horizontal.is-ltr .f-button.is-arrow.is-next {
    right: -8vw
}



/********
Preistabelle 
********/


.preistabelle .img-icon {
    height: 45px;
    width: auto;
}

.preistabelle .preis {
    font-size: var(--fs-headline-md);
    font-weight: 400;
}

.switch-wrapper {
    position: relative;
    display: inline-flex;
    background: #e9ecef;
    /* Bootstrap light gray */
    border-radius: 50px;
    padding: 3px;
    font-size: 0.9rem;
    font-weight: 500;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
}

.switch-wrapper input {
    display: none;
}

.switch-wrapper label {
    position: relative;
    z-index: 2;
    width: 150px;
    text-align: center;
    padding: 6px 0;
    cursor: pointer;
    color: #495057;
    transition: color 0.3s ease;
}

.switch-wrapper .switch {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 3px;
    width: 150px;
    background: #f97316;
    /* orange */
    border-radius: 50px;
    transition: all 0.3s ease;
    z-index: 1;
}

#monthly:checked~.switch {
    left: 3px;
}

#yearly:checked~.switch {
    left: calc(150px + 3px);
}

#monthly:checked+label {
    color: #fff;
}

#yearly:checked+label {
    color: #fff;
}

.xs-small {
    font-size: var(--fs-body-xs);
    opacity: 0.7;
    line-height: 1.2;
    font-weight: 300;
}

.hidden-items {
    display: none;
}

.show .hidden-items {
    display: block;
}

.preistabelle .text-cyan {
    color: #06b6d4;
    /* cyan */
    cursor: pointer;
    font-weight: 500;
}

.preistabelle ul {
    list-style: none;
    padding-left: 0;
}

.preistabelle li {
    position: relative;
    padding-left: 1.8em;
    margin-bottom: 0.5em;
}

.preistabelle li i {
    position: absolute;
    left: 0;
    top: 0.1em;
    width: 21px;
    height: 15px;
    background-image: url(../images/check.svg);
    background-repeat: no-repeat;
    background-position: center center;
}

.blurred {
    filter: blur(4px);
    /* je höher der Wert, desto unschärfer */
}

.bg-white-blurr {
    background-color: rgba(255, 255, 255, 0.58);
}

/********
Blog
********/

.blogheader nav a {
    color: var(--cyan);
}
.blogheader nav a:hover {
    color: var(--horange);
}
.blogheader nav li.nav-item:first-child a.nav-link{
    padding-left: 0;
}


.blogheader .border-bottom{
    border-bottom: 1px solid #87857f!important;
}

.blogitem.border-top {
    border-top: 1px solid #87857f!important;
}


.blogitem .catlink,
.blogitem a.catlink {
    color: #A1A5AB;
    font-weight: 700;
}

.blogitem h3,
.blogitem h3 a,
.blogitem h4,
.blogitem h4 a {
    color: #FFF;
    text-decoration: none;
}

.blogitem h3 a:hover,
.blogitem h4 a:hover {
    color: var(--cyan);
}

.h2-small {
    font-size: var(--fs-headline-md);
    line-height: 1.2;
}

.datum {
    font-size: var(--fs-body-xs);
}

.blogcontent h2,
.blogcontent h3,
.blogcontent h4,
.blogcontent h5,
.blogcontent h6 {
    color: #005C83;
    font-size: var(--fs-headline-md);
    margin-bottom: 30px;
}


.blogcontent blockquote {
    padding-left: 80px;
    width: 90%;
    color: var(--cyan);
    font-size: var(--fs-body-rezession);
    background-image: url(../images/quote.png);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 60px auto;
}
.blogcontent blockquote em {
    font-style: normal;
    font-size: var(--fs-body-xs);
    color: var(--danthrazit);
}


.socialblogicons a,
.socialblogicons a img {
    text-decoration: none;
    border: none;

}
@media screen and (min-width: 992px) {
    .socialblogicons a img {
        width: 60%;
        height: auto;
    }
}


.blogcontent h1,
.blogcontent h2,
.blogcontent h3,
.blogcontent h4,
.blogcontent h5,
.blogcontent h6 {
    padding-top: 1.5rem;
}

.blogcontent blockquote {
    margin-top: 2rem!important;
}
/********
Fanybox Popup
********/


.fancybox__backdrop {
    background: transparent;
}

.fancybox__slide .f-button[data-fancybox-close] {
    --f-button-color: var(--anthrazit);
    --f-button-hover-color: var(--orange);
    top: 25px;
    right: 25px;
}


/********
Form Styles
********/


.form-control {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: var(--fs-body-sm);
    font-weight: 300;
    line-height: 1.5;
    color: var(--anthrazit) !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: 1px solid var(--danthrazit);
    border-radius: 4px;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.form-select {
    --bs-form-select-bg-img: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e);
    display: block;
    width: 100%;
    font-size: var(--fs-body-sm);
    font-weight: 300;
    line-height: 1.5;
    color: var(--anthrazit);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-body-bg);
    background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: 1px solid var(--danthrazit);
    border-radius: 4px;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.form-control::placeholder {
    color: var(--anthrazit);
    opacity: 1;
    font-weight: 300;
}

.rsform h2 {
    color: var(--dblau);
    font-size: var(--fs-headline-md);
    font-weight: 500;
    margin-bottom: 30px;
}

.rsform p a {
    color: var(--cyan);
    text-decoration: none;
    font-weight: bold;
}

.rsform p a:hover {
    color: var(--orange);
}

.rsform label {
    display: none;
}



/********
Form StylesLanguage Button & Dropdown
********/



.default-header .lang-button {
    width: 22px;
    height: 22px;
    background-image: url(../images/lang-bg.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-color: transparent;
    text-indent: -9999px;
    border: none;
}

.default-header.scrolled .lang-button {
    background-image: url(../images/lang-bg-dark.svg);
}


.dropdown-menu[data-bs-popper] {
    top: calc(100% + 32px) !important;
    left: 0;
    margin-top: var(--bs-dropdown-spacer);
    min-width: 250px;
    border: none;
}

.lang-block li a {
    font-size: var(--fs-body-sm);
    font-weight: 500;
    color: var(--anthrazit);
    text-decoration: none;
    padding: 10px 20px;
    display: block;
}

.lang-block li.lang-active a {
    color: var(--cyan);
}

.default-header.scrolled .dropdown-menu[data-bs-popper] {
    background-color: var(--offweiss);
}


footer a,
footer a:hover {
    text-decoration: none;
}

.pmargin-0 p {
    margin-bottom: 0px;
}

.content-section h3 {
    margin-bottom: 40px;
    color: var(--dblau);
}

.tabellenbody a{
    text-decoration: none;
    color: var(--cyan);
}

.tabellenbody a:hover{
    text-decoration: none;
    color: var(--orange);
}

#tour-text h3{
    color: var(--anthrazit);
    margin-bottom: 25px;
}


#tour-text b {
    color: var(--cyan);
}

.featurecontainer h2 {
    font-size: var(--fs-headline-md);
}



.projektablaufkachel {
    color: var(--weiss);
}

.projektablaufkachel.bg-verlauf-1,
.projektablaufkachel.bg-verlauf-2 {
    background: #1A5B89;
    background: linear-gradient(40deg, rgba(26, 91, 137, 1) 0%, rgba(30, 117, 177, 1) 100%);
}


.projektablaufkachel.bg-verlauf-3,
.projektablaufkachel.bg-verlauf-4,
.projektablaufkachel.bg-verlauf-5 {
    background: #445862;
    background: linear-gradient(40deg, rgba(68, 88, 98, 1) 0%, rgba(74, 100, 112, 1) 100%);
}


.projektablaufkachel.bg-verlauf-6,
.projektablaufkachel.bg-verlauf-7 {
    background: #C45F2D;
    background: linear-gradient(40deg, rgba(196, 95, 45, 1) 0%, rgba(231, 120, 50, 1) 100%);
}


#projektablaufSlider .projektablaufkachel {
    margin-left: 5px;
    margin-right: 5px;
}

#projektablaufSlider .f-button.is-arrow {
    --f-button-width: 45px;
    --f-button-height: 45px;
    --f-button-svg-width: 40px;
    --f-button-svg-height: 40px;
    --f-button-svg-stroke-width: 1.25;
}
#projektablaufSlider.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
    left: -50px!important
}

#projektablaufSlider.is-horizontal.is-ltr .f-button.is-arrow.is-next {
    right: -50px!important
}


.projektablauficon {
    width: 120px;
    height: auto;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {

    #projektablaufSlider.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
        top: calc(100% + 25px)!important;
        left: calc(50% - 55px)!important
    }

    #projektablaufSlider.is-horizontal.is-ltr .f-button.is-arrow.is-next {
        top: calc(100% + 25px)!important;
        right: calc(50% - 55px)!important
        
    }

}



.djacc-popup .djacc__openbtn--default {
    background: var(--cyan)!important;
}


#CybotCookiebotDialogHeader {
    padding: 0em!important;
    height: 0px!important;
}


#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept, #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept, #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
    background-color: var(--cyan)!important;
    border-color: var(--cyan)!important;
    color: var(--weiss);
}
#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {
    border: 2px solid var(--cyan)!important;
}

#CybotCookiebotDialogHeader {
    width: 0px!important;
  overflow:hidden!important;
}

#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a {
    color: var(--cyan)!important;
}
#CybotCookiebotDialogPoweredbyCybot,
#CybotCookiebotDialogPoweredbyLink{
    width: 0px!important;
  overflow:hidden!important;
}

#CybotCookiebotDialog {
    background-color: #ffffff!important;
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
    border-bottom: 1px solid var(--cyan)!important;
    color: var(--cyan)!important;
}
#CybotCookiebotDialogTabContent input:checked+.CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: var(--cyan)!important;
}
#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText a, #CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonIABHeaderViewPartnersLink, #CybotCookiebotDialog #CybotCookiebotDialogDetailBulkConsentList dt a, #CybotCookiebotDialog #CybotCookiebotDialogDetailFooter a, #CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABDescription a, #CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieLink, #CybotCookiebotDialogDetailBodyContentTextAbout a {
    color: var(--cyan)!important;
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink:hover {
    color: var(--cyan)!important;
}

#CybotCookiebotDialogHeader {
    border-bottom: 0px solid #D6D6D6!important;
}


#CookiebotWidget #CookiebotWidget-buttons #CookiebotWidget-btn-withdraw {
    background-color: #FFFFFF;
    border-color: var(--cyan)!important;
    color: var(--cyan)!important;
    transition-delay: .3s;
}

#CookiebotWidget #CookiebotWidget-buttons #CookiebotWidget-btn-change {
    background-color:  var(--cyan)!important;
    border-color:  var(--cyan)!important;
    color: #FFFFFF;
}

#CookiebotWidget .CookiebotWidget-consent-details button {
    color: var(--cyan)!important;
}

#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-consents-list li.CookiebotWidget-approved svg {
    fill: var(--cyan)!important;
}

#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-consents-list li.CookiebotWidget-approved svg {
    fill: var(--cyan)!important;
}

#CookiebotWidget .CookiebotWidget-logo svg circle {
    fill: var(--cyan)!important;
}