/*------------------------------------------------------------------------------------------< Dimendsionen >---*/

main .mod_article > .insideArticle,
header .inside,
footer .inside,
#heroContent,
#banner > .inside{
    width: 100%;
    max-width: calc(1640px + 2rem);
    padding: 0 1rem;
    margin: 0 auto;
    position: relative;
}

main .mod_article:not(.wider) > .insideArticle{
    max-width: calc(1364px + 2rem);
}

main .mod_article.full > .insideArticle{
    max-width: 100%;
    padding:0;
}

/*------------------------------------------------------------------------------------------< Banner >---*/

#banner {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    height: 3rem;
    background-color: var(--c-fontcolor);

    font-size: .64rem;
    color: #fff;
    z-index: 9;
    transition: top var(--tt);
}

body.small #banner {
    top: -3rem;
}

#banner>.inside {
    height: 100%;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

#banner .ce_text {
    overflow: hidden;
    padding-left: 1.3rem;
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    transition: grid-template-columns 1s;
    cursor: pointer;
}

#banner .ce_text>p {
    overflow: hidden;
}

#banner .ce_text:before {
    content: "";
    display: block;
    height: 1rem;
    aspect-ratio: 1;

    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 0;

    background-color: #fff;

    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
}

#herz:before {
    mask-image: url(../img/herz.svg);
}

#traktor:before {
    mask-image: url(../img/traktor.svg);
}

#laden:before {
    mask-image: url(../img/laden.svg);
}

#welt:before {
    mask-image: url(../img/welt.svg);
}

#banner p {
    white-space: nowrap;
}

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

    #banner > .inside{
        justify-content: flex-start;
    }

    #banner .ce_text {
        grid-template-columns: 0fr;

    }

    #banner .ce_text:where(:hover, :focus) {
        grid-template-columns: 1fr;
    }

}

/*------------------------------------------------------------------------------------------< Header >---*/

header {
    position: fixed;
    left: 0;
    right: 0;
    top: 3rem;

    z-index: 8;

    transition: height var(--tt), top var(--tt), box-shadow var(--tt);
}

#navSearch,
#controls {
    mix-blend-mode: difference;
}

header:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 0;
    box-shadow:0px .25rem .5rem -.5rem transparent;
    transition: height var(--tt), box-shadow var(--tt);
    background-color: #fff;
}

body.small header:before {
    height: 100%;
    box-shadow:0px .25rem .5rem -.5rem #000;
}

body.small header {
    top: 0;
}

#logo a {
    display: block;
    height: 2.5rem;
    aspect-ratio: 1/.5;
    background-image: url(../img/logo.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left center;
}

#controls {
    display: flex;
    justify-content: flex-end;
    gap: var(--grid__gutter);
}












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

    #search {
        display: none;
    }

    header {
        height: 4rem;
    }

    header>.inside {
        height: 100%;
    }

    body.open header {
        height: 100dvh;
    }

    body.open header:before {
        height: 100%;
    }

    header nav {
        position: absolute;
        transform: translateY(-50%);
        left: 1rem;
        right: 1rem;
        top: calc(-10rem - 100%);
        transition: top var(--tt);
    }

    body.small header nav {
        top: calc(-8rem - 100%);
    }

    body.open header nav {
        top: 50%;
    }

    #controls,
    #logo {
        position: absolute;
        transform: translateY(-50%);
        top: 2rem;
        z-index: 1;
    }

    #logo {
        left: 1rem;

    }

    #controls {
        right: 1rem;
    }

    header .searchForm {
        position: fixed;
        left: 1rem;
        right: 1rem;
        top: 100vh;
    }

    body.open header .searchForm {
        transition: top var(--tt);
        transition-delay: var(--tt);
        top: calc(100dvh - 3.4rem);
    }

    #navCtl {
        position: relative;
        background-color: transparent;
        font-size: .8rem;
        /* padding-right: 1.9rem; */
        padding:0 1.9rem 0 0;
        color: #fff;
    }

    #navCtl:before,
    #navCtl:after {
        content: "";
        display: block;
        width: 1.4rem;
        height: .1rem;
        position: absolute;
        transform: translateY(-50%);
        right: 0;
        top: 50%;
        background-color: #fff;
        transition: transform var(--tt);
    }

    body:not(.open) #navCtl:after {
        transform: translateY(-50%) rotate(90deg);
    }

}








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

    #navCtl {
        display: none;
    }

    header {
        height: 7rem;
    }

    body.small header {
        height: 5rem;
    }

    header>.inside {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--grid__gutter);
        margin-top: 2rem;
        transition: margin-top var(--tt);
    }

    body.small header>.inside {
        /* margin-top: .5rem; */
        margin-top: 1.25rem;
    }

    /* header nav {
        padding-bottom: 2.5rem;

    }

    body.small header nav {
        padding-bottom: 2rem;
    } */

}


