.prodlist_container {
    width: 100%;
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(3,minmax(150px,1fr));
    gap: 14px 12px
}

.wide .prodlist_container {
    grid-template-columns: repeat(4,minmax(150px,1fr))
}

.sl-Overview {
    float: none!important;
    text-align: center;
    margin: 0!important
}

.sl-Overview-Image.design {
    height: auto;
    width: 100%
}

.sl-Overview.design .ImageUebersicht,.sl-Overview.design .ImageMiniMerkmal {
    height: auto;
    width: 100%;
    margin: 0
}

.Filter-Container label {
    display: inline-block;
    line-height: 18px;
    padding: 0;
    text-decoration: none
}

.Filter-All-Container label {
    display: flex;
    height: fit-content;
    line-height: 18px;
    vertical-align: middle;
    align-items: center
}

.Filter-Container ul li {
    list-style-type: none;
    margin: 0 0 10px;
    padding: 0;
    height: fit-content
}

.cat_tools.catalog_display_visible {
    margin: 0;
    text-align: center
}

.cat_tools .CatNavBtn.next {
    margin: 40px 0 20px
}

.cat_tools .CatNavBtn.next .inner a {
    background: var(--kdg_trendcolour_secondary);
    display: inline-block;
    text-transform: uppercase;
    font-size: 14px;
    padding: 10px 30px;
    letter-spacing: .5px
}

.cat_tools .PageCatNavigation.desktop .NavUL {
    padding: 0;
    margin: 0;
    list-style: none;
    float: none!important
}

.cat_tools .PageCatNavigation.desktop .NavUL li {
    display: inline-block;
    margin: 0 5px
}

.cat_tools .PageCatNavigation.desktop .NavUL .NavLiList a,.cat_tools .PageCatNavigation.desktop .NavUL .NavLiListSelected {
    border: 0;
    border-radius: unset;
    color: unset;
    float: none;
    font-size: 14px;
    list-style: none none;
    margin: 0 0 0 0;
    text-align: center;
    width: 15px;
    display: inline-block
}

.cat_tools .PageCatNavigation.desktop .NavUL .NavLiListSelected {
    font-weight: 700
}

.cat_tools .PageCatNavigation.desktop .NavLiList.Last,.cat_tools .PageCatNavigation.desktop .NavLiList.First {
    display: none!important
}

.check_item {
    display: inline-block!important;
    width: 12px;
    height: 12px!important;
    border: 1px solid #666!important;
    vertical-align: middle;
    margin: 0 10px 0 0
}

.check_item p {
    background: 0 0;
    width: 8px;
    height: 8px;
    display: block;
    margin: 2px;
    text-align: center
}

.SortSelectionFilter {
    text-align: right;
    white-space: nowrap;
    display: grid;
    grid-auto-flow: column;
    justify-content: end;
    font-size: 13px;
}

.SortSelectionFilter .SortContainer {
    position: relative;
    display: inline-block
}

.SortContainer .Sort-Container-Topic {
    cursor: pointer;
    #margin: 0 5px 0 0
}

.SortContainer .Sort-Type.Type {
    list-style: none;
    margin: 0;
    padding: 0
}

.SortContainer .Sort-Type.Type li {
    margin: 8px 0
}

.SortContainer .Sort-List.Item:hover .check_item p,.SortContainer .Sort-List.Item.active .check_item p {
    background: var(--kdg_trendcolour_secondary);
    display: block!important
}

.SortContainer .Sort-Container-Topic {
    font-size: 13px;
    align-content: center;
    justify-self: center;
    display: grid;
    grid-auto-flow: column;
    align-items: center;
    margin-left: 13px;
}

.SortContainer .Sort-Container-Topic::after {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL"0,"wght"200,"GRAD"10,"opsz"30;
    content: "add";
    display: inline-block;
    font-size: 17px;
    cursor: pointer;
    transition: transform 1.5s;
    vertical-align: middle;
    margin: 0;
}

.SortContainer .Sort-Type-Container {
    opacity: 0;
    left: -999em;
    position: absolute;
    transition: all .006s ease;
    transition-delay: .3s;
    z-index: 100;
    background: #fff;
    text-align: left;
    padding: 10px 25px;
    white-space: nowrap;
    box-shadow: 0 4px 6px rgba(0,0,0,.3);
    top: 21px
}

