/* VNext 3: self-contained shared header baseline.
   Do not rely on corporate.css because legacy and toolbox pages intentionally use different content systems. */
.vnext-header{position:sticky;top:0;z-index:180;background:rgba(255,253,248,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(12,38,50,.10)}
.vnext-header .nav{display:grid;grid-template-columns:minmax(206px,auto) minmax(0,1fr) auto;align-items:center;min-height:76px}
.vnext-header .brand{display:flex;align-items:center;gap:12px;min-width:206px;color:var(--ink);text-decoration:none}
.vnext-header .brand-mark{width:39px;height:39px;min-width:39px;border-radius:6px;background:var(--ink);display:grid;place-items:center;color:#fff}
.vnext-header .brand-mark svg{width:23px;height:23px}
.vnext-header .brand>span:last-child{min-width:0}
.vnext-header .brand strong{display:block;color:var(--ink);font-size:15px;line-height:1.2;letter-spacing:-.01em;white-space:nowrap}
.vnext-header .brand>span>span{display:block;color:var(--muted);font-size:14px;line-height:1.25;margin-top:2px;white-space:nowrap}
.vnext-header .nav-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}
.vnext-header .lang{position:relative;flex:0 0 auto}
.vnext-header .lang>button{border:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:750;line-height:1;min-height:42px;padding:0 8px;cursor:pointer;white-space:nowrap;border-radius:5px}
.vnext-header .lang>button:hover,.vnext-header .lang>button:focus-visible{background:var(--mist);color:var(--green)}
.vnext-header .lang-menu{display:none;position:absolute;right:0;left:auto;top:48px;width:260px;max-width:min(88vw,260px);max-height:min(70vh,520px);overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(12,38,50,.14);padding:8px;z-index:220;border-radius:8px}
.vnext-header .lang.open .lang-menu{display:block}
.vnext-header .lang-menu a{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:5px;color:var(--ink);font-size:13px;font-weight:650;line-height:1.3;text-decoration:none!important;white-space:normal!important}
.vnext-header .lang-menu a:hover,.vnext-header .lang-menu a.active{background:var(--mist);color:var(--green)}
.vnext-header .lang-menu a span{display:block;min-width:0;overflow-wrap:anywhere}
.vnext-header .lang-menu a small{flex:0 0 auto;color:var(--muted);font-size:13px;line-height:1.2}
.vnext-header .mobile-nav{display:none;position:relative;flex:0 0 auto}
.vnext-header .mobile-nav summary{list-style:none;cursor:pointer;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;color:var(--ink);font-size:20px;background:#fff}
.vnext-header .mobile-nav summary::-webkit-details-marker{display:none}
.vnext-header .mobile-menu{position:absolute;right:0;top:50px;width:min(88vw,340px);max-height:calc(100vh - 82px);overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(12,38,50,.16);padding:10px;z-index:230;border-radius:8px}
.vnext-header .mobile-menu a{display:block;padding:11px 12px;border-bottom:1px solid #edf1ef;color:var(--ink);font-size:14px;font-weight:700;line-height:1.35;text-decoration:none}
.vnext-header .mobile-menu a:hover{background:var(--mist);color:var(--green)}
.vnext-header .header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:5px;background:var(--ink);border:1px solid var(--ink);color:#fff!important;text-decoration:none;font-size:14px;font-weight:780;line-height:1.1;white-space:nowrap}
.vnext-header .header-cta:hover{background:#123d49;border-color:#123d49;color:#fff!important}


/* HYBC stable navigation and footer architecture 2026-10-02 */
.vnext-header .container.nav{width:min(calc(100% - 36px),1480px);max-width:1480px;grid-template-columns:minmax(206px,auto) minmax(0,1fr) auto;gap:18px}
.vnext-header .vnext-nav{display:flex;justify-content:center;align-items:center;gap:9px;font-size:14px;font-weight:750;min-width:0}
.vnext-header .vnext-nav>a,.vnext-header .nav-drop-button{min-height:76px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:750;white-space:nowrap;cursor:pointer}
.vnext-header .vnext-nav>a:hover,.vnext-header .nav-drop-button:hover,.vnext-header .nav-drop-button[aria-current="page"]{color:var(--green)}
.nav-dropdown{position:relative}
.nav-drop-menu{position:absolute;left:0;top:64px;width:310px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(12,38,50,.14);padding:10px;display:none;z-index:150}
.nav-dropdown.open .nav-drop-menu{display:block}
.nav-drop-menu-right{left:auto;right:0}
.nav-drop-menu a{display:block;padding:11px 12px;border-radius:6px;color:var(--ink);font-size:14px;font-weight:680;line-height:1.35}
.nav-drop-menu a:hover{background:var(--mist);color:var(--green)}
.nav-drop-menu a strong{display:block;font-size:14px}
.nav-drop-menu a span{display:block;margin-top:4px;color:var(--muted);font-size:13px;font-weight:500;line-height:1.45}
.vnext-header .header-cta{min-height:42px;padding:0 14px;font-size:14px}
.vnext-mobile-menu strong{display:block;padding:12px 12px 5px;color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.vnext-mobile-menu .mobile-cta{background:var(--ink)!important;color:#fff!important;border-radius:5px!important;margin-top:9px!important}
.vnext-footer{background:#082630;color:#d7e5e6;border-top:0;padding:52px 0 22px}
.vnext-footer-grid{display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:42px}
.vnext-footer .footer-brand strong,.vnext-footer .footer-col>strong{display:block;color:#fff;font-size:15px;margin-bottom:14px}
.vnext-footer .footer-brand p{max-width:340px;color:#b8cbcd;font-size:15px;line-height:1.65;margin:0 0 15px}
.vnext-footer .footer-email{display:inline-flex;color:#fff;border:1px solid rgba(255,255,255,.18);padding:7px 9px;border-radius:5px;font-size:14px;white-space:nowrap}
.vnext-footer .footer-col a{display:block;color:#bcd0d2;font-size:14px;line-height:1.4;padding:5px 0}
.vnext-footer .footer-col a:hover,.vnext-footer .footer-email:hover{color:#fff}
.vnext-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#9fb6b9;font-size:13px}
.vnext-footer-bottom>div{display:flex;flex-wrap:wrap;gap:18px}.vnext-footer-bottom a{color:#a9c0c2}
@media(max-width:1320px){.vnext-header .brand>span>span{display:none}.vnext-header .brand{min-width:190px}.vnext-header .vnext-nav{gap:3px;font-size:13.5px}.vnext-header .vnext-nav>a,.vnext-header .nav-drop-button{padding:0 7px}}
@media(max-width:1140px){.vnext-header .vnext-nav{display:none}.vnext-header .mobile-nav{display:block}.vnext-header .nav{grid-template-columns:auto 1fr}.vnext-header .nav-tools{justify-self:end}.vnext-footer-grid{grid-template-columns:1.25fr repeat(2,1fr)}.vnext-footer-grid .footer-col:nth-child(4),.vnext-footer-grid .footer-col:nth-child(5){margin-top:8px}}
@media(max-width:760px){.vnext-header .header-cta{display:none}.vnext-header .container.nav{width:min(calc(100% - 24px),1480px)}.vnext-footer{padding-top:40px}.vnext-footer-grid{grid-template-columns:1fr 1fr;gap:30px 24px}.vnext-footer .footer-brand{grid-column:1/-1}.vnext-footer-bottom{align-items:flex-start;flex-direction:column}.vnext-footer-bottom>div{gap:12px 16px}.vnext-footer .footer-email{white-space:normal;overflow-wrap:anywhere}}
@media(max-width:480px){.vnext-footer-grid{grid-template-columns:1fr}.vnext-footer .footer-brand{grid-column:auto}}

/* VNext 2 navigation hardening */
.vnext-header .nav-drop-menu{width:340px;max-width:calc(100vw - 24px);top:68px;border-radius:8px;overflow:hidden}
.vnext-header .nav-drop-menu a,.vnext-header .nav-drop-menu a *{white-space:normal!important;text-decoration:none!important}
.vnext-header .nav-drop-menu a{overflow-wrap:break-word;word-break:normal}
.vnext-header .nav-drop-menu a span{max-width:100%;overflow-wrap:break-word;color:#66777e}
.vnext-header .nav-drop-menu a:focus-visible,.vnext-header .nav-drop-button:focus-visible,.vnext-header .vnext-nav>a:focus-visible{outline:3px solid rgba(11,123,111,.28);outline-offset:2px}
.vnext-header .nav-dropdown.open>.nav-drop-button{color:var(--green)}
@media(max-width:1260px){.vnext-header .brand>span>span{display:none}.vnext-header .container.nav{gap:12px}.vnext-header .vnext-nav{gap:2px;font-size:13.25px}.vnext-header .vnext-nav>a,.vnext-header .nav-drop-button{padding-left:6px;padding-right:6px}.vnext-header .header-cta{padding-left:11px;padding-right:11px}}
@media(max-width:1160px){.vnext-header .vnext-nav{display:none}.vnext-header .mobile-nav{display:block}}

/* VNext 3 RTL positioning and long-label protection. */
[dir="rtl"] .vnext-header .nav-drop-menu{left:auto;right:0;text-align:right}
[dir="rtl"] .vnext-header .nav-drop-menu-right{right:auto;left:0}
[dir="rtl"] .vnext-header .lang-menu{right:auto;left:0;text-align:right}
[dir="rtl"] .vnext-header .mobile-menu{right:auto;left:0;text-align:right}
.vnext-header .vnext-nav>a,.vnext-header .nav-drop-button{max-width:100%}
.vnext-header .nav-tools{white-space:nowrap}

/* VNext 3 footer normalization across corporate, legacy and toolbox page families. */
.vnext-footer .footer-brand strong,
.vnext-footer .footer-col>strong{
  text-transform:none;
  letter-spacing:normal;
}
.vnext-footer .footer-col a{
  margin:0;
  text-decoration:none;
}
@media(max-width:1140px){
  .vnext-footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}
  .vnext-footer .footer-brand{grid-column:1/-1}
  .vnext-footer-grid .footer-col:nth-child(4),
  .vnext-footer-grid .footer-col:nth-child(5){margin-top:0}
}
@media(max-width:760px){
  .vnext-footer-grid{grid-template-columns:1fr 1fr;gap:30px 24px}
  .vnext-footer .footer-brand{grid-column:1/-1}
}
@media(max-width:480px){
  .vnext-footer-grid{grid-template-columns:1fr}
  .vnext-footer .footer-brand{grid-column:auto}
}
@media(max-width:380px){
  .vnext-header .brand{min-width:0}
  .vnext-header .brand strong{font-size:13px;white-space:normal;line-height:1.15;max-width:132px}
  .vnext-header .nav-tools{gap:6px}
  .vnext-header .lang>button{padding-left:4px;padding-right:4px}
  .vnext-header .mobile-nav summary{width:40px;height:40px}
}
.english-only-note{font-size:.86em;opacity:.68;font-weight:500;white-space:nowrap}
