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

#header .nav-bar, #header .nav, #footer .nav-bar, #footer .nav {
  margin: 0;
  padding: 0;
  list-style: none; }

#footer .social-network {
  margin: 0;
  padding: 0;
  list-style: none; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

#header:after, #header .top-header:after {
  content: "";
  display: block;
  clear: both; }

#main:after {
  content: "";
  display: block;
  clear: both; }

.ellipsis {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden; }

/* custom select styles */
.jcf-select {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background: #ccc9c9;
  margin: 0 0 12px;
  width: 100%;
  height: 39px;
  font-size: 16px;
  line-height: 26px;
  color: #29235c;
  padding: 6px 12px; }
  .jcf-select select {
    z-index: 1;
    left: 0;
    top: 0; }
  .jcf-select .jcf-select-text {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    cursor: default;
    display: block;
    font-size: 16px;
    line-height: 26px; }
  .jcf-select .jcf-select-opener {
    position: absolute;
    text-align: center;
    background: #aaa;
    width: 26px;
    bottom: 0;
    right: 0;
    top: 0; }

body > .jcf-select-drop {
  position: absolute;
  margin: -1px 0 0;
  z-index: 9999; }
  body > .jcf-select-drop.jcf-drop-flipped {
    margin: 1px 0 0; }

.jcf-select .jcf-select-drop {
  position: absolute;
  margin-top: 0;
  z-index: 9999;
  top: 100%;
  left: -1px;
  right: -1px; }

.jcf-select .jcf-drop-flipped {
  bottom: 100%;
  top: auto; }

.jcf-select-drop .jcf-select-drop-content {
  border: 1px solid #f00; }

/* multiple select styles */
.jcf-list-box {
  overflow: hidden;
  display: inline-block;
  border: 1px solid #b8c3c9;
  min-width: 200px;
  margin: 0 15px; }

/* select options styles */
.jcf-list {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background: #fff;
  line-height: 14px;
  font-size: 12px;
  width: 100%; }
  .jcf-list .jcf-list-content {
    vertical-align: top;
    display: inline-block;
    overflow: auto;
    width: 100%; }
  .jcf-list ul {
    list-style: none;
    padding: 0;
    margin: 0; }
    .jcf-list ul li {
      overflow: hidden;
      display: block; }
  .jcf-list .jcf-overflow {
    overflow: auto; }
  .jcf-list .jcf-option {
    white-space: nowrap;
    overflow: hidden;
    cursor: default;
    display: block;
    padding: 5px 9px;
    color: #656565;
    height: 1%; }
  .jcf-list .jcf-disabled {
    background: #fff !important;
    color: #aaa !important; }

.jcf-select-drop .jcf-hover, .jcf-list-box .jcf-selected {
  background: #e6e6e6;
  color: #000; }

.jcf-list .jcf-optgroup-caption {
  white-space: nowrap;
  font-weight: bold;
  display: block;
  padding: 5px 9px;
  cursor: default;
  color: #000; }

.jcf-list .jcf-optgroup .jcf-option {
  padding-left: 30px; }

/* common custom form elements styles */
.jcf-disabled {
  background: #ddd !important; }

.jcf-focus {
  border-color: #f00 !important; }
  .jcf-focus * {
    border-color: #f00 !important; }

a:hover, a:active, a:focus {
  outline: none; }

#header {
  margin-bottom: 28px; }
  #header.fixed-position {
    position: fixed;
    z-index: 9999;
    width: 100%;
    background: #fff;
    padding: 0 0 10px; }
    #header.fixed-position .top-header {
      opacity: 0;
      padding: 0;
      margin: 0; }
    #header.fixed-position .logo {
      width: 100px; }
    #header.fixed-position .nav {
      font-size: 16px;
      line-height: 18px;
      padding-top: 0; }
  #header .top-header {
    position: relative;
    z-index: 1;
    -webkit-transition: all .25s linear;
    transition: all .25s linear;
    padding-top: 14px;
    padding-bottom: 7px;
    text-align: center;
    margin: 0 0 29px; }
    #header .top-header:before {
      position: absolute;
      content: "";
      z-index: -1;
      left: -9999px;
      top: 0;
      right: -9999px;
      bottom: 0;
      background: #29225c; }
  #header .navbar-toggle {
    background: #000 none repeat scroll 0 0;
    height: 40px;
    right: 15px;
    position: absolute;
    top: 40px;
    border-radius: 8px;
    width: 50px;
    z-index: 9999;
    color: #fff;
    padding: 5px 0 0;
    font-size: 20px;
    text-align: center; }
    #header .navbar-toggle:hover {
      text-decoration: none;
      color: #c2b197; }
  #header .nav-bar {
    font-size: 20px;
    line-height: 22px;
    font-weight: 300;
    color: #fff;
    overflow: hidden; }
    #header .nav-bar li {
      margin: 0 0 10px; }
    #header .nav-bar .fa-envelope, #header .nav-bar .fa-phone {
      margin: 0 9px 0 0;
      color: #c2b096;
      -webkit-transition: all .25s linear;
      transition: all .25s linear; }
    #header .nav-bar a {
      color: #fff;
      text-decoration: none;
      -webkit-transition: all .25s linear;
      transition: all .25s linear; }
      #header .nav-bar a:hover {
        color: #c2b096; }
        #header .nav-bar a:hover .fa-envelope, #header .nav-bar a:hover .fa-phone {
          color: #fff; }

