/* Scoped header styles; the existing PHP menu and module configuration are retained. */
.pmf-masthead, #pmf-primary-nav, #pmf-primary-nav * { box-sizing: border-box; }
.pmf-masthead {
    display: flex; justify-content: center; align-items: center;
    padding: clamp(14px, 2.5vw, 30px) 20px;
    background: radial-gradient(ellipse at 50% 0%, #253443 0%, #111820 72%);
    border-bottom: 1px solid rgba(213, 183, 119, .3);
}
.pmf-masthead__link { display: block; width: min(100%, 760px); line-height: 0; }
.pmf-masthead__logo { display: block; width: 100%; height: auto; max-width: none; max-height: none; object-fit: contain; }
.pmf-masthead__link:focus-visible, #pmf-primary-nav a:focus-visible,
#pmf-primary-nav button:focus-visible { outline: 3px solid #dfc392; outline-offset: 4px; }
#pmf-primary-nav {
    position: sticky; top: 0; z-index: 1030; width: 100%; margin: 0;
    min-height: 0; padding: 0; background: #111820; color: #f3ead8;
    border-bottom: 1px solid rgba(213, 183, 119, .45);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .2);
}
#pmf-primary-nav .pmf-menu-inner {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
    width: 100%; max-width: 1440px; margin: 0 auto; padding: 0 20px;
}
#pmf-primary-nav .pmf-menu-collapse { display: block; width: 100%; }
#pmf-primary-nav .navbar-nav {
    display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center;
    gap: 0 4px; list-style: none; margin: 0; padding: 0;
}
#pmf-primary-nav .nav-item { margin: 0; padding: 0; }
#pmf-primary-nav .nav-link {
    display: block; padding: 18px 10px !important; border-bottom: 2px solid transparent;
    color: #e8e6e0; font-size: .9rem; font-weight: 600; line-height: 1.4;
    text-decoration: none; white-space: nowrap;
}
#pmf-primary-nav .nav-link:hover, #pmf-primary-nav .nav-link.active {
    color: #dfc392; background: rgba(231, 199, 133, .06); border-bottom-color: #c7a56a;
}
#pmf-primary-nav .pmf-menu-toggle { display: none; }
@media (max-width: 1399.98px) {
    #pmf-primary-nav .pmf-menu-inner { padding: 0 16px; }
    #pmf-primary-nav.pmf-menu-ready .pmf-menu-toggle {
        display: inline-flex; align-items: center; justify-content: center; gap: 10px;
        min-height: 44px; margin: 8px 0; padding: 8px 16px;
        background: transparent; color: #f3ead8; border: 1px solid #877549;
        border-radius: 5px; font: inherit; cursor: pointer;
    }
    #pmf-primary-nav .pmf-menu-icon { font-size: 22px; line-height: 1; }
    #pmf-primary-nav.pmf-menu-ready .pmf-menu-collapse { display: none; }
    #pmf-primary-nav.pmf-menu-ready .pmf-menu-collapse.show { display: block; }
    #pmf-primary-nav .pmf-menu-collapse {
        max-height: calc(100vh - 64px); max-height: calc(100dvh - 64px);
        overflow-y: auto; overscroll-behavior: contain;
    }
    #pmf-primary-nav .navbar-nav { flex-direction: column; padding: 4px 0 12px; }
    #pmf-primary-nav .nav-link { padding: 12px 14px !important; min-height: 44px; white-space: normal; }
}
@media (max-width: 575.98px) {
    .pmf-masthead { padding: 16px 12px; }
}

/* The menu is in normal document flow before it becomes sticky. */
#pmf-primary-nav + .pmf-main { padding-top: 0; }
