.casamar-configured-menu { font: inherit; color: inherit; }
.casamar-configured-menu nav.wp-block-navigation { font: inherit; color: inherit; }
.casamar-configured-menu-list { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 24px; list-style: none; padding: 0; margin: 0; }
.casamar-configured-menu-list > li { position: relative; }
.casamar-configured-menu-list a { display: block; color: inherit; font: inherit; text-decoration: none; }
.casamar-configured-menu-list a:hover { text-decoration: underline; text-underline-offset: .25em; }
/* Explicit menu colors take precedence over native Design colors and inline link colors.
   Equal state specificity and source order keep hover/focus above the current page. */
.casamar-menu-colors.has-casamar-menu-link-color :is(.casamar-configured-menu-list a, .wp-block-navigation-item__content) { color: var(--casamar-menu-link-color) !important; }
.casamar-menu-colors.has-casamar-menu-current-color :is(.casamar-configured-menu-list :is(.current-menu-item,.current_page_item) > a, .casamar-configured-menu-list a[aria-current="page"], .wp-block-navigation-item__content[aria-current="page"], .current-menu-item > .wp-block-navigation-item__content) { color: var(--casamar-menu-current-color) !important; }
.casamar-menu-colors.has-casamar-menu-hover-color :is(.casamar-configured-menu-list a, .wp-block-navigation-item__content):is(:hover,:focus-visible) { color: var(--casamar-menu-hover-color) !important; }
/* Rich text labels can carry a native text color of their own. Follow the link's
   resolved state only when that state has an explicit menu setting. */
.casamar-menu-colors.has-casamar-menu-link-color .wp-block-navigation-item__label,
.casamar-menu-colors.has-casamar-menu-current-color :where(.wp-block-navigation-item__content[aria-current="page"], .current-menu-item > .wp-block-navigation-item__content) .wp-block-navigation-item__label,
.casamar-menu-colors.has-casamar-menu-hover-color .wp-block-navigation-item__content:is(:hover,:focus-visible) .wp-block-navigation-item__label { color: inherit !important; }
.casamar-configured-menu-list .sub-menu { display: none; position: absolute; top: 100%; inset-inline-start: 0; min-width: 200px; padding: 12px; margin: 0; list-style: none; z-index: 20; background: var(--wp--preset--color--cream, #fffbf3); color: var(--wp--preset--color--wine, #811321); }
.casamar-configured-menu-list .sub-menu li { position: relative; }
.casamar-configured-menu-list .sub-menu a { padding: 8px; }
.casamar-configured-menu-list li:is(:hover, :focus-within) > .sub-menu { display: block; }
.casamar-configured-menu-list .sub-menu .sub-menu { top: 0; inset-inline-start: 100%; }
.casamar-configured-menu-toggle { display: none; min-height: 44px; min-width: 44px; background: transparent; color: inherit; border: 0; font-size: 24px; cursor: pointer; }
.casamar-configured-menu-toggle[hidden] { display: none; }
@media (max-width: 599px) {
    .casamar-configured-menu.is-ready nav { flex-direction: column; align-items: stretch; }
    .casamar-configured-menu.is-ready .casamar-configured-menu-toggle:not([hidden]) { display: block; }
    .casamar-configured-menu.is-ready:not(.is-open) .casamar-configured-menu-content { display: none; }
    .casamar-configured-menu.is-open .casamar-configured-menu-list { flex-direction: column; align-items: stretch; gap: 8px; }
    .casamar-configured-menu.is-open .casamar-configured-menu-list a { padding: 8px; }
    .casamar-configured-menu.is-open .sub-menu { display: block; position: static; padding-inline-start: 16px; min-width: 0; }
}
