/* Shared header geometry for the main site and both event languages. */
:root{color-scheme:only light}
header{position:relative;z-index:20;background:#fff;color:#13283d}
header .nav{gap:24px}
header .brand,header .logo{min-width:0;flex-shrink:0}
header .brand-logo-img,header .logo img{display:block;width:auto;height:42px;aspect-ratio:1600/191;object-fit:contain}
header .menu{flex:0 0 44px;width:44px;height:44px;padding:10px;border:1px solid #dce6ed;border-radius:8px;background:#fff;color:#13283d;align-items:center;justify-content:center;cursor:pointer}
header .menu svg{display:block;width:24px;height:24px}
header .menu:focus-visible,header a:focus-visible{outline:3px solid #378fca;outline-offset:3px}
header .mobile-nav{background:#fff;color:#13283d}
@media(max-width:1100px){
  header .links,header .login,header .nav>.btn,header .nav-note,header .nav-cta{display:none}
  header .menu{display:flex}
  header .mobile-nav.open{display:flex;position:absolute;z-index:30;top:100%;left:20px;right:20px;margin-top:0;background:#fff;color:#13283d;box-shadow:0 20px 55px rgba(7,29,53,.12);padding:20px;flex-direction:column;border-radius:0 0 10px 10px}
  header .mobile-nav a{padding:9px}
}
@media(max-width:620px){
  header .nav{width:calc(100% - 28px);height:70px;min-height:70px;gap:16px}
  header .brand,header .logo{flex:0 1 210px;width:210px;min-width:0;margin-right:auto}
  header .brand-logo-img,header .logo img{width:100%;height:auto;max-width:210px;aspect-ratio:1600/191}
  header .lang-switch{flex-shrink:0}
  header .mobile-nav.open{left:14px;right:14px}
}
