@charset "UTF-8";
@font-face {
  font-family: Gibson-Regular;
  src: url("fonts/Gibson-Regular.otf") format("opentype");
  /*	src: url('fonts/fs/gibson-semibold-webfont.eot?#iefix') format('embedded-opentype'), */ }

@font-face {
  font-family: Gibson-Light;
  src: url("fonts/Gibson-Light.otf") format("opentype"); }

@font-face {
  font-family: Gibson-Semibold;
  src: url("fonts/Gibson-Semibold.otf") format("opentype");
  /*	src: url('fonts/fs/gibson-semibold-webfont.eot?#iefix') format('embedded-opentype'), */ }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

/*
.bordered {
	border: 24px solid #f0f;
}
*/
.purple-large {
  font-family: Gibson-Light, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px;
  color: #8b1998;
  font-size: 1.6666666667rem; }

.bordered {
  border-top: 18px solid #f0f;
  border-bottom: 18px solid #f0f; }
  .bordered .rpage {
    border-left: 18px solid #f0f;
    border-right: 18px solid #f0f; }
  .bordered.border-purple {
    border-color: #8b1998; }
    .bordered.border-purple .rpage {
      border-color: #8b1998; }
  .bordered.border-orange {
    border-color: #ec755d; }
    .bordered.border-orange .rpage {
      border-color: #ec755d; }
  .bordered.border-green {
    border-color: #7ce6b0; }
    .bordered.border-green .rpage {
      border-color: #7ce6b0; }
  .bordered.border-dark-blue {
    border-color: #2b93c9; }
    .bordered.border-dark-blue .rpage {
      border-color: #2b93c9; }
  .bordered.border-light-blue {
    border-color: #d3f4f3; }
    .bordered.border-light-blue .rpage {
      border-color: #d3f4f3; }

.pagetype-showcase .bordered {
  border-color: #c9c9c9; }
  .pagetype-showcase .bordered .rpage {
    border-color: #c9c9c9; }

.pagetype-showcase .showcase-main-container .main-content img {
  max-width: 100%;
  height: auto; }

.bordered .render-parallax {
  border: 0px solid #f0f;
  padding: 0px; }

.purple {
  color: #8b1998; }

#renered-pages .rpage:first-child {
  padding-top: 50px; }

.quarter-block {
  width: 25%;
  float: left; }

.clear-div {
  height: 0px;
  clear: both;
  overflow: hidden; }

.image-block img {
  width: 100%;
  height: auto; }

.image-block.half-widht {
  float: left;
  width: 50%; }

a.button {
  border: 1px solid #000;
  font-size: 0.8333333333rem;
  text-decoration: none;
  padding: 5px 10px;
  text-transform: uppercase; }

a.button-box {
  display: inline-block;
  border: 1px solid #8b1998;
  font-size: 0.8333333333rem;
  text-decoration: none;
  padding: 0.5em 2em;
  text-transform: uppercase;
  color: #fff;
  background: #8b1998; }
  a.button-box .larger {
    font-size: 1.5em; }
  a.button-box:hover {
    color: #8b1998;
    background: #fff;
    text-decoration: none !important; }

.career-box {
  color: #fff; }

.purple a.button {
  border: 1px solid #8b1998; }

.link-box {
  background: #8b1998;
  color: #fff;
  padding: 7px 30px 5px 30px;
  border: 1px solid #8b1998;
  font-weight: bold;
  text-decoration: none; }

.no-touch .link-box:hover {
  background: #fff;
  color: #8b1998;
  text-decoration: none; }

#scroll-down {
  position: absolute;
  bottom: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  cursor: pointer; }

.root-page-main-container .main-logo {
  width: 30%;
  height: auto;
  max-width: 258px; }

.root-page-main-container .link-box {
  background: none;
  border: 1px solid #fff; }

.root-page-main-container img {
  height: 200px;
  width: auto; }

.root-page-main-container ul {
  margin: 40px 0px;
  padding: 0px;
  text-align: center;
  list-style: none; }
  .root-page-main-container ul li {
    margin: 0px;
    padding: 0px;
    display: inline-block; }

.no-touch .root-page-main-container .link-box:hover {
  background: #fff;
  color: #8b1998; }

.image-link-box {
  width: 50%;
  float: left;
  background-size: cover;
  background-position: center center;
  color: #fff; }
  .image-link-box .content {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .image-link-box h2.title {
    margin-top: 0px;
    padding-top: 0px;
    color: #fff; }
  .image-link-box .logo {
    width: 80px;
    height: auto;
    margin-bottom: 10px; }
  .image-link-box .info {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    display: none;
    color: #fff; }
  .image-link-box .link {
    font-size: 0.8333333333rem;
    color: #fff;
    border: 1px solid #fff;
    padding: 5px 10px;
    display: none; }
    .image-link-box .link:hover {
      text-decoration: none; }

.no-touch .image-link-box:hover {
  background: #8b1998 !important; }
  .no-touch .image-link-box:hover .info {
    display: block; }
  .no-touch .image-link-box:hover .link {
    display: inline-block; }
  .no-touch .image-link-box:hover .logo {
    display: none; }

.service-box {
  display: inline-block;
  font-family: Gibson-Semibold, sans-serif;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px;
  font-size: 0.8333333333rem;
  vertical-align: top;
  text-decoration: none;
  width: calc(90%/5);
  height: 225px;
  /*
	@media screen and (max-width: 550px) { 
		width: calc(98%/3);
	}
	*/ }
  .service-box .image {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    height: 80px;
    background-repeat: no-repeat;
    background-size: auto 120%;
    background-position: center center;
    margin-bottom: 20px; }
  .service-box .title {
    text-align: center; }
  @media screen and (max-width: 700px) {
    .service-box {
      width: calc(90%/4); } }
  @media screen and (max-width: 450px) {
    .service-box {
      width: calc(90%/3); } }
  @media screen and (max-width: 300px) {
    .service-box {
      width: calc(90%/2); } }

.no-touch .service-box:hover {
  text-decoration: none; }
  .no-touch .service-box:hover .image {
    background-size: auto 130%; }

#showcase-categories {
  list-style: none;
  padding: 0px;
  margin: 0px;
  text-align: left;
  margin: 20px 0px; }
  #showcase-categories li {
    display: inline-block;
    padding: 0px;
    margin: 0px;
    color: #8b1998;
    text-transform: uppercase;
    font-size: 0.8333333333rem;
    white-space: nowrap; }
    #showcase-categories li a {
      padding: 4px 10px 2px 10px;
      text-decoration: none; }
    #showcase-categories li a.selected {
      color: #fff;
      background: #8b1998; }

.video-block {
  position: relative;
  width: 100%;
  height: 0px;
  padding-bottom: calc(100% * 0.5652173913);
  background-size: cover;
  background-position: center center; }
  .video-block .content {
    text-align: center;
    position: absolute;
    left: 0px;
    top: 50%;
    width: 100%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .video-block .content a.fancybox-media {
    opacity: 0.8;
    display: inline-block;
    width: 40%; }
    .video-block .content a.fancybox-media img {
      max-width: 440px;
      width: 100%;
      height: auto; }
  .video-block .content a.fancybox-media:hover {
    opacity: 1; }

.slick-slider {
  position: relative;
  padding: 0px 45px; }
  .slick-slider *:focus {
    outline: none; }
  .slick-slider .slick-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    border: 0px;
    color: transparent;
    background: #fff;
    background-repeat: no-repeat;
    background-position: center center;
    height: 33px;
    width: 24px;
    z-index: 100;
    overflow: hidden; }
  .slick-slider .slick-prev {
    left: 10px;
    background-image: url("../img/slick-prev.png"); }
  .slick-slider .slick-next {
    right: 10px;
    background-image: url("../img/slick-next.png"); }
  .slick-slider .slick-dots {
    padding: 0px;
    margin: 0px;
    margin-top: 10px; }
    .slick-slider .slick-dots li {
      position: relative;
      display: inline-block;
      width: 16px;
      height: 0px;
      padding: 0px;
      margin: 0px;
      cursor: pointer; }
      .slick-slider .slick-dots li button {
        font-size: 0;
        line-height: 0;
        display: block;
        width: 16px;
        height: 20px;
        padding: 0px;
        cursor: pointer;
        color: transparent;
        border: 0;
        outline: none;
        background: transparent; }
        .slick-slider .slick-dots li button::before {
          font-family: slick;
          font-size: 1.6666666667rem;
          height: 20px;
          position: absolute;
          top: 0px;
          left: 0px;
          content: "•";
          text-align: center;
          color: #eeeeee;
          -webkit-font-smoothing: antialiased; }
      .slick-slider .slick-dots li.slick-active button::before {
        color: #8b1998; }
  .slick-slider .slick-slide img {
    width: 100%;
    height: auto; }

.rpage {
  clear: both;
  overflow: hidden;
  padding: 25px 0px; }

.pagetype-right_sidebar .page-container,
.render-right_sidebar .page-container {
  overflow: hidden;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto; }
  .pagetype-right_sidebar .page-container .container,
  .render-right_sidebar .page-container .container {
    width: 66%;
    float: left; }
  .pagetype-right_sidebar .page-container .sidebar,
  .render-right_sidebar .page-container .sidebar {
    width: 33%;
    float: right; }

html, body {
  color: #373737;
  font-family: Gibson-Light, sans-serif;
  font-size: 18px;
  letter-spacing: 0.0416666667rem;
  line-height: 1.2;
  margin: 0px;
  padding: 0px; }
  @media screen and (max-height: 700px) {
    html, body {
      /*
		#scroll-down {
			display: none;
			
		}
		*/ }
      html .services-box, body .services-box {
        max-width: 300px !important; }
      html #frontpage #flatlight-logo img, body #frontpage #flatlight-logo img {
        max-height: 150px !important; } }
  @media screen and (max-height: 450px) {
    html #frontpage #flatlight-logo img, body #frontpage #flatlight-logo img {
      max-height: 100px !important; } }

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #565656;
  margin: 1em 0;
  padding: 0; }

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

a {
  color: #8b1998;
  text-decoration: underline; }

a:hover {
  text-decoration: underline; }

a[href^=tel] {
  color: #373737; }

h1, h2, h3, h4, h5 {
  font-family: Gibson-Semibold, sans-serif;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px; }

h1 {
  font-size: 2.4583333333rem;
  letter-spacing: 0.0416666667rem;
  margin-top: 0.8333333333rem;
  margin-bottom: 1.6666666667rem; }

h2 {
  font-size: 1.5rem; }

h3 {
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0416666667rem; }

fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

textarea {
  resize: vertical; }

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

#flatlogo {
  position: fixed;
  left: 36px;
  top: 30px;
  z-index: 900;
  height: 40px;
  cursor: pointer; }
  #flatlogo img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: auto;
    height: 100%; }
  #flatlogo #flatlogo-white {
    z-index: 2; }
  #flatlogo #flatlogo-purple {
    z-index: 1; }
  @media screen and (max-width: 600px) {
    #flatlogo {
      display: none; } }

#show-menu-button {
  position: fixed;
  right: 26px;
  top: 38px;
  z-index: 1000;
  width: 30px;
  height: auto;
  cursor: pointer; }
  #show-menu-button img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: auto; }
  #show-menu-button #show-menu-white {
    z-index: 2; }
  #show-menu-button #show-menu-purple {
    z-index: 1; }

.top-logo {
  position: absolute;
  top: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 80px;
  width: auto;
  z-index: 100; }

#nav-container {
  position: fixed;
  top: 0px;
  left: 0px;
  min-height: 100vh;
  width: 100%;
  z-index: 100000;
  background: #8b1998;
  color: #fff;
  text-align: center;
  padding-top: 60px;
  display: none; }
  #nav-container .logo {
    width: auto;
    height: 80px;
    cursor: pointer; }
  #nav-container #nav-close-button {
    position: absolute;
    right: 26px;
    top: 26px; }
    #nav-container #nav-close-button img {
      width: 30px;
      height: auto; }
  #nav-container ul {
    list-style: none;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-left: 0px;
    padding-right: 0px;
    margin-left: 0px;
    margin-right: 0px;
    padding-bottom: 14px;
    padding-top: 10px; }
    #nav-container ul li {
      /*			border-bottom: 1px solid $purple_light; */
      padding-left: 0px;
      padding-right: 0px;
      margin-left: 0px;
      margin-right: 0px; }
      #nav-container ul li a {
        display: block;
        color: #fff;
        text-decoration: none;
        padding-left: 0px;
        padding-right: 0px;
        margin-left: 0px;
        margin-right: 0px; }
      #nav-container ul li:hover {
        background: #fff; }
        #nav-container ul li:hover a {
          color: #8b1998; }
    #nav-container ul li:first-child {
      /*	border-top: 1px solid $purple_light; */ }

#frontpage {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
  color: #fff;
  z-index: 4; }
  #frontpage #flatlight-logo {
    padding-bottom: 20px; }
    #frontpage #flatlight-logo img {
      max-height: 200px;
      width: auto; }
  #frontpage h1 {
    letter-spacing: 0.1666666667rem;
    font-size: 1.4166666667rem;
    font-family: Gibson-Semibold;
    margin-bottom: 20px;
    margin-top: 1.0416666667rem; }
  #frontpage a {
    color: #fff; }
  #frontpage a.button {
    font-size: 0.8333333333rem;
    border: 1px solid #fff;
    text-decoration: none;
    padding: 5px 10px;
    margin: 0px 15px;
    letter-spacing: 0.0833333333rem; }
  #frontpage a.button:hover {
    background: #8b1998;
    border: 1px solid #8b1998; }

