/*-- fonts --*/

@font-face {
    font-family: "myriad pro regular";
    src: url("myriadpro_regular.eot");
    src: local("Ã¢Â˜Âº"),
    url("myriadpro_regular.woff") format("woff"),
    url("myriadpro_regular.otf") format("opentype"),
    url("myriadpro_regular.svg#webfont") format("svg");
}

@font-face {
    font-family: "myriad pro bold";
    src: url("myriadpro_bold.eot");
    src: local("Ã¢Â˜Âº"),
    url("myriadpro_bold.woff") format("woff"),
    url("myriadpro_bold.otf") format("opentype"),
    url("myriadpro_bold.svg#webfont") format("svg");
}

a,
a span,
.instagram div {
  -webkit-transition: all 0.6s ease;
  -moz-transition: all 0.6s ease;
  -ms-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

body {
  font-family: "myriad pro regular";

}

.grid-container_outer {
  width: 100%;
  float: left;
}

.grid-container {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;

  overflow: hidden;
}

.grey {
  background: #EEEEEE;
}

.blue {
  background: #46A5D0;
}

.light_blue {
  background: #62BAE2;
}

.blue h1, .blue .h1,
.blue h2, .blue .h2,
.blue h3, .blue .h3,
.blue h4, .blue .h4,
.blue h5, .blue .h5,
.blue h6, .blue .h6 {
  color: #ffffff;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  color: #46A5D0;
  font-size: 2em;
}

h1, .h1 {
  font-size: 2.5em;
}

h4, .h4,
h5, .h5,
h6, .h6 {
  font-size: 1.3em;
  font-family: "myriad pro regular";
  text-transform: uppercase;
}

p,
ul,
ol {
  color: #666666;
}

.banner {
  height: 600px;
  background: url(/assets/images/banner_image.jpg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;

  -webkit-mask-box-image: url(/assets/images/banner_mask.svg) 100 0;
  mask-border: url(/assets/images/banner_mask.svg) 100 0;

  position: relative;
  z-index: 1000;
}

#banner_top,
#banner_bottom {
  display: none;
  position: absolute;
  top: 0;
  left: 50%;
  -ms-transform: translate(-50%,0);
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0);

  width: 100%;
  min-width: 800px;

  z-index: 2000;

  margin-bottom: 0;
}

#banner_bottom {
  top: auto;
  bottom: 0;
}

.banner .grid-container {
  position: absolute;
  z-index: 1000;

  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

.banner img {
  width: 375px;
  margin-bottom: 2em;
}

.overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;

  background: rgba(0,0,0,0.5);
  z-index: 0;
}

.social_button {
  width: 2em;
  height: 2em;
  display: inline-block;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;

  border: 3px solid #666666;
  color: #666666;

  position: relative;

  margin-left: 1em;
  font-size: 1.2em;
}

.social_button:nth-child(1) {
  margin-left: 0;
}

.social_button:hover {
  background: #666666;
  color: #ffffff;
}

.facebook_post b i,
.social_button i {
  position: absolute;
  top: 50%;
  left: 50%;

  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

.contact_button {
  width: 100%;
  float: left;

  color: #46A5D0;
  font-family: "myriad pro bold";
}

.contact_button span {
  color: #666666;
}

.contact_button:hover span {
  color: #46A5D0;
}

.below_banner {
  margin-top: -3em;
}

.below_banner .cell {
  padding-top: 6em;
}

.cell {
  padding: 3em 0;
}

.description,
.facebook {
  position: relative;

  padding-left: 2.5em !important;
  padding-right: 2.5em !important;
}

.facebook .background_stretch {
  position: absolute;
  top: 0;
  left: 0;

  width: 3000px;
  height: 100%;
  z-index: -1000;
}

.facebook_post {
  width: 100%;
  float: left;

  color: #ffffff;

  margin-top: 1.5em;
}

.facebook_post b {
  width: 2em;
  height: 2em;
  float: left;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;

  border: 2px solid #ffffff;

  position: relative;

  font-size: 1.2em;
}

.facebook_post span {
  width: 100%;
  width: -moz-calc(100% - 3.5em);
  width: -webkit-calc(100% - 3.5em);
  width: -o-calc(100% - 3.5em);
  width: calc(100% - 3.5em);

  margin-left: 1em;

  float: left;
}

.facebook_post:hover {
  color: #ffffff;
  opacity: 0.6;
}

.button_large,
.button_small {
  width: 100%;
  float: left;

  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  border-radius: 2em;

  background: #ffffff;
  text-align: center;

  padding: 1em 1em 0.8em 1em;

  text-transform: uppercase;

  font-size: 1.2em;

  margin-top: 2em;
}

.button_small {
  background: none;
  border: 2px solid #46A5D0;
  padding: 0.6em 0.6em 0.4em 0.6em;
}

header {
  border-top: 10px solid #46A5D0;
}

header .cell {
  padding: 1em 0 0 0;
}

.instagram {
  height: 24.5vw;
  background-repeat: no-repeat !important;
  background-position: 50% 50% !important;
  -webkit-background-size: cover !important;
  -moz-background-size: cover !important;
  -o-background-size: cover !important;
  background-size: cover !important;

  position: relative;
}

.instagram div {
  position: absolute;
  top: 0;
  left: 0;

  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.8);

  opacity: 0;
}

