@media(min-width:781px){
#main-nav>.nav-item:first-child{min-width:136px;transition:background-color .15s}
#main-nav>.nav-item:first-child>a{padding-left:24px;padding-right:10px;flex:1}
#main-nav #services-toggle{width:44px;min-height:58px;padding:0 16px 0 4px;justify-content:center}
#main-nav>.nav-item:first-child:hover,#main-nav>.nav-item:first-child:focus-within{background:#223d55}
#main-nav>.nav-item:first-child>a:hover{background:transparent}
}
/* Motion confirms navigation and actions without delaying interaction. */
@media(prefers-reduced-motion:no-preference){
  #services-toggle svg{transition:transform 180ms cubic-bezier(.16,1,.3,1)}
  #services-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
  #services-menu:not([hidden]){animation:meg-menu-enter 180ms cubic-bezier(.16,1,.3,1)}
  .button>svg,.service-card .card-bottom>svg{transition:transform 160ms cubic-bezier(.16,1,.3,1)}
  .button:focus-visible>svg,.service-card:focus-visible .card-bottom>svg{transform:translateX(3px)}
  .button:active>svg,.service-card:active .card-bottom>svg{transform:translateX(1px)}
  .b-header-contacts .messenger-links a{transition:background-color 140ms ease-out}
  #video-dialog[open]{animation:meg-dialog-enter 200ms cubic-bezier(.16,1,.3,1)}
  #video-dialog[open]::backdrop{animation:meg-backdrop-enter 160ms ease-out}
  @media(max-width:780px){
    #main-nav.open{animation:meg-menu-enter 180ms cubic-bezier(.16,1,.3,1)}
  }
  @media(hover:hover) and (pointer:fine){
    .button:hover>svg,.service-card:hover .card-bottom>svg{transform:translateX(3px)}
  }
}
@keyframes meg-menu-enter{
  from{opacity:.35;clip-path:inset(0 0 12% 0);transform:translateY(-4px)}
  to{opacity:1;clip-path:inset(0);transform:translateY(0)}
}
@keyframes meg-dialog-enter{
  from{opacity:.4;transform:translateY(6px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes meg-backdrop-enter{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
  #services-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
}
/* Larger touch targets; the phone stays in the existing header row. */
#main-nav #services-toggle{flex:0 0 48px;width:48px;min-height:48px;padding:12px;justify-content:center;touch-action:manipulation}
header.header #mobile-toggle{width:44px;min-width:44px;min-height:44px;padding:10px;touch-action:manipulation}
#mobile-toggle svg path{transform-origin:12px 12px}
#mobile-toggle[aria-expanded="true"] svg path:nth-child(1){transform:translateY(6px) rotate(45deg);transform-origin:12px 6px}
#mobile-toggle[aria-expanded="true"] svg path:nth-child(2){opacity:0}
#mobile-toggle[aria-expanded="true"] svg path:nth-child(3){transform:translateY(-6px) rotate(-45deg);transform-origin:12px 18px}
@media(prefers-reduced-motion:no-preference){#mobile-toggle svg path{transition:transform 180ms cubic-bezier(.16,1,.3,1),opacity 100ms ease-out}}
@media(max-width:780px){
  #main-nav.open,#services-menu:not([hidden]){animation:none}
  .meg-shared-header #main-nav.open{padding:0}
  #main-nav.open{padding:0}
  #main-nav>#services-menu{margin:0 0 8px;padding:20px 16px;min-width:0}
  #main-nav>#services-menu h2{font-size:17px}
  #video-dialog[open],#video-dialog[open]::backdrop{animation:none}
  #video-dialog video{aspect-ratio:16/9}
}
/* Prepare the hidden native player layout before the first tap, without taking focus. */
@media(max-width:780px){#video-dialog:not([open]){display:block;visibility:hidden;position:fixed;inset:0;pointer-events:none}}
