/* Free text uses the element's typography for every line and supported tag. */
#master-header .mh-text-element {
    min-width: 0;
    max-width: 100%;
    line-height: 1.2;
}
#master-header#master-header .mh-text-element[style*="--mh-text-font-size:"] {
    font-size: var(--mh-text-font-size) !important;
}
#master-header .mh-text-element-link {
    min-width: 0;
    max-width: 100%;
    text-align: inherit;
    line-height: inherit;
}
#master-header .mh-text-element .mh-text-element-content {
    display: block;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    font-size: inherit;
    line-height: inherit;
    text-align: inherit;
}

/* Older mobile presets reserve max-content space for the outermost columns.
   Free text must be allowed to shrink and wrap in those columns as well. */
#master-header#master-header > .mh-inner > .mh-column.mh-has-text {
    min-width: 0 !important;
    max-width: 100% !important;
    flex-shrink: 1 !important;
}

/* Only divider-containing columns need the full row height. Other elements
   keep their existing centering. Explicit multi-row layouts use their line. */
#master-header#master-header:not(.mh-multirow) > .mh-inner > .mh-column.mh-has-divider {
    align-self: stretch !important;
    align-content: stretch !important;
    min-height: 0 !important;
    height: auto !important;
}
#master-header#master-header .mh-divider {
    flex-shrink: 0;
    max-height: 100%;
    align-self: center !important;
}
#master-header#master-header .mh-divider[data-mh-vertical-align="top"] {
    align-self: flex-start !important;
}
#master-header#master-header .mh-divider[data-mh-vertical-align="bottom"] {
    align-self: flex-end !important;
}