.logo {
  margin: 0 auto;
  width: 182px; }
  .logo a {
    display: block; }
  .logo img {
    width: 100%; }

img {
  height: auto;
  display: block; }

#main .content {
  padding-top: 24px; }

#main .header {
  margin: 0 0 25px;
  overflow: hidden; }

#main .txt-holder {
  padding-left: 9px; }

#main h2 {
  font-size: 35px;
  line-height: 40px;
  color: #29235c;
  margin: 0 0 23px;
  text-transform: uppercase; }

#main .title {
  font-size: 18px;
  line-height: 20px;
  color: #1d1d1b;
  display: block; }
  #main .title.txt {
    font-size: 16px;
    line-height: 26px; }

#main p {
  margin: 0 0 27px; }

#main .feature-list {
  padding: 0 0 0 15px;
  margin: 0 -1px 28px 0; }
  #main .feature-list li {
    padding: 0 0 0 21px; }

#main .img-holder {
  overflow: hidden;
  padding: 6px 0 0; }
  #main .img-holder img {
    width: 100%; }
  #main .img-holder.map-holder {
    display: none; }

#main .pull-right {
  position: relative;
  color: #fff; }
  #main .pull-right:before {
    position: absolute;
    content: "";
    z-index: -1;
    left: -9999px;
    top: -24px;
    right: -9999px;
    bottom: -6px;
    background: #29225c; }
  #main .pull-right .title {
    color: #fff; }
  #main .pull-right h2 {
    color: #c2b197; }
  #main .pull-right .img-holder {
    padding-top: 0; }
  #main .pull-right .header {
    margin-top: -5px;
    padding: 5px 0 0; }

.carousel {
  position: relative; }
  .carousel .carousel-inner {
    overflow: hidden;
    width: 100%;
    position: relative; }
    .carousel .carousel-inner > .item > img {
      max-width: none;
      height: 295px;
      display: block; }
  .carousel .caption {
    text-align: left;
    width: 100%;
    padding: 19px 27px 24px;
    position: relative;
    z-index: 1;
    margin: 257px 0 0; }
    .carousel .caption:before {
      position: absolute;
      content: "";
      z-index: -1;
      left: -9999px;
      top: 0;
      right: -9999px;
      bottom: 0;
      background-color: #29225c; }
  .carousel .item {
    background-position: 50% 50%;
    background-size: cover;
    min-height: 300px; }

#main .carousel .slider-title {
  font-size: 25px;
  line-height: 32px;
  color: #fff;
  margin: 0;
  font-weight: 700; }

