:root{--v2-navy:#071d43;--v2-blue:#0869d7;--v2-green:#2d9b42;--v2-line:#dfe7f0;--v2-white:#fff}
.v2-skip-link{position:absolute;left:-9999px;top:8px;z-index:9999;background:#fff;color:var(--v2-navy);padding:10px 14px;border-radius:8px}.v2-skip-link:focus{left:12px}
.v2-site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid var(--v2-line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.v2-header-inner{max-width:1460px;margin:auto;min-height:82px;padding:10px 28px;display:flex;align-items:center;gap:24px}.v2-brand{display:flex;align-items:center;flex:0 0 auto}.v2-brand-logo{display:block;width:290px;max-width:25vw;height:56px;object-fit:contain;object-position:left center}
.v2-main-nav{display:flex;align-items:center;justify-content:center;gap:25px;margin-left:auto;white-space:nowrap}.v2-main-nav a{position:relative;color:var(--v2-navy);font-size:14px;font-weight:600;text-decoration:none;padding:29px 0 27px}.v2-main-nav a:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--v2-blue);transform:scaleX(0);transition:transform .2s ease}.v2-main-nav a:hover:after,.v2-main-nav a:focus-visible:after,.v2-main-nav a.active:after{transform:scaleX(1)}
.v2-header-actions{display:flex;align-items:center;gap:10px;margin-left:8px}.v2-header-phone,.v2-trial{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;text-decoration:none;font-weight:700;white-space:nowrap}.v2-header-phone{padding:0 16px;color:var(--v2-blue);border:1.5px solid #83b8ef;background:#fff;gap:7px}.v2-trial{padding:0 20px;color:#fff;background:var(--v2-green);border:1.5px solid var(--v2-green)}.v2-trial:hover,.v2-trial:focus-visible{filter:brightness(.94)}.v2-language{display:flex;align-items:center;gap:7px;margin-left:7px;font-size:12px}.v2-language a{color:var(--v2-navy);font-weight:700;text-decoration:none}.v2-language span{color:#9aa9ba}
.v2-menu-button{display:none;width:46px;height:46px;border:0;background:transparent;border-radius:10px;padding:10px;cursor:pointer}.v2-menu-button span{display:block;height:2px;background:var(--v2-navy);margin:6px 0;border-radius:2px}
.v2-mobile-nav{position:fixed;right:0;top:0;bottom:0;width:min(420px,92vw);z-index:1200;background:#fff;padding:18px 22px 24px;transform:translateX(105%);transition:transform .25s ease;box-shadow:-18px 0 40px rgba(7,29,67,.15);display:flex;flex-direction:column}.v2-mobile-nav.open{transform:translateX(0)}.v2-mobile-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--v2-line)}.v2-mobile-logo{width:245px;max-width:75%;height:54px;object-fit:contain;object-position:left center}.v2-mobile-close{border:0;background:#f3f7fb;color:var(--v2-navy);width:44px;height:44px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer}.v2-mobile-links{display:flex;flex-direction:column;padding:12px 0;overflow:auto}.v2-mobile-links a{color:var(--v2-navy);font-weight:650;text-decoration:none;font-size:18px;padding:13px 4px;border-bottom:1px solid #edf1f5}.v2-mobile-actions{margin-top:auto;display:grid;gap:10px;padding-top:16px}.v2-mobile-actions .v2-header-phone,.v2-mobile-actions .v2-trial{min-height:50px}.v2-mobile-language{text-align:center;padding-top:6px}.v2-mobile-language a{color:var(--v2-navy);font-weight:650;text-decoration:none;margin:0 8px}.v2-menu-scrim{position:fixed;inset:0;z-index:1100;background:rgba(5,21,48,.48)}body.v2-menu-open{overflow:hidden}
@media(max-width:1260px){.v2-header-inner{gap:15px;padding-inline:20px}.v2-brand-logo{width:230px}.v2-main-nav{gap:16px}.v2-main-nav a{font-size:13px}.v2-header-phone{padding-inline:12px}.v2-header-actions .v2-language{display:none}}
@media(max-width:1080px){.v2-main-nav,.v2-header-actions{display:none}.v2-menu-button{display:block;margin-left:auto}.v2-brand-logo{max-width:none;width:265px}.v2-header-inner{min-height:74px}}
@media(max-width:480px){.v2-header-inner{padding:8px 14px;min-height:68px}.v2-brand-logo{width:225px;height:50px}.v2-menu-button{width:44px;height:44px}.v2-mobile-nav{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){.v2-mobile-nav,.v2-main-nav a:after{transition:none}}

/* V4.1 mockup geometry correction */
.v2-header-inner{max-width:1240px;min-height:76px;padding:8px 20px;gap:18px}
.v2-brand-logo{width:220px;max-width:none;height:52px}
.v2-main-nav{gap:17px}
.v2-main-nav a{font-size:12.5px;padding:25px 0 23px}
.v2-main-nav a:after{bottom:15px}
.v2-header-actions{gap:8px;margin-left:4px}
.v2-header-phone{padding:0 12px;font-size:12.5px;min-height:40px}
.v2-trial{padding:0 16px;font-size:13px;min-height:40px}
.v2-language{margin-left:3px;font-size:11px}
@media(max-width:1260px){.v2-header-inner{max-width:1180px}.v2-brand-logo{width:205px}.v2-main-nav{gap:13px}.v2-main-nav a{font-size:12px}}
@media(max-width:1080px){.v2-brand-logo{width:240px}}

/* V4.2 approved header logo + simplified phone treatment */
.v2-brand-logo{width:250px;height:auto;max-height:62px;object-fit:contain;object-position:left center}
.v2-header-actions .v2-header-phone{min-height:auto;padding:8px 4px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#0869d7;font-size:13px;font-weight:700;line-height:1.2}
.v2-header-actions .v2-header-phone:hover,.v2-header-actions .v2-header-phone:focus-visible{color:#071d43;text-decoration:underline;text-underline-offset:3px}
.v2-header-actions{gap:12px}
.v2-mobile-logo{width:255px;height:auto;max-height:72px}
@media(max-width:1260px){.v2-brand-logo{width:225px}.v2-header-actions .v2-header-phone{font-size:12px}}
@media(max-width:1080px){.v2-brand-logo{width:250px}}
@media(max-width:480px){.v2-brand-logo{width:225px;max-width:72vw}}

/* V4.4 header-only fix: isolate telephone link from homepage phone mockup class */
.v2-header-actions .v2-header-phone{
  flex:0 0 auto;
  width:auto;
  max-width:max-content;
  min-width:0;
  align-self:center;
}
.v2-header-actions .v2-header-phone::before,
.v2-header-actions .v2-header-phone::after{content:none!important;display:none!important}

/* V4.29.2 — French desktop header optimization only */
@media (min-width:1221px) {
  html[lang="fr-CA"] .v2-header-inner{
    max-width:1380px;
    gap:12px;
    padding-inline:18px;
  }
  html[lang="fr-CA"] .v2-brand-logo{width:225px;}
  html[lang="fr-CA"] .v2-main-nav{gap:12px;}
  html[lang="fr-CA"] .v2-main-nav a{
    font-size:12px;
    letter-spacing:-.01em;
  }
  html[lang="fr-CA"] .v2-header-actions{gap:8px;margin-left:2px;}
  html[lang="fr-CA"] .v2-trial{padding-inline:14px;font-size:12.5px;}
}

/* On narrower French desktops, preserve nav + CTA and remove secondary items first. */
@media (min-width:1221px) and (max-width:1375px) {
  html[lang="fr-CA"] .v2-header-actions .v2-header-phone,
  html[lang="fr-CA"] .v2-header-actions .v2-language{display:none;}
  html[lang="fr-CA"] .v2-main-nav{gap:11px;}
  html[lang="fr-CA"] .v2-brand-logo{width:210px;}
}

/* French needs the compact mobile menu sooner than English. */
@media (max-width:1220px) {
  html[lang="fr-CA"] .v2-main-nav,
  html[lang="fr-CA"] .v2-header-actions{display:none;}
  html[lang="fr-CA"] .v2-menu-button{display:block;margin-left:auto;}
  html[lang="fr-CA"] .v2-brand-logo{max-width:none;width:250px;}
  html[lang="fr-CA"] .v2-header-inner{min-height:74px;}
}

@media (max-width:480px) {
  html[lang="fr-CA"] .v2-brand-logo{width:225px;max-width:72vw;}
}
