h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
}

p:last-child {
  margin-bottom: 0;
}

/* New logo */
.logo {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

.logo__img {
  width: 80px;
}

.logo__text {
  display: none;
  font-size: 1.8em;
  font-weight: bold;
  margin-left: .5em;
}

@media screen and (min-width: 52.5em) {
  .logo__text {
    display: block;
  }

  /* Keep old navigation hidden in desktop widths too */
  #menu-container .grid-container #menu {
    display: none !important;
  }
}

/* New search form */
.searchForm {
  position: relative;
}

.searchForm__input {
  width: 100%;
  padding: .5em 1em .5em 2.5em;
  margin: 0;
  border-radius: 10em;
}

.searchForm__input:focus {
  border-color: #9e5fa9;
}

.searchForm__input:focus + .searchForm__icon {
  color: #9e5fa9;
}

.searchForm__icon {
  position: absolute;
  left: .75em;
  top: 50%;
  color: #7a7a7a;
  transform: translateY(-50%);
}

/* Search page */
.searchPage__form {
  max-width: 300px;
  margin-bottom: 3em;
}

/* New header */
.header {
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(0, 57, 166, 0.07);
}

.header__wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
}

.header__col--left {
  min-width: 100px;
  padding-right: 1rem;
}

.header__col--right {
  width: 100%;
  max-width: 160px;
}

/* New footer */
.footer {
  text-align: center;
}

.footer__wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.footer__col {
  width: 100%;
  padding: 2rem;
}

.footer__col:first-child {
  padding-top: 0;
}

.footer__col:last-child {
  padding-bottom: 0;
}

.footer__col--left,
.footer__col--center {
  border-bottom: solid 1px #dadada;
}

.footer__col--left {
  text-align: center;
}

@media (min-width: 600px) {
  .footer__col--left,
  .footer__col--center {
    padding-top: 0;
    width: 50%;
    border-bottom: none;
  }

  .footer__col--center {
    border-left: solid 1px #dadada;
  }

  .footer__col--right {
    padding-bottom: 0;
    border-top: solid 1px #dadada;
  }
}

@media (min-width: 52.5em) {
  .footer__col {
    padding-top: 0;
    padding-bottom: 0;
    width: 33.333333%;
  }

  .footer__col--center,
  .footer__col--right {
    border-left: solid 1px #dadada;
  }

  .footer__col--right {
    border-top: 0;
  }
}

.footer__logo {
  display: inline-block;
  width: 100%;
  height: auto;
  max-width: 150px;
  margin-bottom: 2rem;
}

.footer__summary {
  margin-top: 2em;
  font-size: 1em;
  font-style: italic;
  opacity: .75;
}

/* New mobile nav toggle */
.mobileNavToggle {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  font-size: 1.2em;
  padding: 1em;
  color: #0039a6;
  cursor: pointer;
}

@media screen and (min-width: 52.5em) {
  .mobileNavToggle {
    display: none;
  }
}

.mobileNavToggle:hover,
.mobileNavToggle:focus {
  color: #9e5fa9;
}

.mobileNavToggle__text {
  padding-left: .5em;
  font-weight: 600;
}

/* Carousel adjustments */
#theme-container {
  margin: 0;
}

#theme-container .container #theme .content {
  padding-left: 4rem;
  padding-right: 4rem;
  /* Remove old background gradient, which will be replaced below */
  background: transparent;
}

#theme-container .container #theme .content:before {
  z-index: -1;
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: -6em;
  background-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.75) 75%);
}

#theme-container .container #theme .content h2 {
  margin-bottom: .5em;
  text-shadow: 0 .05em .05em rgba(0, 0, 0, .5);
}

#theme-container .container #theme .content p {
  text-shadow: 0 .1em .1em rgba(0, 0, 0, .5);
}

#theme-container .container #theme .content h2 span {
  color: #d8a7e0;
}


/* New main navigation */
.mainNav {
  z-index: 9999;
  position: sticky;
  top: 0;
  font-size: .85em;
  background: #fff;
  border-bottom: 1px solid rgba(0, 57, 166, 0.07);
  box-shadow: 0 .3em .5em rgba(0, 0, 0, .1);
}

@media (min-width: 1200px) {
  .mainNav {
    font-size: 1em;
  }
}

.mainNav__list {
  display: none;
  flex-direction: row;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
}

@media screen and (min-width: 52.5em) {
  .mainNav__list {
    display: flex;
  }
}

.mainNav__list--dropdown {
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  display: block;
  left: 0;
  min-width: 250px;
  background: #fff;
  transition: all 200ms ease;
  transform: translateY(1rem);
  box-shadow: 0 .3em .5em rgba(0, 0, 0, .1);
}

.mainNav__item,
.mainNav__link {
  position: relative;
  display: block;
}

.mainNav__item--level-1:not(:last-child):after {
  content: " ";
  position: absolute;
  top: 30%;
  right: 0;
  background: #dfdfdf;
  width: 1px;
  height: 40%;
}

.mainNav__link {
  padding: 1em .75em;
  font-weight: 600;
}

@media (min-width: 1100px) {
  .mainNav__link {
    padding-left: 1em;
    padding-right: 1em;
  }
}

