.menu:after, .title-section:after {
  content: " ";
  display: block;
  clear: both; }

.menu #nav, .menu #nav > li ul, .title-section .caption-box .list {
  margin: 0;
  padding: 0;
  list-style: none; }

@font-face {
  font-family: 'HelveticaNeueLight';
  src: url('../fonts/HelveticaNeueLight.eot');
  src: url('../fonts/HelveticaNeueLight.eot') format('embedded-opentype'), url('../fonts/HelveticaNeueLight.woff2') format('woff2'), url('../fonts/HelveticaNeueLight.woff') format('woff'), url('../fonts/HelveticaNeueLight.ttf') format('truetype'), url('../fonts/HelveticaNeueLight.svg#HelveticaNeueLight') format('svg'); }

@font-face {
  font-family: 'helvetica_neuethin';
  src: url('../fonts/HelveticaNeue-Thin-webfont.eot');
  src: url('../fonts/HelveticaNeue-Thin-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/HelveticaNeue-Thin-webfont.woff2') format('woff2'), url('../fonts/HelveticaNeue-Thin-webfont.woff') format('woff'), url('../fonts/HelveticaNeue-Thin-webfont.ttf') format('truetype'), url('../fonts/HelveticaNeue-Thin-webfont.svg#helvetica_neuethin') format('svg');
  font-weight: normal;
  font-style: normal; }

html {
  box-sizing: border-box; }

html, body {
  height: 100%;
  margin: 0; }

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

body {
  margin: 0;
  color: #000;
  background: #fff;
  font: 300 18px/1.278 "proxima-nova", 'helvetica_neuethin', 'Arial', sans-serif;
  min-width: 320px;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: none; }
  @media only screen and (max-width: 767px) {
    body {
      font-size: 14px; } }

* {
  max-height: 1000000px; }

article, aside, details, figcaption, figure, footer, header, main, nav, section, summary {
  display: block; }

img {
  border-style: none;
  max-width: 100%;
  height: auto; }

a {
  text-decoration: none;
  color: #000;
  outline: none; }
  a:hover {
    text-decoration: underline; }

input, textarea, select {
  font: 100% "proxima-nova", 'helvetica_neuethin', 'Arial', sans-serif;
  color: #fff;
  vertical-align: middle; }

form, fieldset {
  margin: 0;
  padding: 0;
  border-style: none; }

form {
  background: url(../images/bg-black.png); }

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0; }

