.np-masthead {
    position: sticky;
    top: 0;
    z-index: 40;
    backdrop-filter: blur(14px);
    background: color-mix(in srgb, var(--np-paper) 82%, transparent);
    border-bottom: 1px solid color-mix(in srgb, var(--np-mint) 40%, transparent);
    padding-top: var(--np-safe-top);
}

.np-masthead__inner {
    width: min(1120px, calc(100% - 1.5rem));
    margin-inline: auto;
    min-height: var(--np-header-h);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.np-masthead__brand {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: 0;
}

.np-masthead__hippo {
    flex-shrink: 0;
    width: 46px;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 4px 10px rgba(47, 93, 74, 0.15));
}

.np-masthead__copy {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.np-masthead__edition {
    font-family: var(--np-font-ui);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--np-rose);
}

.np-masthead__title {
    font-family: var(--np-font-display);
    font-weight: 800;
    font-size: 1.05rem;
    color: var(--np-green-deep);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.np-masthead__tag {
    font-size: 0.78rem;
    color: var(--np-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.np-masthead__links {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.np-masthead__links a,
.np-masthead__logout button {
    font-family: var(--np-font-ui);
    font-weight: 700;
    font-size: 0.88rem;
    color: var(--np-green-deep);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.35rem 0.55rem;
    border-radius: var(--np-r-pill);
    transition: background var(--np-transition), color var(--np-transition);
}

.np-masthead__links a:hover,
.np-masthead__logout button:hover {
    background: color-mix(in srgb, var(--np-pink) 45%, transparent);
    color: var(--np-green-deep);
}

.np-masthead__links a.is-active {
    background: color-mix(in srgb, var(--np-green) 14%, var(--np-paper));
    color: var(--np-green-deep);
}

.np-masthead__links a:focus-visible,
.np-masthead__logout button:focus-visible {
    outline: 2px solid var(--np-green);
    outline-offset: 2px;
}

.np-masthead__tel {
    background: linear-gradient(135deg, var(--np-mint), var(--np-pink)) !important;
    padding-inline: 0.85rem !important;
}

.np-masthead__logout { margin: 0; }

@media (max-width: 860px) {
    .np-masthead__links a:not(.np-masthead__tel),
    .np-masthead__logout { display: none; }
    .np-masthead__tag { display: none; }
}
