/* Shared bilingual header. Language choices stay visible when the menu collapses. */
.header .header-tools { display:flex; align-items:center; justify-content:flex-end; gap:18px; min-width:0; }
.header .language-switch { display:flex; align-items:center; gap:2px; flex-shrink:0; }
.header .language-switch a { display:grid; place-items:center; min-width:34px; min-height:44px; font-size:12px; font-weight:600; color:#617185; text-decoration:none; position:relative; }
.header .language-switch a[aria-current=true] { color:#145baa; }
.header .language-switch a[aria-current=true]:after { content:""; position:absolute; bottom:7px; left:10px; right:10px; height:2px; background:#145baa; }
.header .language-switch a:focus-visible { outline:2px solid #145baa; outline-offset:2px; border-radius:3px; }
.investor-page .header { grid-template-columns:150px minmax(0,1fr) auto; }
.language-note { color:#536477; font-size:14px; line-height:1.6; padding:12px 16px; background:#f1f5fa; border-left:2px solid #145baa; margin:20px 0; }
.document-language { display:block; color:#617185; font-size:12px; line-height:1.5; margin-top:8px; font-weight:400; }
.ir-feature > .document-language, .ir-code-panel > .document-language { color:#bfd0df; }
html[lang^=fr] .ir-report-download strong, html[lang^=fr] .document-row strong { overflow-wrap:anywhere; }
html[lang^=fr] .hero-copy h1 { font-size:clamp(46px,4.8vw,80px); line-height:1.05; }
html[lang^=fr] .hero-copy { max-width:640px; }
html[lang^=fr] .market-tabs strong { overflow-wrap:anywhere; }
html[lang^=fr] .ir-section-nav > div { gap:24px; }
html[lang^=fr] .ir-feature h2 { font-size:clamp(27px,3vw,42px); }
html[lang^=fr] .ir-library-tabs button { white-space:normal; text-align:left; }
html[lang^=fr] .ir-file-copy { min-width:0; }
html[lang^=fr] .ir-file-copy strong { overflow-wrap:anywhere; }
html[lang^=fr] .metric p { max-width:180px; }
html[lang^=fr] .region-controls { flex-wrap:wrap; }
@media (max-width:1150px) {
 .header, .investor-page .header { display:grid; grid-template-columns:minmax(0,1fr) auto; height:84px; gap:16px; }
 .header .header-tools { grid-column:2; gap:12px; }
 .header #main-nav { display:none; }
 .header .nav-end { display:none; }
 .header .mobile-menu { display:block; min-height:44px; font-size:14px; }
 .header.menu-open #main-nav { display:flex; position:absolute; top:83px; left:0; right:0; width:100%; padding:24px 5.5%; background:#fff; flex-direction:column; align-items:stretch; gap:0; border-bottom:1px solid #dce3ec; z-index:80; }
 .header.menu-open #main-nav a { padding:13px 0; }
}
@media (max-width:600px) {
 html[lang^=fr] .hero-copy h1 { font-size:clamp(34px,8vw,48px); letter-spacing:-.04em; }
 html[lang^=fr] .market-tabs button { padding:14px 9px; }
 html[lang^=fr] .market-tabs strong { font-size:13px; }
 html[lang^=fr] .scenario h3 { font-size:clamp(26px,6.5vw,34px); }
 html[lang^=fr] .ir-section-nav > div { gap:0; }
 html[lang^=fr] .ir-section-nav a { white-space:normal; }
 html[lang^=fr] .investor-page-heading h1, html[lang^=fr] .ir-page-heading h1 { font-size:clamp(29px,8vw,38px); overflow-wrap:anywhere; }
 .header .header-tools { gap:9px; }
 .header .language-switch a { min-width:29px; }
 .header .official-logo { width:118px; height:auto; }
}