button, input[type="button"], input[type="reset"], input[type="file"], input[type="submit"] {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  cursor: pointer;
  background: #fff;
  color: #000;
  text-transform: uppercase;
  padding: 18px 10px;
  min-width: 130px;
  border: 1px solid #fff;
  font-size: 18px;
  font-family: "proxima-nova", 'helvetica_neuethin', 'Arial', sans-serif;
  transition: background 0.3s ease-in-out; }
  @media only screen and (max-width: 767px) {
    button, input[type="button"], input[type="reset"], input[type="file"], input[type="submit"] {
      width: 100%;
      font-size: 15px; } }
  button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="file"]:hover, input[type="submit"]:hover {
    background: #d0d0d0; }

input[type="text"], input[type="tel"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], textarea {
  margin: 0;
  width: 100%;
  padding: 15px 17px;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  background: none;
  border: 1px solid #fff; }
  @media only screen and (max-width: 767px) {
    input[type="text"], input[type="tel"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], textarea {
      width: 100%;
      font-size: 15px; } }
  input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, textarea:focus {
    outline: none; }

textarea {
  overflow: auto;
  resize: vertical;
  vertical-align: top;
  margin: 0 0 8px; }

input[type="checkbox"], input[type="radio"] {
  padding: 0; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-input-placeholder {
  color: #fff; }

:-moz-placeholder {
  color: #fff; }

::-moz-placeholder {
  color: #fff;
  opacity: 1; }

:-ms-input-placeholder {
  color: #fff; }

h1, h2, h3, h4, h5, h6 {
  text-transform: uppercase;
  line-height: 1.2em;
  margin: 0 0 1.2em;
  text-transform: uppercase;
  font-weight: normal; }

h1 {
  font-size: 36px;
  margin: 0 0 40px;
  letter-spacing: 5px;
  font-weight: 300;
  font-family: 'helvetica_neuethin', 'Arial', sans-serif; }
  @media only screen and (max-width: 979px) {
    h1 {
      font-size: 34px; } }
  @media only screen and (max-width: 767px) {
    h1 {
      font-size: 30px;
      margin: 0 0 15px; } }

h2 {
  font-size: 24px;
  margin: 0 0 30px;
  letter-spacing: 2px; }

h3 {
  font-size: 18px;
  margin: 0 0 20px; }

p {
  margin: 0 0 20px; }

q {
  quotes: none; }
  q:before, q:after {
    content: '';
    content: none; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.bg-stretch {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  bottom: 0;
  overflow: hidden;
  z-index: -1; }
  .bg-stretch.main-img {
    bottom: 170px; }
    @media only screen and (max-width: 979px) {
      .bg-stretch.main-img {
        bottom: 150px; } }
    @media only screen and (max-width: 767px) {
      .bg-stretch.main-img {
        bottom: 30px; } }
    .bg-stretch.main-img.small {
      height: 400px; }
  .bg-stretch img {
    width: 100%;
    max-width: none;
    height: auto; }

.wrap.push {
  position: relative;
  overflow: hidden;
  min-height: 100%; }

#wrapper {
  width: 100%;
  overflow: hidden;
  min-height: 100%;
  position: relative; }

.w1 {
  padding-bottom: 95px; }
  @media only screen and (max-width: 767px) {
    .w1 {
      padding-bottom: 65px; } }

@media only screen and (max-width: 767px) {
  .mobile-hidden {
    display: none; } }

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box; }
  .container:after {
    display: block;
    clear: both;
    content: ''; }
  .container p, .container li, .container a, .container span {
    letter-spacing: 1px; }
  @media only screen and (max-width: 1200px) {
    .container {
      max-width: 970px; } }
  @media only screen and (max-width: 979px) {
    .container {
      max-width: 754px; } }
  @media only screen and (max-width: 767px) {
    .container {
      max-width: 100%; } }

#header {
  position: relative;
  z-index: 10;
  padding-top: 30px;
  padding-bottom: 30px; }
  @media only screen and (max-width: 979px) {
    #header {
      position: static; } }
  @media only screen and (max-width: 767px) {
    #header {
      padding-top: 17px;
      padding-bottom: 17px; } }
  #header .logo {
    float: left;
    width: 203px;
    height: 81px;
    position: relative;
    z-index: 5; }
    @media only screen and (max-width: 767px) {
      #header .logo {
        width: 112px;
        height: 44px; } }
    #header .logo a {
      display: block;
      height: 100%; }
    #header .logo img {
      display: block;
      width: 100%;
      height: auto; }

#main {
  overflow: hidden;
  position: relative;
  padding: 0 0 70px; }

