.mod-list.row > [class*="col"]{
    padding-left:15px;
    padding-right:15px;
}

/*Custom Fields-Liste ausblenden*/
ul.fields-container {

    list-style:none;
    padding-left:0;

    > li {
        display:none;
        padding-left:0;
        &::before {
            display:none;
        }
        &.slideshow {
            display:block;
            padding-top:50px;
            padding-bottom:70px;
        }

    }

}


.page-header {
    padding-bottom:1em;
}

.item-image.right,
.item-image.left {
    float:none;
}

/* Home  Slider Start */
.slick-dots {
    width:85%;
    bottom: -35px!important;
}
.slick-dots li button::before {
    border-radius:50%;
    width:15px;
    height:15px;
    opacity:1;
 }
 .slick-dots li.slick-active button::before{
   opacity:1;
 }

.slick-dots li button::before {
    content:"";
    background-color:#ccc;
}

.logo-homeslider {
    position:absolute;
    right:-1%;
    top:calc(50px + 45vw);
    width:50%;
    z-index:100;
    pointer-events:none;


}

@keyframes slideInFromLeft {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(0);
    }
}
@keyframes slideInFromRight {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(0);
    }
}

li .logo-homeslider {
    opacity:0;
}
li.slick-active .logo-homeslider {
    opacity:1;
    animation: 0.5s ease-out 0s 1 slideInFromRight;
}

.homeslider {
   margin-top:30px;
   img.mainimage {
   width:100%;
    aspect-ratio:3/2.2;
    object-fit: cover;
    }
}

@media (min-width: 992px) {
    .homeslider {
        margin-top:60px;
    }
    .homeslider img.mainimage {
        aspect-ratio:3/1.9;
    }
}
@media (min-width: 1600px) {
    .homeslider img.mainimage {
        aspect-ratio:3/1.5;
    }
}
.homeslider .textbox {
    left:0;
    width:85vw;
    position:relative;
    z-index:100;
    margin-right:15vw;
    top:9px;
    padding:20px;
    text-align:center;
    display:none;
 }
 /* Homeslider fix gegen flackern am Anfang */
 .homeslider .slick-slide .textbox {
    display:flex;
    flex-direction: column;
    justify-content:center;
 }
 .homeslider ul.slickslider > li + li {
     display:none;
 }
 .homeslider ul.slickslider > li + li.slick-slide {
    display:block;
 }


 .homeslider li.slick-active .textbox {
    animation: 0.5s ease-out 0s 1 slideInFromRight;
    -webkit-animation: 0.5s ease-out 0s 1 slideInFromRight;
}
@keyframes slideInFromLeft {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(0);
    }
}
@-webkit-keyframes slideInFromLeft {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(0);
    }
}

@keyframes fadeinframes{
    0%{opacity:0}
    80%{opacity:0}
    100%{opacity:1}
}
@-webkit-keyframes fadeinframes{
    0%{opacity:0}
    80%{opacity:0}
    100%{opacity:1}
}

@-webkit-keyframes fadeinframes{
    0%{opacity:0}
    80%{opacity:0}
    100%{opacity:1}
}
.homeslider li.slick-active .textbox h2 {
    font-size:1.6rem;
    line-height:1.2em;
    font-weight:500;
    margin-bottom:0px;
    padding-bottom:15px;
    animation:1s ease 0s normal forwards 1 fadeinframes;
    -webkit-animation:1s ease 0s normal forwards 1 fadeinframes;
    opacity:1
}
.homeslider li.slick-active .textbox .introtext  {
    font-size:1.3rem;
    line-height:1.6em;
    font-weight:300;
    margin-bottom:25px;
    animation:1.1s ease 0s normal forwards 1 fadeinframes;
    -webkit-animation:1.1s ease 0s normal forwards 1 fadeinframes;
    opacity:1
}
.homeslider .slick-slider,
.homeslider .slick-list,
.homeslider .slick-track,
.homeslider .slick-slide  {
    padding-left:0;
    padding-right:0;
    margin-left:0;
    margin-right:0;
}
.homeslider ul.slick-slider.row{
    margin-left:0;
    margin-right:0;
}
.homeslider .slick-list {
    overflow-y:visible;
    overflow-x:clip;
}
.homeslider ul.slick-track {
    transform:none!important;
}
.homeslider .slick-list li.slick-slide{
    position:relative;
    overflow-x:clip;
}




 /*
.homeslider .slick-list li.slick-slide:after{
    content: "";
    display: block;
    width: 800px;
    height: 800px;
    position: absolute;
    left: 200px;
    background-color: red;
    top: -50px;
    z-index: 0;
}
*/

