/* https://www.smashingmagazine.com/2022/10/fluid-typography-clamp-sass-functions/
 * Expects all incoming values to be pixels
 */
#block-custom-main-navigation {
  --main-nav-text: var(--gray-500, var(--bs-gray-600));
  --main-nav-text-hover: var(--accent-cool-deep, var(--bs-body-color));
  --main-nav-background: var(--white-a95, var(--bs-white));
  --main-nav-height: 80px;
  --main-nav-icon-hamburger: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%23000000%22%20class%3D%22bi%20bi-list%22%20viewBox%3D%220%200%2016%2016%22%3E%20%20%3Cpath%20fill-rule%3D%22evenodd%22%20d%3D%22M2.5%2012a.5.5%200%200%201%20.5-.5h10a.5.5%200%200%201%200%201H3a.5.5%200%200%201-.5-.5zm0-4a.5.5%200%200%201%20.5-.5h10a.5.5%200%200%201%200%201H3a.5.5%200%200%201-.5-.5zm0-4a.5.5%200%200%201%20.5-.5h10a.5.5%200%200%201%200%201H3a.5.5%200%200%201-.5-.5z%22%2F%3E%3C%2Fsvg%3E");
  padding: var(--bs-spacer-4) var(--bs-spacer-2);
}
#block-custom-main-navigation a:not(.btn):not(.megamenu-content *), #block-custom-main-navigation button:not(.btn):not(.megamenu-content *) {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding: var(--bs-spacer-2) var(--bs-spacer-4);
  background-color: transparent;
  font-size: 0.9375rem !important;
  font-weight: 500;
  line-height: 1;
  color: var(--main-nav-text);
  text-decoration: none;
  transition: color 0.3s ease;
  border: 0;
}
#block-custom-main-navigation a:not(.btn):not(.megamenu-content *):focus, #block-custom-main-navigation a:not(.btn):not(.megamenu-content *):active, #block-custom-main-navigation a:not(.btn):not(.megamenu-content *):hover, #block-custom-main-navigation a:not(.btn):not(.megamenu-content *):hover span, #block-custom-main-navigation button:not(.btn):not(.megamenu-content *):focus, #block-custom-main-navigation button:not(.btn):not(.megamenu-content *):active, #block-custom-main-navigation button:not(.btn):not(.megamenu-content *):hover, #block-custom-main-navigation button:not(.btn):not(.megamenu-content *):hover span {
  color: var(--main-nav-text-hover);
}
#block-custom-main-navigation .btn.btn-link {
  --bs-btn-font-size: 0.6875rem !important;
  --bs-btn-font-weight: 600 !important;
}
#block-custom-main-navigation > .mn-viewport {
  max-width: var(--bs-mw-15);
  margin-left: auto;
  margin-right: auto;
  background-color: var(--main-nav-background);
  border-radius: 100vh;
  padding: var(--bs-spacer-1) var(--bs-spacer-2);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}
#block-custom-main-navigation > .mn-viewport > .mn-logo {
  flex: 0 0 auto;
  padding-right: var(--bs-spacer-2);
}
#block-custom-main-navigation > .mn-viewport > .mn-logo a {
  width: 112px;
  padding: 0;
  display: block;
}
#block-custom-main-navigation > .mn-viewport > .mn-logo a > svg .text {
  fill: var(--main-nav-text);
}
#block-custom-main-navigation > .mn-viewport > .mn-menu {
  flex: 1 1 100%;
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul {
  list-style-type: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  margin-bottom: 0;
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item {
  flex: 0 0 auto;
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child {
  padding-inline: var(--bs-spacer-2);
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child button, #block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child a {
  padding: 0;
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child button::after, #block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child a::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  width: 0;
  height: 2px;
  background: var(--main-nav-text-hover);
  transition: width 0.3s var(--ease-expressive, ease-out);
  transform: translateX(-50%);
  margin-top: var(--bs-spacer-1);
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child button:hover::after, #block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child button:hover span::after, #block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child a:hover::after, #block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item > div:first-child a:hover span::after {
  width: 100%;
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item.menu-item--expanded > div:first-child :is(button, a) {
  color: var(--main-nav-text-hover);
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-main > ul > li.menu-item.menu-item--expanded > div:first-child :is(button, a)::after {
  width: 100%;
}
#block-custom-main-navigation > .mn-viewport > .mn-menu .mn-menu-toolbar {
  display: none;
}
#block-custom-main-navigation > .mn-viewport > .mn-controls {
  flex: 0 0 auto;
  white-space: nowrap;
  padding-left: var(--bs-spacer-4);
}
#block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger {
  padding: 0;
  height: 30px;
  width: calc(30px + var(--bs-spacer-1));
  background-image: var(--main-nav-icon-hamburger);
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: right center;
  display: none;
}
#block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger span {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
#block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger span:not(caption) {
  position: absolute !important;
}
#block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger span * {
  overflow: hidden !important;
}