.subpages-rendered {
  clear: both;
  overflow: hidden;
  padding: 60px 0px; }

.render-subpage {
  position: relative;
  width: calc(100%/3);
  padding-bottom: calc(100% / 3 * 0.5652173913);
  float: left; }

.short-subpage {
  position: absolute;
  top: 0%;
  left: 0px;
  height: 100%;
  width: 100%;
  color: #fff;
  background: #ccc;
  /*
	width: calc(100%/3);
	height: 0px;
	padding-bottom: calc(100%/3);
	float: left;
	*/
  text-align: center;
  background-size: cover;
  background-position: center center; }
  .short-subpage h2 {
    text-transform: uppercase; }
  .short-subpage .read-more {
    border: 1px solid #fff;
    color: #fff;
    padding: 5px 10px;
    display: none; }
    .short-subpage .read-more:hover {
      text-decoration: none; }
  .short-subpage:hover {
    background: #8b1998 !important; }
    .short-subpage:hover .read-more {
      display: inline-block; }
    .short-subpage:hover .short-info {
      display: none; }

.pagetype-subpage {
  padding-top: 100px; }
  .pagetype-subpage .page-container {
    text-align: left; }
    .pagetype-subpage .page-container .back-container {
      text-align: center; }
  .pagetype-subpage .container {
    padding-left: 2%;
    padding-right: 2%;
    max-width: 800px; }
  .pagetype-subpage .back-container {
    padding: 50px 0px; }
    .pagetype-subpage .back-container .back-link {
      border: 1px solid #000;
      padding: 5px 10px;
      font-size: 0.8333333333rem; }
      .pagetype-subpage .back-container .back-link:hover {
        text-decoration: none; }

.short-showcase {
  width: 33%;
  float: left; }
  @media only screen and (max-width: 1200px) {
    .short-showcase {
      width: 50%; } }
  @media only screen and (max-width: 750px) {
    .short-showcase {
      width: 100%; } }
  .short-showcase .short-showcase-image {
    overflow: hidden;
    position: relative;
    background: #ccc;
    background-position: center center;
    background-size: cover;
    text-align: center;
    color: #fff; }
    .short-showcase .short-showcase-image video {
      display: none;
      position: absolute;
      top: 0px;
      left: 0px;
      width: 100%;
      height: auto; }
    .short-showcase .short-showcase-image .showcase-mask {
      position: absolute;
      top: 0px;
      left: 0px;
      width: 100%;
      height: 100%;
      background: rgba(139, 25, 152, 0.5);
      z-index: 2; }
    .short-showcase .short-showcase-image h2 {
      position: relative;
      z-index: 3;
      margin: 0px;
      padding: 0px;
      line-height: 1;
      text-transform: uppercase;
      position: absolute;
      top: 50%;
      left: 0px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 100%;
      text-align: center; }
    .short-showcase .short-showcase-image .read-more {
      position: relative;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      color: #fff;
      display: none; }
      .short-showcase .short-showcase-image .read-more:hover {
        text-decoration: none; }
  .short-showcase .short-info {
    font-size: 0.8333333333rem;
    text-align: left;
    border: 1px solid #fff;
    height: 100px;
    padding-right: 50px; }
    @media only screen and (max-width: 750px) {
      .short-showcase .short-info {
        height: auto; } }
  .short-showcase a {
    text-decoration: none; }
    .short-showcase a:hover {
      text-decoration: underline; }
  .short-showcase .shorcase-links {
    font-size: 0.5833333333rem;
    text-align: left;
    border: 1px solid #fff;
    height: 50px; }
    .short-showcase .shorcase-links a {
      margin-right: 20px;
      color: #000;
      text-decoration: none;
      line-height: 1;
      padding: 2px 0px 2px 22px;
      background-repeat: no-repeat;
      background-size: auto 100%;
      background-position: center left; }
      .short-showcase .shorcase-links a:hover {
        text-decoration: underline; }
    .short-showcase .shorcase-links .visit-link {
      background-image: url("../img/visit-site-icon.png"); }
    .short-showcase .shorcase-links .case-study-link {
      background-image: url("../img/view-case-study-icon.png"); }
    .short-showcase .shorcase-links .view-link {
      background-image: url("../img/view-icon.png"); }

.no-touch .short-showcase .short-showcase-image:hover .read-more {
  display: inline-block; }

.no-touch .short-showcase .short-showcase-image:hover h2 {
  display: none; }

.no-touch .short-showcase .short-showcase-image:hover .showcase-mask {
  display: none; }

.clients-logos {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 24px; }
  .clients-logos .client-logo {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: calc(100%/6);
    display: inline-block;
    padding-bottom: 48px; }
    .clients-logos .client-logo .client-logo-image {
      width: 100%;
      height: auto; }
    @media screen and (max-width: 1100px) {
      .clients-logos .client-logo {
        width: calc(100%/5); } }
    @media screen and (max-width: 900px) {
      .clients-logos .client-logo {
        width: calc(100%/4); } }
    @media screen and (max-width: 700px) {
      .clients-logos .client-logo {
        width: calc(100%/3); } }
    @media screen and (max-width: 500px) {
      .clients-logos .client-logo {
        width: calc(100%/2); } }
    @media screen and (max-width: 300px) {
      .clients-logos .client-logo {
        width: calc(100%/1); } }

.featured-slide {
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  position: relative; }
  .featured-slide .featured-mask {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgba(139, 25, 152, 0.5);
    z-index: 0;
    opacity: 0;
    -webkit-transition: opacity 250ms;
    transition: opacity 250ms; }
  .featured-slide h2 {
    font-size: 2.0833333333rem;
    color: #fff;
    position: absolute;
    top: 50%;
    text-align: center;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    width: 100%;
    left: 0px; }
    @media screen and (max-width: 800px) {
      .featured-slide h2 {
        font-size: 1.6666666667rem; } }
    @media screen and (max-width: 500px) {
      .featured-slide h2 {
        font-size: 1.25rem; } }
  .featured-slide h4 {
    text-transform: uppercase;
    color: #fff;
    position: absolute;
    top: 30%;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    text-align: center;
    width: 100%;
    left: 0px; }
    @media screen and (max-width: 800px) {
      .featured-slide h4 {
        font-size: 1.0416666667rem; } }
    @media screen and (max-width: 500px) {
      .featured-slide h4 {
        font-size: 0.8333333333rem; } }

@media screen and (max-width: 800px) {
  .slick-slide {
    min-height: 300px !important; }
  .fetured-page-list {
    margin-left: -6px; } }

.slick-dots {
  text-align: center !important; }

.touch .featured-content {
  font-size: 0px; }
  .touch .featured-content .link a {
    background: transparent;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 10; }

.touch .featured-mask {
  display: none; }

.no-touch .featured-content {
  position: relative;
  z-index: 2;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #fff;
  display: none; }
  .no-touch .featured-content .link {
    color: #fff; }
    .no-touch .featured-content .link a {
      text-decoration: none;
      border: 1px solid #fff;
      color: #fff;
      padding: 5px 15px; }
      .no-touch .featured-content .link a:hover {
        color: #8b1998;
        background: #fff; }

.no-touch .featured-slide:hover .featured-mask {
  display: block; }

.no-touch .featured-slide:hover h2 {
  display: none; }

.no-touch .featured-slide:hover .featured-content {
  display: block;
  text-align: center; }

.no-touch .featured-slide:hover .featured-mask {
  -webkit-transition: opacity 250ms;
  transition: opacity 250ms;
  opacity: 1; }

footer {
  background: #8b1998;
  color: #fff;
  font-size: 0.8333333333rem;
  padding-top: 100px;
  padding-bottom: 150px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 2%;
  padding-right: 2%;
  line-height: 1.4; }
  footer h2 {
    font-size: 1.25rem; }
  footer h3 {
    font-size: 1rem;
    margin-bottom: 0px;
    padding-bottom: 0px;
    font-family: Gibson-Regular, sans-serif;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px; }
  footer h4 {
    font-size: 0.8333333333rem;
    font-family: Gibson-Regular, sans-serif;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px; }
  footer .container {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto; }
  footer .copyright {
    text-align: center; }
  footer .social-media p {
    margin-top: -8px;
    margin-left: -8px; }
  footer .social-media img {
    height: 28px;
    width: auto;
    margin: 8px; }
  footer .footer-logo {
    width: 120px;
    height: auto; }
  @media only screen and (max-width: 800px) {
    footer {
      text-align: center; }
      footer .container {
        text-align: left;
        text-align: center;
        display: inline-block;
        width: auto; }
      footer .quarter-block {
        width: 50%; }
        footer .quarter-block h4 {
          margin: 40px 0px 3px 0px; }
        footer .quarter-block h3 {
          margin: 0px; } }
  @media only screen and (max-width: 500px) {
    footer .quarter-block {
      width: 100%;
      /*
			margin: 0px auto;
			float: none;
			text-align: left;
			border: 1px solid #f0f;
			*/ }
      footer .quarter-block p {
        margin-top: 5px; } }

.background-video-container {
  overflow: hidden;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0; }
  .background-video-container video {
    position: relative; }

.full-height-page-container {
  background-size: cover;
  background-position: center center;
  position: relative;
  overflow: hidden;
  color: #fff;
  font-size: 1.25rem; }
  .full-height-page-container .button-link {
    font-size: 1.1111111111rem;
    border: 1px solid #fff;
    color: #fff;
    padding: 5px 10px; }
  .full-height-page-container .arrow-link {
    font-size: 1.1111111111rem;
    color: #fff;
    padding: 0px;
    padding-right: 30px;
    background: url("../img/link-arrow.png") no-repeat center right;
    background-size: auto 90%; }
  .full-height-page-container .main-content {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.page-container {
  text-align: center;
  overflow: hidden; }
  .page-container img {
    max-width: 100%;
    height: auto; }

.parallax-window {
  min-height: 200px;
  background: transparent; }

html.touch .parallax-window {
  display: none; }

.render-page {
  padding: 50px 0px; }

.fancybox-wrap .fancybox-title {
  font-size: 0.75rem !important;
  padding: 10px 0px 6px 0px;
  font-family: Gibson-Regular, sans-serif !important;
  line-height: 1.3em; }

.container {
  max-width: 90%;
  margin-left: auto;
  margin-right: auto; }

.render-page_narrow .container {
  padding-left: 2%;
  padding-right: 2%;
  max-width: 800px; }

body.iframe-mode .container {
  max-width: 100%; }

.contact {
  border: 10px solid #fff;
  width: 33%;
  float: left;
  text-align: left;
  padding-bottom: 50px;
  font-size: 0.8333333333rem;
  line-height: 1.4; }
  @media only screen and (max-width: 950px) {
    .contact {
      width: 50%; } }
  @media only screen and (max-width: 600px) {
    .contact {
      width: 100%; } }
  .contact img {
    width: 100%;
    height: auto; }
  .contact .name {
    font-size: 1rem;
    letter-spacing: 0.0833333333rem;
    margin-top: 8px;
    text-transform: uppercase;
    font-family: Gibson-Semibold, sans-serif;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px; }

#showcase {
  font-size: 1rem;
  letter-spacing: 0.0416666667rem; }
  #showcase h2 {
    font-size: 1.1666666667rem;
    letter-spacing: 0.0416666667rem; }

.showcases {
  overflow: hidden;
  margin-bottom: 50px;
  margin-top: 40px; }

.showcase-item {
  background-size: cover;
  background-position: 50% 50%;
  overflow: hidden;
  width: 33.3333333333%;
  display: block;
  position: relative;
  float: left; }
  .showcase-item .showcase-title {
    text-transform: uppercase;
    font-family: Gibson-Semibold, sans-serif;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px;
    color: #fff;
    font-size: 1rem;
    position: absolute;
    top: 50%;
    left: 0px;
    right: 0px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 1;
    opacity: 1;
    -webkit-transition: opacity 350ms;
    transition: opacity 350ms; }
  .showcase-item .showcase-hover {
    position: absolute;
    z-index: 2;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: opacity 350ms;
    transition: opacity 350ms;
    background: rgba(139, 25, 152, 0.3); }
    .showcase-item .showcase-hover img {
      position: relative;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
  .showcase-item .showcase-video {
    display: none;
    width: 100%;
    height: 100%; }
  .showcase-item.block {
    margin-left: 15%;
    margin-right: 15%;
    width: 70%; }

.showcase-item:hover .showcase-title {
  opacity: 0; }

.showcase-item:hover .showcase-hover {
  opacity: 1; }

#equipment {
  border-bottom: 1px solid #e0e0e0; }
  #equipment h1 {
    font-size: 1.1666666667rem;
    letter-spacing: 0.0416666667rem; }

.equipment {
  width: 50%;
  float: left;
  margin-bottom: 24px; }
  .equipment img {
    width: 100%; }
  .equipment .title {
    font-family: Gibson-Semibold, sans-serif;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px;
    font-size: 1rem;
    margin-top: 24px;
    margin-bottom: 0px;
    text-transform: uppercase;
    letter-spacing: 0.0833333333rem; }
  .equipment .info {
    font-family: Gibson-Light, sans-serif;
    font-size: 0.8333333333rem;
    letter-spacing: 0.0416666667rem; }
  .equipment .image {
    display: block; }
  .equipment .hover-image {
    display: none; }
  .equipment .image-container:hover .image {
    display: none; }
  .equipment .image-container:hover .hover-image {
    display: block; }

#crew {
  border-bottom: 1px solid #e0e0e0; }
  #crew h1 {
    font-size: 1.1666666667rem;
    letter-spacing: 0.0416666667rem; }

#contact img {
  max-width: 120px;
  height: auto; }

table {
  margin: 0px auto; }
  table td {
    padding: 0px 24px; }

#video-test-image {
  position: fixed;
  height: 200px;
  width: auto;
  top: 5px;
  left: 5px;
  z-index: 99; }

