/* ULIXES shared bilingual layout safeguards — V2.5.6 */
.ulx-language-switch,
[data-ulx-language-switch] { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
[data-ulx-lang-choice] { appearance:none; border:0; padding:3px 2px; color:inherit; background:transparent; font:inherit; text-decoration:none; cursor:pointer; opacity:.58; }
[data-ulx-lang-choice].is-active { color:#00A3FF; opacity:1; }
[data-ulx-lang-choice]:focus-visible { outline:2px solid #00A3FF; outline-offset:3px; border-radius:3px; }
html[lang="fr-CA"] body { text-rendering:optimizeLegibility; }
html[lang="fr-CA"] p,
html[lang="fr-CA"] li,
html[lang="fr-CA"] h1,
html[lang="fr-CA"] h2,
html[lang="fr-CA"] h3,
html[lang="fr-CA"] a,
html[lang="fr-CA"] button,
html[lang="fr-CA"] label { hyphens:auto; overflow-wrap:break-word; }
html[lang="fr-CA"] .ulx-nav { gap:clamp(10px,1.15vw,20px); }
html[lang="fr-CA"] .ulx-nav > a,
html[lang="fr-CA"] .ulx-nav > button { font-size:.72rem; }
html[lang="fr-CA"] .ulx-header__actions { gap:10px; }
html[lang="fr-CA"] .ulx-tool-launch__copy strong { font-size:clamp(.88rem,1.05vw,1.02rem); }
html[lang="fr-CA"] .ulx-tool-launch__copy em { line-height:1.38; }
html[lang="fr-CA"] .ulx-product-tool-hub__intro h3 { max-width:20ch; }
html[lang="fr-CA"] .ulx-stage-copy h1 { font-size:clamp(44px,4.6vw,76px); }
html[lang="fr-CA"] .ulx-auth-panel__header h2 { font-size:clamp(29px,3vw,42px); }
html[lang="fr-CA"] .ulx-provider span { font-size:.77rem; }
html[lang="fr-CA"] .ulx-product-hero__copy h1 { max-width:16ch; }
html[lang="fr-CA"] .ulx-payment-hero h1 { max-width:19ch; }
html[lang="fr-CA"] .ulx-option-card h3 { line-height:1.15; }
html[lang="fr-CA"] .ulx-selector-title { max-width:18ch; }
@media (max-width:1380px) {
  html[lang="fr-CA"] .ulx-nav { gap:0; }
  html[lang="fr-CA"] .ulx-nav > a,
  html[lang="fr-CA"] .ulx-nav > button { font-size:.72rem; }
}
@media (max-width:720px) {
  html[lang="fr-CA"] .ulx-hero__title { font-size:clamp(2.32rem,11vw,3.5rem); }
  html[lang="fr-CA"] .ulx-stage-copy h1 { font-size:clamp(38px,11vw,54px); }
  html[lang="fr-CA"] .ulx-tool-launch__copy strong { font-size:.92rem; }
  html[lang="fr-CA"] .ulx-provider span { font-size:.82rem; }
}

/* Page-specific French length controls */
html[lang="fr-CA"] #ulx-selector .ulx-wizard__head h1 { max-width:20ch; font-size:clamp(2.45rem,4.5vw,4.65rem); }
html[lang="fr-CA"] #ulx-selector .ulx-option-card strong { font-size:clamp(.88rem,1.1vw,1.02rem); line-height:1.22; }
html[lang="fr-CA"] #ulx-selector .ulx-option-card small { line-height:1.42; }
html[lang="fr-CA"] #ulx-selector .ulx-step__header h2 { max-width:31ch; }
html[lang="fr-CA"] .site-header .primary-nav { gap:clamp(10px,1.1vw,18px); }
html[lang="fr-CA"] .site-header .primary-nav a { font-size:.82rem; }
html[lang="fr-CA"] .hero__content h1 { max-width:18ch; font-size:clamp(3.25rem,6vw,6.4rem); }
html[lang="fr-CA"] .option-card h3 { font-size:clamp(1.42rem,2.1vw,2rem); }
html[lang="fr-CA"] .scenario-button { min-height:76px; line-height:1.24; }
html[lang="fr-CA"] #ulx-products-page-v1 .ulx-product-nav { gap:clamp(12px,1.4vw,24px); }
html[lang="fr-CA"] #ulx-products-page-v1 .ulx-product-nav a { font-size:.78rem; }
html[lang="fr-CA"] #ulx-products-page-v1 .ulx-product-hero__copy h1 { font-size:clamp(3.4rem,6.3vw,6.8rem); }
html[lang="fr-CA"] #ulx-products-page-v1 .ulx-model-switcher__button small { max-width:14ch; line-height:1.25; }
html[lang="fr-CA"] #ulx-register-v1 .ulx-stage-copy p { max-width:660px; }
html[lang="fr-CA"] #ulx-register-v1 .ulx-consent { line-height:1.45; }

@media (max-width:1180px) {
  html[lang="fr-CA"] .site-header .primary-nav { display:none; }
  html[lang="fr-CA"] .site-header .nav-toggle { display:block; }
}
@media (max-width:760px) {
  html[lang="fr-CA"] #ulx-selector .ulx-wizard__head h1 { font-size:clamp(2.2rem,10vw,3.4rem); }
  html[lang="fr-CA"] .hero__content h1 { font-size:clamp(2.65rem,12vw,4.25rem); }
  html[lang="fr-CA"] #ulx-products-page-v1 .ulx-product-hero__copy h1 { font-size:clamp(2.75rem,12vw,4.4rem); }
}

html[lang="fr-CA"] #ulx-homepage-v25 .ulx-header__actions .ulx-button { padding-inline:8px; font-size:.69rem; letter-spacing:-.025em; }
html[lang="fr-CA"] #ulx-homepage-v25 .ulx-account-link { padding-inline:4px; font-size:.64rem; letter-spacing:.02em; }
