html {
  background: #101010;
  color: #fefefe;
  font-family: 'Archivo', sans-serif;
  color: #fefefe;
  letter-spacing: 1px;
  word-spacing: 2px; }

header {
  display: flex;
  align-items: center; }

h1.header-title {
  font-size: 1.4rem;
  margin-left: 50px;
  font-family: 'Archivo Black', sans-serif; }

a {
  color: #7bc6ff;
  text-decoration: none; }

p {
  font-size: 1.1em;
  line-height: 1.6em; }

nav {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-right: -15px; }
  nav a {
    padding: 15px;
    text-decoration: none;
    color: #b2b2b2;
    transition: color .2s ease; }
    nav a.active {
      color: #fefefe; }
    nav a:hover {
      color: #fefefe; }

img {
  max-width: 100%; }

footer {
  text-align: center;
  color: #aaa;
  margin: 23px 0; }

* {
  margin: 0;
  padding: 0; }

html {
  background: rgba(36, 38, 41, 0.975); }

.wrap {
  text-align: center;
  padding: 0 50px; }

header {
  max-width: 100%;
  margin-bottom: 2rem;
  background: rgba(24, 25, 27, 0.975);
  padding-right: 5em; }

header h1 a {
  text-decoration: none;
  color: #fefefe; }

.text-width {
  max-width: 1000px;
  margin: 0 auto; }

.gallery {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  .gallery li {
    padding: 0;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    flex: 1 0 300px;
    margin: 10px;
    box-sizing: border-box;
    max-width: 450px; }
    .gallery li:before {
      content: '';
      padding-top: 100%;
      display: block;
      float: left; }
    .gallery li.spacer {
      height: 0;
      margin-top: 0;
      margin-bottom: 0; }
      .gallery li.spacer:before {
        padding: 0; }
    .gallery li a {
      display: block;
      width: 100%;
      height: 100%;
      transition: background .2s ease; }
      .gallery li a:hover {
        background: rgba(255, 255, 255, 0.3); }

.caption {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, #000 100%);
  color: #fff;
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  padding: 10px 0;
  margin: 0;
  z-index: 999; }

@media only screen and (max-width: 734px) {
  .gallery {
    justify-content: center; }

  h1.header-title {
    font-size: 1rem; }

  nav a {
    font-size: .9rem; } }
@media only screen and (max-width: 494px) {
  header {
    padding-top: 1rem;
    flex-direction: column;
    padding-right: 0; }
    header h1.header-title {
      margin-left: 0; } }
.overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: -1px;
  left: 0;
  z-index: 999;
  display: none;
  background: rgba(0, 0, 0, 0.9); }
  .overlay .close {
    position: absolute;
    top: 30px;
    right: 30px;
    font-size: 1.5em; }
  .overlay .close, .overlay .next, .overlay .prev {
    color: #fff;
    text-decoration: none;
    text-shadow: 0px 1px 1px #000;
    z-index: 9999; }
  .overlay .prev, .overlay .next {
    position: absolute;
    top: 50%;
    font-size: 3.5em;
    text-align: center;
    display: none; }
  .overlay .prev {
    left: 30px; }
  .overlay .next {
    right: 30px; }
  .overlay img {
    margin: 0 auto;
    display: block;
    max-height: 100%; }

.cache {
  display: none; }

body.overlay-active {
  overflow: hidden; }
  body.overlay-active .overlay {
    display: flex;
    align-items: center; }

.split-content {
  display: flex;
  flex-wrap: wrap; }
  .split-content .side-content {
    flex: 1 0 310px;
    order: 2;
    display: flex;
    justify-content: center;
    max-width: 500px;
    text-align: left; }
    .split-content .side-content p:first-child {
      margin-top: 0; }
  .split-content .side-photo {
    margin: 0 20px 0 0; }
    .split-content .side-photo img {
      display: block;
      margin: 0 auto;
      height: auto; }

.socials {
  width: 100%;
  padding: 1rem 1rem 0;
  margin-bottom: 3rem; }

ul.socials_links {
  margin-top: 2rem;
  list-style-type: none;
  display: flex;
  justify-content: flex-start;
  padding-left: 0; }
  ul.socials_links a {
    color: #fff; }
  ul.socials_links li a {
    width: 3rem;
    height: 3rem;
    display: block;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    margin-right: 1rem; }
    ul.socials_links li a:hover {
      text-decoration: none; }
    ul.socials_links li a .fab {
      position: relative;
      transition: .5s;
      font-size: 1.3rem; }
    ul.socials_links li a:hover .fab {
      transform: rotateY(360deg); }
  ul.socials_links li:nth-child(1) a:hover {
    background: #6e5494; }
  ul.socials_links li:nth-child(2) a:hover {
    background: #3b5999; }
  ul.socials_links li:nth-child(3) a:hover {
    background: #45668e; }
  ul.socials_links li a:hover .fa-facebook-square {
    color: #fff; }
  ul.socials_links li:nth-child(4) a:hover {
    background: #f09433;
    background: -moz-linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    background: -webkit-linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f09433', endColorstr='#bc1888',GradientType=1 ); }

@media only screen and (max-width: 864px) {
  .split-content {
    justify-content: center; }
    .split-content .side-photo {
      margin-bottom: 1.5rem; }
    .split-content .side-content {
      text-align: center; }
      .split-content .side-content ul.socials_links {
        justify-content: space-around; } }
@media only screen and (max-width: 784px) {
  .editable {
    max-width: 80%;
    margin-bottom: 2rem; }
    .editable ul.socials_links a {
      width: 2rem;
      height: 2rem; }
    .editable ul.socials_links .fab {
      font-size: 1rem; }

  .split-content .side-photo {
    margin: 0 0 2rem; }
    .split-content .side-photo img {
      min-width: 260px; } }
form {
  margin: 2rem auto 0;
  max-width: 600px; }

input, textarea {
  background: #34363b;
  border: 0;
  outline: 0;
  font-family: 'Source Sans Pro', sans-serif;
  color: #fff; }
  input:focus, textarea:focus {
    outline: none;
    box-shadow: 0 0 2px #fff; }

input[type="submit"] {
  background: #34a58e;
  cursor: pointer;
  -webkit-appearance: none;
  border: none;
  color: #fff;
  margin-top: 25px;
  padding: 0.8rem 2rem;
  font-size: .8em;
  text-transform: uppercase;
  letter-spacing: 1px; }
  input[type="submit"]:hover {
    background: #7bc6ff; }

input[type="text"], input[type="email"], textarea {
  display: block;
  border-radius: 3px;
  width: 100%;
  font-size: 1em;
  padding: 10px 15px;
  box-sizing: border-box;
  resize: none;
  margin-bottom: 2em; }
  input[type="text"]:focus, input[type="email"]:focus, textarea:focus {
    box-shadow: inset 0 0 0 2px #34a58e; }

.split {
  display: flex;
  flex: 1;
  justify-content: space-between; }

input[type="text"], input[type="email"] {
  width: 48%; }

textarea {
  height: 150px; }

.contain {
  border: 0;
  background: 0;
  padding: 0;
  margin: 0; }
  @media (min-width: 450px) {
    .contain {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; } }

p.editable {
  margin-top: 8rem; }

@media only screen and (max-width: 500px) {
  p.editable {
    margin: 0;
    max-width: 100%;
    text-align: center; }

  .split {
    display: block; }

  input[type="text"], input[type="email"] {
    width: 100%; }

  input[type="submit"] {
    margin-bottom: 1rem; } }
.editor-link {
  display: none;
  margin-top: 0;
  border: 0;
  border-radius: 2px;
  box-sizing: border-box;
  text-decoration: none;
  margin: 0;
  cursor: pointer;
  background-color: #f7e064;
  color: #333;
  box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.2); }
  .editor-link:hover {
    background-color: #f4d525;
    color: #333; }

.cms-editor-active .editor-link {
  display: block; }
