html {
  box-sizing: border-box;
  background: #262626;
  font-family: "helvetica neue";
  font-weight: 200;
}

body {
  margin: 0;
  box-shadow: inset 0 0 5rem rgba(0, 0, 0, .5);
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

.panels {
  min-height: 100vh;
  overflow: hidden;
  display: flex;
}

.panel {
  background: beige;
  color: beige;
  text-align: center;
  align-items: center;
  transition: font-size 0.7s cubic-bezier(0.61, -0.19, 0.7, -0.11),
    flex 0.7s cubic-bezier(0.61, -0.19, 0.7, -0.11), background 0.2s;
  font-size: 20px;
  background-size: cover;
  background-position: center;
  flex: 1;
  justify-content: center;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}

.panel1 {
  background-image: url(../img/panel-1.jpg);
  border-right: 3pt solid beige;
  opacity: 65%;
}
.panel2 {
  background-image: url(../img/panel-2.jpg);
  border-right: 3pt solid beige;
  opacity: 65%;
}
.panel3 {
  background-image: url(../img/panel-3.jpg);
  border-right: 3pt solid beige;
  opacity: 65%;
}
.panel4 {
  background-image: url(../img/panel-4.jpg);
  border-right: 3pt solid beige;
  opacity: 65%;
}
.panel5 {
  background-image: url(../img/panel-5.jpg);
  opacity: 65%;
}

/* Flex Children */
.panel > * {
  margin: 0;
  width: 100%;
  transition: transform 0.5s;
  flex: 1 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.panel > *:first-child { 
  transform: translateY(-100%); 
}

.panel.open-active > *:first-child { 
  transform: translateY(0); 
}

.panel > *:last-child { 
  transform: translateY(100%); 
}

.panel.panel.open-active > *:last-child { 
  transform: translateY(0); 
}

.panel p {
  font-family: 'Averia Libre', cursive;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.72), 0 0 14px rgba(0, 0, 0, 0.45);
  font-size: 2em;
}

.panel p:nth-child(2) {
  font-size: 4em;
}

.panel.open {
  flex: 5;
  font-size: 40px;
  opacity: 100%;
}

.nav-masthead .nav-link {
  color: rgba(255, 255, 255, .5);
  border-bottom: .25rem solid transparent;
  padding: 2rem;
  padding: 4em 1em;
}

.nav-masthead .nav-link:hover,
.nav-masthead .nav-link:focus {
  border-bottom-color: rgba(255, 255, 255, .25);
}

.nav-masthead .nav-link + .nav-link {
  margin-left: 1rem;
}

.nav-masthead .active {
  color: #fff;
  border-bottom-color: #fff;
}

@media only screen and (max-width: 600px) {
  .panel p {
    font-size: 1em;
  }
} 