.elementor-11150 .elementor-element.elementor-element-c8acf83{--display:flex;--min-height:100vh;--padding-top:50px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-11150 .elementor-element.elementor-element-c8acf83:not(.elementor-motion-effects-element-type-background), .elementor-11150 .elementor-element.elementor-element-c8acf83 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-04a4697 );}.elementor-11150 .elementor-element.elementor-element-e7ef390{--spacer-size:150px;}#elementor-popup-modal-11150 .dialog-widget-content{animation-duration:0.8s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-11150{background-color:rgba(0,0,0,.8);justify-content:flex-end;align-items:center;pointer-events:all;}#elementor-popup-modal-11150 .dialog-message{width:340px;height:100vh;align-items:flex-start;}#elementor-popup-modal-11150 .dialog-close-button{display:flex;font-size:22px;}@media(max-width:767px){#elementor-popup-modal-11150 .dialog-message{width:300px;}}/* Start custom CSS for shortcode, class: .elementor-element-6d238cd *//* ============= */
/* Kategorie-Navigation */
/* ============= */
.ir-category-navigation {
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: "Montserrat", inherit;
    /* lokale Tokens – Markenlinie, mit Elementor-Fallback */
    --ir-text:      var(--e-global-color-primary, #3B2300);
    --ir-accent:    var(--e-global-color-secondary, #B29A7D);
    --ir-divider:   #EAE3DA;
    --ir-hover-bg:  #FAF7F4;
    border-top: 1px solid var(--ir-divider);
}
/* Eine Zeile pro (Haupt-)Kategorie */
.ir-category-item {
    border-bottom: 1px solid var(--ir-divider);
}
/* Header-Zeile: Link links, Chevron rechts */
.ir-category-header {
    display: flex;
    align-items: stretch;
    transition: background-color 0.25s ease;
}
.ir-category-header:hover {
    background: var(--ir-hover-bg);
}
/* Kategorie-Link */
.ir-category-link {
    display: flex;
    align-items: flex-start; /* Icon bleibt bei Umbruch am Zeilenanfang */
    gap: 0.4em;
    flex: 1 1 auto;
    min-width: 0; /* erlaubt Umbruch statt Überlauf ins Chevron */
    padding: 0.95em 0.25em 0.95em 0.6em;
    color: var(--ir-text);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.95rem;
    font-weight: 700; /* fett wie im Megamenü */
    line-height: 1.25;
    transition: color 0.25s ease;
}
.ir-category-link:hover {
    color: var(--ir-accent);
}
/* Farb-Icon der Hauptkategorie (JetEngine-Meta "kategorie-farbe") */
.ir-category-color {
    flex: 0 0 auto;
    width: 0.9em;
    height: 0.9em;
    margin-top: 0.12em; /* optisch auf erste Textzeile ausgerichtet */
    border-radius: 3px;
    background: var(--ir-accent); /* Fallback, falls keine Farbe gesetzt */
    box-shadow: inset 0 0 0 1px rgba(59, 35, 0, 0.12);
}
/* "Alle Produkte" – Icon in Primary-Farbe */
.ir-category-color--empty {
    background: var(--ir-text);
}
/* Text-Block: Name + Count zusammen, dürfen umbrechen */
.ir-category-text {
    flex: 1 1 auto;
    min-width: 0;
}
/* Kategorie-Name – darf umbrechen */
.ir-category-name {
    overflow-wrap: anywhere;
}
/* Produktanzahl – braun, dezent, direkt neben dem Text */
.ir-category-count {
    margin-left: 0.4em;
    font-size: 0.78em;
    font-weight: 400;
    letter-spacing: 0;
    color: var(--ir-text);
    white-space: nowrap;
}
/* Chevron rechts */
.ir-toggle-icon {
    flex: 0 0 auto;
    align-self: stretch;
    width: 2.75em;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--ir-text);
    user-select: none;
    transition: color 0.25s ease;
}
.ir-toggle-icon::before {
    content: "";
    width: 0.5em;
    height: 0.5em;
    margin-top: -0.15em; /* optische Mitte */
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.ir-category-item.is-open > .ir-category-header .ir-toggle-icon::before {
    margin-top: 0.1em;
    transform: rotate(-135deg);
}
.ir-toggle-icon:hover {
    color: var(--ir-accent);
}
/* Unterkategorien (geschlossen) */
.ir-subcategory-dropdown {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition:
        max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1),
        opacity 0.4s ease;
}
/* Unterkategorien (geöffnet) */
.ir-subcategory-dropdown.open {
    max-height: 1500px;
    opacity: 1;
}
/* Einzelne Unterkategorie */
.ir-subcategory-item {
    border-top: 1px solid var(--ir-divider);
}
.ir-subcategory-link {
    display: flex;
    align-items: flex-start;
    gap: 0.4em;
    padding: 0.8em 0.6em 0.8em 1.8em; /* eingerückt */
    color: var(--ir-text);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.04em;            /* an Hauptkategorie angeglichen */
    font-size: 0.95rem;                /* gleiche Größe wie Hauptkategorie */
    font-weight: 700;                  /* fett, gleich wie Hauptkategorie */
    background: var(--ir-hover-bg);
    transition: color 0.25s ease;
}
.ir-subcategory-link:hover {
    color: var(--ir-accent);
}
.ir-subcategory-item.is-active .ir-subcategory-link {
    font-weight: 700;
}
/* Tastatur-Fokus */
.ir-category-link:focus-visible,
.ir-toggle-icon:focus-visible {
    outline: 2px solid var(--ir-accent);
    outline-offset: -2px;
}

/* Unter 767px: Haupt- und Unterkategorien kleiner */
@media (max-width: 767px) {
    .ir-category-link,
    .ir-subcategory-link {
        font-size: 0.9rem;
    }
}/* End custom CSS */