.persilian-header.persilian-header-sticky { position: sticky; top: 0; z-index: 1020; }

@media (max-width: 991.98px) {
    body:has(> .persilian-header.persilian-header-sticky) { overflow-x: clip; }
}

.persilian-header.persilian-header-hide-on-scroll { transition: transform 180ms ease; }

.persilian-header.persilian-header-hide-on-scroll.is-hidden:not(:focus-within) { transform: translateY(-100%); pointer-events: none; }

.persilian-header.persilian-header-hide-on-scroll:focus-within { transition: none; }

.persilian-header-shrink :is(.navbar, .navbar-brand, .persilian-header-topbar, .persilian-header-topbar .list-unstyled) { transition: padding 180ms ease; }

.persilian-header-shrink .persilian-header-logo { transition: max-height 180ms ease; }

.persilian-header-shrink.is-compact .navbar { --bs-navbar-padding-y: .25rem; --bs-navbar-brand-padding-y: .1875rem; }

.persilian-header-shrink.is-compact .persilian-header-logo { max-height: 2rem; }
.persilian-header-shrink.is-compact .persilian-header-topbar { padding-block: .25rem !important; }
.persilian-header-shrink.is-compact .persilian-header-topbar .list-unstyled { padding-block: 0 !important; }

@media (prefers-reduced-motion: reduce) {
    .persilian-header.persilian-header-hide-on-scroll { transition: none; }
    .persilian-header-shrink :is(.navbar, .navbar-brand, .persilian-header-topbar, .persilian-header-topbar .list-unstyled, .persilian-header-logo) { transition: none; }
}

.persilian-header .navbar-brand { max-width: calc(100% - 4rem); white-space: normal; overflow-wrap: anywhere; }

.persilian-header-centred .navbar-brand { margin-inline-end: 0; text-align: center; }

.persilian-header-logo { max-width: min(12rem, 55vw); max-height: 3rem; width: auto; height: auto; }

.persilian-header-two-level .navigation-items { flex-wrap: wrap; }
.persilian-header-two-level .navigation-item, .persilian-header-two-level .btn { overflow-wrap: anywhere; }

@media (max-width: 991.98px) {
    .persilian-header-two-level .navigation-submenu { min-width: 0; }
}

@media (min-width: 992px) {
    .persilian-header .navbar > .persilian-header-split-main { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }

    .persilian-header-split-left { justify-self: end; min-width: 0; }
    .persilian-header-split-right { justify-self: start; min-width: 0; }
    .persilian-header-split-main .navigation-items { flex-wrap: wrap; }

    .persilian-header-split-main .navbar-brand { margin-inline-end: 0; max-width: 100%; text-align: center; }
}