.kovaSlider {
  position: relative;
  overflow: hidden; }
  .kovaSlider .kovaSlider__arrows__prev,
  .kovaSlider .kovaSlider__arrows__next {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    cursor: pointer; }
  .kovaSlider .kovaSlider__arrows__prev {
    left: 5px;
    z-index: 1000; }
  .kovaSlider .kovaSlider__arrows__next {
    right: 5px;
    z-index: 1000; }

@media screen and (max-width: 800px) {
  .page-container {
    text-align: left; }
    .page-container h1 {
      text-align: center; }
    .page-container h2 {
      text-align: center; }
    .page-container h3 {
      text-align: center; }
    .page-container .purple-large {
      text-align: center; }
  .rpage,
  .bordered {
    border: 0px solid #fff !important; }
    .rpage .rpage,
    .bordered .rpage {
      padding-left: 10px;
      padding-right: 10px; }
  .container {
    width: 100%;
    max-width: none; }
  .slick-next.slick-arrow,
  .slick-prev.slick-arrow {
    display: none !important; }
  .fetured-page-list.slick-slider {
    padding: 0px; }
  #home-pages-recent-work-news {
    width: 100%;
    padding-left: 0px;
    padding-right: 0px;
    border: 0px solid #f0f !important; }
    #home-pages-recent-work-news .container {
      width: 100%; }
  #home-pages-servives {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    #home-pages-servives .page-container {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      text-align: center !important; }
    #home-pages-servives .full-block {
      text-align: left; } }

