@import url(https://fonts.googleapis.com/css?family=Playfair+Display);
@import url(https://fonts.googleapis.com/css?family=Quattrocento);
@import url(https://fonts.googleapis.com/css?family=Special+Elite);
/* Variables */
:root {
  --outline-left: 27px;
  --outline-top: 48px;
  --outline-width: calc(15.5vmax - 2px);
  --h1-font-size: 1.45vmax;
  --outline-height: calc(var(--h1-font-size) + (var(--h1-font-size) * 1.34) + 5px + 3px + 4px);
  --hsl-green: hsl(132, 86%, 69%);
  --hsl-blue: hsl(232, 100%, 67%);
  --hsl-red: hsl(360, 67%, 76%);;
}

/** General **/
html {
  width: 100%;
  margin: 0 0; }

body {
  font-family: "Quattrocento", serif;
  margin: 0 auto 1em auto;
  background-color: #aaa;
  overflow: hidden; 
  font-size: 1vmax;  
}

h1 {
  font-family: "Special Elite", serif;
  display: inline-block;
  text-align: center;
  font-size: var(--h1-font-size);
  color: #226666;
  padding: 6px 5px 2px;
  background-color: #fff;
  transition: color 500ms ease; 
  line-height: 1;
}

h1:hover {
  color: var(--hsl-blue);
  text-decoration: underline wavy var(--hsl-red); }

li.name {
  text-align: center;
  transition: background-color 600ms ease;
  background-color: #888; }

li.name:hover {
  background-color: var(--hsl-blue);
  color: #009900; }

h2,  h3 {
  font-family: "Special Elite", serif;
  display: inline-block;
  transition: background-color 600ms ease;
  color: #669999;
  font-size: 1.1vmax;
  padding: 4px 5px 2px;
  margin: 5px 0px;
  border: 1px dotted #fff;
  border-radius: 2px; }

h2:hover {
  color: var(--hsl-blue);
  background-color: #ccc; }

h3 {
  border: none;
}

li.development {
  text-align: right; }

.nav {
  position: relative;
  top: 40px;
  left: 20px;
  margin-bottom: 40px;
  width: 100%; }

.nav ul {
  list-style-type: none;
  margin: 2px;
  padding: 5px;
  background-color: #ffffff;
  width: 15.5vmax;
  opacity: 0.9;
  filter: alpha(opacity=90);
  /* For IE8 and earlier */ }

.nav li {
  padding: 3px 0px; }

a {
  text-decoration: none; }

.dev-link {
  color: #006699;
  transition: background-color 600ms ease, color 200ms ease; 
  padding: 0px 5px;
}

.dev-link:hover {
  color: var(--hsl-green);
  text-decoration: underline var(--hsl-green);
  background-color: #aaa; }

#creative-list, #dev-list {
  display: none; }

.social a:link {
  color: #006699; }

.social a:visited {
  color: #006699; }

.social li {
  text-align: center;
  letter-spacing: 0em;
  line-height: 1.2em;
  margin: 7px auto; }

.social li a {
  transition: background-color 600ms ease, color 200ms ease, border 600ms ease;
  padding: 5px 5px;
  border: 1px dotted white; }

.social li a:hover {
  color: var(--hsl-green);
  background-color: #aaa;
  border: 1px solid var(--hsl-green); }


.outline {
  position: absolute;
  z-index: 1;
  border: 1px white dashed;
  background: rgba(0, 0, 0, 0);
}

.outline-v {
  top: -1;
  left: 27px;
  width: var(--outline-width);
  height: 100vh;
}

.outline-name {
  left: -1;
  width: 100vw;
  top: 47px;
  height: var(--outline-height);
}

.flex-container {
  position: absolute;
  z-index: 1;
  float: left;
  display: block;
}

.iframe-container, .projects-container {
  position: absolute;
  float: right;
  display: block;
  width: calc(100vw - var(--outline-width) + var(--outline-left));
  height: calc(100vh - var(--outline-height) + var(--outline-top));
  padding-top: calc(var(--outline-height) + var(--outline-top));
  padding-left: calc(var(--outline-width) + var(--outline-left));
}

.iframe-container {
  z-index: 0;
  background: #000;
  transition-duration: 0s;
}


.projects-container {
  z-index: 0;
  background: #aaa;
  overflow: scroll;
}

iframe {
  width: 100%;
  height: 100%;
  border: 0px;
  overflow: hidden;
}

.creative-close {
  font-family: Arial;
  color: #a8a8a8;
  font-size: 20px;
  padding: 2px 6px 2px 6px;
  text-decoration: none;
  z-index: 2;
  border: solid #291400 1px;
  background: none;
  position: absolute;
  top: 0;
  right: 0;
  margin: 20px;
  display: none;
  cursor: pointer;
}

.creative-mobile-message {
  position: absolute;
  bottom: 0;
  width: 100%;
  text-transform: full-width;
  display: none;
}

.creative-mobile-message p {
  width: 90%;
  color: rgba(255, 250, 0, 0.5);
  font-size: 2.5vmax;
  text-align: center;
  border: 1px dotted rgba(255, 250, 0, 0.5);
  border-radius: 1px;
  margin: 0.5em auto;
  box-sizing: border-box;
}


@media only screen and (max-device-width : 1024px) {
  body {
    font-size: 2.3vmax;
  }

  h1 {
    font-size: 2.9vmax;
  }

  h2 {
    font-size: 2.63vmax;
  }

  h3 {
    font-size: 2.4vmax;
  }

  .nav ul {
    width: 30vmax;
  }

  .flex-container {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
  }

  .nav {
    top: 0;
    left: 0;
    margin: 0;
    margin-top: 15vmax;
    width: auto;
  }

  .social li {
    margin: 20px auto;
  }

  .outline {
    display: none;
  }

  .iframe-container, .projects-container {
    z-index: 2;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
  }

  .creative-close {
    display: block;
  }

  .creative-mobile-message {
    display: block;
  }

}
