/* Match the navigation container at each Bootstrap breakpoint. */
.hms-header-width {
    width: calc(100% - 32px);
    margin-right: auto;
    margin-left: auto;
    padding-right: 0;
    padding-left: 0;
}
@media (min-width: 576px) { .hms-header-width { max-width: 540px; } }
@media (min-width: 768px) { .hms-header-width { max-width: 720px; } }
@media (min-width: 992px) { .hms-header-width { max-width: 960px; } }
@media (min-width: 1200px) { .hms-header-width { max-width: 1140px; } }

/* Breadcrumbs live inside each existing banner and share its background. */
.hms-breadcrumb-position {
    position: relative;
    z-index: 2;
    padding-right: 24px;
    padding-left: 24px;
    margin-bottom: 22px;
}
.hms-breadcrumb { color: #dce1ff; font-size: 12px; line-height: 1.7; }
.hms-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 0;
    list-style: none;
    padding: 0;
    margin: 0;
}
.hms-breadcrumb li { display: flex; align-items: baseline; min-width: 0; }
.hms-breadcrumb li + li::before {
    content: "";
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    margin: 0 13px;
    border-top: 1px solid #a7b1ef;
    border-right: 1px solid #a7b1ef;
    transform: rotate(45deg) translateY(-2px);
}
.hms-breadcrumb a { color: #fff; text-decoration: none; text-underline-offset: 4px; }
.hms-breadcrumb a:hover { color: #d4e3ff; text-decoration: underline; }
.hms-breadcrumb a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; border-radius: 2px; }
.hms-breadcrumb [aria-current="page"] { overflow-wrap: anywhere; }
.hms-breadcrumb-on-light .hms-breadcrumb { color: #65718a; }
.hms-breadcrumb-on-light .hms-breadcrumb a { color: #2e3192; }
.hms-breadcrumb-on-light .hms-breadcrumb a:focus-visible { outline-color: #2e3192; }

/* Reserve header clearance once, within the original page banner. */
.hms-interior .hms-banner-with-breadcrumb { padding-top: 178px; }
.hms-interior .page_banner { padding-bottom: 18px; }
.hms-interior .page_banner .text_colm.banner_caption { padding-top: 12px !important; padding-bottom: 12px !important; }
.hms-interior .page_banner .hms-page-title { margin-top: 0; padding-top: 0; }

@media (max-width: 991px) {
    .hms-interior .hms-banner-with-breadcrumb { padding-top: 140px; }
}
@media (max-width: 575px) {
    .hms-interior .hms-banner-with-breadcrumb { padding-top: 130px; }
    .hms-breadcrumb-position { padding-right: 12px; padding-left: 12px; margin-bottom: 18px; }
    .hms-breadcrumb { font-size: 11px; }
    .hms-breadcrumb li + li::before { margin-right: 10px; margin-left: 10px; }
}
@media print { .hms-interior .hms-banner-with-breadcrumb { padding-top: 16px; } }