header button {
    appearance: none;
    display: block;
    height: 1.4rem;
    aspect-ratio: 1;
    padding:0;
    border: none;
    font-size: 0;
    cursor: pointer;

    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;

    background-color: #fff;
}

#search {
    mask-image: url(../img/search.svg);
}

#user {
    mask-image: url(../img/avatar.svg);
}

#cart {
    mask-image: url(../img/cart.svg);
}

header form {
    overflow: hidden;
}


/*------------------------------------------------------------------------------------------< Navigation >---*/

nav :where(a, strong) {
    font-family: 'OpenSans_C_Bold';
    color: #fff;
    display: block;
}

nav ul {
    margin-bottom: 0 !important;
}


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

    header nav :where(a, strong) {
        font-size: 1.3rem;
    }

    header nav :where(strong){
        color:#ef97cc;
    }

    header nav .subitems,
    body:not(.open) header nav .subitems {
        display: grid;
        grid-template-rows: 0fr;

        transition: grid-template-rows var(--tt);
    }

    header nav .subitems.show {
        grid-template-rows: 1fr;
    }

    header nav .subitems ul {
        overflow: hidden;

        transition: margin-top var(--tt);
    }

    header nav .subitems.show ul {
        margin-top: 1rem;
    }

    header nav .submenu {
        position: relative;
    }

    header nav .toggleSubitems {
        position: absolute;
        top: 0;
        right: 0;
        width: 1.82rem;
        height: calc(100% - 1rem);
        border-radius: var(--br);
        background-color: #222222;
    }


    header nav ul.level_1>li:not(:last-child) {
        border-bottom: 1px solid #fff;
        margin-bottom: 1rem;
        padding-bottom: 1rem;
    }

    header nav ul.level_2 {
        padding-left: 1rem;
        border-left: 1px solid #fff;
    }

    header nav ul.level_2>li:not(:last-child) {
        margin-bottom: .25rem;
        padding-bottom: .25rem;
    }


    .toggleSubitems:before,
    .toggleSubitems:after {
        content: "";
        display: block;

        position: absolute;
        transform: translate(-50%, -50%);

        left: 50%;
        top: 50%;

        width: 1rem;
        height: 0.1rem;
        background-color: #fff;

        transition: transform var(--tt);

    }

    .toggleSubitems:before {
        transform: translate(-50%, -50%) rotate(90deg);
    }

    .toggleSubitems.show:before {
        transform: translate(-50%, -50%) rotate(0deg);
    }










}

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

    .toggleSubitems {
        display: none;
    }

    header nav ul {
        display: flex;
        justify-content: space-between;
        gap: 1rem;
    }

    header nav ul.level_1>li {
        position: relative;
    }

    header nav ul.level_2 {
        position: absolute;
    }




    header nav :where(a, strong) {
        position: relative;
        line-height: 2.5rem;
        overflow: hidden;
        transition: line-height var(--tt), font-size var(--tt);
    }

    body.small header nav :where(a, strong) {
        line-height: 2rem;
        font-size: .8rem;
    }

    header nav ul.level_1 {
        border-bottom: 1px solid #fff;
    }

    header nav :where(a, strong):before {
        content: "";
        position: absolute;
        transform: translateX(-50%);
        bottom: -.4rem;
        left: 50%;

        border-top: .4rem solid transparent;
        border-right: .4rem solid transparent;
        border-bottom: .4rem solid #fff;
        border-left: .4rem solid transparent;
        transition: bottom var(--tt);
    }

    header nav ul.level_1>li>a:where(:hover, :focus):before,
    header nav ul.level_1>li>strong:before,
    header nav ul.level_1>li.trail>a:before {
        bottom: 0;
    }

    header nav ul.level_2 :where(a, strong):before {
        border-top: .4rem solid #fff;
        border-right: .4rem solid transparent;
        border-bottom: .4rem solid transparent;
        border-left: .4rem solid transparent;
        top: -.4rem;
        bottom: inherit;
        transition: top var(--tt);
    }

    header nav ul.level_2 a:where(:hover, :focus):before,
    header nav ul.level_2 strong:before {
        top: 1px;
    }





}