/* Home  Slider End */

/* Gallery Add Alt text */
.sammelstelle .item {

    .description {
        hyphens:auto;
        font-size:0.9rem;
        line-height:1em;
        padding-top:7px;
        height:2rem;
    }


}


/* Liste Team START */
.team h2 {
    font-size:1.7em;
    padding-bottom:0;
}
.team .category-desc {
    padding-bottom:50px;
    padding-top:10px;
    font-size:1.2rem;
    line-height:1.3em;
}

.team .blog-item {
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
    background-color: var(--background-color);
    position:relative;
    .page-header {
        padding-bottom:0;
        h2 {
            font-size:1.2rem;
            line-height:1.2em;
        }
    }
    .fields-container {
        display:block;
        li {
            padding-left:0;
            &::before {
                display:none;
            }
        }
    }
}
.team {
    ul.fields-container li {
        display:block;
    }
}
.team .blog-item .item-image {
    margin:0;
    aspect-ratio:4/3;
    width:750px;
    max-width:100%;
    position:absolute;
    padding-bottom:0;
    object-fit: cover;
}
.team .blog-item .item-image img {
   -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    padding-bottom: 0px;
    aspect-ratio:4/3;
    width:750px;
     max-width:100%;
     object-fit: cover;
     object-position:center;
}
.team .blog-item:hover .item-image img {
    transform: scale(1.1)
}
.team .blog-item:before {
     content:"";
     display:block;
     aspect-ratio:4/3;
     width:750px;
     max-width:100%;
     background-color:var(--lightgrey);
     background-position:center;
     background-size:50% auto;
     background-repeat:no-repeat;
    }
.team .blog-item .item-content   {
    padding:20px 5px 15px 5px;
    text-align:center;
}
.team .blog-item .item-content .field-entry{
    padding-bottom:5px;
}
.team .blog-item .item-content .field-entry:last-child {
    padding-bottom:5px!important;
}
.team .blog-item .item-content .field-entry.position  {
    text-align:center;
    font-size:1.1em;
    line-height:1.4em;
    padding-bottom:15px;
    min-height:50px;
}
.team .blog-item .item-content .field-entry.email  {
    white-space:nowrap;
    font-size:0.95em;
}
.team .blog-item .item-content .field-entry a {
    color:var(--font-color);
}
.team .blog-item .item-content .field-entry a:hover {
    color:var(--primary-color);
}

/* TEAM END */

/* Stellen Start */
body.stellen {
    .item-pagestellen .page-header {
        h1 {
            display:none;
        }
    }

    .blog-items {
        padding-top:50px;
    }

    .blog-item {
       position:relative;
       padding:30px 60px 30px 15px;
        @media (min-width: 992px) {
            padding:30px 90px 30px 15px;
        }
       background-color:#f2f2f2;
       .page-header {
           padding-bottom:0;
       }

       h2 {
           font-size:1.2rem;
           line-height:1.3em;
           text-transform:unset;
           padding:0;
           margin:0;
       }

        .readmore {
            position:absolute;
            right:-5px;
            @media (min-width: 992px) {
                right:10px;
            }
            top:50%;
            margin-top:-20px;
            width:60px;
            height:50px;
            a.btn.btn-secondary {
                font-size:0;
                padding:10px;
                &::after {
                    font-size:1.4rem;
                    margin-left: 0;
                    content: "";
                    width: 30px;
                    height:30px;

                }
                &:hover::after {
                    transform: translateX(7px);
                }
            }
        }
    }
}

/* Stellen End */


