/* Shared expanded navigation; desktop and collapsed page headers stay unchanged. */
@media (max-width: 900px) {
  .header.is-menu-open {
    position: fixed;
    inset: 0 0 auto;
    z-index: 1000;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 44px;
    gap: 16px;
    align-items: center;
    width: 100%;
    height: auto;
    max-height: 100dvh;
    margin: 0;
    padding: 24px 32px 40px;
    overflow-y: auto;
    background: #fff;
    color: #27313b;
    border-radius: 0 0 32px 32px;
    box-shadow: 0 8px 24px rgba(25, 34, 41, .08);
    transform: none;
  }
  .header.is-menu-open > a { grid-area: 1 / 1; justify-self: start; }
  .header.is-menu-open .logo {
    content: url('../images/logo-blue.svg');
    width: 112px;
    height: 56px;
    object-fit: contain;
    filter: none;
  }
  .header.is-menu-open > form { grid-area: 1 / 2; margin: 0; }
  .header.is-menu-open .language-picker { color: #27313b; }
  .header.is-menu-open .language-trigger,
  .header.is-menu-open .language-options { background: #fff; color: #27313b; box-shadow: 0 1px 4px rgba(25,34,41,.2); }
  .header.is-menu-open .language-options button + button { border-color: #d7d9dc; }
  .header.is-menu-open > nav {
    grid-area: 2 / 1 / 3 / -1;
    position: static;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
    transform: none;
  }
  .header.is-menu-open > nav a {
    min-height: 44px;
    padding: 8px 0;
    color: #27313b;
    font: 400 20px/28px Manrope, Arial, sans-serif;
    text-align: left;
    white-space: normal;
    background: transparent;
    border-radius: 4px;
  }
  .header.is-menu-open > nav a.active { color: #7d8388; }
  .header.is-menu-open > nav a:focus-visible { outline: 2px solid #09aaf5; outline-offset: 2px; }
  .header.is-menu-open .menu {
    grid-area: 1 / 3;
    position: relative;
    display: block;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  .header.is-menu-open .menu i {
    position: absolute;
    top: 21px;
    left: 8px;
    width: 28px;
    height: 2px;
    margin: 0;
    background: #27313b;
    border-radius: 2px;
  }
  .header.is-menu-open .menu i:nth-child(1) { transform: rotate(45deg); }
  .header.is-menu-open .menu i:nth-child(2) { opacity: 0; }
  .header.is-menu-open .menu i:nth-child(3) { transform: rotate(-45deg); }
}
@media (max-width: 520px) {
  .header.is-menu-open { padding: 16px 16px 24px; gap: 12px 8px; border-radius: 0 0 24px 24px; }
  .header.is-menu-open .logo { width: clamp(88px, 28.7vw, 112px); }
  .header.is-menu-open > nav a { font-size: 16px; line-height: 24px; padding: 10px 0; }
}