/*------------------------------------------------------------------------------------------< Bühne >---*/

#hero {
    position: relative;
    height: 75vh;
    overflow: hidden;
    margin-top:3rem;
    z-index: 0;
}

#hero:after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, .3);
}

#hero .image_container {
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
}

#hero img {
    width: auto;
    height: auto;
}

#heroContent {
    position: relative;
    height: 100%;
    z-index: 1;
}

#heroContent>.inside {
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 1rem;
    width: 90vw;
    max-width: 38.4rem;

    text-align: right;
    color: #fff;
}

#hero .headline {
    font-family: 'OpenSans_C_Bold';
    font-size: var(--fs-h2);
    line-height: 1.2em;
    margin-bottom: 1rem;
}

/*------------------------------------------------------------------------------------------< Overlay >---*/

#overlay {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;

    background-color: rgba(0, 0, 0, .3);
    backdrop-filter: blur(5px);
    z-index: 9;

    display: none;
    opacity: 0;

    transition-property: display opacity;
    transition-duration: var(--tt);
    transition-behavior: allow-discrete;
}

#overlay.open {
    display: block;
    opacity: 1;

    @starting-style {
        opacity: 0;
    }
}

#userModal:before,
#overlay .searchForm:before,
.cc-inner:before{
    position:absolute;
    transform:translateY(-100%);
    left:1rem;
    top:0;
    font-size:var(--fs-h2);
    font-weight:var(--fw-bold);
    color:#fff;   
}
/*------------------------------------------------------------------------------------------< Suche >---*/

.searchForm .formbody {
    display: flex;
    gap: var(--grid__gutter);
}


.searchForm .widget-text {
    flex-grow: 1;
}

.searchForm button {
    position: relative;
    height: 2.4rem;
    aspect-ratio: 1;
    font-size: 0;
    border-radius: var(--br);
    border: 0;
    margin: 0;
    padding: 0;
    background-color: #fff;
}

.searchForm button:before {
    content: "";
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    width: 50%;
    aspect-ratio: 1;

    background-color: var(--c-fontcolor);

    mask-image: url(../img/search.svg);
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;

    cursor: pointer;
}

.searchForm :where(button, input.text) {
    box-shadow: var(--bs);
}

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

    #overlay .searchForm{
        display:none;
    }

}


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

    header .searchForm,
    #overlay .searchForm {
        display: none;
    }

    #overlay.open .searchForm.open{
        display:block;
    }

    #overlay .searchForm {
        position: absolute;
        transform: translateY(-50%);
        top: 50%;
        left: 25vw;
        right: 25vw;
    }

    #overlay .searchForm:before{
        content:"Suche";
    }

}

.mod_search .formbody .widget-text{
    flex-grow:1;
}

.mod_search > div:not(:last-child){
    margin-bottom:3rem;
}

.mod_search > p.header{
    margin:1rem 0 3rem;
}

.mod_search :where(.url, .header){
    font-size:.8rem;
}

/*------------------------------------------------------------------------------------------< User >---*/

#userModal:not(.open){
    display:none;
}

#userModal{
    position:absolute;
    transform:translate(-50%, -50%);
    top:50%;
    left:50%;

    width:70vw;
    max-width:400px;

    padding:1rem;
    background-color:#fff;
    border:1px solid var(--c-green);
    border-radius:var(--br);
    box-shadow:var(--bs);
}

#userModal:before{
    content:"Login"; 
}

#userModal > div:not(:last-child){
    margin-bottom:2rem;
    padding-bottom:2rem;
    border-bottom:1px dotted var(--c-green);
}


/*------------------------------------------------------------------------------------------< Artikel, Farben >---*/

main .mod_article:not(.full) {
    padding: 5rem 0;
}

main .mod_article.green,
.mod_newsreader .green{
    background-color: var(--c-lightgreen);
}

main .mod_article.wood,
.mod_newsreader .ce_text.wood{
    color: #fff;
    background-image: url(../img/wood.jpg);
    background-size: contain;
    background-position: left top;
}

main .insideArticle > div:not(:last-child),
main .mod_newsreader .layout_full > div:not(:last-child){
    margin-bottom: 3rem;
}

main .mod_article:where(.corn_left, .corn_right){
    position:relative;
}