.menu {
  position: relative; }
  @media only screen and (max-width: 767px) {
    .menu {
      position: static; } }
  .menu #nav {
    float: right;
    margin: 0 -23px 0 0; }
    @media only screen and (max-width: 979px) {
      .menu #nav {
        margin: 0;
        float: none;
        padding-top: 40px; } }
    .menu #nav > li {
      float: left;
      position: relative;
      letter-spacing: 2px;
      padding-top: 14px; }
      @media only screen and (max-width: 979px) {
        .menu #nav > li {
          float: none;
          display: block;
          text-align: right; }
          .menu #nav > li.has-drop:before {
            content: '+';
            display: inline-block;
            vertical-align: middle; }
          .menu #nav > li.has-drop:hover:before {
            content: '-'; } }
      @media only screen and (max-width: 767px) {
        .menu #nav > li {
          text-align: center; } }
      .menu #nav > li.active > a:before {
        left: 50%;
        width: 66%; }
      .menu #nav > li > a {
        padding: 16px 22px;
        display: inline-block;
        vertical-align: middle;
        position: relative;
        transition: all 0.5s ease-in-out; }
        .menu #nav > li > a:before {
          content: '';
          position: absolute;
          top: 0;
          left: 50%;
          width: 0;
          height: 1px;
          background: #bf1e2e;
          transform: translateX(-50%);
          transition: all 0.5s ease-in-out; }
        @media only screen and (max-width: 979px) {
          .menu #nav > li > a {
            padding: 15px 0; } }
      .menu #nav > li:hover > a {
        text-decoration: none; }
        .menu #nav > li:hover > a:before {
          width: 66%; }
      .menu #nav > li ul {
        position: absolute;
        background: #fff;
        top: -999px;
        left: -19px;
        width: 180px;
        padding: 5px 40px 11px;
        min-height: 0;
        overflow: hidden; }
        @media only screen and (max-width: 979px) {
          .menu #nav > li ul {
            position: relative;
            display: none;
            top: 0;
            text-align: right;
            padding: 0;
            width: 100%;
            left: 0; } }
        @media only screen and (max-width: 767px) {
          .menu #nav > li ul {
            text-align: center; } }
        .menu #nav > li ul li {
          margin: 0 0 13px; }
      .menu #nav > li:hover ul {
        top: 100%; }
        @media only screen and (max-width: 979px) {
          .menu #nav > li:hover ul {
            display: block;
            top: 0; } }
  @media only screen and (max-width: 979px) {
    .menu .drop {
      position: absolute;
      z-index: 10;
      top: 50px;
      bottom: -400px;
      right: -999px;
      width: 230px;
      background: #fff;
      transition: right 0.5s ease-in-out; }
      .menu .drop:after {
        content: '';
        position: absolute;
        z-index: -1;
        left: 100%;
        right: -9999px;
        width: 9999px;
        background: #fff;
        height: 100%;
        top: 0; } }
  @media only screen and (max-width: 767px) {
    .menu .drop {
      width: 320px; } }

.nav-opener {
  display: none;
  float: right;
  width: 17px;
  height: 16px;
  padding: 10px;
  position: relative;
  overflow: hidden;
  text-indent: -9999px;
  z-index: 9999;
  opacity: 1;
  -moz-transition: aLL, ease, 0.3s;
  -o-transition: aLL, ease, 0.3s;
  -webkit-transition: aLL, ease, 0.3s;
  transition: aLL, ease, 0.3s;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  margin: 22px 0 0 0; }
  @media only screen and (max-width: 979px) {
    .nav-opener {
      display: block; } }
  @media only screen and (max-width: 767px) {
    .nav-opener {
      margin: 4px -8px 0 0; } }
  .nav-opener:hover {
    opacity: .9; }
  .nav-opener:before, .nav-opener:after, .nav-opener span {
    content: '';
    background: #1d1b1c;
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    height: 2px;
    -webkit-transition: all 0.15s linear;
    transition: all 0.15s linear; }
  .nav-opener:before {
    top: 17px; }
  .nav-opener:after {
    top: auto;
    bottom: 10px; }

.nav-active .nav-opener span {
  opacity: 0; }
.nav-active .nav-opener:after, .nav-active .nav-opener:before {
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 21px;
  left: 17%;
  right: 17%;
  background: #bf1e2e; }
.nav-active .nav-opener:after {
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg); }
@media only screen and (max-width: 979px) {
  .nav-active .drop {
    right: 0; } }