.service {
  position: relative;
  padding: 36px 0 28px;
  text-align: center;
  color: #fff;
  font-size: 23px;
  line-height: 25px;
  font-weight: 300;
  margin: 0;
  text-transform: uppercase; }
  .service:before {
    position: absolute;
    content: "";
    z-index: -1;
    left: -9999px;
    top: 0;
    right: -9999px;
    bottom: 0;
    background: #c2b096; }
  .service li {
    margin: 0 0 9px; }
  .service a {
    color: #fff;
    text-decoration: none;
    -webkit-transition: all .25s linear;
    transition: all .25s linear; }
    .service a:hover {
      color: #29235c; }

.content-block {
  position: relative; }
  .content-block.content-holder {
    padding-top: 24px; }

.footer-area {
  padding-top: 28px;
  padding-bottom: 40px;
  position: relative;
  z-index: 1; }
  .footer-area:before {
    position: absolute;
    content: "";
    z-index: -1;
    left: -9999px;
    top: 0;
    right: -9999px;
    bottom: 0;
    background: #c2b096; }
  .footer-area h2 {
    margin: 0 0 31px;
    color: #29235c;
    font-weight: 300;
    padding-left: 26px;
    text-transform: uppercase; }
  .footer-area blockquote {
    border: none;
    margin: 0;
    font-size: 16px; }
    .footer-area blockquote q {
      display: block;
      font-weight: 400;
      padding: 0 0 0 11px; }
    .footer-area blockquote cite {
      font-weight: 700;
      font-style: normal;
      padding: 0 0 0 11px; }

#footer {
  width: 100%;
  background: #29225c;
  padding: 26px 0 0;
  font-size: 20px;
  line-height: 33px;
  color: #fff; }
  #footer h2 {
    margin: 0 0 40px;
    color: #fff;
    font-weight: 300;
    padding-left: 26px;
    text-transform: uppercase; }
  #footer address {
    margin-bottom: 31px;
    padding-left: 24px; }
    #footer address span {
      display: block; }
  #footer .tel, #footer .email {
    display: inline-block;
    vertical-align: top;
    color: #fff;
    text-decoration: none;
    -webkit-transition: all .25s linear;
    transition: all .25s linear;
    font-size: 20px;
    line-height: 22px;
    font-weight: 300;
    margin: 0 0 13px; }
  #footer .tel .fa-envelope, #footer .tel .fa-phone {
    margin: 0 17px 0 0;
    color: #c2b096;
    -webkit-transition: all .25s linear;
    transition: all .25s linear; }
  #footer .email .fa-envelope, #footer .email .fa-phone {
    margin: 0 17px 0 0;
    color: #c2b096;
    -webkit-transition: all .25s linear;
    transition: all .25s linear; }
  #footer .tel:hover, #footer .email:hover {
    color: #c2b096; }
  #footer .tel:hover .fa-envelope, #footer .tel:hover .fa-phone {
    color: #fff; }
  #footer .email:hover .fa-envelope, #footer .email:hover .fa-phone {
    color: #fff; }
  #footer .done-massage {
    padding: 0 11px; }
  #footer .search-form {
    overflow: hidden;
    position: relative;
    z-index: 1;
    padding: 0 11px; }
    #footer .search-form .col {
      width: 100%; }
      #footer .search-form .col:first-child {
        width: 100%; }
    #footer .search-form .row-sec {
      margin: 0 0 10px;
      overflow: hidden; }
      #footer .search-form .row-sec .jcf-select-opener {
        display: none; }
      #footer .search-form .row-sec option {
        padding: 6px 12px; }
    #footer .search-form .form-control {
      height: 39px;
      border: none;
      box-shadow: none;
      border-radius: 0;
      color: #29235c;
      font-weight: 400; }
      #footer .search-form .form-control::-webkit-input-placeholder {
        color: #29235c; }
      #footer .search-form .form-control::-moz-placeholder {
        opacity: 1;
        color: #29235c; }
      #footer .search-form .form-control:-moz-placeholder, #footer .search-form .form-control:-ms-input-placeholder, #footer .search-form .form-control.placeholder {
        color: #29235c; }
      #footer .search-form .form-control.error {
        border: 1px solid red; }
        #footer .search-form .form-control.error::-webkit-input-placeholder {
          color: red; }
        #footer .search-form .form-control.error::-moz-placeholder {
          opacity: 1;
          color: red; }
        #footer .search-form .form-control.error:-moz-placeholder, #footer .search-form .form-control.error:-ms-input-placeholder, #footer .search-form .form-control.error.placeholder {
          color: red; }
  #footer .email.add {
    margin-bottom: 54px; }
  #footer .search-form textarea {
    min-height: 161px;
    margin: 0 0 19px; }
  #footer .search-form .txt {
    display: none; }
  #footer .search-form .btn-default {
    width: 139px;
    padding: 7px 10px 6px;
    background: #c2b096;
    border: none;
    text-transform: uppercase;
    font-weight: 700;
    color: #29235c;
    border-radius: 0;
    text-align: center;
    margin: 0 0 23px;
    -webkit-transition: all .25s linear;
    transition: all .25s linear; }
    #footer .search-form .btn-default:hover {
      background: #fff; }
  #footer .social-network {
    font-size: 45px;
    line-height: 33px;
    color: #c2b096;
    padding: 0 0 0 11px; }
    #footer .social-network li {
      display: inline-block;
      vertical-align: top; }
    #footer .social-network a {
      color: #c2b096;
      text-decoration: none;
      -webkit-transition: all .25s linear;
      transition: all .25s linear; }
      #footer .social-network a:hover {
        color: #fff; }
  #footer .nav {
    font-size: 16px;
    background: #29225C;
    position: static;
    opacity: 1;
    visibility: visible;
    text-align: center;
    margin-top: 20px; }
    #footer .nav a {
      color: #ffffff; }