.SortContainer .Sort-Type-Container.visible {
    opacity: 100;
    left: -30px
}


.visible .Sort-Container-Topic::after {
    transform: rotate(-135deg)
}
.SortSelectionFilter .FilterButton {
    font-size: 13px;
    cursor: pointer;
    color: #000;
    vertical-align: middle;
    margin-left: 13px;
}

.SortSelectionFilter .ViewButton {
    font-size: 13px;
    cursor: pointer;
    color: #000;
    vertical-align: middle
}

.IgnoreButton {
    margin: 0;
    padding: 0;
    border: 0;
    font-family: inherit;
    background: 0 0
}

.IgnoreButton:hover {
    background: 0 0
}

.SortSelectionFilter .ViewButton::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 16px;
    background: url(/v30/localpictures/theme/grid/grid_3.png)no-repeat center center;
    background-size: contain;
    margin: 0 5px;
    vertical-align: bottom
}

.SortSelectionFilter .ViewButton.wide::after {
    background: url(/v30/localpictures/theme/grid/grid_4.png)no-repeat center center;
    background-size: contain;
    margin: 0 5px
}

.filter-count {
    display: inline-block;
    margin: 0 5px 0 0;
}

.filter-count.passive .number {
    display: none
}

.filter-count .number {
    background: var(--kdg_trendcolour_secondary);
    font-size: 13px;
    display: inline-block;
    padding: 0 3px;
    margin-left: 4px;
}

.SortSelectionFilter .filter-count::after {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL"0,"wght"200,"GRAD"10,"opsz"30;
    content: "add";
    display: inline-block;
    font-size: 17px;
    cursor: pointer;
    margin: 0;
    transition: transform 1.5s;
    vertical-align: middle;
}

.check_item {
    display: inline-block;
    width: 12px;
    height: 12px;
    border: 1px solid #666;
    vertical-align: middle;
    margin: 0 10px 0 0
}

.check_item p {
    background: 0 0;
    width: 8px;
    height: 8px;
    display: block;
    margin: 2px;
    text-align: center
}

.Sort-Type.Type {
    list-style: none;
    margin: 0;
    padding: 0
}

.Sort-List.Item:hover .check_item p,.Sort-List.Item.active .check_item p {
    background: #00f
}

.Filter-Container {
    margin: 0;
    padding: 0 20px;
    cursor: pointer;
    border-bottom: 1px solid var(--kdg_trendcolour_secondary);
}

.Filter-Container-Topic {
    font-weight: 400;
    font-size: 15px;
    margin: 0;
    line-height: 16px;
    padding: 25px 0;
    position: relative
}

.Filter-Container-Topic::before {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL"0,"wght"200,"GRAD"10,"opsz"30;
    content: "clear";
    transform: rotate(135deg) !important;
    font-size: 20px;
    display: inline-block;
    cursor: pointer;
    margin-right: 10px;
    position: absolute;
    transition: transform 1.5s;
    right: 0
}

.isOpen.Filter-Container-Topic::before {
    transform: rotate(0)
}

.filterContainer {
    width: 40%;
    max-width: none;
    -webkit-transition: all .45s cubic-bezier(.3,0,.15,1);
    transition: all .45s cubic-bezier(.3,0,.15,1);
    margin-right: 0;
    display: block;
    height: 100%;
    left: auto;
    position: fixed;
    top: 0;
    padding: 0;
    background: #fff;
    z-index: 10000000000;
    right: 0;
    transform: translateX(100%);
    border-radius: 0;
    box-shadow: 1px -15px 15px -2px #80808038;
    background: #fff
}

