/*! Made with Bones: http://themble.com/bones :) */
/******************************************************************
Site Name:
Author:

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.

Helpful articles on Sass file organization:
http://thesassway.com/advanced/modular-css-naming-conventions

******************************************************************/
/*********************
IMPORTING PARTIALS
These files are needed at the beginning so that we establish all
our mixins, functions, and variables that we'll be using across
the whole project.
*********************/
/*
font-family: 'Open Sans', sans-serif;
font-family: 'Playfair Display', serif;
*/
/*
@font-face {
  font-family: TrendSansOne;
  src: url(./TrendSansOne.otf);
}
*/

@import url("//hello.myfonts.net/count/3b1656");

  
/*@font-face {font-family: 'TrendSansOne-Italic';src: url('webfonts/3B1656_0_0.eot');src: url('webfonts/3B1656_0_0.eot?#iefix') format('embedded-opentype'),url('webfonts/3B1656_0_0.woff2') format('woff2'),url('webfonts/3B1656_0_0.woff') format('woff'),url('webfonts/3B1656_0_0.ttf') format('truetype');}*/
 
  
@font-face {font-family: 'TrendSansOne';src: url('../fonts/3B1656_1_0.eot');src: url('../fonts/3B1656_1_0.eot?#iefix') format('embedded-opentype'),url('../fonts/3B1656_1_0.woff2') format('woff2'),url('../fonts/3B1656_1_0.woff') format('woff'),url('../fonts/3B1656_1_0.ttf') format('truetype');}
 



body, html {
  height: 100%;
}
body {
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  color: #4A4A4A;
}
body.home {
  font-size: 1.1rem;
}
body.halt {
  overflow: hidden;
}

/* general */
.overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  background: rgba(255,255,255,.8);
}
.overlay-dark {
  background: rgba(0,0,0,.4);
}
.overlay-hover {
  opacity: 0;
  transition: .3s ease opacity;
}
.overlay-hover:hover {
  opacity: 1;
}
.square:after {
  content:'';
  float:left;
  padding-bottom: 100%; 
}
.rectangle:after {
  content:'';
  float:left;
  padding-bottom: 50%;  
}
.chubby-rectangle:after {
  content:'';
  float:left;
  padding-bottom: 75%;  
}
.tall-rectangle:after {
  content:'';
  float:left;
  padding-bottom: 150%; 
}
.circle {
  position: relative;
  border-radius: 50%;
  width: 100%;
  height: auto;
  padding-top: 100%;
  background: white;  
  display: block;
}
.video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.video-wrapper iframe, .video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video {
  max-width: 100%;
}
.p-absolute {
  position: absolute;
}
.p-relative {
  position: relative;
}
img {
  max-width: 100%;
  height: auto;
}
.bw {
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}
.rounded {
  border-radius: .5rem!important;
}

/* animations */
.fadeimg {
  visibility: hidden;
}
.fadeIn {
  -webkit-animation: animat_show 0.8s;
  animation: animat_show 0.8s;
  visibility: visible !important;
}
@-webkit-keyframes animat_show{
  0%{opacity:0}
  100%{opacity:1}
}


/* text/fonts */
.text-black {
  color: #000;
}
.text-red {
  color: #c90a18;
}
.text-blue {
  color:#005BAA;
}
.text-gray {
  color:rgba(0,0,0,.5);
}
.text-light-gray {
  color:#aaa;
}
.h1, h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
}
.font-trend {
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
}
h1,.h1 {
  font-family: 'Playfair Display', serif;
  text-transform: none;
  font-size: 2.7rem;
}
body.home h4 {
  font-size: 1.7rem;
}
h6,.h6 {
  font-size: .8rem;
}
.font-serif {
  font-family: 'Playfair Display', serif;
  font-style: normal;
  font-weight: 400;
  text-transform: none;
}
.font-sansserif {
  font-family: 'Open Sans', sans-serif;
  font-style: normal;
  font-weight: 400;
  text-transform: none;
}
.smallish {
  font-size: .875rem; /* 14.4 */
}
.smaller {
  font-size: .7rem; /* 11.2 */
}
.lh-2 {
  line-height: 2;
}
.ls-1 {
  letter-spacing: 1px;
}
.ls-2 {
  letter-spacing: 2px;
}

/* links */
a { 
  transition: .3s ease all;
  color: #4A4A4A;
}
a:hover {
  text-decoration: none;
  color: #c90a18;
}
a.hover-under:hover {
  text-decoration: underline;
}


