/************************************ Start: List ************************************/
.cms_referenzenLst_mainTitle.cms_padding_1,
.cms_referenzenLst_mainTitle > .cms_padding_1 { padding: 15px 15px 0 15px !important; }
.cms_referenzen_loadBtn.cms_padding_1 { padding: 49px 15px 15px 15px !important; }
.cms_referenzen_loadBtn > div { display: flex; justify-content: center; }
/************************************ End: List ************************************/

/************************************ Start: Filter ************************************/
.cms_referenzenFilter_lst { display: flex; flex-wrap: wrap; gap: 15px 21px; }
.cms_referenzenFilter_box { position: relative; min-width: 183px; }
.cms_referenzenFilter_group { position: relative; padding: 5px 23px 4px 8px; border: 0.5px solid var(--white); }
.cms_referenzenFilter_group:before { content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: 8px; width: 11px; height: 7px; background: center / contain no-repeat url("/pages/img/referenzen/arrow.svg"); will-change: transform; }
.cms_referenzenFilter_box.active .cms_referenzenFilter_group:before { transform: translateY(-50%) rotate(180deg); }
.cms_referenzenFilter_tagLst { position: absolute; z-index: 12; top: 38px; left: 0; display: none; flex-direction: column; width: 100%; }
.cms_referenzenFilter_box.active .cms_referenzenFilter_tagLst { display: flex; }
.cms_referenzenFilter_tag { position: relative; background: var(--white); padding: 6px 31px 6px 8px; color: var(--black); transition: var(--transition); }
.cms_referenzenFilter_tag:hover,
.cms_referenzenFilter_tag.active { background: var(--primary); color: var(--white); }
.cms_referenzenFilter_tag:after { content: ""; position: absolute; z-index: 1; bottom: 0; left: 0; width: 100%; height: 1px; background: var(--black); }
.cms_referenzenFilter_tag_checkIcon { position: absolute; top: 50%; transform: translateY(-50%); right: 8px; width: 15px; height: 11px; opacity: 0; visibility: hidden; background: center / contain no-repeat url("/pages/img/referenzen/check.svg"); transition: var(--transition); }
.cms_referenzenFilter_tag:hover > .cms_referenzenFilter_tag_checkIcon,
.cms_referenzenFilter_tag.active > .cms_referenzenFilter_tag_checkIcon { opacity: 1; visibility: visible; }
@media screen and (max-width: 767px) { .cms_referenzenFilter_tagLst { top: 35px; } }
/************************************ End: Filter ************************************/

/************************************ Start: Box ************************************/
.cms_referenzen_flexBox { display: flex; }
.cms_referenzen_box { position: relative; width: 100%; border-radius: var(--border-radius-default); overflow: clip; }
.full_article_link { border-radius: var(--border-radius-default); }
.cms_referenzen_imgContainer { position: relative; z-index: 1 !important; width: 100%; }
.cms_referenzen_imgBox { width: 100%; }
.cms_referenzen_imgBox > picture { display: block; width: 100%; padding: 0 0 70.35573122529645% 0; }
.cms_referenzen_imgBox > picture > img { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-position: center; object-fit: cover; }
.cms_referenzen_imgLegend { display: none; }
.cms_referenzen_txt { position: absolute; z-index: 1; inset: 0; padding: 19px; background: rgba(95,47,140,0.7); display: flex; flex-direction: column; gap: 13px; opacity: 0; visibility: hidden; transition: var(--transition); }
.cms_referenzen_box:hover .cms_referenzen_txt { opacity: 1; visibility: visible; }
@media screen and (max-width: 959px) { .cms_referenzen_flexBox.flex_box_12 { width: 50% !important; } }
@media screen and (max-width: 640px) { .cms_referenzen_flexBox.flex_box_12 { width: 100% !important; } }
/************************************ End: Box ************************************/

