/* Supplemental navigation appears near the end of the business-card viewport. */
.aip-public-profile .aip-scroll-header[hidden] { display: none; }
.aip-public-profile .aip-scroll-header {
    position: fixed;
    inset-block-start: 0;
    inset-inline: 0;
    z-index: 40;
    color: #242724;
    background: #fff;
    border-block-end: 1px solid #d1d4cd;
    box-shadow: 0 2px 12px rgb(36 39 36 / 5%);
}
.aip-public-profile .aip-scroll-header,
.aip-public-profile .aip-scroll-header * { box-sizing: border-box; }
.aip-public-profile .aip-scroll-header[data-header-measuring] { visibility: hidden; pointer-events: none; }
.aip-public-profile .aip-scroll-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    inline-size: 100%;
    max-inline-size: 90rem;
    min-inline-size: 0;
    margin-inline: auto;
    padding: .5rem max(1rem, env(safe-area-inset-right)) .5rem max(1rem, env(safe-area-inset-left));
    padding-block-start: max(.5rem, env(safe-area-inset-top));
}
.aip-public-profile .aip-scroll-header__name {
    display: block;
    flex: 1 1 auto;
    min-inline-size: 0;
    min-block-size: 44px;
    padding-block: .65rem;
    overflow: hidden;
    color: inherit;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.45;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-decoration: none;
}
.aip-public-profile .aip-scroll-header__menu { flex: 0 0 auto; margin: 0; padding: 0; border: 0; }
.aip-public-profile .aip-scroll-header__menu > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    min-block-size: 44px;
    padding: .6rem .9rem;
    border: 1px solid #d1d4cd;
    border-radius: .2rem;
    color: inherit;
    font-size: .875rem;
    line-height: 1.5;
    cursor: pointer;
    list-style: none;
    white-space: nowrap;
}
.aip-public-profile .aip-scroll-header__menu > summary::-webkit-details-marker { display: none; }
.aip-public-profile .aip-scroll-header__menu > summary::after { content: "+"; font-size: 1rem; }
.aip-public-profile .aip-scroll-header__menu[open] > summary::after { content: "−"; }
.aip-public-profile .aip-scroll-header__menu nav {
    position: absolute;
    inset-block-start: 100%;
    inset-inline: 0;
    max-block-size: calc(100vh - var(--aip-scroll-header-height, 4rem));
    max-block-size: calc(100dvh - var(--aip-scroll-header-height, 4rem));
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: .75rem max(1rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
    border-block-end: 1px solid #d1d4cd;
    background: #fff;
    box-shadow: 0 6px 12px rgb(36 39 36 / 5%);
}
.aip-public-profile .aip-scroll-header__menu ul { display: grid; grid-template-columns: minmax(0, 1fr); gap: .25rem; margin: 0; padding: 0; list-style: none; }
.aip-public-profile .aip-scroll-header__menu li { min-inline-size: 0; margin: 0; padding: 0; }
.aip-public-profile .aip-scroll-header__menu a {
    display: flex;
    align-items: center;
    min-block-size: 44px;
    padding: .65rem .75rem;
    color: inherit;
    font-size: .875rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
    text-decoration: none;
}
.aip-public-profile .aip-scroll-header a:hover { text-decoration: underline; text-underline-offset: .25em; }
.aip-public-profile .aip-scroll-header__menu a[aria-current="location"] {
    color: #242724;
    background: #f5f5f3;
    box-shadow: inset 0 -3px #242724;
    text-decoration: none;
}
.aip-public-profile .aip-scroll-header :is(a, summary):focus-visible { outline: 3px solid #242724; outline-offset: 2px; }
.aip-frontend .aip-public-profile [id^="profile-section-"] { scroll-margin-block-start: var(--aip-profile-header-offset, 1rem); }
@media (min-width: 48rem) {
    .aip-public-profile .aip-scroll-header__inner { gap: 1.5rem; padding-inline: clamp(1rem, 4vw, 4rem); }
    .aip-public-profile .aip-scroll-header__name { flex: 0 1 24%; }
    .aip-public-profile .aip-scroll-header__menu { flex: 1 1 0; min-inline-size: 0; }
    .aip-public-profile .aip-scroll-header__menu > summary { display: none; }
    .aip-public-profile .aip-scroll-header__menu nav { position: static; max-block-size: 45vh; max-block-size: 45dvh; padding: 0; border: 0; box-shadow: none; }
    .aip-public-profile .aip-scroll-header__menu ul { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .15rem .25rem; }
    .aip-public-profile .aip-scroll-header__menu a { padding-inline: .6rem; }
}
@media (prefers-reduced-motion: no-preference) {
    html:has(.aip-public-profile) { scroll-behavior: smooth; }
    .aip-public-profile .aip-scroll-header:not([hidden]):not([data-header-measuring]) { animation: aip-scroll-header-appear .16s ease-out; }
    @keyframes aip-scroll-header-appear { from { opacity: 0; transform: translateY(-.5rem); } to { opacity: 1; transform: translateY(0); } }
}
@media (forced-colors: active) {
    .aip-public-profile .aip-scroll-header,
    .aip-public-profile .aip-scroll-header__menu nav { color: CanvasText; background: Canvas; box-shadow: none; }
    .aip-public-profile .aip-scroll-header :is(a, summary):focus-visible { outline-color: Highlight; }
    .aip-public-profile .aip-scroll-header__menu a[aria-current="location"] { color: HighlightText; background: Highlight; box-shadow: none; }
}