.instagram:hover div {
  opacity: 1;
}

.instagram div span {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  padding: 3em;
}

.instagram div b {
  color: #666666;
  font-family: "myriad pro bold";
}

.insta-feed {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.insta-feed .image {
  width: calc(25% - 20px);
  height: 300px;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

footer .cell {
  position: relative;
}

footer p {
  width: 100%;
  position: absolute;
  bottom: 3em;
  left: 0;
  color: #ffffff;
}

.footer_logo {
  width: 175px;
}

.author {
  /* width: 130px; */
  display: inline-block;
  text-align: center;

  position: absolute;
  bottom: 3em;
  /* right: 0; */
  right: 25px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  color: rgba(255,255,255,0.48);
  font-size: 1em;
  text-decoration: none;
  width: 200px;
  transition: all 0.25s ease-in-out;
}

.author:hover {
  opacity: 0.5;
  color: rgba(255,255,255,0.48);
}

.author span {
  /* width: 100%; */
  float: left;

  color: rgba(255,255,255,0.48);

  text-align: center;
  font-weight: 300;
  margin-bottom: 0.4em;
  text-decoration: underline;
  margin: 0 10px 0 3px;
  transition: all 0.25s ease-in-out;
}

.author svg {
  max-width: 27px;
  max-height: 22px;
}

.author img {
  width: 100%;
  float: left;
}

@media screen and (max-width: 63.9375em) {

  .banner {
    height: 400px;
  }

  .banner img {
    max-width: 275px
  }

  header .cell {
    text-align: center;
  }

  header .cell:nth-child(2) {
    padding-bottom: 1em;
  }

  footer .cell {
    text-align: center;
  }

  footer p {
    position: relative !important;
    bottom: 0;
  }

  footer .text-center {
    padding: 0;
  }

  footer .author {
    right: 50%;
    transform: translateX(50%);
    justify-content: center;
  }

}

@media screen and (max-width: 1200px) {
  .facebook {
    width: 100% !important;
  }

  .facebook .facebook_post {
    width: 47.5%;
    padding-left: 5%;
  }

  .facebook .facebook_post:nth-child(2),
  .facebook .facebook_post:nth-child(2n+2) {
    padding-left: 0;
  }

  .instagram {
    width: 33.33% !important;
    height: 33vw;
  }

  .instagram:last-of-type {
    width: 100% !important;
  }

  .instagram:last-of-type div span {
    max-width: 400px;
  }
}

@media screen and (max-width: 900px) {
  .instagram {
    width: 50% !important;
    height: 50vw;
  }

  .instagram:last-of-type {
    width: 50% !important;
  }

  .instagram:last-of-type div span {
    max-width: none;
  }

  .insta-feed .image {
    width: calc(50% - 10px);
    height: 300px;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 650px) {
  .facebook .facebook_post {
    width: 100%;
    padding-left: 0;
  }

  .instagram {
    width: 100% !important;
    height: 100vw;
  }

  .instagram:last-of-type {
    width: 100% !important;
  }

  .instagram:last-of-type div span {
    max-width: none;
  }
}
