/* Company navigation in the header; DX certification belongs with footer information. */
.header.official-header{position:fixed;inset:0 0 auto;height:74px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:14px max(56px,calc((100vw - 1440px)/2));background:#f7f8f9f5;border:0;border-bottom:1px solid #dce0e4a0;box-shadow:0 3px 15px #243f4806;z-index:80;color:#253d4e}
.official-header .header-identity{display:flex;align-items:center;gap:22px;flex-shrink:0}
.header.official-header .brand{display:inline-flex;align-items:center;margin:0;padding:0;gap:0;min-height:44px}
.header.official-header .brand img{display:block;width:auto;height:38px;max-width:none;object-fit:contain;filter:none}
.header.official-header #navigation{position:static;display:flex;align-items:center;gap:25px;margin:0;padding:0;border:0;background:none;box-shadow:none;font-size:12.5px;font-weight:500;letter-spacing:.04em;line-height:2;white-space:nowrap}
.header.official-header #navigation>a{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:5px 0;border:0}
.header.official-header #navigation>a:not(.official-contact):after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:#1b8fd6;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.header.official-header #navigation>a:hover:after,.header.official-header #navigation>a:focus-visible:after{transform:scaleX(1)}
.header.official-header #navigation>.official-contact{padding:5px 18px;border:1px solid #7b8b9655;border-radius:0;transition:background .2s}
.header.official-header #navigation>.official-contact:hover{background:#e8edee}
.header.official-header #navigation>.header-mobile-home{display:none}
.header.official-header .menu{display:none}
.site-footer .footer-dx{display:flex;flex-direction:column;align-items:center;gap:10px;width:fit-content;margin-top:26px;padding:16px 20px 13px;background:#fffef9;color:#183b3d;border-radius:3px}
.site-footer .footer-dx img{display:block;width:160px;height:auto;object-fit:contain}
.site-footer .footer-dx span{font-size:10px;line-height:1.6;letter-spacing:.025em}
.site-footer .footer-dx:hover span{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){
  .header.official-header{padding-inline:40px;gap:24px}
  .official-header .header-identity{gap:18px}
  .header.official-header #navigation{gap:15px;font-size:11.5px}
}
@media(max-width:980px){
  .header.official-header{height:72px;padding:12px 24px;gap:18px}
  .header.official-header .brand img{height:32px}
  .header.official-header .menu{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0;gap:10px;width:auto;height:44px;min-height:44px;margin-left:auto;padding:4px 0;background:none;border:0;border-radius:0;color:inherit;font-size:12px;line-height:1.5}
  .header.official-header .menu span{display:block;width:auto;height:auto;background:none;font-size:21px;line-height:1;transition:transform .2s}
  .header.official-header .menu[aria-expanded="true"] span{transform:rotate(45deg)}
  .header.official-header #navigation{display:none}
  .header.official-header #navigation.open{position:fixed;display:flex;align-items:stretch;flex-direction:column;inset:72px 18px auto;gap:0;padding:14px 24px 20px;background:#fffef9;border:1px solid #dce0e4;box-shadow:0 18px 32px #0a142014;max-height:calc(100svh - 92px);overflow:auto;white-space:normal}
  .header.official-header #navigation>a,.header.official-header #navigation>.header-mobile-home{display:flex;align-items:center;min-height:48px;padding:10px 0;font-size:15px;border:0;border-bottom:1px solid #dce0e4}
  .header.official-header #navigation>a:after{display:none}
  .header.official-header #navigation>.official-contact{padding:10px 0;border:0;border-bottom:1px solid #dce0e4;background:none}
}
@media(max-width:600px){
  .header.official-header{padding-inline:20px;gap:12px}
  .header.official-header .brand img{height:28px}
  .official-header .header-identity{gap:14px}
  .header.official-header .menu{font-size:11px;gap:7px}
  .header.official-header .menu span{font-size:19px}
}
@media(max-width:380px){
  .header.official-header{padding-inline:16px;gap:10px}
  .header.official-header .brand img{height:26px}
  .official-header .header-identity{gap:10px}
  .header.official-header .menu{font-size:10px;gap:6px}
  .header.official-header .menu span{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.header.official-header #navigation>a:after,.header.official-header .menu span{transition:none}}
