/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0); }

#cboxWrapper {
  max-width: none; }

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%; }

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left; }

#cboxContent {
  position: relative; }

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

#cboxTitle {
  margin: 0; }

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer; }

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic; }

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0; }

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; }

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000;
  opacity: 0.9;
  filter: alpha(opacity=90); }

#colorbox {
  outline: 0; }

#cboxContent {
  margin-top: 20px;
  background: #000; }

.cboxIframe {
  background: #fff; }

#cboxError {
  padding: 50px;
  border: 1px solid #ccc; }

#cboxLoadedContent {
  border: 5px solid #000;
  background: #fff; }

#cboxTitle {
  position: absolute;
  top: -20px;
  left: 0;
  color: #ccc; }

#cboxCurrent {
  position: absolute;
  top: -20px;
  right: 0px;
  color: #ccc; }

#cboxLoadingGraphic {
  background: url(images/loading.gif) no-repeat center center; }

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none; }

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0; }

#cboxSlideshow {
  position: absolute;
  top: -20px;
  right: 90px;
  color: #fff; }

#cboxPrevious {
  position: absolute;
  top: 50%;
  left: 5px;
  margin-top: -32px;
  background: url(../img/colorbox/controls.png) no-repeat top left;
  width: 28px;
  height: 65px;
  text-indent: -9999px; }

#cboxPrevious:hover {
  background-position: bottom left; }

#cboxNext {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -32px;
  background: url(../img/colorbox/controls.png) no-repeat top right;
  width: 28px;
  height: 65px;
  text-indent: -9999px; }

#cboxNext:hover {
  background-position: bottom right; }

#cboxClose {
  position: absolute;
  top: 5px;
  right: 5px;
  display: block;
  background: url(../img/colorbox/controls.png) no-repeat top center;
  width: 38px;
  height: 19px;
  text-indent: -9999px; }

#cboxClose:hover {
  background-position: bottom center; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

