* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-size: 100%;
  font-weight: inherit;
  font-style: inherit; }

a {
  text-decoration: none;
  color: inherit;
  font-weight: inherit; }

li {
  list-style: none; }

fieldset {
  border: 0; }

button {
  border: 0;
  background: transparent;
  text-align: left; }

*:focus {
  outline: none; }

button, input, textarea {
  font: inherit; }

.wrap {
  padding: 0 30px;
  margin: 0 auto; }
  @media screen and (min-width: 800px) {
    .wrap {
      padding: 0;
      width: 85%; } }

#wrapper > header {
  padding: 30px 0;
  height: 100vh;
  border: 30px solid #fff;
  background-image: url("img/header.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  display: none; }
  #wrapper > header h1, #wrapper > header h2 {
    font-family: "Playfair Display", serif;
    text-align: center; }
  #wrapper > header h1 {
    font-size: 20px;
    font-size: 2rem; }
  #wrapper > header h2 {
    font-size: 50px;
    font-size: 5rem; }

.carousel {
  overflow: hidden;
  transition: transform .5s ease-in; }
  .carousel li {
    display: block;
    width: 100%;
    background-color: blue; }
    .carousel li > img {
      display: block;
      width: 100%; }
    @media screen and (min-width: 1000px) {
      .carousel li {
        width: 50%; } }
    @media screen and (min-width: 1200px) {
      .carousel li {
        width: 33.33%; } }

.carousel-prev-button,
.carousel-next-button {
  position: absolute;
  top: 50%;
  display: block;
  width: 30px;
  height: 30px;
  background-color: red; }

.carousel-prev-button {
  left: 0; }

.carousel-next-button {
  right: 0; }

#recalc.changed {
  height: 500px; }