@media (min-width: 1200px) {
  .mainNav__link {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

.mainNav__item--level-1:first-child > .mainNav__link {
  padding-left: 0;
}

.mainNav__item--current > .mainNav__link,
.mainNav__item--parent > .mainNav__link,
.mainNav__link:hover,
.mainNav__link:focus {
  color: #9e5fa9;
}

.mainNav__item:hover .mainNav__list--dropdown,
.mainNav__item:focus .mainNav__list--dropdown,
.mainNav__item:focus-within .mainNav__list--dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.mainNav__item--level-1 .mainNav__link {
  text-transform: uppercase;
}

.mainNav__item--level-2 {
  border-bottom: solid 1px rgba(0, 57, 166, 0.07);
}

.mainNav__item--level-2 .mainNav__link {
  padding-top: .75em;
  padding-bottom: .75em;
  font-size: .9rem;
}

/* New mobile nav */
.mobileNav__list {
  margin: 0;
}

.mobileNav__link {
  color: inherit;
  padding: .75rem 4em .75rem 1rem;
}

.mobileNav__link:hover,
.mobileNav__link:focus {
  color: #9e5fa9;
}

.mobileNav__item--level-1 > .mobileNav__link {
  font-weight: bold;
}

.mobileNav__item--level-2 > .mobileNav__link {
  font-size: .9em;
  padding-left: 2rem;
  background: rgba(0, 0, 0, .03);
}

.mobileNav__item--current > .mobileNav__link {
  font-weight: bold;
  color: #9e5fa9;
}

.boringmenu__toggle {
  background: #0039a6;
}

.boringmenu__toggle:hover,
.boringmenu__toggle:focus {
  background: #9e5fa9;
  transition: all 200ms ease;
}

/* New footer nav */
.footerNav__list,
.footerNav__item,
.footerNav__link {
  display: block;
}

.footerNav__list {
  list-style: none;
  margin: 0;
}

.footerNav__link {
  padding: .1em 0;
  font-weight: 600;
  text-transform: uppercase;
  transition: all 200ms ease;
}

.footerNav__link:hover,
.footerNav__link:focus {
  color: #9e5fa9;
}

.date {
  font-size: .9em;
}

.date i {
  font-size: inherit;
}

.box:hover p:after {
  display: none;
}

.box .content h3 {
  text-transform: none;
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

.box .content .date {
  margin-top: 0;
}

.pageLoginForm {
  max-width: 300px;
}

.notify {
  display: block;
  margin: 1.5em 0;
  padding: 1em;
  background: #fff;
  border: solid 1px #dfdfdf;
}

/* New highlights */
.highlights-new-container {
  padding: 2rem 0;
}

@media (min-width: 1000px) {
  .highlights-new-container {
    padding: 4rem 0;
  }
}

.highlights-new {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  list-style: none;
  margin: -1rem;
}

.highlights-new__item {
  position: relative;
  width: 100%;
  padding: 1rem;
}

@media (min-width: 1000px) {
  .highlights-new__item {
    width: 33.333333%;
  }
}

.highlights-new__link {
  position: relative;
  display: block;
}

/* Highlight shadow */
.highlights-new__link:after {
  opacity: .3;
  z-index: -1;
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2rem;
  background: radial-gradient(#1779ba 0%, transparent 100%);
  transform-origin: center bottom;
  transform: translateY(30%);
  transition: all 200ms ease;
}

.highlights-new__link:hover .highlights-new__wrap,
.highlights-new__link:focus .highlights-new__wrap {
  transform: translateY(-.5rem);
}

.highlights-new__link:hover .highlights-new__wrap:before,
.highlights-new__link:focus .highlights-new__wrap:before {
  background-position: center 100%;
}

.highlights-new__link:hover:after,
.highlights-new__link:focus:after {
  opacity: .15;
}

/* Highlight card */
.highlights-new__wrap {
  position: relative;
  display: block;
  padding-top: 65%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #dadada;
  border-radius: .3em;
  border: solid 1px #fff;
  transition: all 500ms ease;
}

/* Highlight card overlay */
.highlights-new__wrap:before {
  z-index: 0;
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-size: 100% 200%;
  background-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.75) 50%, #9e5fa9 100%);
  transition: all 800ms ease;
}

.highlights-new__content {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-end;
  padding: 2rem;
}

.highlights-new__title {
  margin: 0;
  color: #fff;
  font-size: 1.4em;
  text-shadow: 0 .05em .05em rgba(0, 0, 0, .5);
}

.highlights-new__icon {
  margin-left: .3em;
}

/* Social nav */
.socialNav {
  margin: -.5em;
  font-size: 1.5em;
}

.socialNav__list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin: 0;
}

.socialNav__link {
  display: block;
  padding: .5em;
  transition: all 200ms ease;
}

.socialNav__link:hover,
.socialNav__link:focus {
  transform: scale(1.2);
  color: #9e5fa9;
}

/* Main col adjustments */
@media print, screen and (min-width: 64em) {
  .mainCol--left {
    padding-right: 2rem !important;
  }

  .mainCol--right .menu {
    padding-left: 2rem;
  }
}

/* Bartender */
[data-bartender-bar] {
  color: #0a0a0a;
  background: #fff;
}

/* Fix front-end edit buttons */
.pw-edit-buttons {
  z-index: 40;
}

.pw-edit-buttons .pw-edit-cancel {
  color: #fff;
}