.search-toogle-wrapper,
.header-bottom,
.region-highlighted,
.region-header-left,
.region-header-right {
  padding-right: 1rem;
  padding-left: 1rem;
}

.region-header-left {
  align-items: flex-start;
}

@media (max-width: 1599.98px) {
  .region-header-right {
    padding-left: 0;
  }
}

.logo img {
  width: 190px;
}
@media (min-width: 1200px) and (max-width: 1599.98px) {
  .logo img {
    width: 170px;
  }
}

@media (min-width: 576px) {
  .search-toogle-wrapper {
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #002ac2;
  }
}

.header-columns {
  height: 10rem;
  border-bottom: 3px solid transparent;
}

.header-bottom {
  display: flex;
  justify-content: end;
}

.header-banner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: -1;
  width: 100%;
  max-width: 1920px;
  height: 560px;
}
.header-banner::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
}
.header-banner::after {
  background: #000;
  background: rgba(0, 0, 0, 0.3);
}
.header-banner img {
  object-fit: cover;
  transition: opacity 0.5s ease-in-out;
  height: 100%;
  width: 100%;
}

.path-frontpage .header-banner img {
  opacity: 0;
}

.block-system-breadcrumb-block {
  margin-top: 2rem;
}

.has-banner:not(.stuck) {
  --menu-main-color: #fff;
  --menu-main-bg-color: #fff;
  --menu-main-hover-color: #fff;
  --menu-main-hover-bg-color: transparent;
  --menu-main-active-color: #5d86de;
  --menu-main-active-bg-color: transparent;
  --menu-main-font-size: 1.125rem;
}
.has-banner:not(.stuck) .search-toogle-wrapper {
  border-top-color: #fff;
}
.has-banner:not(.stuck) #nav-menu-top a {
  color: #fff;
  margin-left: 0.5rem;
}
.has-banner:not(.stuck) .btn-login,
.has-banner:not(.stuck) .btn-search {
  --base-btn-color: #fff;
  --base-btn-border-color: #fff;
  --base-btn-hover-color: #002ac2;
  --base-btn-hover-bg: #fff;
  --base-btn-hover-border-color: #fff;
}

.has-banner {
  --menu-main-active-color: #3066d9;
}
.has-banner h1 {
  color: #fff;
  text-align: center;
}
.has-banner .header-subtitle {
  text-align: center;
}
.has-banner.content-highlighted {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 22rem;
  margin-bottom: 3rem;
}
.has-banner.content-highlighted .region-highlighted {
  display: flex;
  flex-direction: column;
  justify-content: flex-center;
  max-width: 80rem;
  width: 100%;
}

.path-frontpage .content-highlighted {
  flex-direction: row;
  justify-content: end;
}
.path-frontpage .content-highlighted .region-highlighted {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  max-width: 100rem;
  width: 100%;
}
.path-frontpage h1 {
  max-width: 48rem;
  font-weight: normal;
  text-align: left;
  text-wrap: balance;
}
.path-frontpage .header-subtitle {
  text-align: left;
}

.stuck.content-highlighted,
.has-no-banner.content-highlighted {
  border-bottom: 1px solid #002ac2;
  margin-bottom: 3rem;
}
@media (max-width: 575.98px) {
  .stuck.content-highlighted,
  .has-no-banner.content-highlighted {
    margin-top: 1rem;
  }
}
.stuck .search-toogle-wrapper .btn,
.stuck .header-right .btn,
.has-no-banner .search-toogle-wrapper .btn,
.has-no-banner .header-right .btn {
  --base-btn-color: #002ac2;
  --base-btn-border-color: #002ac2;
}
.stuck .search-toogle-wrapper::before,
.stuck .header-right::before,
.has-no-banner .search-toogle-wrapper::before,
.has-no-banner .header-right::before {
  background-color: transparent;
}

.header-wrapper::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  left: 0;
  right: 0;
  height: 10rem;
  background-color: var(--menu-main-bg-color);
}
.header-wrapper.stuck {
  position: fixed;
  width: 100%;
  z-index: 498;
}
.header-wrapper.stuck::before {
  background-color: #fff;
  height: 5rem;
}
.header-wrapper.stuck .header-columns {
  border-bottom-color: #002ac2;
  height: 5rem;
}
.header-wrapper.stuck .btn-main-menu {
  --base-btn-color: #fff;
  --base-btn-border-color: #fff;
  --base-btn-hover-color: #002ac2;
  --base-btn-hover-bg: #fff;
  --base-btn-hover-border-color: #fff;
}
.header-wrapper.stuck #nav-menu-top a {
  color: #002ac2;
}
.header-wrapper.stuck .search-toogle-wrapper {
  border-top-color: transparent;
  width: auto;
}
.header-wrapper.stuck .search-toogle-wrapper .btn-search {
  background-color: #fff;
}
.header-wrapper.stuck .search-toogle-wrapper .btn-search:hover {
  color: #002ac2;
}

@media screen and (max-width: 576px) {
  .header-middle {
    display: flex;
    justify-content: end;
    padding-right: 1rem;
  }
}

@media (max-width: 1398.98px) {
  .region-header-middle {
    display: none !important;
  }
}

@media (min-width: 1399px) {
  .region-nav-main-mobile,
  #menu-overlay {
    display: none !important;
  }
}
@media (min-width: 1399px) {
  #nav-main:not([id$=block-base-main-navigation-mobile]).navbar-nav > li > a {
    font-weight: normal !important;
  }
}
@media (min-width: 1399px) and (max-width: 1799.98px) {
  #nav-main:not([id$=block-base-main-navigation-mobile]).navbar-nav > li > a {
    --menu-main-font-size: 1rem;
    padding: 0.5rem 1rem !important;
  }
}
@media (min-width: 1800px) {
  #nav-main:not([id$=block-base-main-navigation-mobile]).navbar-nav > li > a {
    padding: 0.5rem 1.75rem !important;
  }
}

.search-toogle-wrapper {
  display: flex;
  justify-content: flex-end;
}
@media (min-width: 576px) {
  .search-toogle-wrapper {
    position: relative;
    right: 0;
  }
  .search-toogle-wrapper .btn {
    position: relative;
    top: -1px;
  }
}

@media (max-width: 575.98px) {
  .search-toogle-wrapper .btn,
  .region-header-right .btn {
    --base-btn-color: #fff;
    --base-btn-border-color: #fff;
    --base-btn-hover-color: #002ac2;
    --base-btn-hover-bg: #fff;
    --base-btn-hover-border-color: #fff;
  }
}

@media (max-width: 575.98px) {
  .header-right::before {
    content: "";
    position: absolute;
    z-index: 0;
    width: 100vw;
    left: 0;
    right: 0;
    margin-left: 0;
    margin-right: 0;
    height: 3.5rem;
    margin-top: -0.5rem;
  }
  .header-right .region-header-right {
    flex-direction: row-reverse;
    justify-content: space-between;
    padding-left: 1rem;
  }
}

#nav-menu-top {
  list-style-type: none;
  margin-bottom: 0;
  position: relative;
}

.breadcrumb {
  position: static;
}

.dropdown > .dropdown-menu {
  --base-dropdown-border-radius: 0;
}
.dropdown > .dropdown-menu a {
  font-weight: normal;
}

@media (min-width: 1400px) {
  .btn-main-menu {
    display: none !important;
  }
}
