/* Autocenter Hinkel header and footer */
body.header-fixed #body-wrapper {
  padding-top: 7.8rem;
}

#header.hinkel-header {
  position: fixed;
  top: 0;
  z-index: 10;
  height: 7.8rem;
  border: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  background: #fff;
  color: #051641;
  font-size: 1rem;
  font-weight: 400;
}

body.header-dark #header.hinkel-header,
body.header-transparent #header.hinkel-header,
body.header-dark.header-transparent #header.hinkel-header {
  background: #fff;
  color: #051641;
}

body.header-dark #header.hinkel-header a,
body.header-transparent #header.hinkel-header a {
  color: #051641 !important;
}

#header.hinkel-header a {
  color: #051641;
}

.hinkel-branding {
  position: relative;
  height: 5rem;
  background: #fff;
}

.hinkel-branding-rule {
  position: absolute;
  inset: 0;
  min-height: 5rem;
  border-bottom: 5px solid #4d9ed6;
}

.hinkel-brand-logo {
  position: relative;
  display: block;
  width: 5rem;
  height: 5rem;
  object-fit: cover;
}

.hinkel-brand-logo-mobile {
  display: none;
}

.hinkel-brand-copy {
  position: absolute;
  top: .65rem;
  left: 6rem;
  z-index: 1;
}

.hinkel-brand-copy h1,
.hinkel-brand-copy p {
  margin: 0;
  color: #051641;
  font-family: Roboto, Helvetica, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.1;
}

.hinkel-brand-copy h1 {
  font-size: 1.8rem;
}

.hinkel-brand-copy p {
  font-size: 1.17rem;
}

.hinkel-navigation {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 2.8rem;
}

.hinkel-desktop-menu > ul {
  margin: 0;
}

.hinkel-desktop-menu a {
  padding: .6rem .8rem;
  font-family: Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.2;
}

.hinkel-desktop-menu > ul > li > a::after {
  bottom: 0;
}

.hinkel-footer {
  padding: .7rem 1rem .6rem;
  background: #051641;
  color: #ccc;
  text-align: center;
}

.hinkel-footer p {
  margin: .1em 0;
  font-size: .9em;
  line-height: 1.2;
}

.hinkel-footer a {
  color: #ccc;
}

.hinkel-footer a:hover,
.hinkel-footer a:focus {
  color: #fff;
}

@media (max-width: 960px) {
  body.header-fixed #body-wrapper {
    padding-top: 5rem;
  }

  #header.hinkel-header {
    height: 5rem;
  }

  .hinkel-branding {
    height: 5rem;
  }

  .hinkel-navigation {
    display: none;
  }
}

@media (max-width: 380px) {
  .hinkel-brand-logo {
    display: none;
  }

  .hinkel-brand-logo-mobile {
    position: absolute;
    top: 5rem;
    left: .7rem;
    display: block;
    width: 4rem;
    height: 4rem;
    object-fit: cover;
    box-shadow: 0 2px 4px 2px rgba(0, 0, 0, .2);
  }

  .hinkel-brand-copy {
    left: 1rem;
  }

  .hinkel-brand-copy h1 {
    font-size: 1.45rem;
  }

  .hinkel-brand-copy p {
    font-size: .95rem;
  }
}