main .mod_article:where(.corn_left, .corn_right):before{
    content:"";
    position:absolute;
    bottom:0;

    width:60%;
    height:60%;

    background-image:url(../img/transparent_corn.png);
    background-repeat: no-repeat;
    background-size:contain;
}

main .mod_article.corn_right:before{
    right:0;
    background-position:right bottom;
}

main .mod_article.corn_left:before{
    left:0;
    background-position:left bottom;
}

/*------------------------------------------------------------------------------------------< Links >---*/

main .ce_text a{
    text-decoration:underline;
}

main .ce_text:not(.btn) a:not(.btn):where(:hover, :focus){
    color:var(--c-green);
}

a[href^="mailto:"],
a[href^="tel:"],
a[href^="https:"],
a[href^="files/"]:not(.cboxElement),
.download-element > a{
    position:relative;
    padding-left:1.9rem;
    /* white-space: nowrap; */
    text-decoration:none !important;
}

h2 a[href^="https:"]{
    padding-left:3rem;
}

a[href^="mailto:"]:before,
a[href^="tel:"]:before,
a[href^="https:"]:before,
a[href^="files/"]:not(.cboxElement):before,
.download-element > a:before,
a[href^="mailto:"]:after,
a[href^="tel:"]:after,
a[href^="https:"]:after,
a[href^="files/"]:not(.cboxElement):after,
.download-element > a:after{
    content:"";
    display:block;
    
    position:absolute;
    left:0;
    top:0;
    height:1.3rem;
    aspect-ratio:1;
}

a[href^="mailto:"]:before,
a[href^="tel:"]:before,
a[href^="https:"]:before,
a[href^="files/"]:not(.cboxElement):before,
.download-element > a:before{
    border-radius:50%;
    background-color:#fff;
}

main .mod_article:not(.wood) a[href^="mailto:"]:before,
main .mod_article:not(.wood) a[href^="tel:"]:before,
main .mod_article:not(.wood) a[href^="https:"]:before,
main .mod_article:not(.wood) a[href^="files/"]:not(.cboxElement):before,
main .mod_article:not(.wood) .download-element > a:before{
    background-color:var(--c-fontcolor);
}

a[href^="mailto:"]:after,
a[href^="tel:"]:after,
a[href^="https:"]:after,
a[href^="files/"]:not(.cboxElement):after,
.download-element > a:after{
    transform:translateY(-50%);
    background-color:var(--c-fontcolor);
    top:.65rem;
    mask-size:66%;
    mask-repeat:no-repeat;
    mask-position: center;
}

main .mod_article:not(.wood) a[href^="mailto:"]:after,
main .mod_article:not(.wood) a[href^="tel:"]:after,
main .mod_article:not(.wood) a[href^="https:"]:after,
main .mod_article:not(.wood) a[href^="files/"]:not(.cboxElement):after,
main .mod_article:not(.wood) .download-element > a:after{
    background-color:#fff;
}

a[href^="mailto:"]:after{
    mask-image:url(../img/email.svg);
}

a[href^="tel:"]:after{
    mask-image:url(../img/phone.svg);
}

a[href^="https:"]:after{
    mask-image:url(../img/internet.svg);
}

a[href^="files/"]:not(.cboxElement):after,
.download-element > a:after{
    mask-image:url(../img/download.svg);
}

/*------------------------------------------------------------------------------------------< Schaltflächen >---*/

.ce_text.btn a,
p.btn a,
a.btn{
    margin-top:2rem;
}


.navBtn{
    font-family:'OpenSans_C_Bold';
    color:var(--c-green);
    font-size:var(--fs-h3);
    text-align:center;
    border:var(--line) solid var(--c-green);
    border-radius:var(--br);
    padding:var(--navBtn-padding);
}

/*------------------------------------------------------------------------------------------< Footer >---*/

footer button.toggleSubitems {
    display: none;
}

footer {

    padding: 5rem 0;

    background-image: url(../img/wood.jpg);
    background-size: contain;
    background-position: left top;
    background-repeat: repeat;

    color: #fff;
}

