/* Styling for theme, accept ACF Blocks */
html {
    font-size: 62.5%;
}

body {
    font-size: 1.4rem;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    line-height: initial;
    color: #1C1C1C;
}

ul, ol {
    margin-left: 0;
    padding-left: 1.5rem;
}

.container, header.entry-header, .archive.woocommerce ul.products, .wp-block-gallery {
    max-width: 119.6rem;
    margin: 0 2rem;
}

.archive.woocommerce ul.products {
    margin: 0 auto;
}



header.entry-header {
    text-align: center;
}
strong {
    font-weight: 700;
}

h1, h2.style_h1, .style_h1 h2 {
    font-size: 4rem;
    font-weight: 700;
    margin: 0;
    line-height: 1;
}

h1, h2, h3, h4, h5, h6 {
    hyphens: auto;
    hyphenate-limit-chars: 10 5 5;
}

h1 {

    margin-bottom: 3rem;
        margin-top: 3rem;
    @media all and (min-width: 1024px){
        margin-top: 0;

    }
}

h2 {
    font-size: 3rem;
}


.home h2 {
    margin-top: 0;
}

.wp-block-container.container.para p, .wp-block-container.container.list li, .wp-block-table td, .wp-block-table th{
    font-size: 1.6rem;
    line-height: 3rem;
}

@media  all and (min-width: 1024px) {
    h1, h2.style_h1, .style_h1 h2 {
        font-size: 5rem;
    }

}

h2, h4 {
    font-weight: 700;
}
.footer_middle h4 {
    text-transform: uppercase;
    font-size: 1.4rem;
}

@media  all and (min-width: 1024px) {
    h4 {
        font-size: 2.4rem;
    }

    .footer_middle h4 {
        font-size: 1.4rem;
    }

}
h3 {
    font-size: 1.6rem;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 2rem;
}

a {
    text-decoration: none;
    transition: 0.3s ease-in-out;
    color: #1C1C1C;
}

a:hover {
    color: #1C1C1C;
}

@media all and (min-width:1240px) {
    .container,  header.entry-header, .wp-block-gallery {
        margin: 0 auto;
    }
}

body .slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slick-dots > li {
    display: inline-block;
}
.slick-dots li:only-child {
    display: none;
}


.slick-track {
    display: flex !important;
}

.slick-slide {
    height: inherit !important;
}



/* Buttons
--------------------------------------------- */

.wp-block-button__link {
    background-color: #105E00;
}

.wp-block-button__link:hover {
    background-color: #d2dfce;
}

.wp-block-separator {
    background-color: #105e00;
    color: #105e00;
    width: 20%;
    margin-top: 5rem;
    margin-bottom: 3rem;
}



.custom-logo-link {
    background: none;
}

.home header.entry-header {
    display: none;
}

.home .entry-content {
    margin: 0;
}








.custom_cover {
    margin-bottom: -3rem;
}

.wp-block-cover, .wp-block-cover-image {
    min-height: 25rem;
    padding: 4rem 2rem;
}


@media all and (max-width: 600px) {
    .custom_cover .wp-block-media-text__content {
        margin: 2rem 0;
        padding: 0;
        text-align: center;
    }

    .custom_cover .wp-block-buttons>.wp-block-button {
        margin: 0 auto;
    }
}




.wp-block-media-text .wp-block-media-text__content {
    padding-right: 0;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
    padding-right: 8%;
}


@media all and (max-width: 1239px) {
    .container .container {
        margin: 0;
    }
}

@media all and (max-width: 600px) {
    .wp-block-media-text .wp-block-media-text__content {
        padding: 0;
    }
}


p img {
    vertical-align: middle;
    width: 15px !important;
    margin-bottom: 3px;
    margin-right: 3px;
}

.kennzahl {
    text-align: center;
    font-weight: 700;
    font-size: 4rem;
    line-height: 1;
    margin-bottom: -4rem;
}

figure.aligncenter img {
    margin-top: 2rem;
}

.teaser-random-single img {
    aspect-ratio: 3 / 2;
    width: 100%;
    object-fit: cover;
    object-position: top;
}

.teaser-random-single {
    position: relative;
}
.teaser-random-single .buttons {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.wp-block-gallery.has-nested-images figure.wp-block-image {
    flex-grow: unset;
    /* aspect-ratio: 3 / 2;
    object-fit: contain; */
}


.wp-block-gallery .wp-block-image img, .wp-lightbox-overlay.zoom.active .lightbox-image-container img{
    object-fit: contain !important;
}

.wp-block-gallery .wp-block-image img {
    border: 1px solid lightgray;
    aspect-ratio: 4 / 3;
    object-position: center;
}

.wp-block-gallery.has-nested-images.is-cropped:not(.team, .team2) figure.wp-block-image:not(#individual-image) {

    width: 100%;
    @media all and (min-width: 1024px) {
        width: calc(33.33% - 0.5rem) !important;

    }
}

.timeline__item.timeline__item--left {
    text-align: right;
}

@media all and (min-width: 768px) {
    .timeline__item.timeline__item--left .timeline__content {
        width: 75%;
        margin: 0 0 0 auto;
    }

    .timeline__item.timeline__item--right .timeline__content {
        width: 75%;
        margin: 0 auto 0 0;
    }
}


#BTimelineBlock-1 .timeline .timeline__content p {
    font-size: initial;
    font-weight: inherit;
    line-height: 0;
}

#BTimelineBlock-1 .timeline--mobile .timeline__item {
    width: 100%;
    text-align: left;
}

:target {
    scroll-margin-top: 140px; /* Abstand nach oben */
}


body .wp-block-gallery.team.has-nested-images.is-cropped {
    margin-top: 20px;
    gap: 20px !important;

    figure.wp-block-image:not(#individual-image) {

        width: 100%;
        @media all and (min-width: 1024px) {
            width: calc(25% - 1.5rem) !important;

        }
    }

     .wp-block-image img {
        aspect-ratio: 3 / 2;

    }
}

body .wp-block-gallery.team2.has-nested-images.is-cropped {
    gap: 20px !important;
    margin: 0 !important;

    figure.wp-block-image:not(#individual-image) {

        width: 100%;
        @media all and (min-width: 1024px) {
            width: calc(50% - 1rem) !important;

        }
    }

    .wp-block-image img {
        aspect-ratio: 3 / 2;

    }
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-right: 0;
    padding-left: 0;

    padding-top : 20px;
    @media all and (min-width: 1024px) {
        padding-right: 10px;
        padding-top : 0;

    }
}

.wp-block-media-text>.wp-block-media-text__content {
    padding-left: 0;
    padding-right: 0;

    @media all and (min-width: 1024px) {
        padding-left: 10px;

    }

}

.wp-block-media-text>.wp-block-media-text__media {

    margin-left: 0;
    margin-right: 0;
    @media all and (min-width: 1024px) {
        margin-right: 10px;

    }
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
    margin-left: 0;
    @media all and (min-width: 1024px) {
        margin-left: 10px;

    }
    margin-right : 0;
}

.wp-block-cover .wp-block-cover__image-background, .wp-block-cover video.wp-block-cover__video-background, .wp-block-cover-image .wp-block-cover__image-background, .wp-block-cover-image video.wp-block-cover__video-background {
    object-position: top;
}

.wp-block-image :where(figcaption) {
    margin-bottom: 1em;
    margin-top: .5em;
    font-size: 1.6rem;
}