.visual-box {
  position: relative;
  overflow: hidden; }
  .visual-box .caption {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    white-space: nowrap;
    color: #fff; }
    .visual-box .caption:after {
      content: '';
      display: inline-block;
      vertical-align: middle;
      width: 1px;
      height: 100%;
      margin: 0 0 0 -5px;
      overflow: hidden; }
    .visual-box .caption .wrap {
      display: inline-block;
      vertical-align: middle;
      width: 100%;
      white-space: normal; }
    .visual-box .caption .text {
      position: relative;
      width: 58%;
      left: 21%;
      text-align: center; }
      @media only screen and (max-width: 1200px) {
        .visual-box .caption .text {
          width: 70%;
          left: 15%; } }
      @media only screen and (max-width: 979px) {
        .visual-box .caption .text {
          width: 80%;
          left: 10%; } }
    .visual-box .caption p {
      font-size: 36px;
      line-height: 1.167;
      letter-spacing: 3px;
      margin: 0 0 50px; }
  .visual-box img {
    opacity: 1;
    transition: opacity 0.5s ease; }
  .visual-box:hover img {
    opacity: 0.8; }

.section-box {
  overflow: hidden;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .section-box {
      min-height: 145px !important; } }
  .section-box .column {
    float: left;
    width: 50%;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .section-box .column {
        float: none;
        width: 100%;
        min-height: 145px !important;
        height: auto !important; } }
    .section-box .column img {
      opacity: 0.9;
      transition: all 1s ease; }
    .section-box .column .box:hover img {
      opacity: 1;
      transform: scale(1.2); }
    .section-box .column h1 {
      margin: 0;
      font-family: "proxima-nova", 'helvetica_neuethin', 'Arial', sans-serif; }
    .section-box .column p {
      font-size: 24px;
      margin: 0 0 50px; }
      @media only screen and (max-width: 979px) {
        .section-box .column p {
          font-size: 20px; } }

.caption {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  white-space: nowrap;
  color: #fff;
  line-height: 1.15; }
  .caption:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 1px;
    height: 100%;
    margin: 0 0 0 -5px;
    overflow: hidden; }
  .caption .wrap {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    white-space: normal;
    text-align: center; }
  .caption .text {
    position: relative;
    left: 21%;
    width: 60%;
    text-align: left; }
  .caption .more {
    color: #fff;
    padding-top: 50px;
    display: inline-block;
    position: relative;
    transition: all 0.5s ease-in-out;
    letter-spacing: 4px;
    font-weight: 100; }
    @media only screen and (max-width: 767px) {
      .caption .more {
        padding-top: 30px; } }
    .caption .more:hover {
      text-decoration: none; }
    .caption .more:before, .caption .more:after {
      content: '';
      position: absolute;
      top: 0;
      left: 50%;
      width: 0;
      height: 1px;
      background: #fff;
      transition: all 0.5s ease-in-out; }
    .caption .more:after {
      left: 0;
      right: 0;
      width: 100%;
      opacity: 1;
      transition: all 0.1s ease-in-out; }
  .caption:hover .more:before {
    left: 0;
    right: 0;
    width: 100%; }
  .caption:hover .more:after {
    opacity: 0; }

  .caption .more2 {
    color: #fff;
    padding-top: 0px;
    display: inline-block;
    position: relative;
    letter-spacing: 4px;
    font-weight: 100; }
    @media only screen and (max-width: 767px) {
      .caption .more2 {
        padding-top: 0px; } }
    .caption .more2:hover {
      text-decoration: none; }
    .caption .more2:before, .caption .more:after {
      content: '';
      position: absolute;
      top: 0;
      left: 50%;
      width: 0;
      height: 1px;
      background: #fff; }
    .caption .more2:after {
      left: 0;
      right: 0;
      width: 100%;
      opacity: 1; }
  .caption:hover .more2before {
    left: 0;
    right: 0;
    width: 100%; }
  .caption:hover .more2:after {
    opacity: 0; }    

.column {
  position: relative; }
  .column.black .caption {
    color: #000; }
  .column.black .more {
    color: #000; }
    .column.black .more:before, .column.black .more:after {
      background: #000; }
  .column .box {
    position: relative;
    width: 100%;
    height: 100%;
    padding-top: 100%; }
    @media only screen and (max-width: 767px) {
      .column .box {
        padding-top: 0;
        height: 145px; } }
  .column .services-box {
    background: #bf1e2e; }

.cycle-gallery {
  position: relative; }
  .cycle-gallery .mask {
    position: relative;
    overflow: hidden;
    width: 100%; }
  .cycle-gallery .slideset {
    width: 99999px;
    float: left; }
  .cycle-gallery .slide {
    float: left; }
    .cycle-gallery .slide.active {
      z-index: 1; }
  .cycle-gallery .btn-holder {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    z-index: 2;
    height: 60px;
    margin-top: -30px;
    text-align: center; }
  .cycle-gallery .btn-prev, .cycle-gallery .btn-next {
    display: inline-block;
    vertical-align: top;
    margin: 0 -4px;
    width: 60px;
    height: 60px;
    background: #bf1e2e;
    color: #fff;
    font-size: 58px;
    line-height: 54px;
    text-align: center;
    border: 1px solid #fff;
    transition: background 0.3s ease-in-out; }
    .cycle-gallery .btn-prev:hover, .cycle-gallery .btn-next:hover {
      background: #810b18; }
  .cycle-gallery h2 {
    margin: 0; }

.cycle-gallery-1 {
  position: relative;
  margin: 0 0 50px; }
  @media only screen and (max-width: 767px) {
    .cycle-gallery-1 {
      margin: 0 0 35px; } }
  .cycle-gallery-1 .mask {
    position: relative;
    overflow: hidden;
    width: 100%; }
  .cycle-gallery-1 .slideset {
    width: 99999px;
    float: left; }
  .cycle-gallery-1 .slide {
    float: left; }
    .cycle-gallery-1 .slide.active {
      z-index: 1; }
    .cycle-gallery-1 .slide img {
      display: block;
      width: 100%;
      height: auto; }
    .cycle-gallery-1 .slide .caption {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      white-space: nowrap; }
      .cycle-gallery-1 .slide .caption:after {
        content: '';
        display: inline-block;
        vertical-align: middle;
        width: 1px;
        height: 100%;
        overflow: hidden;
        margin: 0 0 0 -5px; }
      .cycle-gallery-1 .slide .caption .wrap {
        display: inline-block;
        vertical-align: middle;
        width: 100%;
        white-space: normal;
        white-space: nowrap; }
      .cycle-gallery-1 .slide .caption h1 {
        font-family: "proxima-nova", 'helvetica_neuethin', 'Arial', sans-serif;
        margin: 0; }
  .cycle-gallery-1 .btn-holder {
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .cycle-gallery-1 .btn-holder .wrap {
      position: absolute;
      top: 50%;
      height: 60px;
      margin-top: -30px;
      left: 0;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        .cycle-gallery-1 .btn-holder .wrap {
          top: auto;
          bottom: 0;
          text-align: right;
          height: auto; } }
  .cycle-gallery-1 .btn-prev, .cycle-gallery-1 .btn-next {
    width: 60px;
    height: 60px;
    float: left;
    color: #fff;
    font-size: 58px;
    line-height: 54px;
    text-align: center;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #fff;
    display: none;
    transition: background 0.3s ease-in-out; }
    .cycle-gallery-1 .btn-prev.btn-next, .cycle-gallery-1 .btn-next.btn-next {
      float: right; }
    @media only screen and (max-width: 767px) {
      .cycle-gallery-1 .btn-prev, .cycle-gallery-1 .btn-next {
        float: none;
        display: inline-block;
        vertical-align: bottom;
        margin: 0 -1px 0 0;
        width: 50px;
        height: 50px;
        font-size: 50px;
        line-height: 50px; } }
    .cycle-gallery-1 .btn-prev:hover, .cycle-gallery-1 .btn-next:hover {
      background: rgba(255, 255, 255, 0.4); }
  .cycle-gallery-1 h2 {
    margin: 0; }

.cycle-gallery-2 {
  position: relative;
  background: url(../images/bg-black.png);
  padding: 120px 0; }
  @media only screen and (max-width: 767px) {
    .cycle-gallery-2 {
      padding: 15px; } }
  .cycle-gallery-2 .wrap {
    max-width: 1170px;
    position: relative;
    margin: 0 auto;
    padding: 0 40px; }
    @media only screen and (max-width: 767px) {
      .cycle-gallery-2 .wrap {
        padding: 0; } }
  .cycle-gallery-2 .mask {
    position: relative;
    overflow: hidden;
    width: 100%; }
  .cycle-gallery-2 .slideset {
    width: 99999px;
    float: left; }
  .cycle-gallery-2 .slide {
    float: left; }
    .cycle-gallery-2 .slide.active {
      z-index: 1; }
    .cycle-gallery-2 .slide img {
      display: block;
      width: 100%;
      height: auto; }
  .cycle-gallery-2 .btn-prev, .cycle-gallery-2 .btn-next {
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 100%;
    color: #fff;
    font-size: 58px;
    text-align: center;
    background: none;
    transition: background 0.3s ease-in-out; }
    .cycle-gallery-2 .btn-prev.btn-next, .cycle-gallery-2 .btn-next.btn-next {
      left: auto;
      right: 0; }
    @media only screen and (max-width: 767px) {
      .cycle-gallery-2 .btn-prev, .cycle-gallery-2 .btn-next {
        display: none; } }
    .cycle-gallery-2 .btn-prev:hover, .cycle-gallery-2 .btn-next:hover {
      background: rgba(0, 0, 0, 0.4); }
    .cycle-gallery-2 .btn-prev i, .cycle-gallery-2 .btn-next i {
      position: absolute;
      top: 50%;
      left: 50%;
      margin: -30px 0 0 -10px; }
  .cycle-gallery-2 h2 {
    margin: 0; }

.text-section {
  position: relative;
  padding: 50px 0 100px; }
  @media only screen and (max-width: 767px) {
    .text-section {
      padding: 30px 0 0; } }
  .text-section:before {
    content: '';
    position: absolute;
    left: 50%;
    width: 130px;
    margin-left: -65px;
    height: 1px;
    background: #bf1e2e;
    top: 0; }

.title-section {
  position: relative;
  position: relative;
  padding-top: 114px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    .title-section {
      padding: 35px 0 10px; }
      .title-section + .title-section {
        padding-top: 50px; } }
  .title-section .text-area {
    float: left;
    width: 51%; }
    @media only screen and (max-width: 767px) {
      .title-section .text-area {
        float: none;
        width: 100%;
        height: auto !important;
        padding: 0; } }
  .title-section .top {
    width: 76%; }
    @media only screen and (max-width: 767px) {
      .title-section .top {
        width: 100%; } }
  .title-section p {
    margin: 0 0 52px; }
  .title-section p.title {
    font-size: 24px;
    line-height: 1.15;
    margin: 0 0 23px; }
    @media only screen and (max-width: 767px) {
      .title-section p.title {
        font-size: 18px;
        margin: 0 0 15px; } }
  .title-section .caption-box {
    background-color: #000;
    background-attachment: scroll;
    background-clip: border-box;
    background-image: radial-gradient(rgba(255, 255, 255, 0.07) 60%, transparent 60%);
    background-origin: padding-box;
    background-position: 0 0;
    background-repeat: repeat;
    background-size: 4px 4px;
    position: relative;
    z-index: 5;
    width: 112%;
    padding: 60px 100px 100px 60px ;
    color: #fff; }
    @media only screen and (max-width: 979px) {
      .title-section .caption-box {
        padding: 60px; } }
    @media only screen and (max-width: 767px) {
      .title-section .caption-box {
        width: 100%;
        padding: 35px 15px; } }
    .title-section .caption-box.align-right {
      right: 0;
      float: right;
      clear: both; }
    .title-section .caption-box.red {
      background-color: #bf1e2e;
      color: #fff; }
    .title-section .caption-box .heading {
      margin: 0; }
      .title-section .caption-box .heading h2:before {
        background: #fff; }
    .title-section .caption-box .list li {
      position: relative;
      padding: 0 0 0 12px; }
      .title-section .caption-box .list li:before {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        width: 5px;
        height: 1px;
        background: #fff;
        margin-top: -1px; }
    .title-section .caption-box p {
      margin: 0 0 15px; }
  .title-section .img-box {
    position: relative;
    z-index: 1;
    width: 112%; }
  .title-section .img-area {
    float: left;
    width: 49%;
    position: relative; }
    .title-section .img-area.bottom {
      padding-top: 200px; }
    .title-section .img-area img {
      z-index: -1;
      display: block;
      width: 100%;
      height: auto; }

.text-section {
  position: relative;
  padding: 50px 0 100px; }
  @media only screen and (max-width: 767px) {
    .text-section {
      padding: 30px 0 0; } }
  .text-section:before {
    content: '';
    position: absolute;
    left: 50%;
    width: 130px;
    margin-left: -65px;
    height: 1px;
    background: #bf1e2e;
    top: 0; }

.title-section-2 {
  position: relative;
  position: relative;
  padding-top: 114px;
  padding-bottom: 0px; }
  @media only screen and (max-width: 767px) {
    .title-section-2 {
      padding: 35px 0 10px; }
      .title-section-2 + .title-section-2 {
        padding-top: 50px; } }
  .title-section-2 .text-area {
    float: right;
    width: 51%; }
    @media only screen and (max-width: 767px) {
      .title-section-2 .text-area {
        float: none;
        width: 100%;
        height: auto !important;
        padding: 0; } }
  .title-section-2 .top {
    width: 60%; 
    float: right; }
    @media only screen and (max-width: 767px) {
      .title-section-2 .top {
        width: 100%; } }
  .title-section-2 p {
    margin: 0 0 -190px; }
  .title-section-2 p img {
    margin: 20px 0 0 0; 
    width: 60%;}
  .title-section-2 p.title {
    font-size: 24px;
    line-height: 1.15;
    margin: 0 0 23px; }
    @media only screen and (max-width: 767px) {
      .title-section-2 p.title {
        font-size: 18px;
        margin: 0 0 15px; } }
  .title-section-2 .caption-box {
    background-color: #000;
    background-attachment: scroll;
    background-clip: border-box;
    background-image: radial-gradient(rgba(255, 255, 255, 0.07) 60%, transparent 60%);
    background-origin: padding-box;
    background-position: 0 0;
    background-repeat: repeat;
    background-size: 4px 4px;
    position: relative;
    z-index: 5;
    width: 112%;
    padding: 60px 100px 100px 60px ;
    color: #fff; }
    @media only screen and (max-width: 979px) {
      .title-section-2 .caption-box {
        padding: 60px; } }
    @media only screen and (max-width: 767px) {
      .title-section-2 .caption-box {
        width: 100%;
        padding: 35px 15px; } }
    .title-section-2 .caption-box.align-right {
      right: 0;
      float: left;
      clear: both; }
    .title-section-2 .caption-box.red {
      background-color: #bf1e2e;
      color: #fff; }
    .title-section-2 .caption-box .heading {
      margin: 0; }
      .title-section-2 .caption-box .heading h2:before {
        background: #fff; }
    .title-section-2 .caption-box .list li {
      position: relative;
      padding: 0 0 0 12px; }
      .title-section-2 .caption-box .list li:before {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        width: 5px;
        height: 1px;
        background: #fff;
        margin-top: -1px; }
    .title-section-2 .caption-box p {
      margin: 0 0 15px; }
  .title-section-2 .img-box {
    position: relative;
    z-index: 1;
    width: 112%; }
  .title-section-2 .img-area {
    float: right;
    width: 49%;
    position: relative; }
    .title-section-2 .img-area.bottom {
      padding-top: 170px; }
    .title-section-2 .img-area img {
      z-index: -1;
      display: block;
      width: 100%;
      height: auto; }      

.heading {
  margin-top: -53px; }
  @media only screen and (max-width: 767px) {
    .heading {
      margin: 0; } }
  .heading h1, .heading h2, .heading h3, .heading h4 {
    display: inline-block;
    vertical-align: top;
    position: relative;
    padding-top: 47px;
    font-family: 'helvetica_neuethin', 'Arial', sans-serif;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .heading h1, .heading h2, .heading h3, .heading h4 {
        padding-top: 30px; } }
    .heading h1:before, .heading h2:before, .heading h3:before, .heading h4:before {
      content: '';
      position: absolute;
      top: 0;
      height: 1px;
      left: 0;
      width: 130px;
      background: #bf1e2e; }

.heading2 {
  margin-top: -53px; }
  @media only screen and (max-width: 767px) {
    .heading2 {
      margin: 0; } }
  .heading2 h1, .heading2 h2, .heading2 h3, .heading2 h4 {
    display: inline-block;
    vertical-align: top;
    position: relative;
    padding-top: 47px;
    font-family: 'helvetica_neuethin', 'Arial', sans-serif;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .heading2 h1, .heading2 h2, .heading2 h3, .heading2 h4 {
        padding-top: 30px; } }
    .heading2 h1:before, .heading2 h2:before, .heading2 h3:before, .heading2 h4:before {
      content: '';
      position: absolute;
      top: 0;
      height: 0px;
      left: 0;
      width: 130px;
      background: #bf1e2e; }      

.article-content {
  padding-top: 50px;
  margin: 0 -45px; }
  @media only screen and (max-width: 979px) {
    .article-content {
      margin: 0 -30px; } }
  @media only screen and (max-width: 767px) {
    .article-content {
      margin: 0;
      padding: 0; } }
  .article-content h3 {
    color: #bf1e2e; }
  .article-content .column {
    padding: 0 45px; }
    @media only screen and (max-width: 979px) {
      .article-content .column {
        padding: 0 30px; } }
    @media only screen and (max-width: 767px) {
      .article-content .column {
        float: none !important;
        width: 100% !important;
        padding: 0; } }

.info {
  float: left;
  width: 40%;
  padding-bottom: 30px; }
  .info address {
    font-style: normal; }
  @media only screen and (max-width: 767px) {
    .info {
      float: none;
      width: 100%; } }

.contact-form {
  float: right;
  width: 60%;
  padding: 60px 100px;
  color: #fff; }
  @media only screen and (max-width: 979px) {
    .contact-form {
      padding: 60px; } }
  @media only screen and (max-width: 767px) {
    .contact-form {
      float: none;
      width: 100%;
      padding: 35px 17px; } }
  .contact-form .heading {
    margin: 0; }
    .contact-form .heading h1:before, .contact-form .heading h2:before, .contact-form .heading h3:before, .contact-form .heading h4:before {
      background: #fff; }
  .contact-form .row {
    overflow: hidden;
    margin: 0 -5px; }
    @media only screen and (max-width: 979px) {
      .contact-form .row {
        margin: 0; } }
  .contact-form .col {
    float: left;
    width: 50%;
    padding: 0 5px 8px; }
    @media only screen and (max-width: 979px) {
      .contact-form .col {
        float: none;
        width: 100%;
        padding: 0 0 8px; } }

#footer {
  position: relative;
  width: 100%;
  background: #000;
  height: 95px;
  margin-top: -95px;
  color: #fff;
  padding: 40px 0;
  font-size: 16px; }
  @media only screen and (max-width: 767px) {
    #footer {
      text-align: center;
      font-size: 13px;
      padding: 15px 0;
      height: 65px;
      margin-top: -65px; } }
  #footer a {
    color: #fff; }
  #footer p {
    margin: 0; }
  #footer .copy {
    float: left;
    width: 50%; }
    @media only screen and (max-width: 767px) {
      #footer .copy {
        float: none;
        width: 100%; } }
  #footer .link {
    float: right;
    width: 50%;
    text-align: right; }
    @media only screen and (max-width: 767px) {
      #footer .link {
        float: none;
        width: 100%;
        text-align: center; } }

.margin-5 {
  margin: -5px 0 0;
  height: 1px; }

.padding-top-110 {
  padding-top: 110px;
  padding-left: 50px;
  padding-right: 50px; }

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