.hidden {
    display: none;
}

.aimeos .btn-primary,
.aimeos .btn-primary:active {
    background-color: var(--brand-blue);
    border: solid 1px var(--brand-blue);
}

.aimeos .addbasket input {
    border: solid 1px var(--brand-blue);
}

.aimeos a:link:not(.btn),
.aimeos a:visited:not(.btn) {
    color: var(--brand-blue);
}

.catalog-filter-attribute .fieldsets li.attr-item.disabled {
    display: none;
}

.text-item-tooltip {
    display: inline-block;
}


/*

.aimeos .price-item {
    display: none;
}

.aimeos .price-item:first-of-type {
    display: block;
}

 */


.level-1 .cat-item {
    box-shadow: rgba(149, 157, 165, 0.2) 0px 2px 6px;
    margin: 4px;
}

.level-1 .cat-item:hover {
    box-shadow: rgba(149, 157, 165, 0.6) 0px 2px 6px;
}

/* Catalog filter */
.catalog-filter {
    text-align: left;
}

.catalog-filter-tree .catcode-home > a:before {
    color: var(--brand-blue);
}

.catalog-filter-tree .media-list {
    margin: 0;
}

.catalog-filter-search .value {
    border-color: var(--brand-blue);
}

.catalog-filter-search .reset {
    border-color: var(--brand-blue);
}

.catalog-filter-search .btn-primary {
    padding: 0.9rem 0.75rem;
}

.catalog-filter-tree > h2 {
    border-bottom: solid 1px var(--brand-blue);
    font-size: 100%;
    cursor: inherit;
    display: block;
    float: none;
    width: inherit;
    padding: 0.5em 0;
    margin: 0 0 1em 0;
}

.catalog-filter-tree ul.level-1 {
    overflow: auto;
    height: 100vh;
}

.sectionContent ul.level-0 {
    list-style: none;
}

.catalog-filter-tree > ul {
    display: block;
}

ul.level-2 {
    background-color: #eee;
}

ul.level-2 a.cat-item {
    border-bottom: solid 0px var(--brand-blue);
    padding: 0.25em 0 0.25em 0.5em;
}

.catalog-filter-tree a.cat-item {
    border-bottom: solid 1px var(--brand-blue);
    white-space: inherit;
}

.catalog-filter-attribute > h2,
.catalog-filter-supplier > h2 {
    text-align: left;
    width: 100%;
    border: 0 none;
}

.catalog-filter-attribute .attribute-lists,
.catalog-filter-supplier .supplier-lists {
    display: block;
}

.attribute-lists legend {
    white-space: nowrap;
}

/* Product list, stage section */
.catalog-stage {
    color: var(--brand-blue);
}

.catalog-stage-breadcrumb {
    display: none;
}

.aimeos .suggest-item .item-image {
    background-image: url(../wasserzeichen.png);
}

.catalog-list .product {
    border-bottom: 1px solid var(--brand-blue);
    min-height: 420px;
}

/* .catalog-list .media-list braucht kein eigenes background-image/Groesse
   mehr - products.php rendert bei fehlendem Produktbild jetzt ein echtes
   <img> im .media-item-Slot (siehe media-item-fallback), der bereits eine
   feste Groesse hat (Regel weiter unten). */

/* Der grosse Abstand zwischen Produktbild und Produkttext in der
   Kategorie-Liste (.catalog-list-items, siehe items.php) kommt NICHT von
   einem Margin/Padding zwischen den beiden .list-column-Divs (die haben
   0 Abstand zueinander), sondern von aimeos.css: dort erzwingt
   --ai-product-image-ratio: 3/4 eine hochkant (Portrait) proportionierte
   Bildbox per padding-top-Trick. Unsere Produktfotos sind aber durchweg
   querformatig 4:3 (siehe Bilddateien, z.B. 240x180px) - das Bild fuellt
   die Box dadurch nur zu gut halber Hoehe aus, der Rest bleibt als
   Leerraum uebrig, bevor der Produkttext (zweite .list-column) beginnt.
   Fix: Seitenverhaeltnis der Bildbox nur fuer die Kategorie-Liste auf die
   tatsaechliche Bildproportion (4:3) umstellen - der Slider auf der
   Detailseite (.swiffy-slider) nutzt dieselbe CSS-Variable ausserhalb
   von .catalog-list-items und bleibt davon unberuehrt. */
.catalog-list-items {
    --ai-product-image-ratio: 4/3;
}

