/* MFB compact navigation / two access domains -- deliberately scoped to Quatro navigation. */
#header-navbar-wrapper { background: #2b2d36; }
#header-navbar-wrapper #navbar { background: #2b2d36; border: 0; }
#header-navbar-wrapper .navbar-header {position: relative; background: none;}
#header-navbar-wrapper .region-navigation {position: relative;}
/* Site-access selector floats inside the existing logo/header row; not a Drupal menu item. */
#header-navbar-wrapper .mfb-site-access { position: absolute; z-index: 10020; right: 16px; top: 8px; font: 500 13px/1.35 Arial, sans-serif; color: #f8f9fb; }
.mfb-site-access__toggle {cursor: pointer; list-style: none; border: 1px solid #575d6b; border-radius: 8px; background: #343844; color: #f8f9fb; padding: 8px 11px; display: inline-flex; align-items: center; gap: 7px; min-height: 34px; }
.mfb-site-access__toggle::-webkit-details-marker {display:none}
.mfb-site-access__toggle:hover, .mfb-site-access[open] .mfb-site-access__toggle { border-color: #e10020; background: #3d414d; }
.mfb-site-access__toggle:focus-visible, .mfb-site-access__option:focus-visible {outline: 2px solid #ff5b6d; outline-offset: 2px;}
.mfb-site-access__panel {position: absolute; top: calc(100% + 7px); right: 0; width: 268px; background: #fff; color: #252b37; border: 1px solid #dadfe7; box-shadow: 0 12px 30px rgba(0,0,0,.24); border-radius: 10px; padding: 7px;}
.mfb-site-access__option {display:flex; gap:9px; align-items:center; text-decoration:none; border-radius:7px; padding:10px; color:#202633!important; background:transparent; white-space:normal;}
.mfb-site-access__option:hover {background:#f1f3f7; color:#aa0018!important;}
.mfb-site-access__option[aria-current="page"] {background:#f5f5f8;}
.mfb-site-access__content {display:flex; flex-direction:column; min-width:0; gap:3px;}
.mfb-site-access__content strong {font-size:13px; line-height:1.2;}
.mfb-site-access__content small {font-size:11px; font-weight:400; color:#6c7585;}
.mfb-site-access__mark {margin-left:auto;color:#be001b;font-size:16px;}
/* Compact, full-width navigation row without the old heavy red tabs. */
@media (min-width: 992px) {
 #header-navbar-wrapper #block-quatro-main-menu {width:100%;}
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav {display:flex; align-items:center; justify-content:flex-start; flex-wrap:nowrap; width:100%; border-top:1px solid #414550; min-height:52px; text-align:left;}
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li {display:block; float:none; flex:0 0 auto; position:relative;}
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li:last-child,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li:last-child {margin-left:auto; float:none; background:#20222c;}
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li > a,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li > a {padding:0 18px; display:flex; align-items:center; height:52px; font:700 15px/1.1 'Open Sans Condensed',Arial,sans-serif; text-transform:uppercase; background:transparent; color:#f4f4f7; border-bottom:3px solid transparent; box-sizing:border-box; white-space:nowrap;}
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li > a:hover,
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li > a.is-active,
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li.active > a,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li > a:hover,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li.active > a {background:rgba(255,255,255,.06); border-bottom-color:#e40022; color:#fff;}
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li:last-child > a.menu-path-search {height:52px; width:52px; float:none; text-indent:100px; overflow:hidden; background-position:center center; border-bottom:3px solid transparent;}
 #header-navbar-wrapper #block-quatro-main-menu ul.menu ul,
 #header-navbar-wrapper #block-quatro-main-menu ul.nav ul {background:#fff; color:#222; border:1px solid #e0e2e9; border-top:3px solid #d0001c; border-radius:0 0 9px 9px; box-shadow:0 12px 26px rgba(0,0,0,.15); min-width:210px; padding:6px;}
 #header-navbar-wrapper #block-quatro-main-menu ul.menu li li,
 #header-navbar-wrapper #block-quatro-main-menu ul.nav li li {background:none; padding:0;}
 #header-navbar-wrapper #block-quatro-main-menu ul.menu li li a,
 #header-navbar-wrapper #block-quatro-main-menu ul.nav li li a {color:#242b35!important; background:transparent!important; border-radius:5px; padding:10px 12px; font:600 13px/1.3 Arial,sans-serif; text-transform:none; white-space:normal;}
 #header-navbar-wrapper #block-quatro-main-menu ul.menu li li a:hover,
 #header-navbar-wrapper #block-quatro-main-menu ul.nav li li a:hover {background:#f2f3f6!important; color:#bd001a!important;}
}
@media (min-width:992px) and (max-width:1199px) {
 #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li > a,
 #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li > a {padding-left:12px;padding-right:12px;font-size:13px;}
}
@media (max-width:991px) {
 #header-navbar-wrapper .mfb-site-access {right:56px;top:8px;}
 #header-navbar-wrapper #block-quatro-main-menu ul.menu li {background: none;}
 #header-navbar-wrapper #block-quatro-main-menu ul.menu li a {padding:12px 16px; font-size:15px;}
}
@media (max-width:520px) {
 #header-navbar-wrapper .mfb-site-access {right:55px;top:8px;}
 .mfb-site-access__toggle {padding:7px 9px;font-size:0;gap:3px;}
 .mfb-site-access__toggle .mfb-site-access__icon,.mfb-site-access__toggle .mfb-site-access__caret {font-size:15px;}
 .mfb-site-access__panel {width:min(270px,calc(100vw - 24px));}
}

/* MFB-SEARCH-ICON-FIX:START */
/* The original Quatro search menu item uses an icon as its background.
   Previous compact nav CSS set background:transparent on all links and hid it. */
@media (min-width: 992px) {
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li > a.menu-path-search,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li > a.menu-path-search {
    display: block;
    position: relative;
    width: 52px;
    min-width: 52px;
    height: 52px;
    padding: 0;
    box-sizing: border-box;
    float: none;
    text-indent: -9999px;
    white-space: nowrap;
    overflow: hidden;
    background-color: #20222c;
    background-image: url(../images/search_icon_16.png) !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 17px 17px;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li > a.menu-path-search:hover,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li > a.menu-path-search:hover {
    background-color: #383b46;
    border-bottom-color: #e40022;
  }
}
/* MFB-SEARCH-ICON-FIX:END */

/* MFB-COMPACT-HEADER-V2:START */
/* Desktop only: reduce the actual branding row AND navigation row.
   Preserve dropdown menu layout, site-access popover and search icon. */
@media (min-width: 992px) {
  #header-navbar-wrapper .navbar-header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  #header-navbar-wrapper .site-branding,
  #header-navbar-wrapper .branding-data {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }
  #header-navbar-wrapper .site-branding img,
  #header-navbar-wrapper a.logo img,
  #header-navbar-wrapper .block-system-branding-block img,
  #header-navbar-wrapper #block-quatro-branding img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-height: 61px !important;
    max-width: 100% !important;
    object-fit: contain;
  }
  #header-navbar-wrapper #block-quatro-main-menu > ul.menu,
  #header-navbar-wrapper #block-quatro-main-menu > ul.nav {
    min-height: 40px !important;
  }
  #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li > a,
  #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li > a {
    height: 40px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 13px !important;
    padding-right: 13px !important;
    font-size: 13px;
  }
  #header-navbar-wrapper #block-quatro-main-menu > ul.menu > li > a.menu-path-search,
  #header-navbar-wrapper #block-quatro-main-menu > ul.nav > li > a.menu-path-search {
    width: 42px !important;
    min-width: 42px !important;
    height: 40px !important;
    padding: 0 !important;
    background-image: url(../images/search_icon_16.png) !important;
    background-size: 16px 16px !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
  #header-navbar-wrapper .mfb-site-access {
    top: 7px;
    right: 16px;
  }
  #header-navbar-wrapper .mfb-site-access__toggle {
    min-height: 29px;
    padding: 5px 9px;
    font-size: 12px;
  }
}
/* MFB-COMPACT-HEADER-V2:END */

/* MFB-RF-SEARCH-V2-CSS:START */
#header-navbar-wrapper a.mfb-site-access {
  text-decoration: none !important;
  color: #fff !important;
  background: #bc0019 !important;
  border: 1px solid #e62842 !important;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 11px;
  font: 700 12px/1.3 Arial,sans-serif;
  min-height: 29px;
  box-shadow: 0 2px 9px rgba(160,0,20,.18);
  white-space: nowrap;
}
#header-navbar-wrapper a.mfb-site-access:hover { background: #e10020 !important; }
#header-navbar-wrapper a.mfb-site-access:focus-visible { outline: 2px solid #ff6075; outline-offset: 2px; }
#header-navbar-wrapper #block-quatro-main-menu .mfb-search-popup .mfb-search-popup__error {
  display:block;
  font: 12px/1.5 Arial,sans-serif;
  color: #b20016;
  padding: 9px 0 0;
  margin: 0;
}
#header-navbar-wrapper #block-quatro-main-menu .mfb-search-popup .mfb-search-popup__error[hidden] {display:none !important;}
#header-navbar-wrapper #block-quatro-main-menu .mfb-search-popup .mfb-search-popup__error a { color: #b20016; text-decoration: underline; }
@media(max-width:520px) {
  #header-navbar-wrapper a.mfb-site-access { padding: 6px 8px; font-size: 11px; }
}
/* MFB-RF-SEARCH-V2-CSS:END */


/* MFB-SEARCH-V3-CSS:START */
/* Search floats above Quatro rather than inheriting menu-item/dropdown styles. */
body > #mfb-search-popup {
  position: fixed !important;
  z-index: 20000 !important;
  display: block;
  box-sizing: border-box;
  width: min(350px, calc(100vw - 24px));
  min-width: 0;
  max-width: calc(100vw - 24px);
  height: auto;
  padding: 15px;
  margin: 0;
  background: #fff !important;
  color: #263142 !important;
  border: 1px solid #e0e4eb !important;
  border-top: 3px solid #c4001b !important;
  border-radius: 10px;
  box-shadow: 0 16px 38px rgba(16, 23, 38, .25);
  text-align: left;
  white-space: normal;
  font: 400 13px/1.4 Arial, sans-serif;
}
body > #mfb-search-popup[hidden] { display: none !important; }
body > #mfb-search-popup .mfb-search-popup__form {
  display: block !important; position: static; float: none;
  width: 100%; max-width: 100%; padding: 0; margin: 0;
  background: transparent; border: 0; box-shadow: none;
}
body > #mfb-search-popup .mfb-search-popup__label {
  display: block; margin: 0 0 10px; padding: 0;
  color: #243045 !important;
  font: 700 13px/1.4 Arial, sans-serif;
}
body > #mfb-search-popup .mfb-search-popup__fields {
  display: flex !important; flex-direction: row; align-items: stretch;
  gap: 8px; width: 100%; min-width: 0;
}
body > #mfb-search-popup .mfb-search-popup__fields input {
  box-sizing: border-box; flex: 1 1 auto; min-width: 0; width: 1px;
  height: 40px; min-height: 40px; padding: 0 11px; margin: 0;
  background: #f9fafc !important; color: #253045 !important;
  border: 1px solid #cdd3df !important; border-radius: 7px !important;
  box-shadow: none !important;
  font: 400 13px/1.25 Arial, sans-serif !important;
}
body > #mfb-search-popup .mfb-search-popup__fields input:focus {
  outline: 2px solid rgba(190,0,23,.18); border-color: #bf0019 !important;
}
body > #mfb-search-popup .mfb-search-popup__fields button {
  box-sizing: border-box; display: inline-flex !important; flex: 0 0 auto;
  align-items: center; justify-content: center;
  width: auto; height: 40px; min-height: 40px;
  margin: 0; padding: 0 15px; float: none;
  background: #bc0019 !important; color: #fff !important;
  border: 0 !important; border-radius: 7px !important;
  box-shadow: none !important; cursor: pointer;
  text-transform: none; text-indent: 0;
  font: 700 13px/1 Arial, sans-serif !important;
}
body > #mfb-search-popup .mfb-search-popup__fields button:hover { background: #e00020 !important; }
body > #mfb-search-popup .mfb-search-popup__fields button:disabled { opacity: .65; cursor: wait; }
body > #mfb-search-popup .mfb-search-popup__error {
  display: block; margin: 10px 0 0; padding: 0;
  color: #a50018 !important; font: 12px/1.5 Arial, sans-serif;
}
body > #mfb-search-popup .mfb-search-popup__error[hidden] { display: none !important; }
body > #mfb-search-popup .mfb-search-popup__error a { color: #aa0018 !important; text-decoration: underline; }
/* MFB-SEARCH-V3-CSS:END */