.filterContainer.isopen {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.filterContainer .innerContainer {
    padding: 0;
    margin: 0;
    position: relative;
    overflow-y: auto;
    height: 100%
}

.Attributes-Filter-Items {
    margin: 10px 0 0;
    padding: 0 1px;
    list-style: none;
    max-height: 100px;
    overflow-y: scroll;
}

.Attributes-Filter-Items li {
    border: 1px solid var(--kdg_trendcolour_secondary);
    display: inline-block;
    padding: 5px 10px;
    margin: 0 5px 5px 0
}

.Attribute-Filter-List-Item a {
    text-decoration: none;
    color: #333
}

.filter_top_area {
    top: 0;
    position: sticky;
    background: #fff;
    padding: 20px !important;
    z-index: 10
}

.filterContainer .innerContainer .filter_topic {
    padding: 10px 0 0;
    font-weight: 400;
    font-size: 20px;
    margin: 0 0 10px;
    text-transform: uppercase;
    font-family: var(--kdg_font_medium)
}

.filterContainer .innerContainer button.filter_close_btn {
    position: absolute;
    top: 28px;
    right: 25px;
    border: 0;
    background: 0 0;
    font-size: 20px;
    cursor: pointer
}

.Filter-Inner-Container {
    display: none;
    padding-bottom: 20px
}

.Filter-All-Container .filter-count.passive {
    display: none
}

.filter_button_wrapper {
    display: grid;
    justify-items: center;
    grid-auto-flow: column;
    justify-content: center;
    gap: 30px;
    position: sticky;
    bottom: 0;
    width: 100%;
    padding: 15px 0 40px;
    background: #fff;
    z-index: 6
}

.filter_button {
    height: 50px;
    width: 150px;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 50px;
    border: 1px solid var(--kdg_trendcolour_secondary);
    cursor: pointer;
    letter-spacing: .5px;
    text-align: center;
    font-family: var(--kdg_font_regular);
    color: #000
}

.filter_button.anwenden {
    background-color: var(--kdg_trendcolour_secondary)
}

.Filter-Close-Item,.Filter-Clear-All {
    display: none
}

.filter_overlay {
    background: rgba(255,255,255,.8);
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9998;
    backdrop-filter: blur(0.5px);
    cursor: pointer
}

.filter_overlay.isactive {
    display: block
}

.btn_filter_main_close::before {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 30;
    content: "clear";
    display: inline-block;
    font-size: 20px;
    cursor: pointer;
    color: #000
}

.Close-Filter-List-Item::before {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL"0,"wght"200,"GRAD"0,"opsz"30;
    content: "clear";
    display: inline-block;
    font-size: 14px;
    cursor: pointer;
    vertical-align: middle
}

.filter_module_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 10;
    opacity: .8;
    display: none
}

.filter_module_overlay .loader {
    width: 48px;
    height: 40px;
    margin-top: 30px;
    display: inline-block;
    position: absolute;
    background: #000;
    border-radius: 15% 15% 35% 35%;
    top: calc(50% - 50px);
    left: calc(50% - 50px)
}

.filter_module_overlay .loader::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    left: 45px;
    top: 8px;
    border: 4px solid #000;
    width: 16px;
    height: 20px;
    border-radius: 0 4px 4px 0
}

.filter_module_overlay .loader::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 10px;
    color: #000;
    top: -15px;
    left: 11px;
    box-sizing: border-box;
    animation: animloader 1s ease infinite
}

@keyframes animloader {
    0% {
        box-shadow: 2px 0 transparent,12px 0 rgba(0,0,0,.3),20px 0 transparent
    }

    50% {
        box-shadow: 2px -5px rgba(0,0,0,.5),12px -3px rgba(0,0,0,.5),20px -2px rgba(0,0,0,.6)
    }

    to {
        box-shadow: 2px -8px transparent,12px -5px transparent,20px -5px transparent
    }
}

@media only screen and (max-width:1024px) {
	.filterContainer {
		width: 100%;
		top: 69px !important;
		box-shadow: 1px -15px 15px -2px #80808038 !important;
		border-radius: 0 !important;
	}
	
	.filter_overlay {
		background: none !important;	
	}
	
	.sl-Overview {
		height: auto!important;
		width: 100%!important
	}
	
	.prodlist_container {
		grid-template-columns: repeat(2,minmax(150px,1fr))
	}
	
	.wide .prodlist_container {
		grid-template-columns: repeat(1,minmax(150px,1fr))
	}
	
	.SortSelectionFilter .ViewButton::after {
		background: url(/v30/localpictures/theme/grid/grid_2.png)no-repeat center center;
		background-size: contain;
		margin: 0 5px
	}
	
	.SortSelectionFilter .ViewButton.wide::after {
		background: url(/v30/localpictures/theme/grid/grid_1.png)no-repeat center center;
		background-size: contain;
		margin: 0 5px
	}
	
	.SortSelectionFilter .SortContainer,.SortSelectionFilter .FilterButton,.SortSelectionFilter .filter-count {
		display: none
	}
	.filter_button_wrapper {
	    padding: 15px 0 80px;
	}
}