/* Partner Start */

@supports (display: grid) {
    @media (width >= 768px) {
        .blog-items.columns-4.partner {
            grid-template-columns: 1fr 1fr;
        }
    }
}
@supports (display: grid) {
    @media (width >= 992px) {
        .blog-items.columns-4.partner {
            grid-template-columns: 1fr 1fr 1fr 1fr;
        }
    }
}


.blog-items.partner {
    padding-top:50px;
   .blog-item {
        background-color: #ffffff;
        border: 1px solid #ddd;
        position:relative;
        aspect-ratio:1/1;
        .item-image {
            position:absolute;
            top:0;
            left:0;
            width:100%;
            height:100%;
            display:flex;
            flex: 1 0 100%;
            align-items:center;
            justify-content:center;
            max-width:100%!important;
            background-color: #ffffff;

        }
        .item-content {
            position:absolute;
            top:0;
            left:0;
            width:100%;
            height:100%;
            display:flex;
            flex-direction:column;
            flex: 1 0 100%;
            align-items:center;
            justify-content:center;
            max-width:100%!important;
            background-color: var(--primary-color);
            color:#fff;
            opacity:0;
            -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        -o-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
            .page-header {
                display:none;
            }
            a {
                color:#fff;
                font-size:20px;
                line-height:1.2em;
            }

        }
    }
}


.blog-items.partner .blog-item:hover .item-content  {
     opacity:1;
}

/* Partner End */

/* Sponsoring Module Start */

.sponsoring.liste {
    margin-top:-60px;
    padding-bottom:60px;
    li{
        a{
            width:100%;
            display:block;
        }
        article {
            border-style:solid;
            border-width:1px;
            border-color:#ccc;
            position:relative;
            width:750px;
            aspect-ratio:1/1;
            max-width:100%;
            overflow:hidden;
            margin-bottom:30px;
            div.mainimage {
                padding:15px;
                img.mainimage {
                    width:750px;
                    aspect-ratio:1/1;
                    max-width:100%;
                    object-position:center;
                    object-fit:contain;
                    background-color:#fff;
                }
            }


            .textbox {
                display:flex;
                flex-direction:column;
                width:100%;
                height:100%;
                padding:10px;

                justify-content:center;
                align-items:center;
                position:absolute;
                top:0;
                left:0;
                opacity:0;
                background-color:var(--primary-color);
                color:var(--primary-color-contrast);
                h1,h2,h3 {
                    font-size:1.2rem;
                    line-height:1.3em;
                    padding:0 0 10px 0;
                    margin:0;
                    color:var(--primary-color-contrast);
                }
            }
            &:hover {
                .textbox {
                    opacity:1;
                }

            }

        }
    }





}

/* Sponsoring Module End */

/* Custom Fields */
.gallerywrapper  {
    padding-top:50px;
    clear:both;
}
.downloaddateienwrapper {
    margin-top:70px;
    margin-bottom:50px;
    clear:both;
    border-top-style:solid;
    border-bottom-style:solid;
    border-width:1px;
    border-color:var(--font-color);
    padding:10px 0;
}
.downloaddateienwrapper div.downloadlink {
   display:block;
}

.downloaddateienwrapper a {
    display:block;
    padding:10px 0;
    line-height:35px;
    margin:5px 0;
    color:var(--font-color);
}
.downloaddateienwrapper a:hover {
    color:var(--primary-color);
}

.downloaddateienwrapper a .icon  {
    display:inline-block;
    width:35px;
    height:35px;
    margin-right:15px;
    color: var(--primary-color-contrast);
    background-color:var(--font-color);
    border-radius:50%;
    text-align:center;
}
.downloaddateienwrapper a:hover {
    color:var(--primary-color);
}
.downloaddateienwrapper a:hover .icon {
    transform: scale(1.25);
    background-color:var(--primary-color);
}
.videodiv {
    margin:40px 0;
}
.videodiv .tf-video-embed-wrapper {
    aspect-ratio: 16/9;
}

table {
  border-top:1px solid #f2f2f2;
  width:100%;
}

