/* EUMOSA v136 — public homepage/platform Future Ready header overrides.
   Desktop: explicit account/login + language dropdown (+ logout when authenticated).
   Narrow tablet/mobile: keep the header clean; account/login and language dropdown live inside the hamburger panel. */
.public-mobile-menu-actions{display:none}
.public-language-wrap{display:inline-flex;align-items:center;min-width:146px}
.public-language-select{
  width:100%;min-height:46px;padding:0 40px 0 18px;border:1px solid rgba(100,181,222,.55);border-radius:999px;
  color:#fff;background:#0b4668;font:inherit;font-weight:800;cursor:pointer;outline:none
}
.public-language-select:focus{border-color:#69e5d1;box-shadow:0 0 0 3px rgba(105,229,209,.12)}
.public-logout-pill{border:1px solid rgba(120,184,218,.5)!important;background:transparent!important;color:#fff!important}

@media (max-width:899px){
  /* Existing homepage/platform CSS may leave the old language switch visible on mobile. v134 intentionally hides the whole desktop action group. */
  .site-header .header-actions.public-desktop-actions{display:none!important}
  .site-header .header-inner{position:relative;display:flex!important;align-items:center!important;width:100%!important}
  /* Keep the public mobile hamburger aligned with the logo line and pinned to the far right. */
  .site-header .mobile-menu-toggle{
    display:flex!important;align-items:center;justify-content:center;flex-direction:column;gap:4px;
    width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;
    margin:0 0 0 auto!important;padding:0!important;box-sizing:border-box!important;flex:0 0 40px!important;
    border:1px solid rgba(98,181,225,.58)!important;border-radius:11px!important;
    background:#0b4162!important;box-shadow:none!important;appearance:none;-webkit-appearance:none;
    cursor:pointer;overflow:hidden;transition:background .18s ease,border-color .18s ease,transform .18s ease
  }
  .site-header .mobile-menu-toggle:hover,
  .site-header .mobile-menu-toggle:focus-visible{
    background:#105273!important;border-color:#6be4d1!important;outline:none!important;
    box-shadow:0 0 0 3px rgba(107,228,209,.12)!important
  }
  .site-header .mobile-menu-toggle > span:not(.sr-only){
    display:block!important;width:22px!important;height:2px!important;min-height:2px!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:999px!important;
    background:#fff!important;opacity:1!important;transform-origin:center!important;
    transition:transform .2s ease,opacity .16s ease,width .2s ease!important
  }
  /* Conventional hamburger → close transition while the navigation is open. */
  .site-header .mobile-menu-toggle[aria-expanded="true"] > span:not(.sr-only):nth-child(1){transform:translateY(6px) rotate(45deg)!important}
  .site-header .mobile-menu-toggle[aria-expanded="true"] > span:not(.sr-only):nth-child(2){opacity:0!important;width:18px!important}
  .site-header .mobile-menu-toggle[aria-expanded="true"] > span:not(.sr-only):nth-child(3){transform:translateY(-6px) rotate(-45deg)!important}

  /* Account and language are part of the same hamburger navigation so guest users can always find Login. */
  .site-header .main-nav .public-mobile-menu-actions{
    display:grid!important;grid-template-columns:1fr;gap:9px;width:100%;margin-top:8px;padding:14px 0 2px;
    border-top:1px solid rgba(112,177,213,.28)
  }
  .site-header .main-nav .public-mobile-menu-actions>a,
  .site-header .main-nav .public-mobile-language{
    display:flex!important;align-items:center;width:100%;min-height:48px;margin:0;padding:10px 14px;
    border:1px solid rgba(104,169,204,.32);border-radius:12px;background:rgba(14,67,99,.86);color:#fff!important;
    text-decoration:none!important;font-size:15px!important;font-weight:850!important;line-height:1.25
  }
  .site-header .main-nav .public-mobile-account{border-color:rgba(104,231,208,.5)!important;background:rgba(21,91,103,.55)!important;color:#cafff5!important}
  .site-header .main-nav .public-mobile-logout{color:#ffd7d3!important}
  .site-header .main-nav .public-mobile-language{padding:0;overflow:hidden}
  .site-header .main-nav .public-mobile-language select{
    width:100%;min-height:48px;padding:0 42px 0 14px;border:0;outline:0;color:#fff;background:#154d70;
    font:inherit;font-size:15px;font-weight:850;cursor:pointer
  }
  /* Remove old inline language button groups if legacy homepage CSS still exposes them. */
  .site-header .language-switcher{display:none!important}
}

@media (max-width:420px){
  .site-header .mobile-menu-toggle{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex-basis:38px!important;border-radius:10px!important}
  .site-header .mobile-menu-toggle > span:not(.sr-only){width:21px!important}
  .site-header .main-nav .public-mobile-menu-actions>a,
  .site-header .main-nav .public-mobile-language,
  .site-header .main-nav .public-mobile-language select{min-height:44px;font-size:14px!important}
}
