/* Small language and focus additions; the original visual system remains shared. */
.language-menu a { background: #fff; border: 0; color: var(--navy); display: block; font-size: 12px; padding: 11px 16px; text-align: left; width: 100%; }
.language-menu a + a { border-top: 1px solid #e6edf3; }
.language-menu a:hover, .language-menu a:focus-visible, .language-menu a[aria-current] { background: #eaf6fb; }
.language:focus-visible, .menu-toggle:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.type-option:focus-within { outline: 3px solid #188fc8; outline-offset: 3px; }
.form-grid > *, .form-block, .privacy-consent { min-width: 0; }
.form-message:focus { outline: 2px solid #188fc8; }
html[lang="fr"] .main-nav > a, html[lang="fr"] .nav-solutions__trigger > a { padding-left: clamp(8px, 1.3vw, 22px); padding-right: clamp(8px, 1.3vw, 22px); }
@media (max-width: 1050px) {
    .header-inner { grid-template-columns: minmax(0, 1fr) auto auto; gap: 0 10px; }
    .menu-toggle { grid-column: 3; grid-row: 1; }
    .header-tools { background: transparent; display: flex !important; grid-column: 2; grid-row: 1; padding: 0; }
    .header-tools .language { padding: 10px; width: auto; }
    .header-tools .language-selector { width: auto; }
    .header-tools .language-menu { margin: 0; min-width: 145px; position: absolute; right: 0; top: calc(100% + 8px); }
    .header-center { grid-column: 1 / -1; }
    .main-nav > a, html[lang="fr"] .main-nav > a { white-space: normal; }
    html[lang="fr"] .nav-solutions__trigger > a { padding-left: 62px; padding-right: 14px; }
}
@media (max-width: 380px) {
    .header-inner { column-gap: 4px; padding-left: 14px; padding-right: 10px; }
    .logo { max-width: 140px; }
    .language svg { display: none; }
}