table tr {
    border-bottom:1px solid #f2f2f2;
}
table tr td {
    padding:7px 5px 7px 0;
}


a.weiter,
.readmore a.btn.btn-secondary {
    padding:10px 20px 10px 20px;
    border-radius:6px;
    display:inline-block;
    text-transform:uppercase;
    border:none;
    &::before {
        content:"";
        background-image:url('../images/arrow-next.png');

        background-position:center;
        background-repeat:no-repeat;
        display:block;
        float:left;
        width:10px;
        margin-right:10px;
        height:1.4em;
        -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        -o-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }
    &:hover::before{
        transform: translateX(-10px);
    }
    .icon-chevron-right {
        display:none;
    }

}

.homeslider li.slick-active a.weiter {
    animation:1.2s ease 0s normal forwards 1 fadeinframes;
    -webkit-animation:1.2s ease 0s normal forwards 1 fadeinframes;
    opacity:1
}




a.weiterlight {
    padding:0 20px 10px 0;
    border-radius:6px;
    display:inline-block;
    text-transform:uppercase;
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
a.weiterlight:before {
    content:"";
    background-image:url('/templates/tompparesponsive/images/arrow-right-orange.svg');

    background-position:2px 13px;
    background-repeat:no-repeat;
    display:block;
    float:right;
    width:30px;
    height:1.4em;
    margin-left:20px;
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
a.weiterlight:hover:after{
    transform: translateX(10px);
}

/* modul-articlelist */
.modul-articlelist .alert.alert-info {
    display:none;
}
.modul-articlelist #main #component {
    margin-bottom: 0;
}
.modul-articlelist #main .moduletable {
    margin-top:0;
}

/* Dienstleistungen Start */
body.dienstleistungen {
    /*Overview*/
    .com-content-category-blog__children.cat-children {
        > h3 {
            display:none;
        }
        display:flex;
        flex-wrap:wrap;
        gap:50px;
        padding-top:100px;
        padding-bottom:100px;
        .com-content-category-blog__child {
            flex-basis:100%;
            display:flex;

            h3 {
                padding:10px 20px 10px 20px;
                border-radius:6px;

                text-transform:uppercase;
                font-size:1.1rem;
                line-height:1.4em;
                border:none;
                flex-basis:100%;

                a {
                    display:flex;
                    flex-basis:100%;
                    &::after {
                        content:"";
                        background-image:url('/templates/tompparesponsive/images/arrow-right-white.svg');
                        background-size:contain;
                        background-size:100% auto;
                        background-position:center;
                        background-repeat:no-repeat;
                        display:block;
                        float:right;
                        width:30px;
                        height:1.4em;
                        margin-left:auto;
                        -webkit-transition: .25s ease-in-out;
                        -moz-transition: .25s ease-in-out;
                        -o-transition: .25s ease-in-out;
                        transition: .25s ease-in-out;
                    }
                    &:hover::after{
                        transform: translateX(10px);
                    }
                }

             }
        }
        @media (min-width: 992px) {
            .com-content-category-blog__child {
                flex-basis:calc(33.33% - 33.333px);
            }
        }

    }
    /* Detailpage */
    .item-pagedienstleistungen {
        .page-header {
            h1 {
                display:none;
            }

        }

    }

}

/* Dienstleistungen End */

/* Article Links */
ul.com-content-article__links {
    list-style:none;
    margin-top:20px;
}
ul.com-content-article__links li {
   display:inline-block;
   margin:0;
   padding:0;
}
ul.com-content-article__links li a {
    display:inline-block;
    padding:5px 15px;
    margin:0 2px 2px 0;
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    border-radius:4px;
}

ul.com-content-article__links li:before {
    display:none;
}

/* News */
.news.liste {
    margin-top:30px;
    margin-bottom:0;
    article {
        margin-bottom:45px;
    }

}
.news.liste ul li:before {
    display:none;
}
.news.liste .textbox h3{
   padding:35px 0 10px 0;
   font-size:1.25rem;
   line-height:1.3em;
   font-weight:500;
}
.news.liste .introtext {
    padding:0 0 10px 0;
    margin:0;
}
.news.liste .mainimage,
.news.liste .noimage  {
     aspect-ratio:4/3;
     background-size:cover;
     background-repeat:no-repeat;
     background-position:center;
}

