/* The menu stays in document flow, pins at its own top edge, then releases naturally. */
.site-section-nav.primary-nav {
    position: sticky;
    top: 0;
    z-index: 40;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: .15rem clamp(.65rem, 1.6vw, 1.55rem);
    padding: .65rem 1rem;
    color: #f7ecd9;
    background: linear-gradient(#433d30, #302d24);
    box-shadow: 0 3px 0 #877254, 0 8px 18px #211a1626;
    font-size: .92rem;
    overflow: visible;
}
.site-section-nav.primary-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: .35rem 0;
    color: inherit;
    border: 0;
    border-radius: 0;
    background: none;
    white-space: nowrap;
    text-decoration: none;
    text-underline-offset: .35em;
}
.site-section-nav.primary-nav a::after { display: none; }
.site-section-nav.primary-nav a:hover,
.site-section-nav.primary-nav a:focus-visible,
.site-section-nav.primary-nav a[aria-current="page"] { color: #ffe4ae; text-decoration: underline; }
.site-section-nav__account { font-weight: 650; }
.site-header__account { align-self: center; color: inherit; white-space: nowrap; }
.composed-header { position: relative; background: #273b3d; }
.composed-header nav a, .composed-header .composed-account { color: #f7f4ea; }
.detail-panel, .location-panel { top: calc(var(--site-nav-height, 8rem) + 1rem); }
html { scroll-padding-top: calc(var(--site-nav-height, 8rem) + 1rem); }
.site-breadcrumbs { padding-block: 1.15rem; color: #52645b; font-size: .9rem; }
.site-breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem 0; list-style: none; margin: 0; padding: 0; }
.site-breadcrumbs li { display: inline; min-width: 0; overflow-wrap: anywhere; }
.site-breadcrumbs li + li::before { content: "/"; padding-inline: .65rem; color: #9b896a; }
.site-breadcrumbs a { display: inline-block; padding-block: .35rem; text-underline-offset: .2em; }
.site-breadcrumbs [aria-current="page"] { color: #303f35; }
.newsletter-reader { display: block; width: 100%; height: max(28rem, calc(100svh - var(--site-nav-height, 8rem) - 3rem)); border: 1px solid #b4a283; border-radius: .5rem; background: #f5f1e7; }
.newsletter-reader-actions { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; align-items: center; margin-block: 0 1rem; }
.editorial-nav { gap: .35rem 1.1rem; }
.site-navigation-menu { position: relative; display: inline-flex; min-height: 44px; align-items: center; }
.site-navigation-menu summary { display: inline-flex; min-height: 44px; align-items: center; cursor: pointer; font: inherit; font-weight: 650; list-style: none; }
.site-navigation-menu summary::-webkit-details-marker { display: none; }
.site-navigation-menu summary::after { content: "⌄"; margin-left: .3rem; font-size: .82em; }
.site-navigation-menu__links { position: absolute; z-index: 20; top: calc(100% + .35rem); right: 0; min-width: 13rem; display: grid; padding: .5rem; border: 1px solid #b7ccd6; border-radius: .45rem; background: #fdfbf5; box-shadow: 0 .65rem 1.5rem #082a4330; }
.site-navigation-menu__links a, .site-navigation-menu__links button { min-height: 44px; display: flex; align-items: center; padding: .4rem .6rem; color: #082a43; border: 0; background: transparent; font: inherit; font-weight: 650; text-align: left; text-decoration: none; }
.site-navigation-menu__links a:hover, .site-navigation-menu__links a:focus-visible, .site-navigation-menu__links button:hover, .site-navigation-menu__links button:focus-visible { color: #005f86; background: #e8f3f5; outline-offset: -2px; }
.site-navigation-menu__links form { margin: 0; }
.account-settings-nav { display: flex; flex-wrap: wrap; gap: .25rem .8rem; margin: 1rem auto; padding: .6rem .8rem; border-block: 1px solid #b7ccd6; }
.account-settings-nav a { min-height: 44px; display: inline-flex; align-items: center; color: inherit; text-underline-offset: .25em; }
.account-settings-nav a[aria-current="page"] { color: #005f86; font-weight: 700; text-decoration: underline; }
@media (max-width: 640px) {
    .editorial-nav { justify-content: flex-start; }
    .site-navigation-menu:not([open]) > .site-navigation-menu__links { display: none; }
    .site-navigation-menu[open] { display: grid; flex: 1 0 100%; width: 100%; }
    .site-navigation-menu[open] > .site-navigation-menu__links {
        position: static;
        width: 100%;
        min-width: 0;
        margin-top: .35rem;
    }
}
@media (max-width: 640px) {
    .site-section-nav.primary-nav { gap: 0 .9rem; padding: .45rem .75rem; font-size: .85rem; }
    .site-section-nav.primary-nav a { min-height: 2.75rem; }
    .site-breadcrumbs { font-size: .85rem; }
}
@media print {
    .site-section-nav.primary-nav { position: static; box-shadow: none; }
    html { scroll-padding-top: 0; }
}