/* MFB-DROPDOWN-V1:START */
/* Quatro Main Navigation: compact desktop flyouts, including level-two menus. */
@media (min-width: 992px) {
  #header-navbar-wrapper #block-quatro-main-menu ul.menu > li,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav > li { position: relative; }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu > li > ul,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav > li > ul {
    position: absolute; top: 100%; left: 0; right: auto;
    z-index: 10010; width: max-content; min-width: 228px; max-width: min(590px, calc(100vw - 30px));
    margin: 0; padding: 9px; box-sizing: border-box;
    background: #fff; color: #1e293b; border: 1px solid #e2e6ed;
    border-top: 3px solid #cd1025; border-radius: 0 0 11px 11px;
    box-shadow: 0 16px 36px rgba(13,19,36,.21);
    text-align: left;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu > li > ul.mfb-submenu-columns,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav > li > ul.mfb-submenu-columns {
    display: none; width: 275px; max-width: min(275px, calc(100vw - 30px));
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu > li:hover > ul.mfb-submenu-columns,
  #header-navbar-wrapper #block-quatro-main-menu ul.menu > li:focus-within > ul.mfb-submenu-columns,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav > li:hover > ul.mfb-submenu-columns,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav > li:focus-within > ul.mfb-submenu-columns,
  #header-navbar-wrapper #block-quatro-main-menu ul.menu > li.show > ul.mfb-submenu-columns,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav > li.show > ul.mfb-submenu-columns {
    display: block;
  }
  /* Do not let global Quatro menu hover styling recolor descendants. */
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li {
    display: block; float: none; width: auto; min-width: 0;
    margin: 0; padding: 0; border: 0; background: transparent !important;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a {
    display: block; width: 100%; min-width: 0; height: auto;
    margin: 0; padding: 10px 12px; box-sizing: border-box;
    font: 600 13px/1.35 Arial, Helvetica, sans-serif;
    letter-spacing: 0; text-transform: none; text-indent: 0;
    white-space: normal; overflow-wrap: anywhere;
    color: #252d3b !important; background: transparent !important;
    border: none; border-radius: 6px; box-shadow: none;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a:hover,
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a:focus-visible,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a:hover,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a:focus-visible {
    background: #f2f4f7 !important; color: #b90019 !important;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a.is-active,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a.is-active {
    background: #fff1f3 !important; color: #bd001b !important;
  }
  /* Deeper flyouts remain single column, positioned beside their parent. */
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > ul,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > ul {
    position: absolute; top: 0; left: 100%; right: auto;
    width: max-content; min-width: 210px; max-width: min(280px, calc(100vw - 35px));
    padding: 7px; margin: 0; background: #fff;
    border: 1px solid #e2e6ed; border-top: 3px solid #cd1025;
    border-radius: 8px; box-shadow: 0 16px 32px rgba(13,19,36,.19);
  }
  #header-navbar-wrapper #block-quatro-main-menu .mfb-submenu-toggle { display: none !important; }
}
/* Mobile: respect Bootstrap's navbar collapse; each submenu can be opened separately. */
@media (max-width: 991px) {
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li {position:relative;}
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li > ul,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li > ul {
    display:none !important; position:static !important; float:none !important;
    width:100% !important; min-width:0 !important; max-width:none !important;
    background:#f7f8fa !important; color:#222b39 !important;
    padding:4px 5px 6px 13px !important; margin:0 !important;
    border:0 !important; border-left:3px solid #c6001d !important;
    border-radius:0 !important; box-shadow:none !important;
    transform:none !important;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li.mfb-submenu-open > ul,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li.mfb-submenu-open > ul {display:block !important;}
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a {
    display:block; padding:11px 13px; margin:0;
    font:600 14px/1.35 Arial,sans-serif; text-transform:none;
    white-space:normal; color:#222b39 !important;
    background:transparent !important; border:0; border-radius:6px;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a:hover,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a:hover {background:#e9ecf1 !important;color:#bb0019 !important;}
  #header-navbar-wrapper #block-quatro-main-menu .mfb-submenu-toggle {
    position:absolute; right:4px; top:3px; z-index:5;
    display:grid; place-items:center; width:38px; height:38px;
    margin:0; padding:0; border:1px solid rgba(130,137,150,.3);
    border-radius:7px; background:rgba(255,255,255,.1); color:#fff;
    cursor:pointer; font:700 18px/1 Arial,sans-serif;
  }
  #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > .mfb-submenu-toggle,
  #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > .mfb-submenu-toggle {
    color:#263143; background:#fff;
  }
  #header-navbar-wrapper #block-quatro-main-menu .mfb-submenu-toggle[aria-expanded="true"] {color:#c4001c;}
  #header-navbar-wrapper #block-quatro-main-menu li:has(> .mfb-submenu-toggle) > a {padding-right:49px !important;}
}
@media (prefers-reduced-motion: no-preference) {
  @media (min-width: 992px) {
    #header-navbar-wrapper #block-quatro-main-menu ul.menu li li > a,
    #header-navbar-wrapper #block-quatro-main-menu ul.nav li li > a {transition:color .16s ease, background .16s ease;}
  }
}
/* MFB-DROPDOWN-V1:END */
