html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box; }

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

body {
  margin: 0;
  font: 17px/1.25 avenir, "avenir next", helvetica, arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #414042; }

::-moz-focus-inner {
  padding: 0;
  border: 0; }

:focus {
  outline: 0; }

img {
  width: 100%;
  height: auto;
  border: 0; }

@keyframes fadeIn {
  0% {
    opacity: 0;
    visibility: hidden; }
  100% {
    opacity: 1;
    visibility: visible; } }
.continuous-backg {
  background-color: #273b75;
  color: #d1d3d3; }

.continuous-backg_black {
  background: #191919 url("../imgs/backg-large.jpg") repeat-y center center;
  color: #d1d3d3; }

.wrap {
  width: 94%;
  margin: 0 auto;
  max-width: 1020px;
  padding: 1.25em 0 1.75em; }

.wrap_header {
  max-width: 1298px;
  padding: .5em 0 .4em; }

.wrap_logo {
  padding: 1.25em 0 .5em; }

.who-section {
  text-align: center; }

.what-section {
  padding: 0 0 2.5em; }

.clients-section {
  padding-bottom: 2em; }

.wrap_principals {
  border-bottom: 1px #414042 dashed; }

.services-list {
  text-align: center; }
  @media (min-width: 680px) {
    .services-list {
      display: flex;
      flex-wrap: wrap;
      align-items: stretch; } }

.services-list__item {
  display: block;
  background-color: #273b75;
  color: #d1d3d3;
  text-transform: uppercase;
  padding: 1.5em;
  margin: .75em auto; }
  @media (min-width: 680px) {
    .services-list__item {
      width: 31%;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center; } }

.brandon {
  padding-bottom: 1.3em; }
  @media (min-width: 900px) {
    .brandon {
      display: inline-block;
      width: 48%; } }

@media (min-width: 900px) {
  .karen {
    float: right;
    width: 48%; } }

footer {
  text-align: center;
  padding: 1.25em 0 1em; }

.logo {
  max-width: 850px;
  margin: 0 auto;
  animation: fadeIn 1s ease-out backwards; }

.white-logo-icon {
  width: 3em;
  max-width: 54px; }

.blue-logo-icon, .link-to-top {
  max-width: 6em;
  display: block;
  margin: 0 auto;
  clear: both; }

.link-to-top {
  margin-top: 2em; }
  @media (min-width: 900px) {
    .link-to-top {
      margin-top: 4em; } }

.nav-collapse {
  clip: rect(0 0 0 0);
  max-height: 0;
  position: absolute;
  display: block;
  overflow: hidden;
  zoom: 1; }
  @media (min-width: 680px) {
    .nav-collapse {
      float: right; } }

.nav-collapse.opened {
  max-height: 9999px; }

@media (min-width: 680px) {
  .nav-collapse.closed {
    max-height: none; } }
.nav__item {
  font-family: "festivo";
  text-transform: uppercase;
  width: 100%;
  font-size: 1.2em;
  border-top: 1px #191919 dotted;
  padding-left: .5em; }
  @media screen and (min-width: 680px) {
    .nav__item {
      width: auto;
      border-top: none;
      padding: .23em 0  0 1.15em;
      display: inline-block; } }
  @media screen and (min-width: 900px) {
    .nav__item {
      font-size: 1.5em;
      padding: 0 0 0 1.9em; } }
  @media screen and (min-width: 1200px) {
    .nav__item {
      padding-left: 4.3em; } }
  .nav__item a {
    display: block;
    padding: .6em 0;
    border-bottom: 2px solid transparent; }
    @media screen and (min-width: 680px) {
      .nav__item a {
        padding-bottom: .2em; }
        .nav__item a:hover {
          color: #fff;
          border-bottom-color: #fff; } }

.nav-toggle {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  float: right;
  position: relative;
  margin: 0;
  padding: 0;
  width: 55px;
  height: 55px;
  font-size: 0;
  text-indent: -9999px;
  transition: background 0.3s; }
  @media screen and (min-width: 680px) {
    .nav-toggle {
      display: none; } }

.nav-toggle span {
  position: absolute;
  top: 47%;
  left: 20%;
  right: 20%;
  height: 8%;
  background: #fff; }

.nav-toggle span::before,
.nav-toggle span::after {
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: ""; }

.nav-toggle span::before {
  top: -12px; }

.nav-toggle span::after {
  bottom: -12px; }

.nav-toggle span {
  transition: background 0s 0.3s; }

.nav-toggle span::before,
.nav-toggle span::after {
  transition-duration: 0.3s, 0.3s;
  transition-delay: 0.3s, 0s; }

.nav-toggle span::before {
  transition-property: top, transform; }

.nav-toggle span::after {
  transition-property: bottom, transform; }

.active span {
  background: none; }

.active span::before {
  top: 0;
  transform: rotate(45deg); }

.active span::after {
  bottom: 0;
  transform: rotate(-45deg); }

.active span::before,
.active span::after {
  transition-delay: 0s, 0.3s; }

@font-face {
  font-family: "festivo";
  src: url("../fonts/festivo_letters_no19-webfont.eot");
  src: url("../fonts/festivo_letters_no19-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/festivo_letters_no19-webfont.woff2") format("woff2"), url("../fonts/festivo_letters_no19-webfont.woff") format("woff"), url("../fonts/festivo_letters_no19-webfont.ttf") format("truetype"), url("../fonts/festivo_letters_no19-webfont.svg#festivo_letters_no19regular") format("svg");
  font-weight: normal;
  font-style: normal; }
h1, h2, h3, h4, p, blockquote, figure, ol, ul {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: normal; }

@media (min-width: 680px) {
  p {
    font-size: 1.1em;
    line-height: 1.3em; } }
@media (min-width: 900px) {
  p {
    font-size: 1.4em;
    line-height: 1.3em; } }

strong, b {
  font-weight: bold; }

em {
  font-style: italic; }

a {
  color: inherit;
  transition: .2s;
  text-decoration: none; }

.main-heading, .sub-heading {
  font-family: "festivo";
  text-transform: uppercase; }

.main-heading {
  font-size: 2em;
  margin-bottom: .4em; }
  @media (min-width: 900px) {
    .main-heading {
      font-size: 2.7em;
      margin-bottom: .4em; } }

.sub-heading {
  font-size: 1.5em;
  padding-bottom: .3em; }
  @media (min-width: 900px) {
    .sub-heading {
      font-size: 2em; } }

.tagline {
  font-family: avenir, "avenir next", helvetica, arial, sans-serif;
  font-size: 1.1em;
  line-height: 1.1em;
  color: #aa7f4a;
  text-align: center;
  padding-top: .5em;
  font-style: italic;
  animation: fadeIn 1s ease-out .3s backwards; }
  @media (min-width: 680px) {
    .tagline {
      font-size: 1.3em; } }
  @media (min-width: 900px) {
    .tagline {
      padding: .5em 0;
      font-size: 1.5em; } }

.what_sub-heading {
  padding: 1em 0 .5em; }

.who span {
  display: inline-block;
  padding-top: 1em; }

.small {
  font-size: .6em;
  margin-top: 2em;
  display: block; }

/******* Work Carousel ***/
#work-carousel .owl-stage {
  background-color: black; }

.work-carousel__item {
  overflow: hidden; }
  @media (min-width: 680px) {
    .work-carousel__item {
      box-shadow: -2px 0 5px #414042; } }

.work-carousel__img {
  opacity: 0.7;
  transition: 0.3s ease; }

.work-carousel__item:hover .work-carousel__img {
  opacity: 1;
  -ms-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.caption {
  position: absolute;
  top: 40%;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  font-family: "festivo";
  color: #fff;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.8), 0 0 5px rgba(0, 0, 0, 0.8);
  text-transform: uppercase;
  transition: 0.3s ease; }
  @media (min-width: 900px) {
    .caption {
      font-size: .75em; } }
  @media (min-width: 1200px) {
    .caption {
      font-size: 1em; } }

.caption h2 {
  font-size: 1.75em; }

.caption h2, .caption p {
  opacity: 0;
  transform: translate3d(0, 40px, 0);
  -webkit-transition: -webkit-transform .35s, opacity .35s;
  -moz-transition: -moz-transform .35s, opacity .35s;
  -o-transition: -o-transform .35s, opacity .35s;
  transition: transform .35s, opacity .35s; }

.work-carousel__item:hover .caption {
  visibility: visible;
  opacity: 1;
  background: -moz-linear-gradient(90deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.09) 80%, rgba(0, 0, 0, 0.15) 95%, rgba(0, 0, 0, 0) 100%);
  /* ff3.6+ */
  background: -webkit-linear-gradient(90deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.09) 80%, rgba(0, 0, 0, 0.15) 95%, rgba(0, 0, 0, 0) 100%);
  /* safari5.1+,chrome10+ */
  background: -ms-linear-gradient(90deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.09) 80%, rgba(0, 0, 0, 0.15) 95%, rgba(0, 0, 0, 0) 100%);
  /* ie10+ */
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.09) 80%, rgba(0, 0, 0, 0.15) 95%, rgba(0, 0, 0, 0) 100%);
  /* w3c */ }

.work-carousel__item:hover .caption h2, .work-carousel__item:hover .caption p {
  opacity: 1;
  -webkit-transform: translate3d(0, 0px, 0);
  -o-transform: translate3d(0, 0px, 0);
  -ms-transform: translate3d(0, 0px, 0);
  transform: translate3d(0, 0px, 0); }

.work-carousel__item:hover .caption p {
  -webkit-transition-delay: .05s;
  -o-transition-delay: .05s;
  transition-delay: .05s; }

#work-carousel .owl-dots {
  transform: translateY(-100%) translateY(-10px);
  position: relative;
  z-index: 1; }

.owl-theme .owl-dots .owl-dot span {
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.8), 0 0 5px #000, inset 0 0 3px 2px #000;
  background-color: transparent; }

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.8), 0 0 5px #000;
  background: rgba(255, 255, 255, 0.8); }

