/* Mobile navigation sheet; hidden auxiliary content leaves desktop navigation intact. */
.menu-panel-head,.menu-panel-brand-lines,.menu-language-section,.menu-contact-section,.menu-panel-bottom,.menu-backdrop{display:none}
@media(max-width:680px){
  .site-header,.home-redesign .site-header{left:0;transform:none}
  .site-header.menu-open{z-index:40;pointer-events:none}
  .site-header.menu-open .nav-shell{background:transparent;border-color:transparent;box-shadow:none}
  .site-header.menu-open .nav-shell>.wordmark,
  .site-header.menu-open .nav-shell>.language-switch,
  .site-header.menu-open .nav-shell>.menu-toggle{visibility:hidden}
  .site-header.menu-open .nav-shell>.nav-links{pointer-events:auto}
  .site-header .nav-shell{backdrop-filter:none}
  .menu-backdrop{
    display:block;position:fixed;inset:0;z-index:35;background:rgba(2,6,15,.72);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity 320ms ease,visibility 320ms ease;
  }
  .menu-backdrop.open{opacity:1;visibility:visible;pointer-events:auto}
  .nav-shell>.nav-links,.js .nav-shell>.nav-links,.js .nav-shell>.nav-links.open{
    display:block;position:fixed;inset:0 0 0 auto;z-index:41;
    width:min(92vw,420px);height:100dvh;max-height:none;
    overflow-y:auto;overscroll-behavior:contain;
    padding:0 20px calc(28px + env(safe-area-inset-bottom));
    margin:0;border:1px solid #6d7faa4d;border-right:0;
    border-radius:22px 0 0 22px;
    background:linear-gradient(155deg,#0d1322,#070b13 60%,#0b1223);
    box-shadow:-22px 0 56px #0009;
    visibility:hidden;opacity:.85;pointer-events:none;
    transform:translateX(100%);
    transition:transform 320ms cubic-bezier(.22,.61,.36,1),opacity 320ms ease,visibility 320ms;
  }
  .js .nav-shell>.nav-links.open{visibility:visible;opacity:1;pointer-events:auto;transform:translateX(0)}
  .js .nav-shell>.nav-links.gesture-dragging,
  .menu-backdrop.gesture-dragging{transition:none}
  .menu-backdrop.gesture-dragging{pointer-events:none}
  .menu-panel-head{
    display:flex;position:sticky;top:0;z-index:2;align-items:center;justify-content:space-between;
    min-height:74px;gap:8px;margin:0 -20px;padding:calc(10px + env(safe-area-inset-top)) 18px 10px 22px;
    background:linear-gradient(#0c1220 82%,#0c1220e8);
  }
  .menu-panel-brand{font-size:19px;line-height:1.12;letter-spacing:.13em;font-weight:750;color:#f2f4ff;white-space:nowrap}
  .menu-panel-brand small{display:block;margin-top:5px;font-size:8px;letter-spacing:.3em;font-weight:500;color:#aab7de}
  .menu-panel-controls{display:flex;gap:3px;flex:none}
  .menu-panel-controls button{display:grid;place-items:center;width:44px;height:44px;padding:9px;border:0;background:transparent;color:#dce5ff;cursor:pointer}
  .menu-panel-controls svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
  .menu-panel-controls button:focus-visible,.nav-items a:focus-visible,.menu-language-slot a:focus-visible,.menu-contact-link:focus-visible{outline:2px solid #bac9ff;outline-offset:2px;border-radius:8px}
  .menu-panel-brand-lines{
    display:block;margin:28px 0 26px 18px;color:#94a9f5;font-size:11px;
    line-height:1.75;letter-spacing:.22em;font-weight:650;
  }
  .menu-panel-brand-lines::after{content:"";display:block;width:43px;height:1px;margin-top:16px;background:#778fff}
  .js .nav-shell>.nav-links .nav-items{
    counter-reset:menu-index;display:grid;gap:5px;padding:0;overflow:visible;
  }
  .js .nav-shell>.nav-links .nav-items a,
  .js .nav-shell>.nav-links.open .nav-items a{
    counter-increment:menu-index;display:grid;grid-template-columns:45px minmax(0,1fr) 24px;
    align-items:center;gap:10px;min-height:77px;padding:12px 16px 12px 20px;
    border:0;border-radius:12px;color:#edf0fb;background:transparent;
    font-size:clamp(23px,6.3vw,28px);line-height:1.16;font-weight:480;
  }
  .nav-shell .nav-items a::before{
    content:counter(menu-index,decimal-leading-zero);
    position:static;display:block;color:#8ca3fc;font-size:13px;font-weight:600;letter-spacing:.12em;
  }
  .nav-shell .nav-items a::after,
  .nav-shell .nav-items a:is([aria-current="page"],[aria-current="location"])::after{
    content:"›";position:static;display:block;width:auto;height:auto;
    background:none;border:0;box-shadow:none;opacity:1;transform:none;animation:none;
    color:#b6c7f7;font-size:31px;line-height:1;text-align:center;
  }
  .nav-shell .nav-items a:is([aria-current="page"],[aria-current="location"]){
    color:#fff;background:linear-gradient(95deg,#252d59a6,#10182970 85%);
    animation:ember-sheet-active 8s ease-in-out infinite alternate;
  }
  @keyframes ember-sheet-active{
    from{box-shadow:inset 4px 0 #829bffbd,inset 13px 0 18px #536ee02b,0 0 13px #425ddb12}
    to{box-shadow:inset 4px 0 #a7b6ffe0,inset 13px 0 18px #677aff3d,0 0 18px #526dff24}
  }
  .nav-shell .nav-items a:not([aria-current]){border-bottom:1px solid #8092b122}
  .nav-shell .nav-items a:not([aria-current]):active{background:#5b72bd19;transform:translateX(1px)}
  .menu-language-section{display:block;margin-top:28px}
  .menu-section-title{font-size:12px;line-height:1.5;letter-spacing:.21em;font-weight:650;text-transform:uppercase;color:#a4b5fa}
  .menu-language-slot{margin-top:12px}
  .menu-language-slot .language-options{display:grid;position:static;min-width:0;gap:8px;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
  .menu-language-slot .language-options a{
    display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:12px;
    min-height:50px;padding:9px 14px;border:1px solid #8494bf3a;border-radius:10px;
    background:#121a2a75;color:#e4e8f4;font-size:16px;letter-spacing:0;text-align:left;
  }
  .menu-language-slot .language-options a::before{
    content:"";display:block;width:23px;height:23px;opacity:.75;
    background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b7c4ea' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c-3 3-3 15 0 18M12 3c3 3 3 15 0 18'/%3E%3C/svg%3E");
  }
  .menu-language-slot .language-options a::after{content:"";width:14px;height:14px;border:1px solid #8da0d7;border-radius:50%}
  .menu-language-slot .language-options a[aria-current]{
    background:#5564b023;border-color:#899bffb0;box-shadow:0 0 12px #6d83f522;color:#fff;
  }
  .menu-language-slot .language-options a[aria-current]::after{
    border-color:#9ab1ff;background:#9ab1ff;box-shadow:inset 0 0 0 3px #202b50;
  }
  .menu-contact-section{display:block;margin-top:30px}
  .menu-contact-link{display:flex;align-items:center;gap:11px;min-height:48px;margin-top:10px;color:#d7dff4;font-size:14px;overflow-wrap:anywhere}
  .menu-contact-link svg{flex:none;width:24px;height:24px;stroke:#9fa9ff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .menu-contact-link span{min-width:0}
  .menu-panel-bottom{
    display:block;min-height:95px;margin:22px -20px -28px;border-top:1px solid #8095ca30;
    background:radial-gradient(ellipse at 75% 110%,#304b9250,transparent 63%),linear-gradient(#0b122300,#0b1325);
  }
}
@media(max-width:340px){
  .menu-panel-head{padding-inline:14px}
  .menu-panel-brand{font-size:16px}
  .menu-panel-controls{gap:0}
  .nav-shell>.nav-links,.js .nav-shell>.nav-links,.js .nav-shell>.nav-links.open{padding-inline:16px}
  .menu-panel-brand-lines{margin-block:18px}
  .js .nav-shell>.nav-links .nav-items a,.js .nav-shell>.nav-links.open .nav-items a{
    grid-template-columns:37px minmax(0,1fr) 20px;min-height:66px;padding-inline:14px;font-size:23px
  }
}
@media(max-width:680px) and (max-height:620px){
  .menu-panel-brand-lines{display:none}
  .menu-language-section{margin-top:18px}
  .js .nav-shell>.nav-links .nav-items a,.js .nav-shell>.nav-links.open .nav-items a{min-height:64px}
}
@media(prefers-reduced-motion:reduce){
  .menu-backdrop,.js .nav-shell>.nav-links,.js .nav-shell>.nav-links.open{transition:none}
  .nav-shell .nav-items a:is([aria-current="page"],[aria-current="location"]){
    animation:none;box-shadow:inset 4px 0 #9aaeff,inset 13px 0 18px #6178ff31;
  }
}