@media (min-width: 768px) {
  #header {
    margin-bottom: 50px; }
    #header .navbar-toggle {
      display: none; }
    #header .top-header {
      text-align: right;
      padding-top: 12px;
      padding-bottom: 19px;
      margin: 0 0 40px; }
    #header .nav-bar li {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 0 12px; }
    #header .nav {
      font-size: 15px;
      line-height: 18px;
      font-weight: 300;
      color: #29235c;
      text-align: right;
      padding-top: 23px;
      display: block;
      margin: 0 0 0 -80px; }
      #header .nav li {
        display: inline-block;
        vertical-align: middle;
        margin: 0 0 0 21px;
        position: relative; }
        #header .nav li:before {
          position: absolute;
          content: "";
          z-index: -1;
          left: -13px;
          top: 0;
          right: auto;
          bottom: auto;
          background: #29225c;
          width: 2px;
          height: 23px; }
        #header .nav li:first-child:before {
          display: none; }
      #header .nav .active a {
        position: relative; }
        #header .nav .active a:before {
          position: absolute;
          content: "";
          z-index: -1;
          left: 0;
          top: auto;
          right: auto;
          bottom: 0;
          height: 3px;
          width: 100%;
          background: #29225c; }
      #header .nav a {
        color: #29235c;
        text-decoration: none;
        -webkit-transition: all .25s linear;
        transition: all .25s linear;
        display: block;
        padding-bottom: 15px;
        position: relative; }
        #header .nav a:before {
          position: absolute;
          content: "";
          z-index: -1;
          left: 0;
          top: auto;
          right: auto;
          bottom: 0;
          height: 3px;
          width: 0;
          background: #29225c;
          -webkit-transition: width .25s linear;
          transition: width .25s linear; }
        #header .nav a:hover:before {
          position: absolute;
          content: "";
          z-index: -1;
          left: 0;
          top: auto;
          right: auto;
          bottom: 0;
          height: 3px;
          width: 100%;
          background: #29225c; }
  .logo {
    margin: 0;
    width: 150px; }
  #main .content {
    padding-bottom: 78px;
    padding-top: 78px; }
  #main .header {
    margin: 0 0 27px; }
  #main .txt-holder {
    padding-left: 0; }
  #main .title {
    font-size: 18px;
    line-height: 25px; }
  #main .feature-list {
    margin: 0 -1px 30px 0; }
  #main .img-holder {
    padding: 6px 15px 0; }
    #main .img-holder.map-holder {
      display: block; }
  #main .pull-right:before {
    top: -78px;
    bottom: -78px; }
  #main .pull-right .header {
    padding: 0 0 0 0px; }
  .carousel {
    margin-bottom: 3px; }
    .carousel .carousel-inner > .item > img {
      height: auto; }
    .carousel .caption {
      width: 524px;
      padding: 21px 27px 24px;
      margin: 228px 0 0;
      float: right;
      background-color: #29225c; }
      .carousel .caption:before {
        display: none; }
    .carousel .item {
      min-height: 560px; }
  .service {
    padding: 46px 0; }
    .service li {
      display: inline-block;
      vertical-align: middle;
      margin: 0 13px;
      position: relative; }
      .service li:before {
        position: absolute;
        content: "";
        z-index: -1;
        left: -16px;
        top: 2px;
        right: auto;
        bottom: auto;
        background: #fff;
        width: 2px;
        height: 21px; }
      .service li:first-child:before {
        display: none; }
  .content-block:after {
    position: absolute;
    content: "";
    z-index: -1;
    left: 50%;
    top: 0;
    right: auto;
    bottom: auto;
    border-style: solid;
    border-width: 34px 33.5px 0 33.5px;
    border-color: #c2b096 transparent transparent transparent;
    margin: 0 0 0 -31px; }
  .content-block.white:after {
    border-color: #fff transparent transparent transparent; }
  .content-block.content-holder {
    padding-top: 70px;
    padding-bottom: 78px; }
  .footer-area {
    padding-top: 73px; }
    .footer-area h2 {
      margin: 0 0 49px;
      padding-left: 0;
      text-align: center; }
    .footer-area blockquote q, .footer-area blockquote cite {
      padding: 0; }
  #footer {
    font-size: 16px;
    line-height: 25px;
    padding: 54px 0 0; }
    #footer h2 {
      margin: 0 0 49px;
      padding-left: 0;
      text-align: center; }
    #footer address {
      margin: 0;
      padding-left: 15px; }
    #footer .tel, #footer .email {
      font-size: 16px;
      line-height: 19px; }
    #footer .done-massage {
      padding: 0; }
    #footer .search-form {
      padding: 0; }
      #footer .search-form .col {
        width: 225px;
        float: left; }
        #footer .search-form .col:first-child {
          width: 225px;
          margin: 0 19px 0 0; }
      #footer .search-form textarea {
        min-height: 187px; }
      #footer .search-form .txt {
        display: block; }
      #footer .search-form .btn-default {
        float: right;
        margin: 0; }
    #footer .social-network {
      margin: -41px 0 0;
      padding: 0; } }

