/* Index Exchange branding: logo + title in the menu bar.
   The logo+title group must behave like mdBook's original .menu-title
   (flex:1 + min-width:0) so the title truncates instead of overflowing the
   viewport on small screens. */
.menu-title-link {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start; /* left-align the logo + title */
    gap: 1rem; /* breathing room between the logo and the title text */
    min-width: 0; /* allow children to shrink below content width */
    text-decoration: none;
    color: inherit;
}

.menu-title-link:hover {
    text-decoration: none;
}

.menu-logo {
    height: 22px;
    width: 22px;
    flex-shrink: 0; /* logo keeps its size; only the text shrinks */
    display: block;
}

.menu-title-link .menu-title {
    flex: 0 1 auto;
    margin: 0;
    /* Left-align, including when the title wraps to multiple lines
       (mdBook's default .menu-title is text-align: center). */
    text-align: left;
    /* Body-sized Open Sans, but bold. */
    font-size: 1.6rem;
    font-weight: 700;
    /* On narrow screens, wrap onto multiple lines instead of truncating
       with an ellipsis. */
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    line-height: 1.2;
}

/* Let the menu bar grow taller when the title wraps, instead of clipping it.
   It is position:sticky and in normal flow, so a taller bar pushes content
   down rather than overlapping it. */
#mdbook-menu-bar {
    height: auto;
    min-height: var(--menu-bar-height);
    align-items: center;
}

/* Brand accent: use hunter green instead of mdBook's default blue for links
   and the active sidebar entry. Loaded after the theme CSS, so these win for
   the light theme (the default). */
.light,
html:not(.js) {
    --links: #355e3b;
    --sidebar-active: #355e3b;
}

/* Page footer: corporate logo, copyright, and legal links. */
.site-footer {
    margin-top: 4rem;
    padding: 2rem 0 1rem;
    border-top: 1px solid var(--table-border-color);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 2.5rem;
    font-size: 1.4rem;
}

.site-footer-logo {
    display: inline-flex;
}

.site-footer-logo svg {
    height: 26px;
    width: auto;
    display: block;
    fill: var(--fg); /* match body text color across themes */
}

.site-footer-copyright {
    margin: 0;
    opacity: 0.7;
}

/* Push the links to the right of the logo + copyright. */
.site-footer-links {
    margin-inline-start: auto;
}

.site-footer-links ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1.5rem;
}

.site-footer-links li {
    margin: 0;
}