.mobile-menus .mn-menu-main {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.mobile-menus .mn-menu-main:not(caption) {
  position: absolute !important;
}
.mobile-menus .mn-menu-main * {
  overflow: hidden !important;
}

.mobile-menus #block-custom-main-navigation > .mn-viewport, .mobile-menus-show #block-custom-main-navigation > .mn-viewport {
  postition: relative;
}
.mobile-menus #block-custom-main-navigation > .mn-viewport > .mn-menu, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}
.mobile-menus #block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger {
  display: inline-block;
}

.mobile-menus-show .layout-page > main,
.mobile-menus-show .layout-page > footer,
.mobile-menus-show .block-local-tasks-block,
.mobile-menus-show .status-messages {
  display: none;
}
.mobile-menus-show #block-custom-main-navigation {
  --main-nav-text: var(--bs-body-color);
  --main-nav-text-hover: var(--bs-body-color);
  --main-nav-icon-hamburger: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%2224px%22%20viewBox%3D%220%20-960%20960%20960%22%20width%3D%2224px%22%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22m256-200-56-56%20224-224-224-224%2056-56%20224%20224%20224-224%2056%2056-224%20224%20224%20224-56%2056-224-224-224%20224Z%22%2F%3E%3C%2Fsvg%3E");
  position: relative;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  border-color: #f1f5f9;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu {
  background-color: var(--color-white);
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav {
  width: 100%;
  max-width: var(--bs-mw-15);
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > div {
  padding-block: var(--bs-spacer-2) !important;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main {
  position: relative !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  overflow: visible !important;
  clip: initial !important;
  white-space: initial !important;
  border: 0 !important;
  padding-top: var(--bs-spacer-2);
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul {
  display: block;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li {
  border-top: 1px solid var(--bs-gray-250);
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child {
  padding: 0;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child button, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child a {
  text-align: left;
  width: 100%;
  padding-block: var(--bs-spacer-2);
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%2224px%22%20viewBox%3D%220%20-960%20960%20960%22%20width%3D%2224px%22%20fill%3D%22%23959595%22%3E%3Cpath%20d%3D%22M480-344%20240-584l56-56%20184%20184%20184-184%2056%2056-240%20240Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right center;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child button::after, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child a::after {
  display: none;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child button:hover, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li > div:first-child a:hover {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%2224px%22%20viewBox%3D%220%20-960%20960%20960%22%20width%3D%2224px%22%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M480-344%20240-584l56-56%20184%20184%20184-184%2056%2056-240%20240Z%22%2F%3E%3C%2Fsvg%3E");
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main > ul > li.menu-item--expanded > div:first-child :is(button, a) {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%2224px%22%20viewBox%3D%220%20-960%20960%20960%22%20width%3D%2224px%22%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M480-528%20296-344l-56-56%20240-240%20240%20240-56%2056-184-184Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right center;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main a, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main button {
  font-size: 1.25rem !important;
  font-weight: 600;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main a:focus, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main a:active, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main a:hover, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main a:hover span, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main button:focus, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main button:active, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main button:hover, .mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-menu > nav > .mn-menu-main button:hover span {
  color: var(--main-nav-text-hover);
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger {
  width: auto;
  padding-right: 35px;
  padding-left: var(--bs-spacer-1);
  background-position: right center;
}
.mobile-menus-show #block-custom-main-navigation > .mn-viewport > .mn-controls .mn-hamburger::before {
  content: "close";
  text-transform: uppercase;
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.15em;
}

/*
 * Overlay header: on pages whose content starts with an .overlay-header, the
 * main navigation leaves the flow, so the content starts directly under the
 * toolbar and the navigation sits on top of it. Blocks placed above the
 * navigation in the header (status messages, editor tabs) stay in the flow and
 * push both down. The open mobile menu keeps the navigation in the flow.
 */
body.has-overlay-header:not(.mobile-menus-show) .region-header #block-custom-main-navigation {
  position: absolute;
  inset-inline: 0;
}

/*# sourceMappingURL=block-main-navigation.css.map */