.formblock .fields label .field {
  display: block; }

body.pagetype-party {
  background: #000 url(../img/party-bg.png);
  background-size: cover;
  background-position: center center;
  line-height: 1.5;
  color: #fff;
  font-size: 0.9166666667rem; }
  body.pagetype-party .background-video-container {
    position: fixed; }
  body.pagetype-party input:focus,
  body.pagetype-party select:focus,
  body.pagetype-party textarea:focus,
  body.pagetype-party button:focus {
    outline: none; }
  body.pagetype-party .party-container {
    position: relative;
    z-index: 2;
    text-align: center;
    width: 90%;
    margin-left: auto;
    margin-right: auto; }
  body.pagetype-party h1 {
    font-family: Gibson-Regular, sans-serif;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-shadow: rgba(255, 255, 255, 0.01) 0 -1px 1px;
    font-size: 2em; }
  body.pagetype-party .full-block p {
    letter-spacing: 1.5px; }
  body.pagetype-party #party-text {
    text-align: center;
    padding-top: 4em;
    padding-bottom: 4em; }
    body.pagetype-party #party-text img {
      width: 100%;
      max-width: 11em;
      height: auto; }
  body.pagetype-party .party-logo {
    position: absolute;
    right: 4em;
    top: 4em;
    width: 7em;
    height: auto; }
    @media screen and (max-width: 850px) {
      body.pagetype-party .party-logo {
        margin-left: auto;
        margin-right: auto;
        margin-top: 1em;
        position: relative;
        right: auto;
        top: auto;
        margin-bottom: 5em; } }
  body.pagetype-party .formblock {
    max-width: 20em;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4em; }
    body.pagetype-party .formblock label {
      display: none; }
    body.pagetype-party .formblock .field {
      margin-bottom: 1em; }
      body.pagetype-party .formblock .field input {
        padding: 0.5em 1em;
        width: 100%; }
    body.pagetype-party .formblock .submit {
      font-size: 0.9em;
      margin-top: 2em;
      margin-bottom: 5em;
      background: #000;
      color: #fff;
      border: 1px solid #000;
      padding: 0.75em 1em;
      width: 100%;
      opacity: 0.6;
      color: #aaa;
      letter-spacing: 1.5px; }
      body.pagetype-party .formblock .submit.active {
        opacity: 1;
        color: #fff; }
        body.pagetype-party .formblock .submit.active:hover {
          color: #fff;
          background: #8b1998;
          border: 1px solid #8b1998; }
  body.pagetype-party ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    font-size: 0.8em; }
  body.pagetype-party ::-moz-placeholder {
    /* Firefox 19+ */
    font-size: 0.8em; }
  body.pagetype-party :-ms-input-placeholder {
    /* IE 10+ */
    font-size: 0.8em; }
  body.pagetype-party :-moz-placeholder {
    /* Firefox 18- */
    font-size: 0.8em; }

/* ==========================================================================
   Helper classes
   ========================================================================== */
.hidden {
  display: none !important;
  visibility: hidden; }

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.invisible {
  visibility: hidden; }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

/* ==========================================================================
   Print styles
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }
