/* Hauptnavigation – nativ gestylt (ersetzt mega_main_menu). 1:1-Look. */

.primary-menu-container > .nav-menu {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center !important;
    gap: 8px;
    width: auto !important;
    float: none !important;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.primary-menu-container .nav-menu > li {
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.primary-menu-container .nav-menu > li > a {
    display: block;
    padding: 10px 16px !important;
    margin: 0 !important;
    font-family: 'Lustria', Georgia, 'Times New Roman', serif !important;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: .06em;
    text-transform: uppercase !important;
    color: #1a1a1a;
    text-decoration: none;
    transition: color .15s ease;
    white-space: nowrap;
}
.primary-menu-container .nav-menu > li > a:hover,
.primary-menu-container .nav-menu > li.current-menu-item > a,
.primary-menu-container .nav-menu > li.current-menu-ancestor > a { color: #c49944; }

/* Caret bei Top-Level-Items mit Untermenü */
.primary-menu-container .nav-menu > li.menu-item-has-children > a::after {
    content: "⌄";
    margin-left: 6px;
    font-size: .8em;
}

/* CTA-Button (Onlineshop / Kosmetikstudio) – weiße Schrift, Hover heller/goldener */
.primary-menu-container .nav-menu > li.cps-nav-cta > a,
.primary-menu-container .nav-menu > li.cps-nav-cta > a:hover,
.primary-menu-container .nav-menu > li.cps-nav-cta > a:focus {
    color: #fff !important;
    border-radius: 4px;
    padding: 11px 26px;
    margin-left: 10px;
}
.primary-menu-container .nav-menu > li.cps-nav-cta > a { background: #c49944 !important; }
.primary-menu-container .nav-menu > li.cps-nav-cta > a:hover,
.primary-menu-container .nav-menu > li.cps-nav-cta > a:focus { background: #D9A444 !important; }

/* ---- Dropdowns ---- */
.primary-menu-container .nav-menu .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 250px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
    border-radius: 4px;
    list-style: none;
    margin: 0;
    padding: 8px 0;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.primary-menu-container .nav-menu li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.primary-menu-container .nav-menu .sub-menu li { position: relative; }
.primary-menu-container .nav-menu .sub-menu a {
    display: block;
    padding: 10px 20px;
    color: #444;
    text-decoration: none;
    font-family: 'Lustria', Georgia, 'Times New Roman', serif !important;
    font-size: 14px;
    letter-spacing: .02em;
    text-transform: none;
    white-space: nowrap;
}
.primary-menu-container .nav-menu .sub-menu a:hover { background: #f7f3ec; color: #c49944; }

/* 3. Ebene als seitliches Flyout */
.primary-menu-container .nav-menu .sub-menu .sub-menu {
    top: -8px;
    left: 100%;
}
.primary-menu-container .nav-menu .sub-menu .menu-item-has-children > a::after {
    content: "›";
    float: right;
    margin-left: 12px;
    color: #c49944;
}