/* buttons */
button:focus, .btn.focus, .btn:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
}
.btn {
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
  font-size: 1rem;
  border-radius: 0;
  padding-top: .5rem;
  padding-bottom: .5rem;
  transition: .4s ease all;
}
.btn:active, .btn:focus {
  outline:0;
  box-shadow:none;
  text-decoration: none;
}
.btn-primary {
  background: transparent;
  color: #4A4A4A;
  border: 0;
  position: relative;
}
.btn-primary:after {
  content:'';
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background-color: #C90A18;
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform 0.3s;  
}
.btn-primary:hover {
  color: #c90a18;
  color: #4A4A4A;
  background: transparent;
  border: 0;
}
.btn-primary:hover:after {
  transform-origin: bottom left;
  transform: scaleX(1);
}

.btn-link {
  color: #c90a18;
}
.btn-link:hover {
  color: #4A4A4A;
  text-decoration: none;
}

.btn-default {
  border: 0;
  color: #fff;
}
.btn-default:hover {
  border: 0;
  color: #ddd;
}
.btn-secondary {
  background-color: transparent;
  border-color: #fff;
}
.btn-secondary:hover {
  background-color: #fff;
  border-color: #fff;
  color: #900005;
}
.btn-submit {
  background: #c90a18;
  color: #fff;
  border-color: #c90a18;
}
.btn-submit:hover {
  background: #fff;
  color: #c90a18;
  border-color: #c90a18;
}

.btn.h4 {
  font-size: 1.5rem;
}

/* backgrounds */
.bg-black {
  background-color: #000;
}
.bg-light-gray {
  background-color: #F6F6F6;
}
.bg-white-trans {
  background-color: rgba(255,255,255,.9);
}
.bg-red {
  background-color: #C90A18;
}


/* borders */ 
.bl-dark {
  border-left: 1px solid #000;
}
.br-dark {
  border-right: 1px solid #000;
}
.bt-dark {
  border-top: 1px solid #000;
}
.bb-dark {
  border-bottom: 1px solid #000;
}
.bl-light {
  border-left: 1px solid #ddd;
}
.br-light {
  border-right: 1px solid #ddd;
}
.bt-light {
  border-top: 1px solid #ddd;
}
.bb-light {
  border-bottom: 1px solid #ddd;
}


/* forms */
.form-control {
  border-radius: 0;
}


/* header */
header.navbar {
  background: #fff;
  width: 100%;
  z-index: 20;
  transition: 1s ease all;
  left: 0;
  position: relative;
}
header.navbar.slidedown {
  position: fixed;
  top:-200px;
  left: 0;
}
header.navbar.sliddown {
  top:0;
}
.navbar-nav .dropdown-menu {
  position: absolute;
  right: 0;
  left: inherit;
}
.dropdown-toggle::after {
  border: 0;
}
.navbar-toggler {
  border: 0;
}
button.navbar-toggler:focus {
  box-shadow: none;
}
.nav-link {
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
  font-size: .9rem;
  color: #4A4A4A;
  position: relative;
}
.navbar .current-menu-item a.nav-link:after {
  content:'';
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background-color: #C90A18;
  transform: scaleX(1);
  transform-origin: bottom right;
  transition: transform 0.3s;
}

.navbar a.nav-link:after {
  /*border-bottom: 2px solid #fff;*/
  content:'';
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background-color: #C90A18;
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform 0.3s;
}
.navbar a.nav-link:hover:after {
  /*border-bottom: 2px solid #c90a18;*/
  transform-origin: bottom left;
  transform: scaleX(1);
}
#nav-icon {
  width: 26px;
  height: 17px;
  position: relative;
  margin: 4px;
  background: transparent;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  float: right;
}
#nav-icon span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #C90A18;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}
#nav-icon span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
#nav-icon span:nth-child(2) {
  top: 7px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
#nav-icon span:nth-child(3) {
  top: 14px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
#nav-icon.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 1px;
  left: 0px;
  background: #C90A18;
}
#nav-icon.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
}
#nav-icon.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 20px;
  left: 0px;
  background: #C90A18;
}

/* parallax */
.offset-left {
  left: 3rem;
  position: absolute;
}
.offset-right {
  right: 3rem;
  position: absolute;
}

/* posts */
.excerpt-read-more {
  display: none;
}