#textLogo {
    font-size: 0;
    display: block;
    color: transparent;
    width: 75%;
    max-width: 25rem;
    aspect-ratio: 1/.215;
    background-image: url(../img/logo_text.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left top;

    filter: drop-shadow(0 .5rem .5rem #000);
}

footer>.inside>div>*:not(:last-child) {
    margin-bottom: 2rem;
}

footer .subitems {
    margin-left: 1rem;
}

footer :where(strong, a:hover, a:focus){
    color:var(--c-green);
}

@media screen and (max-width:1499px) {
    footer>.inside>div:not(:last-child) {
        margin-bottom: 4rem;
    }
}

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

    footer>.inside {
        display: grid;
        grid-template-columns: 1fr 1fr .5fr;
        gap: var(--grid__gutter);
    }

    footer>.inside>div:first-child {
        border-right: 1px solid #fff;
    }

}

/*------------------------------------------------------------------------------------------< CTA >---*/

.cta{
    position:relative;

    border: var(--line) solid var(--c-green);
    border-radius: var(--br);
  
}

.cta .ctaImage{
    position:absolute;
    bottom:0;
    background-repeat:no-repeat;
    background-size:contain;
}

.cta .text{
    font-family:'OpenSans_C_Bold';
    font-size:var(--fs-h2);
    text-transform: uppercase;
    line-height:1em;
    position:relative;
    z-index:1;
}

.cta.milk{
    padding:3rem 3rem 5rem 5rem;
    margin:0rem 0 1rem 0rem;
}

.cta.milk .ctaImage{
    transform:translate(-17.2%, 15.8%);
    left:0;

    height:150%;
    aspect-ratio: 1/1.02;
    background-image:url(../img/milchschwapp.png);
    background-position:left bottom;
}

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

    .cta.milk .ctaImage{
        height:100%;
    }
}

.cta.farm{
    padding:3rem;
    margin:0 10.4rem 1.5rem 0; 
}

.cta.farm .ctaImage{
    transform:translate(52%, 15%);
    right:0;

    width:20rem;
    aspect-ratio: 1/.5;
    background-image:url(../img/farm.svg);
    background-position:right bottom;
    background-size:80%;
    background-color:#fff;
}

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

    .cta.farm{
        padding:3rem 3rem 8rem;
        margin:0 0 0 0;
    }

    .cta.farm .ctaImage{
        transform:translate(2%, 15%);
    }
}

/*------------------------------------------------------------------------------------------< Icon-Navigation >---*/

.iconNav{
    display:grid;
    gap:var(--grid__gutter);
}

.iconNav.items_2{ grid-template-columns: repeat(2, 1fr); }
.iconNav.items_3, .iconNav.items_6{ grid-template-columns: repeat(3, 1fr); }
.iconNav.items_4{ grid-template-columns: repeat(4, 1fr); }
.iconNav.items_5{ grid-template-columns: repeat(5, 1fr); }


@media screen and (max-width:1200px){
    .iconNav.items_4, .iconNav.items_5{ grid-template-columns: repeat(2, 1fr); }
}

@media screen and (max-width:550px){
    .iconNav{ grid-template-columns: repeat(1, 1fr) !important; }
}

.iconNavPoint{
    padding: 2rem 2rem 3rem;
    border-radius:var(--br);
    background-color:var(--c-lightgreen);
}

.mod_article.green .iconNavPoint{
    background-color:#fff;
}

.iconNavPoint .navBtn{
    display:block;
    margin-bottom:3rem;
}

.iconNavPoint .icon{
    width:100%;
    aspect-ratio:1/.6;
    position:relative;
    margin:0 auto;
}

.iconNavPoint .icon img{
    position:absolute;
    transform:translate(-50%, -50%);
    left:50%;
    top:50%;
    width:100%;
    max-height:100%;
}

/*------------------------------------------------------------------------------------------< Bilder / Galerien >---*/

main .image_container{
    border-radius: var(--br);
    overflow:hidden;
}

.ce_columns > div:not(:last-child){
    margin-bottom:var(--grid__gutter);
}

.ce_image:where(.m10l, .m10r){ position:relative; }

.ce_image.m10l{ margin:0 0 0 -10rem; }
.ce_image.m10r{ margin:0 -10rem 0 0; }

@media screen and (max-width:939px){
    .ce_image.m10l, .ce_image.m10r{ margin:0 0 0 0; }
}





figcaption{
    text-align: right;
    color:#fff;
    background-color:var(--c-fontcolor);
    font-size:.6rem;
    padding:.3rem 1rem;
}

.ce_gallery ul{
    display:grid;
    gap:var(--grid__gutter);
}

