/* Native movement: no wheel interception or delayed links. */
html{scroll-behavior:smooth;scroll-padding-top:110px}main [id]{scroll-margin-top:110px}
@view-transition{navigation:auto}
::view-transition-old(root){animation:zg-exit-21 .16s ease both}::view-transition-new(root){animation:zg-enter-21 .24s ease both}
@keyframes zg-exit-21{to{opacity:0}}@keyframes zg-enter-21{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@supports not (view-transition-name:root){main{animation:zg-enter-21 .3s ease both}}
@media(min-width:1281px){#primary-nav>.menu{gap:clamp(8px,1vw,18px);align-items:center}#primary-nav>.menu>li{align-items:center}#primary-nav>.menu>li>a{padding-block:16px;white-space:nowrap;line-height:1.4}#primary-nav>.menu>.menu-item-has-children>.submenu-toggle{min-height:44px;width:24px;min-width:24px}#primary-nav>.menu>.menu-item-has-children>.sub-menu{max-height:calc(100dvh - 125px);overflow-y:auto;overscroll-behavior:contain}#primary-nav .sub-menu a{line-height:1.5}#primary-nav>.menu>.menu-item-has-children:not(.zg-services-menu)>.sub-menu{left:auto;right:0}#primary-nav .mega-intro{line-height:1.6}}
@media(max-width:1280px){.nav-dialog #primary-nav>.menu{gap:0}.nav-dialog #primary-nav .sub-menu .sub-menu a{min-height:44px;display:flex;align-items:center}.nav-dialog #primary-nav .zg-service-group>.submenu-toggle{top:106px}.nav-dialog{overscroll-behavior:contain}.nav-dialog a{overflow-wrap:anywhere}}
img{max-width:100%;height:auto}main{overflow-wrap:break-word}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