/******* Client Carousel ***/
#client-carousel {
  border: 1px black solid;
  max-width: 90%;
  margin: 0 auto 30px; }

#client-carousel .owl-stage-outer .owl-stage .owl-item {
  float: none;
  display: inline-block;
  vertical-align: middle; }

.client-carousel__item img {
  padding: 20px; }

.owl-prev, .owl-next {
  padding: 5px;
  color: black;
  background-color: rgba(255, 255, 255, 0.2);
  margin-top: 10px;
  float: left; }

.owl-next {
  float: right; }

.contact-form {
  overflow: auto; }

@media (min-width: 900px) {
  .form-group {
    float: left;
    margin-top: 20px;
    width: 45%; } }

.form-message {
  margin-top: 1.5em;
  width: 100%;
  max-width: 550px; }
  @media (min-width: 900px) {
    .form-message {
      margin-top: 0;
      float: right;
      width: 45%; } }

.form-group__input::-webkit-input-placeholder, .form-group__input::-moz-placeholder {
  color: #273b75; }

.form-group__input {
  color: #273b75;
  width: 100%;
  font-size: 1em;
  letter-spacing: .05em;
  border: none;
  border-bottom: 1px solid #273b75;
  max-width: 550px;
  margin-bottom: .5em;
  padding: 8px 0; }
  @media (min-width: 900px) {
    .form-group__input {
      width: 90%;
      transition: 0.3s; } }

.form-group__input:focus {
  width: 100%; }

.form-message__label {
  color: #273b75;
  padding: 8px 0;
  display: block;
  letter-spacing: .05em;
  font-size: .75em;
  text-transform: uppercase;
  font-weight: bold; }

.form-message__text-area {
  width: 100%;
  outline: 0;
  resize: none;
  height: 129px;
  color: #273b75;
  margin: 0;
  padding: 10px;
  border: none;
  border: 1px solid #273b75;
  line-height: 1.25em;
  font-size: 1em; }

.btn-submit {
  float: right;
  outline: 0;
  border: 1px #273b75 solid;
  color: #273b75;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: .92857em;
  padding-bottom: 12px;
  height: 25px;
  width: 94px;
  cursor: pointer;
  margin-top: .5em;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  transition: .3s; }

.btn-submit:hover {
  color: black; }

.form-requirements {
  clear: both;
  font-size: .6em; }

.success {
  padding: 1em;
  margin-bottom: 0.75rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  color: #468847;
  background-color: #dff0d8;
  border: 1px solid #d6e9c6;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.error {
  padding: 1em;
  margin-bottom: 0.75rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  color: #b94a48;
  background-color: #f2dede;
  border: 1px solid rgba(185, 74, 72, 0.3);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

/*# sourceMappingURL=application.css.map */
