:target::before {
  content: "";
  display: block;
  /* Logo height? */
  height: 3em;
  margin: -3em 0 0;
}

.logo {
  width: 6em;
}

.container,
.stage .ce-bodytext {
  width: 100%;
  max-width: 1600px;
  max-width: calc(1600px + 10vw);
}

@media (min-width: 992px) {
  .container,
  .stage .ce-bodytext {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}

.spacer {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}

/* boxes */
.stage {
  position: relative;
  min-height: 50px;
}

.stage img {
  max-width: none;
  width: 100%;
}

.stage .ce-bodytext {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1em;
  width: 100%;
  margin: 0 auto;
}

.footer {

}
.navbar-brand .logo {
  height: 40px;
}


@media (min-width: 576px) {}


@media (max-width: 767px) {
  figcaption {
    padding-left: 15px;
    padding-right: 15px;
  }
}


@media (min-width: 768px) {}


@media (min-width: 992px) {
  *:target::before {
    height: 5em;
    margin-top: -5em;
  }
  .navbar-brand .logo {
    height: 60px;
    max-width: none;
  }
  .fixed-top-collapsed .navbar-brand .logo {
    height: 60px;
  }
  .stage {
    min-height: 113px;
  }
}


@media (min-width: 1200px) {
  .navbar-brand .logo {
    height: 120px;
    max-width: none;
  }
  .fixed-top-collapsed .navbar-brand .logo {
    height: 80px;
  }
  .stage {
    min-height: 143px;
  }
}


@media (min-height: 500px) {
  .spacer {
    padding-top: 3em;
    padding-bottom: 3em;
  }
}


@media (min-height: 720px) and (min-width: 720px) {
  .spacer {
    padding-top: 4.5em;
    padding-bottom: 4.5em;
  }
}

.spacer.nospacing {
  padding-top: 0;
  padding-bottom: 0;
}
.spacer.notopspacing {
  padding-top: 0;
}
.spacer.nobottomspacing {
  padding-bottom: 0;
}