/************************************ Start: Det ************************************/
.cms_referenzenDet_main { width: 100%; padding: 24px 0; }
.cms_referenzenDet_titel { margin: 0 0 43px 0; }
.cms_referenzenDet_untertitel { margin: 0 0 11px 0; }
.cms_referenzenDet_attrLst { display: flex; flex-direction: column; }
.cms_referenzenDet_attrBox { position: relative; display: flex; align-items: center; gap: 30px; padding: 16px 0 15px 0; }
.cms_referenzenDet_attrLst > .cms_referenzenDet_attrBox:last-of-type { padding: 16px 0; }
.cms_referenzenDet_attrBox:before,
.cms_referenzenDet_attrLst > .cms_referenzenDet_attrBox:last-of-type:after { content: ""; position: absolute; z-index: 1; left: 0; width: 100%; height: 1px; background: var(--white); }
.cms_referenzenDet_attrBox:before { top: 0; }
.cms_referenzenDet_attrLst > .cms_referenzenDet_attrBox:last-of-type:after { bottom: 0; }
.cms_referenzenDet_attrLbl { width: 50%; }
.cms_referenzenDet_attrVal { width: 50%; }
@media screen and (max-width: 959px) {
    .cms_referenzenDet_attrLst { gap: 30px; }
    .cms_referenzenDet_attrBox { flex-direction: column; align-items: flex-start; gap: 10px; padding: 15px; border: 1px solid var(--white); }
    .cms_referenzenDet_attrLst > .cms_referenzenDet_attrBox:last-of-type { padding: 15px; }
    .cms_referenzenDet_attrBox:before,
    .cms_referenzenDet_attrLst > .cms_referenzenDet_attrBox:last-of-type:after { content: none; }
    .cms_referenzenDet_attrLbl { width: 100%; }
    .cms_referenzenDet_attrVal { width: 100%; }
}
/************************************ End: Det ************************************/

/************************************ Start: Teaser ************************************/
.cms_referenzenTeaser_mainTitle.cms_padding_1 { padding: 15px 15px 19px 15px !important; }
.cms_referenzenTeaser_mainTitle > .cms_padding_1 { padding: 15px 15px 19px 15px !important; }
.cms_referenzenTeaser_sliderContainer:before,
.cms_referenzenTeaser_sliderContainer:after { content: ""; position: absolute; z-index: 11; top: 0; bottom: 0; width: 253px; }
.cms_referenzenTeaser_sliderContainer:before { left: 0; background: linear-gradient(270deg, rgba(0,0,0,0.00) 0%, #000 100%); }
.cms_referenzenTeaser_sliderContainer:after { right: 0; background: linear-gradient(90deg, rgba(0,0,0,0.00) 0%, #000 100%); }
.cms_referenzenTeaser_arrow { position: absolute; z-index: 12 !important; top: 50%; transform: translateY(-50%); width: 16px; height: 28px; }
.cms_referenzenTeaser_arrow > svg { width: 16px; height: 28px; }
.cms_referenzenTeaser_arrow > svg > path { transition: var(--transition); }
.cms_referenzenTeaser_arrow:hover > svg > path { fill: var(--primary); }
.cms_referenzenTeaser_arrow_prev { left: 20px; }
.cms_referenzenTeaser_arrow_next { right: 20px; }
.cms_referenzenTeaser_mainBtn > .flex_container > .flex_box_12 { display: flex; justify-content: flex-end; }
@media screen and (max-width: 959px) {
    .cms_referenzenTeaser_sliderContainer { padding: 0 0 93px 0; }
    .cms_referenzenTeaser_sliderContainer:before { top: auto; left: 30px; width: calc(100% - 60px); height: 1px; background: var(--white); }
    .cms_referenzenTeaser_sliderContainer:after { content: none !important; }
    .cms_referenzenTeaser_arrow { top: auto; bottom: 37px; transform: translateX(-50%); display: flex; justify-content: center; align-items: center; width: 27px; height: 38px; background: var(--gray); transition: var(--transition); }
    .cms_referenzenTeaser_arrow:hover { background: var(--primary); }
    .cms_referenzenTeaser_arrow > svg { width: 13px; height: 23px; }
    .cms_referenzenTeaser_arrow:hover > svg > path { fill: var(--white); }
    .cms_referenzenTeaser_arrow_prev { left: calc(50% - 21px); }
    .cms_referenzenTeaser_arrow_next { left: calc(50% + 21px); }
}
@media screen and (max-width: 500px) { .cms_referenzenTeaser_sliderContainer .cms_referenzen_txt { display: none; } }
/************************************ End: Teaser ************************************/