@font-face {
  font-family: 'brandon_grotesque';
  src: url("../fonts/brandon_med-webfont.woff2") format("woff2"), url("../fonts/brandon_med-webfont.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'brandon_grotesque';
  src: url("../fonts/brandon_reg-webfont.woff2") format("woff2"), url("../fonts/brandon_reg-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'brandon_grotesque';
  src: url("../fonts/brandon_thin-webfont.woff2") format("woff2"), url("../fonts/brandon_thin-webfont.woff") format("woff");
  font-weight: 300;
  font-style: normal; }

.brandon {
  font-family: 'brandon_grotesque'; }

.futura {
  font-family: "futura-pt", sans-serif;
  /*
	Light	"futura-pt"	300
	Medium	"futura-pt"	500
	Demi	"futura-pt"	600
	Heavy	"futura-pt"	700
	*/ }

html, body {
  margin: 0;
  padding: 0;
  background: #fff;
  height: 100%; }

html {
  font-size: 16px;
  font-size: 62.5%;
  color: #242424;
  font-weight: 300; }

body {
  font-family: "futura-pt", sans-serif;
  background: #1d1d1b;
  font-size: 1.9rem;
  line-height: 1.89em;
  font-weight: 300; }
  @media only screen and (max-width: 1367px) {
    body {
      font-size: 1.6rem; } }
  @media only screen and (max-width: 1281px) {
    body {
      font-size: 1.4rem; } }
  @media only screen and (max-width: 769px) {
    body {
      font-size: 1.2rem; } }

h1 {
  font-family: "futura-pt", sans-serif;
  font-size: 6rem;
  font-weight: 300;
  margin: 0;
  line-height: 1;
  letter-spacing: 0.2em;
  background: url(../img/sliderHeaderBg.png) no-repeat center bottom;
  padding-bottom: 50px;
  text-transform: uppercase; }
  @media only screen and (max-width: 1367px) {
    h1 {
      font-size: 4rem; } }
  @media only screen and (max-width: 1281px) {
    h1 {
      font-size: 3rem; } }
  @media only screen and (max-width: 769px) {
    h1 {
      font-size: 1.8rem; } }
  h1 strong {
    font-weight: 700; }
  h1 span {
    font-size: 0.26em;
    display: block; }
    h1 span:after {
      margin-top: 1.9em; }

.normalSection {
  padding: 90px 0;
  font-size: 1.9rem;
  line-height: 1.9;
  position: relative; }
  @media only screen and (max-width: 1367px) {
    .normalSection {
      font-size: 1.6rem;
      padding: 75px 0; } }
  @media only screen and (max-width: 1281px) {
    .normalSection {
      font-size: 1.4rem;
      padding: 50px 0; } }
  @media only screen and (max-width: 769px) {
    .normalSection {
      font-size: 1.2rem;
      padding: 40px 0; } }
  .normalSection h2 {
    font-family: "futura-pt", sans-serif;
    color: #383737;
    letter-spacing: 0.2em;
    font-size: 2.2em;
    line-height: 1.5;
    font-weight: 700; }
    @media only screen and (max-width: 769px) {
      .normalSection h2 {
        font-size: 1.7em; } }
    .normalSection h2 span {
      display: block;
      font-size: 0.4em;
      font-weight: 500; }
      @media only screen and (max-width: 769px) {
        .normalSection h2 span {
          font-size: 0.6em; } }
    .normalSection h2::after {
      content: "";
      display: block;
      width: 25px;
      height: 2px;
      background: #ed1d25;
      margin-top: 0.4em; }
  .normalSection h2.center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .normalSection h2:first-child {
    margin-top: 0; }
  .normalSection.footerSection {
    padding-bottom: 0; }

.graySection {
  background: #efefef; }

.redSection {
  background: #ed1d25;
  color: #fff; }

.normalSection.darkSection {
  background: #1d1d1b;
  color: #fff; }
  .normalSection.darkSection h2 {
    color: #fff; }

.flexSection {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 1025px) {
    .flexSection {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.halfContainer {
  width: 50%;
  padding-left: 12%;
  padding-right: 30px; }
  @media only screen and (max-width: 1025px) {
    .halfContainer {
      width: 100%;
      padding-right: 12%; } }
  @media only screen and (max-width: 769px) {
    .halfContainer {
      padding-left: 15px;
      padding-right: 15px; } }

.container {
  padding-left: 12%;
  padding-right: 12%; }
  @media only screen and (max-width: 769px) {
    .container {
      padding-left: 15px;
      padding-right: 15px; } }

.flexContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.btnStyle {
  display: inline-block;
  padding: 2px 3.2em 2px 0;
  background: url(../img/red_arrow_right.png) no-repeat right center;
  background-size: auto 100%;
  line-height: 1;
  font-weight: 500;
  font-size: 0.68em;
  letter-spacing: 0.2em;
  color: #1d1d1b;
  text-decoration: none; }
  .btnStyle:visited, .btnStyle:active, .btnStyle:hover {
    color: #1d1d1b; }
  .btnStyle.btnBack {
    background: url(../img/red_arrow_left.png) no-repeat right center; }

div {
  box-sizing: border-box; }

img {
  max-width: 100%; }

.topBar {
  transition: 0.3s;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: 50px 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 150; }
  @media only screen and (max-width: 1025px) {
    .topBar {
      padding: 10px 20px;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  .topBar .logo {
    position: relative; }
    .topBar .logo img {
      transition: 0.3s;
      display: block;
      height: 60px; }
      @media only screen and (max-width: 1281px) {
        .topBar .logo img {
          height: 40px; } }
      @media only screen and (max-width: 769px) {
        .topBar .logo img {
          height: 35px; } }
    .topBar .logo img.colorLogo {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: auto;
      opacity: 0; }

.topBar.scrolled {
  background: #1d1d1b;
  opacity: 0.95; }
  @media only screen and (min-width: 1025px) {
    .topBar.scrolled {
      padding-top: 20px;
      padding-bottom: 20px; } }
  @media only screen and (min-width: 1025px) {
    .topBar.scrolled .logo img {
      height: 30px; } }

.topMenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  position: relative;
  z-index: 40;
  text-transform: uppercase; }
  @media only screen and (max-width: 1025px) {
    .topMenu {
      position: absolute;
      left: 100%;
      top: 0;
      width: 100%;
      height: 100vh;
      z-index: 100;
      background: #000;
      opacity: 0.9;
      display: block;
      padding-top: 10px;
      transition: 0.3s; }
      .topMenu.active {
        left: 0%; } }
  .topMenu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    padding: 0;
    font-size: 1.5rem; }
    @media only screen and (max-width: 1367px) {
      .topMenu ul {
        font-size: 1.3rem; } }
    @media only screen and (max-width: 1025px) {
      .topMenu ul {
        display: block;
        margin-left: 50px; } }
  .topMenu li {
    display: block;
    margin-left: 3em; }
    @media only screen and (max-width: 1025px) {
      .topMenu li {
        border-bottom: solid 1px #444;
        margin-left: 0; } }
    .topMenu li a {
      transition: 0.3s;
      color: #fff;
      text-decoration: none;
      font-weight: 500;
      display: block;
      padding: 0.22em 0;
      border-bottom: solid 2px transparent;
      letter-spacing: 0.2em; }
      .topMenu li a:hover {
        border-bottom-color: #ed1d25; }
      @media only screen and (max-width: 1025px) {
        .topMenu li a {
          padding: 4px 20px;
          border-bottom: none; }
          .topMenu li a:hover {
            background: #888;
            color: #000; } }
  .topMenu li.current_page_item a,
  .topMenu li.current_page_ancestor a {
    border-bottom: solid 2px #ed1d25;
    font-weight: 600; }
    @media only screen and (max-width: 1025px) {
      .topMenu li.current_page_item a,
      .topMenu li.current_page_ancestor a {
        border-bottom: none;
        background: #888;
        color: #000; } }
  .topMenu .closeMenu {
    display: none; }
    @media only screen and (max-width: 1025px) {
      .topMenu .closeMenu {
        position: absolute;
        left: 10px;
        top: 10px;
        display: block;
        width: 20px; } }

.toggleMenu {
  display: none; }
  @media only screen and (max-width: 1025px) {
    .toggleMenu {
      display: block;
      width: 40px; } }
  .toggleMenu span {
    display: block;
    height: 3px;
    margin: 5px 0;
    background: #ed1d25; }

.homeSliderOuter {
  position: relative; }

.topSlider .slide {
  background: no-repeat center;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff; }

.topSlider .slideOuter {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.topSlider .slideContent {
  text-align: center;
  max-width: 100%; }
  @media only screen and (max-width: 769px) {
    .topSlider .slideContent {
      max-width: 100%;
      padding-left: 15px;
      padding-right: 15px; } }

.topSlider h2 {
  font-family: 'brandon_grotesque';
  font-weight: 400;
  letter-spacing: 0.4em;
  font-size: 1.6rem;
  margin: 0;
  padding-bottom: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media only screen and (max-width: 1367px) {
    .topSlider h2 {
      font-size: 1.3rem; } }
  .topSlider h2::after {
    font-size: 1em;
    margin-top: 1.2em;
    content: "";
    display: block;
    width: 23px;
    height: 2px;
    background: #fff; }

.topSlider h3 {
  font-family: "futura-pt", sans-serif;
  font-size: 6rem;
  font-weight: 300;
  margin: 0;
  line-height: 1;
  letter-spacing: 0.2em;
  background: url(../img/sliderHeaderBg.png) no-repeat center bottom;
  padding-bottom: 50px;
  text-transform: uppercase; }
  @media only screen and (max-width: 1367px) {
    .topSlider h3 {
      font-size: 4rem; } }
  @media only screen and (max-width: 1281px) {
    .topSlider h3 {
      font-size: 3rem; } }
  @media only screen and (max-width: 769px) {
    .topSlider h3 {
      font-size: 1.8rem; } }
  .topSlider h3 strong {
    font-weight: 700; }

.topSlider .slick-dots {
  position: absolute;
  right: 6%;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  z-index: 50;
  margin: 0;
  padding: 0; }
  .topSlider .slick-dots li {
    display: block;
    padding: 0;
    margin: 0;
    height: 2px;
    text-align: right; }
  .topSlider .slick-dots li + li {
    margin-top: 6px; }
  .topSlider .slick-dots button {
    transition: 0.3s;
    padding: 0;
    margin: 0;
    width: 8px;
    height: 2px;
    background: #fff;
    overflow: hidden;
    text-indent: -1000px;
    border: none; }
  .topSlider .slick-dots button:active, .topSlider .slick-dots button:focus {
    border: none;
    outline: none; }
  .topSlider .slick-dots li.slick-active button {
    width: 19px;
    background: #2e3192; }

.topSliderStripe {
  position: absolute;
  right: 0;
  top: 50px; }
  @media only screen and (max-width: 1367px) {
    .topSliderStripe {
      width: 120px; } }
  @media only screen and (max-width: 1025px) {
    .topSliderStripe {
      display: none; } }

.bottomSliderStripe {
  position: absolute;
  left: 0;
  bottom: 40px; }
  @media only screen and (max-width: 1367px) {
    .bottomSliderStripe {
      width: 100px; } }
  @media only screen and (max-width: 1025px) {
    .bottomSliderStripe {
      display: none; } }

.stripe3 {
  position: absolute;
  left: 0;
  top: 60px; }
  @media only screen and (max-width: 1367px) {
    .stripe3 {
      width: 100px; } }
  @media only screen and (max-width: 1025px) {
    .stripe3 {
      display: none; } }

.subpage .stripe3 {
  top: -80px; }

.stripe4 {
  position: absolute;
  right: 0;
  bottom: -60px;
  z-index: 20; }
  @media only screen and (max-width: 1367px) {
    .stripe4 {
      width: 100px; } }
  @media only screen and (max-width: 1025px) {
    .stripe4 {
      display: none; } }

.stripe5 {
  position: absolute;
  left: 0;
  bottom: 0; }
  @media only screen and (max-width: 1367px) {
    .stripe5 {
      width: 100px; } }
  @media only screen and (max-width: 1025px) {
    .stripe5 {
      display: none; } }

.sliderBottom {
  bottom: 50px;
  color: #fff;
  font-size: 1.2rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  left: 5%;
  right: 5%; }
  @media only screen and (max-width: 1367px) {
    .sliderBottom {
      bottom: 25px;
      font-size: 1.1rem; } }
  .sliderBottom p {
    margin: 0; }

.scrollDown,
.scrollDown:active,
.scrollDown:hover,
.scrollDown:focus {
  color: #fff;
  text-decoration: none;
  border: none;
  outline: none; }
  .scrollDown img,
  .scrollDown:active img,
  .scrollDown:hover img,
  .scrollDown:focus img {
    margin-right: 15px; }

.frontSocial img {
  margin-left: 15px; }

.aboutImage {
  display: block;
  width: 50%;
  margin-bottom: -150px;
  margin-top: -70px;
  position: relative;
  z-index: 20; }
  @media only screen and (max-width: 1025px) {
    .aboutImage {
      -ms-flex-item-align: end;
          align-self: flex-end;
      margin-bottom: -60px; } }
  @media only screen and (max-width: 550px) {
    .aboutImage {
      width: 80%;
      margin-top: 20px; } }

.iconsContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 1.5em 0; }
  .iconsContainer .icon {
    width: 50%;
    text-align: center;
    padding: 1em; }
  .iconsContainer p {
    font-family: 'brandon_grotesque';
    letter-spacing: 0.2em;
    font-weight: 400;
    font-size: 0.68em; }

.columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media only screen and (max-width: 550px) {
    .columns {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .columns .column {
    text-align: center;
    padding: 0 15px; }

.numbers .column {
  padding: 0 90px; }
  @media only screen and (max-width: 1025px) {
    .numbers .column {
      padding: 0 30px; } }
  @media only screen and (max-width: 550px) {
    .numbers .column {
      padding: 20px 15px; } }
  @media only screen and (max-width: 1025px) {
    .numbers .column img {
      max-height: 100px; } }
  @media only screen and (max-width: 550px) {
    .numbers .column img {
      max-width: 80px; } }

.numbers h3 {
  font-family: 'brandon_grotesque';
  font-size: 0.84em;
  font-weight: 400;
  text-align: center;
  margin-top: 0.2em;
  margin-bottom: 0;
  letter-spacing: 0.3em; }

.authorArea {
  font-family: 'brandon_grotesque';
  font-weight: 300;
  border-top: solid 1px #343432;
  font-size: 1.3rem;
  text-transform: uppercase;
  letter-spacing: 0.4em;
  padding: 25px 0;
  color: #d5d5d5;
  margin-top: 5em; }
  @media only screen and (max-width: 1367px) {
    .authorArea {
      padding: 15px 0; } }
  @media only screen and (max-width: 769px) {
    .authorArea {
      padding: 10px 0;
      font-size: 11px; } }
  @media only screen and (max-width: 550px) {
    .authorArea {
      font-size: 9px; } }
  .authorArea .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .authorArea a {
    color: #d5d5d5;
    text-decoration: none; }
    .authorArea a:hover {
      text-decoration: underline; }
  .authorArea p {
    margin: 0; }

@media only screen and (max-width: 1025px) {
  .footerSection .flexContainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; } }

.footerSection .flexContainer > div {
  width: 50%; }
  @media only screen and (max-width: 1025px) {
    .footerSection .flexContainer > div {
      width: 100%;
      padding: 15px 0; } }

.footerSection h3 {
  font-family: 'brandon_grotesque';
  font-weight: 400;
  text-transform: uppercase;
  margin-top: 0;
  font-size: 0.98em;
  letter-spacing: 0.4em; }

form .formRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media only screen and (max-width: 1025px) {
    form .formRow {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  form .formRow span {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

form .formRow.manyFields {
  margin-left: -15px;
  margin-right: -15px; }
  @media only screen and (max-width: 1025px) {
    form .formRow.manyFields {
      margin-left: 0;
      margin-right: 0; } }
  form .formRow.manyFields span {
    padding: 15px; }
    @media only screen and (max-width: 1025px) {
      form .formRow.manyFields span {
        padding: 10px 0; } }
    form .formRow.manyFields span span {
      padding-left: 0;
      padding-right: 0; }

form .submitRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-top: 2em; }
  @media only screen and (max-width: 1025px) {
    form .submitRow {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  form .submitRow .ajax-loader {
    margin-right: -18px; }
    @media only screen and (max-width: 1025px) {
      form .submitRow .ajax-loader {
        margin-right: 0; } }
  form .submitRow input {
    font-family: 'brandon_grotesque';
    font-weight: 500;
    letter-spacing: 0.4em;
    border: none;
    outline: none;
    background: url(../img/sliderHeaderBg.png) no-repeat center right;
    background-size: auto 100%;
    display: block;
    padding-right: 0.8em;
    padding-top: 0.15em;
    padding-bottom: 0.15em;
    color: #fff;
    font-size: 1em; }

form input[type="text"],
form input[type="email"] {
  font-family: "futura-pt", sans-serif;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  box-sizing: border-box;
  padding: 0.4em 5px;
  font-size: 1em;
  background: none;
  border: none;
  outline: none;
  border-bottom: solid 1px #fff;
  color: #fff;
  font-size: 1em; }

form input[type="text"].wpcf7-not-valid,
form input[type="email"].wpcf7-not-valid {
  border-bottom: solid 1px #ed1d25; }

form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="url"]:focus {
  color: #fff;
  font-size: 1em; }

form ::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  font-family: "futura-pt", sans-serif;
  color: #fff; }

form ::-moz-placeholder {
  /* Firefox 19+ */
  font-family: "futura-pt", sans-serif;
  color: #fff; }

form :-ms-input-placeholder {
  /* IE 10+ */
  font-family: "futura-pt", sans-serif;
  color: #fff; }

form :-moz-placeholder {
  /* Firefox 18- */
  font-family: "futura-pt", sans-serif;
  color: #fff; }

form .wpcf7-not-valid-tip {
  padding-left: 0;
  padding-right: 0;
  font-weight: 300;
  font-size: 0.8em; }

.imagesList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: 1px;
  padding-top: 2em;
  padding-bottom: 2em; }
  .imagesList a {
    width: 20%;
    display: block;
    position: relative; }
    @media only screen and (max-width: 550px) {
      .imagesList a {
        width: 50%; } }
    .imagesList a:focus, .imagesList a:active {
      outline: none;
      border: none; }
    .imagesList a img {
      display: block;
      border-right: solid 1px #fff;
      border-bottom: solid 1px #fff; }
    .imagesList a .cover {
      font-family: 'brandon_grotesque';
      transition: 0.3s;
      opacity: 0;
      font-weight: 500;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      max-width: 100%;
      height: 100%;
      background: rgba(239, 239, 239, 0.9);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 25px;
      box-sizing: border-box;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      text-transform: uppercase;
      color: #383737;
      font-size: 0.98em;
      letter-spacing: 0.4em;
      text-align: center;
      line-height: 1.2;
      font-size: 0.7em; }
      @media only screen and (max-width: 1281px) {
        .imagesList a .cover {
          font-size: 0.7em; } }
      @media only screen and (max-width: 769px) {
        .imagesList a .cover {
          font-size: 0.7em; } }
      .imagesList a .cover span {
        display: block;
        text-align: center;
        padding-top: 0.4em;
        width: 100%; }
      .imagesList a .cover img {
        border: none;
        display: inline-block; }
        @media only screen and (max-width: 769px) {
          .imagesList a .cover img {
            height: 15px; } }
  .imagesList a:hover .cover {
    opacity: 1; }
  .imagesList.frontImages {
    width: 100%;
    max-width: 1190px;
    margin-left: auto;
    margin-right: auto; }
    @media only screen and (max-width: 1281px) {
      .imagesList.frontImages {
        padding-left: 25px;
        padding-right: 25px; } }
    .imagesList.frontImages a {
      width: 25%; }
      @media only screen and (max-width: 550px) {
        .imagesList.frontImages a {
          width: 50%; } }

.pageHeader {
  height: 570px;
  background: url(../img/pageHeader.jpg) no-repeat center;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff; }
  @media only screen and (max-width: 1367px) {
    .pageHeader {
      height: 400px; } }
  @media only screen and (max-width: 1025px) {
    .pageHeader {
      height: 300px; } }
  @media only screen and (max-width: 769px) {
    .pageHeader {
      height: auto;
      padding-top: 4em;
      padding-bottom: 4em; } }
  .pageHeader span {
    font-family: 'brandon_grotesque';
    font-weight: 400;
    letter-spacing: 0.4em;
    margin: 0;
    padding-bottom: 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 1367px) {
      .pageHeader span {
        font-size: 1.3rem; } }
    .pageHeader span::after {
      font-size: 1em;
      margin-top: 2.1em;
      content: "";
      display: block;
      width: 23px;
      height: 2px;
      background: #fff; }
  .pageHeader h1 {
    margin-top: 1.5em;
    text-align: center; }
    @media only screen and (max-width: 1367px) {
      .pageHeader h1 {
        font-size: 4rem; } }
    @media only screen and (max-width: 1281px) {
      .pageHeader h1 {
        font-size: 3rem; } }
    @media only screen and (max-width: 769px) {
      .pageHeader h1 {
        font-size: 2.6rem; } }
    @media only screen and (max-width: 550px) {
      .pageHeader h1 {
        font-size: 2.2rem; } }

.subpage {
  background: #fff; }
  .subpage ul, .subpage ol {
    padding-left: 0;
    margin: -1em 0 1em 1em; }
    .subpage ul li, .subpage ol li {
      padding-left: 0.5em; }

.normalSection.about-page {
  background: #fff url(../img/aboutBg.jpg) no-repeat 100% center;
  background-size: auto 100%;
  padding: 5vw 0; }
  @media only screen and (max-width: 1601px) {
    .normalSection.about-page {
      padding: 4vw 0;
      background-position: 125% center; } }
  @media only screen and (max-width: 1025px) {
    .normalSection.about-page {
      background: #fff;
      padding: 40px 0; } }

.offerTabs {
  padding-top: 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .offerTabs .tabMenu {
    width: 290px;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
    @media only screen and (max-width: 1025px) {
      .offerTabs .tabMenu {
        width: 100%; } }
  .offerTabs .tabLoadedContent {
    padding-left: 75px;
    -webkit-box-flex: 1;
        -ms-flex: 1 auto;
            flex: 1 auto; }
    @media only screen and (max-width: 1367px) {
      .offerTabs .tabLoadedContent {
        padding-left: 45px; } }
    @media only screen and (max-width: 1025px) {
      .offerTabs .tabLoadedContent {
        display: none; } }
    .offerTabs .tabLoadedContent p:first-child {
      margin-top: 0; }
  .offerTabs h2 {
    font-family: 'brandon_grotesque';
    transition: 0.3s;
    font-weight: 400;
    font-size: 0.78em;
    display: block;
    text-align: center;
    margin: 0 0 2px 0;
    padding: 2em 2.5em;
    border: solid 1px #1d1d1b;
    cursor: pointer;
    height: 132px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    text-transform: uppercase; }
    @media only screen and (max-width: 1367px) {
      .offerTabs h2 {
        height: 110px; } }
    @media only screen and (max-width: 1025px) {
      .offerTabs h2 {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row nowrap;
                flex-flow: row nowrap;
        padding: 1.5em 20px;
        height: auto;
        text-align: left; } }
    .offerTabs h2 span {
      font-size: 1em; }
      @media only screen and (max-width: 1025px) {
        .offerTabs h2 span {
          text-align: left; } }
      @media only screen and (max-width: 1025px) {
        .offerTabs h2 span {
          -webkit-box-flex: 1;
              -ms-flex-positive: 1;
                  flex-grow: 1;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          text-align: right;
          padding-left: 10px; }
          .offerTabs h2 span img {
            width: 30px; } }
    .offerTabs h2 > span {
      width: 100%;
      position: relative; }
      @media only screen and (max-width: 1025px) {
        .offerTabs h2 > span {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          text-align: left; } }
    .offerTabs h2:hover {
      border-color: #ed1d25; }
    .offerTabs h2::after {
      display: none; }
  .offerTabs .tabContent {
    display: none; }
    @media only screen and (max-width: 1025px) {
      .offerTabs .tabContent {
        transition: 0.5s;
        display: block;
        max-height: 0;
        overflow: hidden; } }
  .offerTabs .tabInnerContent {
    padding: 1em; }
  .offerTabs .tab.active h2 {
    border-color: #ed1d25; }
  @media only screen and (max-width: 1025px) {
    .offerTabs .tab.active .tabContent {
      transition: 1s;
      display: block;
      max-height: 600px; } }

.categoryMenu {
  margin-left: -1px;
  margin-right: -1px;
  margin-top: 3em;
  margin-bottom: 1em; }
  @media only screen and (max-width: 769px) {
    .categoryMenu {
      overflow: auto; } }
  .categoryMenu ul {
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
    @media only screen and (max-width: 769px) {
      .categoryMenu ul {
        width: 700px; } }
  .categoryMenu li {
    display: block;
    font-family: 'brandon_grotesque';
    font-weight: 400;
    font-size: 0.78em;
    width: 20%;
    text-transform: uppercase;
    margin: 0 1px; }
  .categoryMenu a {
    transition: 0.3s;
    color: #1d1d1b;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 3em 3.5em;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    height: 100%;
    border: solid 1px #1d1d1b;
    line-height: 1.2; }
    @media only screen and (max-width: 1601px) {
      .categoryMenu a {
        padding: 2em 3em; } }
    @media only screen and (max-width: 769px) {
      .categoryMenu a {
        padding: 1.5em 2em; } }
    .categoryMenu a:hover {
      border-color: #ed1d25; }
  .categoryMenu li.current-menu-item a {
    border-color: #ed1d25; }

.pagination, body .ngg-navigation {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  padding-top: 2em !important; }
  .pagination a.page-numbers, .pagination span, .pagination a, body .ngg-navigation a.page-numbers, body .ngg-navigation span, body .ngg-navigation a {
    margin: 0 35px !important;
    padding: 0 !important;
    color: #1d1d1b !important;
    text-decoration: none;
    line-height: 1.2;
    display: block;
    padding: 0 3px;
    font-weight: 300 !important;
    border: none !important; }
    @media only screen and (max-width: 1367px) {
      .pagination a.page-numbers, .pagination span, .pagination a, body .ngg-navigation a.page-numbers, body .ngg-navigation span, body .ngg-navigation a {
        margin: 0 20px; } }
    @media only screen and (max-width: 769px) {
      .pagination a.page-numbers, .pagination span, .pagination a, body .ngg-navigation a.page-numbers, body .ngg-navigation span, body .ngg-navigation a {
        margin: 0 10px; } }
    .pagination a.page-numbers.dots, .pagination span.dots, .pagination a.dots, body .ngg-navigation a.page-numbers.dots, body .ngg-navigation span.dots, body .ngg-navigation a.dots {
      margin: 0 5px; }
    .pagination a.page-numbers.current, .pagination span.current, .pagination a.current, body .ngg-navigation a.page-numbers.current, body .ngg-navigation span.current, body .ngg-navigation a.current {
      border-bottom: solid 1px #ed1d25 !important; }
    .pagination a.page-numbers:hover, .pagination span:hover, .pagination a:hover, body .ngg-navigation a.page-numbers:hover, body .ngg-navigation span:hover, body .ngg-navigation a:hover {
      background-color: #fff !important;
      color: #1d1d1b !important; }
    .pagination a.page-numbers.prev, .pagination a.page-numbers.next, .pagination span.prev, .pagination span.next, .pagination a.prev, .pagination a.next, body .ngg-navigation a.page-numbers.prev, body .ngg-navigation a.page-numbers.next, body .ngg-navigation span.prev, body .ngg-navigation span.next, body .ngg-navigation a.prev, body .ngg-navigation a.next {
      display: block;
      padding: 0;
      width: 38px;
      height: 23px;
      overflow: hidden;
      text-indent: -400px; }
      @media only screen and (max-width: 769px) {
        .pagination a.page-numbers.prev, .pagination a.page-numbers.next, .pagination span.prev, .pagination span.next, .pagination a.prev, .pagination a.next, body .ngg-navigation a.page-numbers.prev, body .ngg-navigation a.page-numbers.next, body .ngg-navigation span.prev, body .ngg-navigation span.next, body .ngg-navigation a.prev, body .ngg-navigation a.next {
          width: 20px;
          height: 12px; } }
    .pagination a.page-numbers.prev, .pagination span.prev, .pagination a.prev, body .ngg-navigation a.page-numbers.prev, body .ngg-navigation span.prev, body .ngg-navigation a.prev {
      background: url(../img/red_arrow_left.png) no-repeat center;
      background-size: 100% auto; }
    .pagination a.page-numbers.next, .pagination span.next, .pagination a.next, body .ngg-navigation a.page-numbers.next, body .ngg-navigation span.next, body .ngg-navigation a.next {
      background: url(../img/red_arrow_right.png) no-repeat center;
      background-size: 100% auto; }

.alignRight {
  text-align: right; }

.back .btnStyle {
  font-size: 0.95em; }

.map {
  width: 48%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0; }
  @media only screen and (max-width: 1025px) {
    .map {
      position: static;
      width: 100%;
      height: 300px;
      margin-top: 4em; } }

.contact-page {
  min-height: 600px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media only screen and (max-width: 1025px) {
    .contact-page {
      display: block;
      min-height: 0;
      padding-bottom: 0; } }

body #cboxTitle {
  top: auto;
  bottom: -30px; }

body #cboxContent {
  margin-top: 0;
  margin-bottom: 30px; }

body #cboxPrevious {
  left: 5px;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 49%;
  margin-top: 0;
  background: url(../img/colorBoxLeft.png) no-repeat left center; }
  body #cboxPrevious:hover {
    background: url(../img/colorBoxLef_activet.png) no-repeat left center; }
  body #cboxPrevious:hover, body #cboxPrevious:active, body #cboxPrevious:focus {
    outline: none;
    border: none; }

body #cboxNext {
  left: auto;
  right: 5px;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 49%;
  margin-top: 0;
  background: url(../img/colorBoxRight.png) no-repeat right center; }
  body #cboxNext:hover {
    background: url(../img/colorBoxRight_active.png) no-repeat right center; }
  body #cboxNext:hover, body #cboxNext:active, body #cboxNext:focus {
    outline: none;
    border: none; }
