/* Approved original 03 artwork: unchanged pixels, proportional scaling only. */
.home-page header.site-header,
.inner-page header.site-header,
.home-page header.site-header.scrolled,
.inner-page header.site-header.scrolled {
  background: #f4f1e9;
  color: #183a30;
  height: 122px;
  border-bottom: 1px solid #183a3026;
}
.site-header .brand.pm-brand {
  width: 174px;
  flex: 0 0 174px;
  font-size: 0;
  letter-spacing: normal;
  line-height: 1;
}
.site-header .brand.pm-brand .pm-logo,
.site-footer .brand.pm-brand .pm-logo {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}
.site-header .brand.pm-brand small {
  margin-top: 6px;
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0;
  text-align: center;
}
.site-header .language-switch,
.site-header .header-contact { border-color: #183a3066; }
.site-header .language-switch:hover { background: #183a300c; }
.site-header .mobile-nav nav { color: #f4f1e9; }
.site-footer {
  background: #f4f1e9;
  color: #183a30;
  border-top: 1px solid #183a3026;
}
.site-footer .footer-bottom { border-color: #183a3026; color: #4a6055; }
.site-footer .footer-main p,
.site-footer .footer-main strong { color: #183a30; }
.site-footer .brand.pm-brand {
  display: block;
  width: 184px;
  background: #f4f1e9;
  font-size: 0;
  line-height: 1;
}
html:has(.pm-brand) { scroll-padding-top: 142px; }
@media (max-width: 760px) {
  .home-page header.site-header,
  .inner-page header.site-header,
  .home-page header.site-header.scrolled,
  .inner-page header.site-header.scrolled {
    height: auto;
    min-height: 138px;
    padding-top: 8px;
    padding-bottom: 6px;
  }
  .site-header .brand.pm-brand { width: 145px; flex-basis: 145px; }
  .site-header .brand.pm-brand small { font-size: 9px; margin-top: 4px; }
  html:has(.pm-brand) { scroll-padding-top: 158px; }
}

/* PM_NAV_REACHABILITY_20261016: keep all menu items reachable on short viewports. */
@media(max-width:1100px){
 .site-header .mobile-nav{position:static!important}
 .site-header .mobile-nav nav{position:absolute;top:100%!important;right:0!important;width:min(360px,100%)!important;box-sizing:border-box;max-height:calc(100svh - 174px);max-height:calc(100dvh - 174px);overflow-y:auto;overscroll-behavior:contain;padding:16px 24px 20px}
 .site-header .mobile-nav nav a{min-height:44px;min-width:0}
}
@media(max-width:760px){.site-header .mobile-nav nav{width:100%!important}}
