:root {
    --lead-media-text-color: var(--text-color) !important;
    --lead-media-byline-color: var(--secondary-text-color) !important;
    --lead-media-date-color: var(--secondary-text-color) !important;
    --lead-media-filter-color: brightness(0%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(266deg) brightness(114%) contrast(100%);
    --lead-media-overlap-base-height: 90vh;
    --lead-media-overlap-height: 120vh;
}

.story-body > * {
    z-index: 1;
    position: relative;
}

/* Hide elements */
.header + figure, .upper-nav, .flag-logo .mmn-company, .header.overlaid .kicker, #zone-el-2, #zoneContainer, .button.vertical-video {
    display: none !important;
}

.header {
    visibility: hidden;
    width: min(calc(var(--lead-media-header-max-width, 700px) + 2 * var(--space)), calc(100% - 2 * var(--page-padding)));
    position: inherit;
    z-index: 10;
}

.header.light {
    --lead-media-text-color: var(--white);
    --lead-media-byline-color: var(--white);
    --lead-media-date-color: var(--white);
}

.header.dark {
    --lead-media-text-color: var(--black);
    --lead-media-byline-color: var(--black);
    --lead-media-date-color: var(--black);
}

.header.center {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.newMastheadContainer {
    position: static !important;
}

.newMastheadContainer.corner {
    position: absolute !important;
}

.newMastheadContainer.corner > #mastheadVueContainer {
    border-bottom: none;
}

.newMastheadContainer.corner .masthead {
    background: transparent;
}

html.msb n.ewMastheadContainer.corner .flag-logo {
    filter: brightness(0);
}

html.msb .newMastheadContainer.corner .flag {
    --text-color: var(--black);
    --fill-color: var(--black);
}

html.msb .newMastheadContainer.corner .masthead {
    --paper-shadow: none;
    --link-color: var(--black);
}

.newMastheadContainer.light .flag-logo {
    filter: brightness(0) invert(1) !important;
}

.newMastheadContainer.light .flag {
    --text-color: var(--white) !important;
    --fill-color: var(--white) !important;
}

.newMastheadContainer.light .masthead {
    --paper-color: var(--background-color) !important;
    --paper-shadow: none !important;
    --link-color: var(--white) !important;
}

.newMastheadContainer.dark .flag-logo {
    filter: brightness(0) !important;
}

.newMastheadContainer.dark .flag {
    --text-color: var(--black) !important;
    --fill-color: var(--black) !important;
}

.newMastheadContainer.dark .masthead {
    --paper-color: var(--background-color) !important;
    --paper-shadow: none !important;
    --link-color: var(--black) !important;
}


/* Absolutely positioned header CSS*/
.header.overlaid {
    box-sizing: border-box;
    position: absolute;
    top: var(--lead-media-header-overlaid-top, 45vh);
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(calc(var(--lead-media-header-max-width, 700px) + 2 * var(--space)), 100%);
}

.header.overlaid .h1 {
    width: 100%;
}

.header.overlaid .h1, .header.overlaid > p {
    color: var(--lead-media-text-color, var(--text-color));
}

.header.overlaid .author-byline {
    font-weight: normal !important;
}

.header.overlaid .author-byline, .header.overlaid .author-byline a {
    color: var(--lead-media-byline-color, var(--secondary-text-color));
    text-transform: uppercase;
    font-family: var(--sans);
    line-height: 1.4;
    font-size: 14px;
    max-width: 450px;
}

.header.overlaid .author-byline a {
    text-decoration: none !important;
    font-weight: bold !important;
}

.header.overlaid time {
    display: var(--lead-media-time-display, flex);
    color: var(--lead-media-date-color, var(--text-color)) !important;
    font-size: 12px !important;
}

.header.overlaid .credit {
    display: none;
}

.header div:has(> time), .header time {
    display: var(--lead-media-time-display, flex);
    position: inherit;
}

.header .giftContainer::before, .header time::before {
    display: none;
}

/* Header corner */
.header.corner {
    left: 0%;
    transform: translate(0, calc(-100%));
    padding: 60px;
    margin: 0;
    top: 100vh;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: start;
}

.header.corner h1 {
    text-align: left !important;
    font-weight: var(--lead-media-header-font-weight, 600);
    max-width: var(--lead-media-h1-max-width, 700px) !important;
    font-size: 37px;
    margin: 0 !important;
}

.header.corner p {
    text-align: left !important;
    max-width: var(--lead-media-p-max-width, 550px) !important;
    font-size: 17px;
    line-height: 1.5;
    margin: 0 !important;
}

.header.corner .author-byline {
    margin: 0 !important;
}

.header.corner time, .header.corner .credit {
    display: none;
}

.header p.subtitle {
    font-family: var(--sans);
}

@media only screen and (max-width: 800px) {
    .header.corner {
        padding: var(--page-padding);
    }
}

@container (max-width: 800px) {
    .header.corner {
        padding: var(--page-padding);
    }
}