/* properties */
#searchform {
  z-index: 2;
  position: relative; 
}
.search-bar {
  background: rgb(235,32,39); /* Old browsers */
  background: -moz-linear-gradient(-45deg,  rgba(235,32,39,1) 0%, rgba(144,0,5,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg,  rgba(235,32,39,1) 0%,rgba(144,0,5,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg,  rgba(235,32,39,1) 0%,rgba(144,0,5,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eb2027', endColorstr='#900005',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.search-bar .form-control {
  background: transparent;
  border-top:0;
  border-left:0;
  border-right:0;
  border-bottom: 1px solid rgba(238, 238, 238,0);
  color: #fff;
  transition: .3s ease all;
  margin-right: 1rem;
}
.search-bar .form-control:focus {
  border-bottom: 1px solid rgba(238, 238, 238,1);
  outline:0;
  box-shadow:none;
}

.search-bar .form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #fff;
  opacity: 1; /* Firefox */
  font-size: .8rem;
}

.search-bar .form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #fff;
  font-size: .8rem;
}

.search-bar .form-control::-ms-input-placeholder { /* Microsoft Edge */
  color: #fff;
  font-size: .8rem;
}
.proptype{
  cursor: pointer;
  color: #999;
  transition: .3s ease all;
}
.proptype.active {
  color: #c90a18;
}
.proptype.active .prop-img {
  opacity: 1;
}

.prop-img-top {
  position: relative;
} 
.prop-img {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  transition: .3s ease all;
  opacity: 0;
  padding: inherit;
}
.prop-img.selected {
  opacity: 1;
}

.pos-bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 2;
}
.filter-arrow {
  transition: .3s ease all;
}
.filter-arrow.rotate {
  transform: rotate(180deg);
}
.custom-select {
  padding: 1rem;
  height: initial;
  border:0;
  border-bottom: 2px solid #C90A18;
  border-radius: 0;
}
.custom-checkbox .custom-control-label::before {
  border-radius: 0;
}
.custom-control-label::before {
  border-color: #C90A18;
}
.custom-control-input:checked~.custom-control-label::before {
  color: #fff;
  border-color: #C90A18;
  background-color: #C90A18;
}
.icon-label {
  font-size: .55rem;
}
.modal-content, .modal-header {
  background: transparent;
  border: 0;
}
.close {
  color: #fff;
  opacity: .8;
  text-shadow: none;
}
.modal-target {
  width: 100%;
  height: 100%;
  position: absolute;
}
.nudge-up {
  margin-top: -4rem;
}
.hover-light:hover {
  opacity: .8;
}

/* contact */
.contact-form .form-control {
  border:0;
  border-bottom: 2px solid #C90A18;
  background: #F6F6F6;
  padding: .75rem;
  height: inherit;
}
.contact-form .form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #4A4A4A;
  opacity: 1; /* Firefox */
  font-size: .8rem;
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
}
.contact-form .form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #4A4A4A;
  font-size: .8rem;
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
}
.contact-form .form-control::-ms-input-placeholder { /* Microsoft Edge */
  color: #4A4A4A;
  font-size: .8rem;
  font-family: 'TrendSansOne', sans-serif;
  text-transform: uppercase;
}
div.wpcf7 .ajax-loader {
  position: absolute;
  left: 0;
}

.property-banner {
  position: absolute;
  top: 0;
  transform: translateY(-100%);
  font-size: 1.3em;
  font-weight: 700;
  letter-spacing: 5px;
}

.listing-banner {
  position: absolute;
  z-index: 10;
  top: 17px;
  left: 0px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 3px;
}
.container-left-half,
.container-right-half {
  padding-right: 15px;
  padding-left: 15px;
}
.container-left-half {
  margin-right: 0;
  margin-left: auto;
}
.container-right-half {
  margin-right: auto;
  margin-left: 0;
}


@media(max-width: 576px) {
  h1,.h1 {
    font-size: 2rem;
  }  
  h4,.h4, .btn.h4 {
    font-size: 1.2rem;
  }
  .navbar-nav .dropdown-menu  {
    left: 0;
    right: initial;
  }
  .icon-label {
    font-size: .45rem;
  }  
  .filters-toggle {
    font-size: .8rem;
  }
  .overlay-hover {
    opacity: 1;
  }
  .fa-5x {
    font-size: 3rem;
  }
}

@media (min-width: 768px) {
  .container-left-half,
  .container-right-half {
    width: 375px;
  }
}
@media (min-width: 992px) {
  .container-left-half,
  .container-right-half {
    width: 485px;
  }
  .modal-lg, .modal-xl {
      max-width: 1000px;
  }
}
@media (min-width: 1200px) {
  .container-left-half,
  .container-right-half {
    width: 525px;
  }
}