.liste ul li:before {
    display:none;
}

/* Medien Liste */
.medien.liste {
    padding-top:45px;
}
.medien.liste li .articlewrapper {
    padding-bottom:30px;
    margin-bottom:30px;
    border-bottom-style:solid;
    border-width:1px;
}

.medien.liste .imagewrapper {
    width:60px;
    height:60px;
    float:left;
    box-sizing:border-box;
}
.medien.liste .imagewrapper {
    border-radius: 50%;
    margin-right: 15px;
    padding:12px;
}
.medien.liste .textwrapper {
    width:calc(100% - 75px);
    float:left;
}
.medien.liste h3 {
    text-transform:none;
    padding-bottom:3px;
}
.medien.liste .daterow{
    padding-bottom:3px;
}

.medien.liste .daterow  .date,
.medien.liste .daterow  .media {
    display:inline-block;
    margin-right:20px;
}
.medien.liste .weiterlight {
    margin-top:5px;
}

/* Kundenstimmen Liste */
.kundenstimmen.liste {
    max-width:900px;
    margin:0 auto;
}
.kundenstimmen.liste .articlewrapper {
    margin-bottom:40px;
}
.kundenstimmen.liste .imagewrapper{
    text-align:center;
    position: relative;
    z-index: 1;
}

.kundenstimmen.liste .imagewrapper .img {
    aspect-ratio:1/1;
    width:150px;
    object-fit:cover;
    object-position:center top;
    border-radius:50%;
    border-style:solid;
    border-width:10px;
    border-color:var(--primary-color);
    background-color:var(--font-color);
    margin:0 auto;
    overflow:hidden;
}
.kundenstimmen.liste .imagewrapper .img img {
    aspect-ratio:1/1;
    width:150px;
    object-fit:cover;
    object-position:center top;
}
.kundenstimmen.liste .imagewrapper .img img.noimage {
    width:90px;
    margin:20px;
    object-fit:contain;
    object-position:center center;
}
.kundenstimmen.liste .textwrapper{
    border-radius:20px;
    padding:30px 20px 20px 70px;
    background-color:var(--background-color2);
    margin-top:-10px;
    position:relative;
}
.kundenstimmen.liste .textwrapper:before {
    content:"\"";
    font-size:7rem;
    position:absolute;
    left:0px;
    top:60px;
    font-style:italic;
}
.kundenstimmen.liste .textwrapper .kundenstimme {
    font-size:1.5rem;
    line-height:1.4em;
    font-style:italic;
    padding-bottom:20px;
}



@media (min-width: 768px) {

    .logo-homeslider {
        right:5%;
        top:-100px;
    }

    .homeslider img.mainimage {
        width:75%;
    }
    .homeslider .textbox,
    .homeslider li.slick-active .textbox {
        width:45%;
        position:absolute;
        top:20%;
        right:0;
        left:auto;
        margin-right:0;
        min-height:60%;
        padding:40px;
    }
    .homeslider .textbox h2,
    .homeslider li.slick-active .textbox h2 {
        font-size:1.8rem;
        line-height:1.2em;
        padding-bottom:20px;
    }
    .slick-dots {
        width:70%;
    }

    .item-image.right {
        float:right;
        width:40%;
        margin: 5px 0 20px 30px;
    }
    .item-image.left {
        float:left;
        width:40%;
        margin: 7px 30px 20px 0;
    }

}
@media (min-width: 992px) {
    li .logo-homeslider,
    li.slick-active .logo-homeslider {
        right:5%;
        top:-150px;
    }


    .homeslider .textbox {
        padding:70px;
    }
}

@media (min-width: 1400px) {
    .homeslider .textbox,
    .homeslider li.slick-active .textbox {
        width:35%;
    }
    .homeslider .textbox h2,
    .homeslider li.slick-active .textbox h2 {
        font-size:2.2rem;
        line-height:1.2em;
    }
}