/* Design aus dem Dickicht · blackape.de */


/* WRAPPER 
-------------------------------------------------- */

.wrapper {
    width: min(100% - 40px, 1180px);
    margin-inline: auto;
}

.wrapper_2 {
    width: min(100% - 40px, 960px);
    margin-inline: auto;
}

/* SECTION 
-------------------------------------------------- */

.section_padding {
    padding-block: 80px 80px;
}

.section_padding_footer {
    padding-block: 40px;
}

.section_padding_legal {
    padding-block: 20px 40px;
}

.section_padding_legal_site {
    padding-block: 60px 60px;
}

/* GRID 
-------------------------------------------------- */

.grid_2,
.grid_3,
.grid_4 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
}

.m_left {
    margin-left: clamp( 0px, calc((100vw - 1040px) / 2), 110px );
}

.m_right {
    margin-right: clamp( 0px, calc((100vw - 1040px) / 2), 110px );
}

.grid_2_left {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.grid_2_right {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.grid_2_img picture, .grid_2_img img {
    height: 100%;
}

.grid_2_img img {
    object-fit: cover;
}

.order_1_m_2_d {
    order: 1;
}

.order_2_m_1_d {
    order: 2;
}

.order_1 {
    order: 1;
}

.order_2 {
    order: 2;
}

/* FLEX 
-------------------------------------------------- */

.flex {
    display: flex;
}

.flex_wrap {
    flex-wrap: wrap;
}

.flex_wrap_center {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.flex_center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.flex_between {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.flex_col {
    display: flex;
    flex-direction: column;
}

.flex_item_3 {
    flex: 0 1 100%;
    box-sizing: border-box;
}

.gap_15 {
    gap: 15px;
}

.gap_20 {
    gap: 20px;
}


.gap_25 {
    gap: 25px;
}

.gap_30 {
    gap: 30px;
}

.gap_40 {
    gap: 40px;
}

.gap_60 {
    gap: 60px;
}

@media (min-width: 500px) {

    /* WRAPPER  
    ---------------------------------------------- */

    .wrapper {
        width: min(100% - 80px, 1180px);
        margin-inline: auto;
    }

    .wrapper_2 {
        width: min(100% - 80px, 960px);
        margin-inline: auto;
    }

}

/* TABLET 
-------------------------------------------------- */
@media (min-width: 768px) {

    /* WRAPPER  
	---------------------------------------------- */


    /* SECTION  
	---------------------------------------------- */

    /* GRID  
	---------------------------------------------- */

    .grid_2,
    .grid_4 {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid_3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .order_1_m_2_d {
        order: 2;
    }

    .order_2_m_1_d {
        order: 1;
    }

    .grid_2_left {
        padding-block:80px;
    }

    .grid_2_right {
        padding-block:80px;
    }

    /* FLEX  
	---------------------------------------------- */

    .flex_item_3 {
        flex: 0 1 calc((100% - 30px) / 2);
    }

}

/* DESKTOP 
-------------------------------------------------- */
@media (min-width: 1024px) {

    /* WRAPPER  
	---------------------------------------------- */


    /* SECTION  
	---------------------------------------------- */

    .section_padding {
        padding-block: 120px 120px;
    }

    .section_padding_legal {
        padding-block: 20px;
    }

    /* GRID  
	---------------------------------------------- */

    .grid_4 {
        grid-template-columns: repeat(4, 1fr);
    }

    /* FLEX  
	---------------------------------------------- */

    .flex_item_3 {
        flex: 0 1 calc((100% - 60px) / 3);
    }

}