.ce_gallery ul.cols_2{ grid-template-columns: repeat(2, 1fr); }
.ce_gallery ul.cols_3{ grid-template-columns: repeat(3, 1fr); }
.ce_gallery ul.cols_4{ grid-template-columns: repeat(4, 1fr); }
.ce_gallery ul.cols_5{ grid-template-columns: repeat(5, 1fr); }
.ce_gallery ul.cols_6{ grid-template-columns: repeat(6, 1fr); }

@media screen and (max-width:768px){
    .ce_gallery:has(.cols_3, .cols_4, .cols_5, .cols_6) ul{ grid-template-columns: repeat(2, 1fr); }
}





/*------------------------------------------------------------------------------------------< Abstände >---*/

h1,h2,h3,h4,h5,h6 {
	margin-bottom:1em;
}

.ce_text h1:not(:first-child),
.ce_text h2:not(:first-child),
.ce_text h3:not(:first-child),
.ce_text h4:not(:first-child){
	margin-top:2rem;
}

p:not(:last-child),
ul:not(:last-child),
ol:not(:last-child),
table:not(:last-child),
.accordion .ce_text:not(:last-child),
.accordion .row:not(:last-child){
	margin-bottom:1rem;
}

.ce_columns > div:not(:last-child){
    margin-bottom:var(--grid__gutter);
}

.ce_downloads ul li:not(:last-child){
    margin-bottom:.5rem;
}


/*------------------------------------------------------------------------------------------< Divers >---*/

main .ce_text ul{
    padding-left:1.5rem;
    list-style-type: disc;
}

main .ce_text ol{
    padding-left:1.5rem;
}

/*------------------------------------------------------------------------------------------< Akkordeon >---*/

.ce_accordion{
    border:var(--line) solid var(--c-green);
    border-radius:var(--br);
    overflow:hidden;
}

.ce_accordion:not(:last-child){
    margin-bottom:1rem;
}

.ce_accordion .toggler{
    background-color:var(--c-green);
    color:#fff;
    cursor:pointer;
}

.ce_accordion .toggler h3{
    margin:0;
    padding:1rem;
}

.ce_accordion .accordion{
    padding:1rem;
}
/*------------------------------------------------------------------------------------------< Stellenangebote >---*/

.mod_newslist{
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    gap:var(--grid__gutter);
}

@media screen and (max-width:650px){
    .mod_newslist{
        grid-template-columns: repeat(1, 1fr);
    }
}

.job .image_container{
    border-radius:0;
}

.job .image_container figcaption{
    display:none;
}

.job{
    position:relative;
    padding-bottom:calc(4.5rem + 2px);
    border-radius:var(--br);
    overflow:hidden;
    border: var(--line) solid var(--c-green);
    background-color:rgba(0, 0, 0, .4);
}

.job .inside{
    padding:2rem;
}

.job .btn > a{
    position:absolute;
    bottom:2rem;
    left:2rem;
    margin:0;
}

p.back{
    margin-top:3rem;
}

/*------------------------------------------------------------------------------------------< Bild-Text-Kombination >---*/

.imgTxt{
    position:relative;
    background-color:#000;
    color:#fff;
    display:flex;
}

.imgTxt.right{
    justify-content: flex-end;
}

.imgTxt .image_container{
    position:absolute;
    top:0;
    bottom:0;
    width:60%;
    border-radius:0;
}

.imgTxt .image_container img{
    position:absolute;
    transform:translateY(-50%);
    top:50%;
    width:auto;
    right:0;
}

.imgTxt.right .image_container img{
    right:auto;
    left:0;
}

.imgTxt.left .image_container{
    right:0;
}

.imgTxt .image_container:after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:25%;
    left:0;

    background:linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
}

.imgTxt.right .image_container:after{
    left:auto;
    right:0;
    background:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}

.imgTxt.right .image_container{
    left:0;
}

.imgTxtContent{
    position: relative;
    padding-top:5rem;
    padding-bottom:5rem;
    width:60%;

    z-index:1;
}

.imgTxt.left .imgTxtContent{
    padding-left:1rem;
}

.imgTxt.right .imgTxtContent{
    padding-right:1rem;
    text-align: right;
}

/*------------------------------------------------------------------------------------------< Youtube >---*/

.ce_youtube .video_container{
    border-radius:var(--br);
    overflow:hidden;
    box-shadow:var(--bs);
}

.ce_youtube .video{
    position:relative;
    width:100%;
    aspect-ratio: 16/9;
}

.ce_youtube iframe{
    position:absolute;
    left:0;
    right:0;
    height:100%;
    width:100%;
}