/* Globals */
@import url("vars.css");
@import url("font.css");
@import url("anim.css");
@import url("util.css");

/* Pages */
@import url("home.css");
@import url("about.css");
@import url("booking.css");
@import url("gallery.css");
@import url("journal.css");
@import url("contact.css");
@import url("404.css");

body {
  margin: 0;
  color: white;
  background-image: url(../bg/lightning.png);
  background-repeat: repeat;

  font-family: 'Comic Neue', sans-serif;
  font-weight: 400;
  font-size: 1em;
  line-height: 1.5;
  /* Enable a font's kerning: http://stackoverflow.com/questions/15160897/font-feature-settings-what-is-the-correct-syntax */
  font-feature-settings: "kern";
  -moz-font-feature-settings: "kern";
  -webkit-font-feature-settings: "kern";
}

.content {
  margin-left: auto;
  margin-right: auto;
  max-width: 1024px;
}

.box {
  border: 4px ridge;
  overflow: auto;
  background-image: url(../bg/clouds.png);
  background-repeat: repeat;
}

.box--img {
  display: flex;
  justify-content: center;
  align-items: center;
}

.box--img span {
  color: transparent;
  position: absolute;
}

.box--img img {
  max-width: 100%;
}

header {
  z-index: 1;
  position: fixed;
  top: 16px;
  margin-left: 16px;

  width: 120px;
  height: calc(100vh - 72px);
  padding: 16px;

  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

header.revealed {
  display: flex;
}

header h3 {
  display: none;
}

header a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 64px;
}

header a + a {
  margin-top: 16px; 
}

main {
  padding-top: 32px;
  padding-left: 208px;
  padding-bottom: 64px;
  padding-right: 32px;
  /* prevents children margins to break out */
  overflow: auto;
  position: relative;
}

#button--menu {
  z-index: 1;
  position: absolute;
  top: 16px;
  left: 16px;
  width: calc(100vw - 40px);
  height: 64px;
  cursor: pointer;
}

@media (max-width: 512px) {
  header {
    display: none;
    width: calc(100vw - 72px);
  }

  main {
    padding-top: 108px;
    padding-left: 16px;
    padding-right: 16px;
  }
}