@media only screen and (min-width:472px) and (max-width:1024px) {
    .prodlist_container {
        width: 100%;
        overflow: hidden;
        display: grid;
        grid-template-columns: repeat(2,minmax(150px,1fr));
        gap: 14px 12px
    }

    .wide .prodlist_container {
        grid-template-columns: repeat(3,minmax(150px,1fr))
    }

    .SortSelectionFilter .ViewButton::after {
        background: url(/v30/localpictures/theme/grid/grid_2.png)no-repeat center center;
        background-size: contain;
        margin: 0 5px
    }

    .SortSelectionFilter .ViewButton.wide::after {
        background: url(/v30/localpictures/theme/grid/grid_3.png)no-repeat center center;
        background-size: contain;
        margin: 0 5px
    }
}

@media only screen and (max-width:472px) {
    .filter_button_wrapper {
        grid-auto-flow: unset;
        gap: 20px
    }

    .filter_button {
        width: 300px
    }
}

@media only screen and (min-width:100px) and (max-width:1280px) {
    .sl-Overview {
        float: none;
        width: 100%;
        padding: 0;
        box-sizing: border-box;
        margin: 0
    }

    #AjaxCategoryContainer {
        padding: 10px 0 0 0
    }
}

.privacyButton {
    z-index: 5
}

.BreadCrump-Ul {
    margin: 0
}

.BreadCrump-Ul img {
    display: none
}

.BreadCrump-Ul li::before {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL"0,"wght"200,"GRAD"0,"opsz"30;
    content: "pen_size_1";
    display: inline-block;
    font-size: 12px;
    cursor: pointer;
    vertical-align: middle;
    transform: rotate(-15deg)
}

.BreadCrump-Ul li:nth-child(2)::before {
    content: ""!important
}

.items_line {
    display: flex;
    margin: 0 0 10px;
    align-items: center
}

.items_line .breadcrump,.items_line .SortSelectionFilter {
    flex: 1
}

.Filter-Marke-Item,.Filter-Prize-Item {
    float: none;
    margin: 0;
    width: 100%
}

.sort_filter_area {
    border-bottom: 1px solid #000;
    border-top: 1px solid #000;
    height: 45px;
    padding: 0!important
}

.sort_filter_area .sort_topic {
    height: 45px;
    line-height: 45px;
    cursor: pointer
}

.sort_filter_area .sort_area .sort_topic {
    border-right: 1px solid #000
}

.sort_filter_area .sort_area .sort_topic p::after,.sort_filter_area .filter_area p::after {
    font-family: "Material Symbols Outlined";
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "FILL"0,"wght"200,"GRAD"10,"opsz"30;
    content: "add";
    display: inline-block;
    font-size: 17px;
    cursor: pointer;
    color: #000;
    vertical-align: sub;
    transition: transform 1.5s;
    transform: rotate(0deg)
}

.sort_filter_area .sort_area p::after {
    font-family: inherit;
    content: "";
    margin: 0
}

.sort_area span:hover p::after,.filter_area span:hover p::after {
    transform: rotate(-135deg)
}

@media only screen and (min-width:100px) and (max-width:1024px) {
    .sort_filter_area.fixed {
        top: 70px!important;
        position: fixed
    }
}

.sort_filter_area .sort_area {
    position: relative
}

.sort_filter_area .sort_area span {
    border: 0
}

.sort_area .SortContainer .Sort-Type-Container {
    width: calc(100% - 30px)
}

.sort_area.visible .Sort-Type-Container {
    opacity: 100;
    left: 0;
    top: 46px;
    width: calc(100% - 30px)
}

.sort_filter_area .sort_area.visible .sort_topic p::after {
    transform: rotate(-135deg)
}

.select-toggle-button {
	text-transform: uppercase; 
	margin: 0 0 20px; 
	font-size: 11px; 
	padding: 4px 8px; 
	border: 1px solid var(--kdg_trendcolour_secondary); 
	color: #000; 
	font-family: inherit; 
	height: 35px; 
	cursor: pointer; 
	letter-spacing: .5px; 
	background: #fff; 
	
}
.Sort-Type a {
    padding: 5px 5px 5px 0;
}

._kvi98j {
	left: 15px !important;
	bottom: 15px !important;
}
.label_text {
    font-size: 12px;
}