@media (min-width: 768px) and (min-width: 1024px) {
  #header .nav li:before {
    top: 2px; } }

@media (min-width: 1024px) {
  #header .nav {
    font-size: 17px;
    line-height: 23px; }
  .logo {
    width: 182px; }
  #main .title {
    font-size: 20px;
    line-height: 25px; }
  #footer {
    font-size: 20px;
    line-height: 33px; }
    #footer .tel, #footer .email {
      font-size: 20px;
      line-height: 22px; }
    #footer .done-massage {
      margin: 0 0 0 53px; }
    #footer .search-form {
      margin: 0 0 0 53px; }
      #footer .search-form .col {
        width: 271px; }
        #footer .search-form .col:first-child {
          width: 270px; } }

@media (min-width: 1200px) {
  #header .nav {
    font-size: 21px; }
  .carousel .carousel-inner > .item > img {
    width: 100%; }
  #footer .done-massage {
    margin: 0 0 0 63px; }
  #footer .search-form {
    margin: 0 0 0 63px; }
    #footer .search-form .col {
      width: 371px; }
  #footer .nav {
    padding-bottom: 20px; } }

@media (max-width: 1200px) {
  #header {
    z-index: 9999;
    position: relative; }
  .nav {
    background: #fff none repeat scroll 0 0;
    left: 0;
    position: absolute;
    right: 0;
    top: -100px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .25s linear;
    transition: all .25s linear;
    padding: 20px 20px 50px !important; }
  .nav-active .nav {
    opacity: 1;
    visibility: visible; }
  .carousel-indicators {
    display: none; } }
