/* One header for every page (site_header.py). Replaces the language bar, the always-open login strip and the per-page brand rows. */
.mv-site-header{position:sticky;top:0;z-index:50;background:#0a2037;border-bottom:1px solid #1d3a57;font:15px/1.4 Arial,'Segoe UI',sans-serif;color:#fff}
.mv-site-header *{box-sizing:border-box}
.mv-sh-inner{max-width:1240px;margin:0 auto;padding:0 24px;min-height:64px;display:flex;align-items:center;gap:28px}
.mv-sh-brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:700;font-size:21px;white-space:nowrap}
.mv-sh-nav{flex:1 1 auto}
.mv-sh-nav>ul{display:flex;gap:4px;margin:0;padding:0;list-style:none;align-items:center}
.mv-sh-link{display:block;padding:10px 14px;border-radius:8px;color:#c9d6e2;text-decoration:none;font-size:16px;cursor:pointer;list-style:none;white-space:nowrap}
.mv-sh-link::-webkit-details-marker{display:none}
summary.mv-sh-link::after{content:"";display:inline-block;margin-inline-start:7px;width:6px;height:6px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg)}
.mv-sh-link:hover,.mv-sh-group details[open]>.mv-sh-link{background:#123250;color:#fff}
.mv-sh-link[aria-current=page],.mv-sh-link[data-current]{background:#123250;color:#fff;font-weight:700}
.mv-sh-link:focus-visible,.mv-sh-menu a:focus-visible,.mv-sh-icon:focus-visible,.mv-sh-signin:focus-visible,.mv-sh-toggle:focus-visible,.mv-sh-lang select:focus-visible{outline:3px solid #3fd1bc;outline-offset:2px}
.mv-sh-group{position:relative}
.mv-sh-menu{position:absolute;top:calc(100% + 6px);inset-inline-start:0;min-width:250px;margin:0;padding:8px;list-style:none;background:#fff;border:1px solid #dbe5ec;border-radius:12px;box-shadow:0 12px 32px rgba(10,32,55,.18);z-index:60}
.mv-sh-menu a{display:block;padding:10px 12px;border-radius:8px;color:#102b42;text-decoration:none}
.mv-sh-menu a:hover{background:#eef4f7}
.mv-sh-tools{display:flex;align-items:center;gap:8px}
.mv-sh-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #2a4a69;border-radius:8px;color:#c9d6e2}
.mv-sh-lang select{height:44px;padding:0 10px;border:1px solid #2a4a69;border-radius:8px;background:#0a2037;color:#e6eef5;font:inherit;cursor:pointer}
.mv-sh-signin{height:44px;padding:0 18px;border:0;border-radius:8px;background:#3fd1bc;color:#0a2037;font:700 15px Arial,'Segoe UI',sans-serif;cursor:pointer;white-space:nowrap}
.mv-sh-signin[data-signed-in]{background:transparent;color:#e6eef5;border:1px solid #2a4a69;font-weight:400}
.mv-sh-toggle{display:none;position:relative;height:44px;padding:0 12px;gap:6px;align-items:center;border:1px solid #2a4a69;border-radius:8px;background:transparent;color:#fff;font:inherit;cursor:pointer}
.mv-sh-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mv-sh-skip{position:absolute;inset-inline-start:12px;top:-60px;padding:10px 14px;background:#fff;color:#0a2037;border-radius:8px;z-index:70}
.mv-sh-skip:focus{top:10px}
.mv-site-header .translation-note{display:block;max-width:1240px;margin:0 auto;padding:0 24px 8px;font-size:13px;color:#c9d6e2}

/* The sign-in form opens as a panel under the header instead of a strip on every page. */
#mv-auth{display:none!important}
body.mv-auth-open #mv-auth{display:flex!important;flex-wrap:wrap;gap:10px;align-items:center;position:fixed;z-index:65;top:72px;inset-inline-end:16px;width:min(360px,calc(100vw - 32px));padding:18px;background:#fff;color:#102b42;border:1px solid #dbe5ec;border-radius:14px;box-shadow:0 16px 40px rgba(10,32,55,.22)}
body.mv-auth-open #mv-auth form{display:flex;flex-direction:column;gap:10px;width:100%}
body.mv-auth-open #mv-auth input{height:44px;padding:0 12px;border:1px solid #9fb1c1;border-radius:8px;font:inherit;width:100%}
body.mv-auth-open #mv-auth button{min-height:44px;border-radius:8px}
body.mv-auth-open #mv-auth #mv-auth-state{font-size:14px;color:#40566a;width:100%}

/* Per-page brand rows that the site header replaces. */
body>header:has(#nav),body>.mv-site-header~header:has(#nav),body>header.research-header,body>header.reading-header,.language-bar{display:none!important}

@media (max-width:980px){
 .mv-sh-inner{flex-wrap:wrap;gap:8px;padding:8px 12px 8px 16px;min-height:60px}
 .mv-sh-brand{flex:1 1 auto;font-size:19px;order:1}
 .mv-sh-tools{order:2}
 .mv-sh-toggle{display:flex;order:3}
 .mv-sh-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .mv-site-header .mv-sh-lang,.mv-site-header .mv-sh-signin{display:none}
 .mv-sh-nav{order:4;flex-basis:100%;display:none;padding:4px 0 12px}
 .mv-site-header.is-open .mv-sh-nav{display:block}
 .mv-sh-nav>ul{flex-direction:column;align-items:stretch}
 .mv-sh-link{padding:12px}
 .mv-sh-menu{position:static;box-shadow:none;border:0;background:#0f2b47;margin:4px 0}
 .mv-sh-menu a{color:#e6eef5}
 .mv-sh-menu a:hover{background:#163a5c}
 .mv-site-header.is-open .mv-sh-tools{order:5;flex-basis:100%;padding-bottom:12px}
 .mv-site-header.is-open .mv-sh-lang{display:flex;flex:1 1 auto}
 .mv-site-header.is-open .mv-sh-lang select{width:100%}
 .mv-site-header.is-open .mv-sh-signin:not([hidden]){display:block;flex:1 1 auto}
 .mv-site-header.is-open .mv-sh-icon{display:none}
 body.mv-auth-open #mv-auth{top:64px;inset-inline:16px;width:auto}
}
/* Guard against page-level element styles (header, nav, details, button, select). */
.mv-site-header{display:block!important;padding:0!important;margin:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;width:auto!important;max-width:none!important;text-align:start}
.mv-site-header nav,.mv-site-header ul,.mv-site-header li,.mv-site-header details{margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;border-radius:0!important;min-height:0}
.mv-site-header summary.mv-sh-link{padding:10px 14px!important;border:0!important;margin:0!important;font-weight:400}
.mv-site-header summary.mv-sh-link:hover,.mv-site-header details[open]>summary.mv-sh-link,.mv-site-header summary.mv-sh-link[data-current]{background:#123250!important;color:#fff}
.mv-site-header summary.mv-sh-link[data-current]{font-weight:700}
.mv-site-header .mv-sh-menu{padding:8px!important;background:#fff!important;border:1px solid #dbe5ec!important;border-radius:12px!important}
.mv-site-header button.mv-sh-signin{background:#3fd1bc!important;color:#0a2037!important;border:0!important;padding:0 18px!important;min-height:44px}
.mv-site-header button.mv-sh-signin[data-signed-in]{background:transparent!important;color:#e6eef5!important;border:1px solid #2a4a69!important}
.mv-site-header button.mv-sh-toggle{background:transparent!important;color:#fff!important;border:1px solid #2a4a69!important;padding:0 12px!important}
.mv-site-header .mv-sh-lang select{background:#0a2037!important;color:#e6eef5!important;border:1px solid #2a4a69!important;min-width:0}
@media (max-width:980px){.mv-site-header .mv-sh-menu{background:#0f2b47!important;border:0!important;margin:4px 0!important}}
.mv-site-header .mv-sh-tools,.mv-site-header .mv-sh-lang{padding:0!important;margin:0!important;border:0!important;background:none!important}
.mv-site-header .mv-sh-lang select{height:44px!important;min-height:44px!important;padding:0 10px!important;margin:0!important;font-size:15px!important;width:auto}
.mv-site-header a.mv-sh-icon{padding:0!important;margin:0!important}
body.mv-auth-open #mv-auth input{background:#fff!important;color:#102b42!important}

/* Contrast fixes (WCAG AA): text that kept dark-theme colours on light cards, or dark text inside dark figures. */
.mv-site-header .mv-sh-skip{color:#0a2037!important;background:#fff!important}
.mv-site-header .mv-sh-sr{color:#fff}
.article-figure .article-bar-row span,.article-figure .article-bar-row strong,.article-figure strong,.article-figure h3{color:#e6eef5!important}
.article-figure figcaption{color:#c3d3e0!important}
.reading-question,.reading-question h2,.reading-question p{color:#e6eef5!important}
.reader-page .measurement-note,.reader-page .reading-footer,.reader-page .discussion-note,.reader-page .discussion-status,.reader-page .reading-share label{color:#40566a!important}
.reader-page .reading-follow a{color:#075d66!important}
.editorial-home .editorial-kicker{color:#0b6f63!important}
.editorial-home>details p.small,body:has(#home-hero) .footer{color:#526578!important}
.growth-calculator small a{color:#075d66!important}
#featured .forecast h3{color:#e6eef5!important}
body:has(#home-hero) .footer a{color:#075d66!important}
.mv-site-header .mv-sh-menu a{color:#102b42!important}
@media (max-width:980px){.mv-site-header .mv-sh-menu a{color:#e6eef5!important}}