/* media list */
.catalog-filter-wcp .media-list {
    background-image: url('/fileadmin/Layout/weber_platzhalter.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: relative;
    text-align: center;
    overflow: hidden;
    height: 180px;
    width: 240px;
}

.catcode-topFabrikat > a {
    display: none;
}

.sectionContent .catalog-filter-wcp ul {
    list-style-type: none;
}

.catalog-list .media-list .media-item {
    position: relative;
    height: 180px;
    width: 240px;
}

.aimeos .product .text-list h3 {
    font-weight: 700;
}

.aimeos .product .text-list h2 {
    height: inherit;
    min-height: 34px;

}

.aimeos .product .text-list .text-item {
    overflow: hidden;
    height: inherit;
    line-height: 1;
    padding: 0 0 10px 0;
}

/* product offer part */
.catalog-list .offer {
    max-width: 15em;
}

/* price list */
.catalog-list .price-list .price-item {
    display: none;
}

.catalog-list .price-list .price-item:last-of-type {
    display: block;
}

.catalog-list .price-item:not(:last-of-type) {
    display: none;
}

.catalog-detail .ab-list {
    display: none;
}


.catalog-list .quantity {
    display: none!important;
}

.catalog-list .product .offer {
    position: absolute;
    bottom: 5px;
}

.aimeos .product .stockitem {
    display: none;
    margin: 0;
}

.aimeos .product .stock-unlimited .stocklevel,
.aimeos .product .stock-high .stocklevel {
    background-color: #18ba18;
}

.aimeos .product .stock-low .stocklevel {
    background-color: #e4d811;
}

.aimeos .product .stock-out .stocklevel {
    background-color: #d01616;
}

.catalog-list-items {
    margin: 1em 0;
    text-align: inherit;
}

.catalog-list-items .list .product {
    border-left: solid 1px var(--brand-blue);
}


.catalog-detail-image .thumbs-horizontal button {
    vertical-align: inherit;
}

/* Product detail, basic section */
.catalog-detail-basic h1.name {
    text-transform: none;
    font-size: 110%;
    color: var(--brand-blue);
    margin: 0;
    padding: 0;
    padding-bottom: 0.5em;
}


.catalog-detail-basic .short {
    display: inline-block;
}

/*

.catalog-detail-basket .price-item:first-of-type {
    display: block;
    cursor: pointer;
}

*/


/* services */
.catalog-detail-basket .service-intro {
    cursor: pointer;
    color: var(--brand-blue);
}

.catalog-list-items .selection .select-option:checked + .select-label,
.catalog-detail-basket .selection .select-option:checked + .select-label {
    border: solid 1px var(--brand-blue);
    background-color: var(--brand-blue);
    color: #fff;
}

.catalog-list-items .selection input.select-option[type=number],
.catalog-detail-basket .selection input.select-option[type=number] {
    border: solid 1px var(--brand-blue);
}

/*
.catalog-detail-additional .header:after {
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 120%;
	content: "\f196";
	float: right;
}

.catalog-detail-additional .subproduct {
    display: none;
}
*/

/* Web-Services, show atrributes and properties always */

.catalog-filter-attribute .attribute-lists {
    background-color: #f2f2f2;
}
.aimeos .attr-list {
    margin: 5px;
}
.catalog-filter-attribute fieldset {
    background-color: #f2f2f2;
    display: inline-block!important;
}

.catalog-filter-attribute .attribute-lists .attr-item {
    padding: 0;
}
.catalog-filter-attribute .attribute-selected .attr-name {
    margin: 0 0 0 5px;
}
.selected-intro {
    padding-top: 5px;
}

.catalog-filter-attribute .attribute-selected {
    display: flex;
    margin: 0 10px 0 0;
    padding: 5px;
}
.aimeos .btn.attribute-selected {
    width: auto;
}

.catalog-filter-wcp .level-0 > .cat-item > a.cat-item {
    display: none;
}


.aimeos .catalog-detail-basket .stock-unlimited,
.aimeos .catalog-detail-basket .stock-high {
    color: #18ba18;
}

.aimeos .catalog-detail-basket .stock-low {
    color: #e4d811;
}

.aimeos .catalog-detail-basket .stock-out {
    color: #d01616;
}

.aimeos .product .stockitem.stock-status-low {
    color: #e4d811;
}

.aimeos .product .stockitem.stock-status-low .stocklevel {
    background-color: currentColor;
}

.aimeos .catalog-detail-basket .stock-actual .stocktext {
    display: block;
}

.account-watch,
.account-favorite,
.basket-related-bought,
.catalog-detail-bought,
.catalog-detail-bundle,
.catalog-detail-suggest,
.catalog-session {
    clear: both;
    padding: 1em 0;
    text-align: inherit;
}

.account-subscription .header,
.account-history .header,
.account-watch .header,
.account-favorite .header,
.basket-related-bought .header,
.catalog-session .header,
.catalog-detail .header {
    border-bottom: solid 1px var(--brand-blue);
}

.basket-related-bought .media-list,
.catalog-detail-bought .media-list,
.catalog-detail-bundle .media-list,
.catalog-detail-suggest .media-list,
.catalog-session-seen .media-list {
    background-image: url('/fileadmin/Layout/weber_platzhalter.jpg');
}

.account-watch .media-item,
.account-favorite .media-item,
.basket-related-bought .media-item,
.catalog-detail-bought .media-item,
.catalog-detail-bundle .media-item,
.catalog-detail-suggest .media-item,
.catalog-session-seen .media-item,
.catalog-session-pinned .media-item {
    background-image: url('/fileadmin/Layout/weber_platzhalter.jpg');
}

/* Bisher hier UND in theme_weber.css definiert, mit widerspruechlichen
   text-align/text-transform-Werten - konsolidiert auf den bisher wirksamen
   Stand (theme_weber.css lud spaeter und hatte damit das letzte Wort). */
.account-watch .name,
.account-favorite .name,
.basket-related-bought .name,
.catalog-detail-bought .name,
.catalog-detail-bundle .name,
.catalog-detail-suggest .name,
.catalog-session-seen .name,
.catalog-session-pinned .name {
    margin: auto;
    padding: 0;
    height: auto;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
    text-transform: none;
    hyphens: auto;
    overflow: hidden;
    max-width: 15em;
}

/* Mini basket */
.basket-mini {
    color: #212121;
}

.basket-mini-product .basket-toggle {
    color: var(--brand-blue);
}

.basket-standard-coupon .coupon-new .coupon-code {
    border: 1px solid var(--brand-blue);
}

.aimeos .common-summary .header,
.aimeos .common-summary-detail .header {
    border-bottom: solid 1px var(--brand-blue);
}

/*
.ui-menu-item:hover {
    background-color: #B0A060;
    color: #FFFFFF;
}

.ui-menu-item:focus, .ui-state-active {
    background: #B0A060;
    color: #ffffff;
}

 */

.catalog-filter-wcp .cat-name {
    width: 240px;
    display: block;
    text-align: center;
}


.text-item-tooltip .info {
    display: block;
    color: var(--brand-blue);
    border-radius: 50%;
    width: 20px;
    border: 1px solid;
    height: 20px;
    line-height: 20px;
    margin: 0;
    padding: 0;
    text-align: center;
    margin-left: 5px;
    font-weight: bolder;
}

.text-item-tooltip .tooltip-text {
    visibility: hidden;
    width: 220px;
    background-color: gray;
    font-weight: normal;
    color: #fff;
    text-align: center;
    left: 0;
    border-radius: 6px;
    padding: 10px;
    position: absolute;
    min-height: 155px;
    bottom: 0;
    z-index: 1;
}

.text-item-tooltip:hover .tooltip-text {
    visibility: visible;
}

.aimeos.catalog-list .product .text-list {
    overflow: inherit;
}

.aimeos.catalog-list .product {
    line-height: 1;
}

.catalog-detail-basket .price-item:first-of-type:after {
    display: none;
}

.catalog-filter .input-group > .form-control:not(:last-child) {
    font-size: 1.15rem;
}

.catalog-filter-search .btn {
    padding: 0;
    color: #fff;
}

.catalog-filter-search {
    border-bottom: 0;
}

/* min-width nur ab 576px: vorher stand diese Regel zusaetzlich (unconditional,
   ohne Media Query) in theme_weber.css und erzwang 30rem auch auf sehr
   schmalen Screens -> Overflow-Risiko. Konsolidiert auf die Media-Query-
   Variante. */
.catalog-filter-wcp .dropdown.hersteller,
.catalog-filter-wcp .dropdown.dd-gruppe {
    width: auto;
    margin: 1rem 0;
}

@media screen and (min-width: 576px) {
    .catalog-filter-wcp .dropdown.hersteller,
    .catalog-filter-wcp .dropdown.dd-gruppe {
        min-width: 30rem;
    }
}

.catalog-filter-wcp .dropdown button,
.catalog-filter-wcp .dropdown-menu.show {
    width: 100%;
}

/* Bisher hier UND in theme_weber.css definiert (dort z-index:1050,
   overflow:auto) - zusammengefuehrt, kein Verhaltenswechsel. */
.autocomplete {
    display: flex;
    overflow: auto;
    background-color: #fff;
    z-index: 1050;
}

.minibutton.delete:after {
    font: var(--fa-font-regular);
    content: "\f1f8";
    font-size: 150%;

}


/* services */
.catalog-detail-basket .service-intro {
    cursor: pointer;
}

.catalog-detail-service .service-list {
    list-style: none;
    color: #A0A0A0;
    padding: 0;
    max-width: 20em;
    max-height: 10em;
    overflow-y: auto;
}

.catalog-detail-service .service-name {
    display: inline-block;
    min-width: 8em;
}

.aimeos .product .catalog-detail-service .service-item .price-item:first-of-type {
    display: inline-block;
    text-align: end;
    min-width: 4em;
}

.aimeos .product .catalog-detail-service .service-item .price-item:first-of-type .costs {
    display: block;
}

.catalog-detail-service .service-item .price-item .value,
.catalog-detail-service .service-item .price-item .taxrate {
    display: none;
}

.catalog-detail-service .service-item .service-short {
    display: none;
}

body > .content, body .main-section {
    margin-top: 0 !important;
}
