/*******************************************************

 *

 * Variables

 *

 *******************************************************/

:root {

  /** Font default */

  --font-family-default: "Compass Sans";

  --font-family-title: "Compass Sans";

  --font-size-default: 16px;

  --font-size-title: 18px;

  --font-color-default: #000000;

  --font-color-title: #6c757d;

  /** Use for input, button, and any other element */

  --background-color: #ffffff;

  --background-color-darker: #dbdbdb;

  --primary-text-color: #000;

  --primary-text-accent: #898989;

  --primary: #000;

  --primary-accent: #898989;

  --secondary: #ffffff;

  --accent-color: #000000;

  --success: #28a745;

  --info: #17a2b8;

  --warning: #ffc107;

  --danger: #dc3545;

  --light: #f8f9fa;

  --dark: #343a40;

  --pattern: url(../images/topographics.png);

  --mask-size: 100%;

  --mask-repeat: repeat;

}



/*******************************************************

 *

 * Globals

 *

 *******************************************************/

body {

  font-family: var(--font-family-default);

  font-size: var(--font-size-default);

  background: var(--background-color);

  color: var(--primary-text-color);

  margin: 0;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

}



/** Site Selection */

::-moz-selection {

  background: var(--primary);

  color: #fff;

}



::selection {

  background: var(--primary);

  color: #fff;

}



/** Site Link */

a,

button {

  color: inherit;

}



a:hover,

a:focus,

a:active,

button:hover,

button:focus,

button:active {

  text-decoration: none;

}



#nav li {

  position: relative;

  display: inline-block;

}



#nav li:hover>.sub-menu {

  opacity: 1;

  visibility: visible;

  pointer-events: auto;

  padding-top: 25px;

}



#nav .sub-menu {

  list-style: none outside none;

  margin: 0;

  background: transparent;

  display: block;

  padding: 0;

  position: absolute;

  min-width: 180px;

  top: 100%;

  left: 50%;

  padding-top: 40px;

  opacity: 0;

  visibility: hidden;

  pointer-events: none;

  transform: translateX(-50%);

  -webkit-transition: all 0.6s ease;

  transition: all 0.6s ease;

}



#nav .sub-menu a {

  color: #fff;

  display: block;

  padding: 10px 15px;

  background: var(--primary);

  white-space: nowrap;

}



#nav .sub-menu li {

  position: relative;

  display: block;

  padding: 0;

  text-align: center;

}



#nav .sub-menu li:hover a {

  background: #fff;

  color: #000;

  text-decoration: none;

}



#nav .sub-menu .sub-menu {

  top: 0;

  left: 100%;

  padding-top: 0;

  transform: none;

}



.slick-slide * {

  outline: none !important;

}



.container-padding {

  padding-left: 100px;

  padding-right: 100px;

}



.max-container {

  width: 100%;

  max-width: 1500px;

  margin: 0 auto;

}



.default_container {

  margin: 0 auto;

  width: 100%;

  max-width: 1240px;

}



.default_title {

  font-family: var(--font-family-title);

  display: inline-block;

  color: var(--primary-text-color);

  font-size: 60px;

  font-weight: 500;

}



.default_title span {

  display: block;

  font-family: var(--font-family-default);

  color: var(--primary-text-accent);

  font-size: 20px;

  position: relative;

  padding-top: 3px;

  font-weight: 400;

  padding-bottom: 10px;

  text-transform: uppercase;

}



.default_title_container {

  text-align: left;

}



.default_title_container.align-center {

  text-align: center;

}



.default_button {

  display: inline-block;

  border: 1px solid var(--primary-text-color);

  padding: 0 51px;

  height: 51px;

  line-height: 51px;

  text-align: center;

  font-weight: 700;

  font-family: var(--font-family-default);

  transition: all 0.6s ease;

  font-size: 15px;

  text-transform: uppercase;

}



.default_button.button_white {

  border-color: var(--secondary);

  color: var(--secondary);

}



.default_button.button_white:hover {

  background: #fff;

  color: var(--primary);

  border-color: #fff;

}



.default_button:hover {

  background: var(--primary);

  color: var(--secondary);

  border-color: var(--primary);

}



.default_pagination {

  display: flex;

}



.default_pagination div {

  padding: 10px 12px;

  cursor: pointer;

  font-size: 20px;

  color: var(--secondary);

}



.default_pagination div:first-child {

  border-right: 1px solid rgba(255, 255, 255, 0.251);

  padding-left: 0;

}



.pattern-black:after {

  -webkit-mask-image: var(--pattern);

  mask-image: var(--pattern);

  background: var(--accent-color);

}



.pattern-white::after {

  -webkit-mask-image: var(--pattern);

  mask-image: var(--pattern);

  background: #fff;

}



/* Sticky Contact Informations */

.sticky-contact-information {

  position: fixed;

  right: 35px;

  top: max(50%, 410px);

  /*z-index: 15;*/

  z-index: 999;

  transform: translate(0, -50%);

}



.sticky-contact-information ul {

  display: flex;

  flex-flow: column;

  align-items: center;

  justify-content: center;

}



.sticky-contact-information ul li {

  margin: 5px 0;

}



.sticky-contact-information ul li.st-divider {

  background-color: rgba(255, 255, 255, 0.2);

  width: 1px;

  height: 54px;

}



.sticky-contact-information ul li a {

  font-size: 20px;

  display: flex;

  width: 36px;

  height: 36px;

  background: var(--secondary);

  border-radius: 50%;

  align-items: center;

  justify-content: center;

  transition: all 0.6s ease;

  color: var(--primary);

}



.sticky-contact-information ul li a:hover {

  color: #fff;

  background: var(--primary);

}



.sticky-contact-information ul li a .ai-font-envelope-f {

  font-size: 11px;

}



.sticky-contact-information ul li a .ai-font-phone-alt {

  font-size: 14px;

}



/* Burger Menu */

.burdger-menu-float {

  position: fixed;

  right: -100%;

  top: 0;

  width: 100%;

  background: var(--primary);

  z-index: 99;

  height: 100%;

  color: #fff;

  transition: all 0.6s ease;

}



.burdger-menu-float.burger-show {

  right: 0;

}



.burdger-menu-float .glob-bg {

  display: block;

  width: 100%;

  height: 100%;

  position: absolute;

  left: 0;

  top: 0;

  background-repeat: no-repeat;

  background-size: cover;

  background-position: center top;

}



.burger-menu-wrap {

  display: flex;

  align-items: center;

  justify-content: center;

  height: 100%;

  width: 100%;

}



.burger-menu-wrap:after {

  display: block;

  content: "";

  width: 100%;

  height: 100%;

  position: absolute;

  left: 0;

  top: 0;

  background: transparent url(../images/qc-fp-bg.jpg) no-repeat;

  background-size: cover;

}



.burger-menu-wrap .close-bttn {

  position: absolute;

  right: 62px;

  top: 44px;

  color: var(--secondary);
  color: #fff;

  font-size: 30px;

  cursor: pointer;

  z-index: 5;

}



.burger-menu-wrap .burger-container {

  width: 100%;

  max-width: 1240px;

  position: relative;

  z-index: 6;

  display: flex;

}



.burger-menu-wrap .burger-container .navigation {

  width: 80%;

}



.burger-menu-wrap .burger-container .navigation #bur-nav {

  display: flex;

  flex-flow: row wrap;

}



.burger-menu-wrap .burger-container .navigation #bur-nav li {

  width: 33.3333333333%;

  padding: 20px 0;

}



.burger-menu-wrap .burger-container .navigation #bur-nav li a {

  font-size: 30px;

  text-transform: capitalize;

  transition: all 0.6s ease;

  color: var(--secondary);
  color: #fff;

}



.burger-menu-wrap .burger-container .navigation #bur-nav li:hover>a {

  opacity: 0.7;

}



.burger-menu-wrap .burger-container .navigation #bur-nav li ul {

  padding-top: 20px;

}



.burger-menu-wrap .burger-container .navigation #bur-nav li ul li {

  width: 100%;

  padding: 6px 0;

}



.burger-menu-wrap .burger-container .navigation #bur-nav li ul li a {

  font-size: 17px;

  color: #7c7c7c;

}



.burger-menu-wrap .contact-info {

  width: 20%;

}



.burger-menu-wrap .contact-info h2 {

  font-size: 30px;

  text-transform: capitalize;

  transition: all 0.6s ease;

  padding: 20px 0;

  color: var(--secondary);
  color: #fff;

}



.burger-menu-wrap .contact-info ul li {

  font-size: 17px;

  line-height: 1.7;

}



.burger-menu-wrap .contact-info ul li:first-child+li {

  margin-top: 35px;

}



.burger-menu-wrap .contact-info ul li,

.burger-menu-wrap .contact-info ul li a {

  color: #7c7c7c;

  transition: all 0.6s ease;

}



.burger-menu-wrap .contact-info ul a:hover {

  opacity: 0.7;

}



/* Header */

.header {

  width: 100%;

  position: fixed;

  top: 0;

  left: 0;

  z-index: 99;

  padding: 30px 15px 0;

  transition: all 0.6s ease;

}



.header .hd-wrap {

  width: 100%;

  max-width: 1500px;

  margin: 0 auto;

  display: flex;

  /*align-items: center;*/

}



.header .logo-wrap {

 /* width: 33%;*/

  width: 30%;

  flex-shrink: 0;

}



.header .logo-wrap a {

  display: flex;

  width: 100%;

  max-width: 200px;  

  color: #fff;

  align-items: center;

  -webkit-transition: all 0.4s ease-in-out;

  -moz-transition: all 0.4s ease-in-out;

  -o-transition: all 0.4s ease-in-out;

  transition: all 0.4s ease-in-out;

}



body.home .header .logo-wrap a {

	max-width: 400px;

}



.header .logo-wrap a img {

  width: 100%;

}



.header.show-fh .logo-wrap a {

  max-width: 48px;

  opacity: 0;

  pointer-events: none;

  display: none;

}



.header .logo-wrap a .logo {

  padding-right: 15px;

  flex-shrink: 0;

}



.header .logo-wrap a .logo img {

  max-height: 100px;

}



.header .logo-wrap a .logo h2 {

  font-size: 32px;

  font-family: var(--font-family-title);

  text-transform: uppercase;

  line-height: 1;

  transition: all 0.6s ease;

}



.header .logo-wrap a .logo span {

  text-transform: uppercase;

  font-size: 11px;

  line-height: 1.2;

  letter-spacing: 0.33em;

  transition: all 0.6s ease;

  display: block;

  white-space: nowrap;

  text-align: center;

  letter-spacing: 0.5em;

}



.header .logo-wrap a .logo-image {

  /*padding-left: 17px;

  border-left: 1px solid rgba(255, 255, 255, 0.302);*/

}



.header .logo-wrap a .logo-image i {

  font-size: 29px;

  transition: all 0.6s ease;

}



.header .navigation {

  /*width: 61%;*/

	width: 90%;

  transition: all 0.6s ease;

  flex-shrink: 0;

}



.header .navigation ul {

  display: flex;

  align-items: center;

  float: right;

}



.header .navigation ul li {

  position: relative;

  padding: 0 15px;

  transition: all 0.6s ease;

}



.header .navigation ul li a {

  /*color: var(--secondary);*/
  color: #fff;

  font-size: 15px;

  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.1em;

  transition: all 0.6s ease;

  position: relative;

  line-height: 1.4;

}



.header .navigation ul li a:after {

  display: block;

  /*background: var(--secondary);*/
  background: #fff;

  width: 0%;

  content: "";

  height: 2px;

  margin: 0;

  position: absolute;

  left: 0;

  opacity: 0;

  transition: all 0.6s ease;

  bottom: -20px;

}



.header .navigation>div>ul>li:hover>a:after {

  width: 100%;

  opacity: 1;

}



.header .navigation #nav>li:last-child a {

  display: block;

  /*color: var(--secondary);*/
  color: #fff;

  text-transform: uppercase;

  /*border: 2px solid var(--secondary);*/
  border: 2px solid #fff;

  width: 100%;

  padding: 15px 0;

  text-align: center;

  transition: all 0.6s ease;

  flex-shrink: 0;

  min-width: 117px;

  margin-left: 13px;

}



.header .navigation #nav>li:last-child a:hover {

  background: var(--secondary);

  color: var(--primary);

}



.header .navigation #nav>li:last-child a:after {

  display: none;

}



.header .burger-menu {

  width: 41px;

  flex-shrink: 0;

  margin-left: 3.3%;

  cursor: pointer;

}



.header .burger-menu span {

  display: block;

  width: 100%;

  height: 3px;

  /*background: var(--secondary);*/
  background: #fff;

  margin: 5px 0;

  float: right;

}



.header .burger-menu span:first-child {

  width: 19px;

}



.header .burger-menu span:last-child {

  width: 32px;

}



.header.show-fh {

  background: var(--primary);

  padding: 26px 15px;

}



.header.show-fh .logo-wrap {

  width: 30.3%;

}



.header.show-fh .logo-wrap a .logo h2 {

  font-size: 21px;

}



.header.show-fh .logo-wrap a .logo span {

  font-size: 7px;

}



.header.show-fh .logo-wrap a .logo-image i {

  font-size: 17px;

}



.header.show-fh .navigation {

  /*width: 55%;*/

  /*margin-left: 8.7%;*/

}



.header.show-fh .navigation ul li {

  padding: 0px 10px;

}



.header.show-fh .navigation ul li a {

  font-size: 14px;

}



.header.show-fh .navigation #nav>li:last-child a {

  width: auto;

  min-width: auto;

  margin: 0;

  padding: 0;

  border: none;

  display: inline-block;

}



.header.show-fh .navigation #nav>li:last-child a:hover {

  background: transparent;

  color: #fff;

}



.header.show-fh .navigation #nav>li:last-child a:after {

  content: "";

  display: block;

  background: var(--secondary);
  background: #fff;

  width: 0%;

  height: 2px;

  margin: 0;

  position: absolute;

  left: 0;

  opacity: 0;

  transition: all 0.6s ease;

  bottom: -20px;

}



.header.show-fh .navigation #nav>li:last-child:hover a:after {

  width: 100%;

  opacity: 1;

}



/** Footer **/

#main-footer {

  position: relative;

  font-size: 0;

  overflow: hidden;

  z-index: 0;

  /*padding-top: 100px;*/

  padding-top: 30px;

  padding-bottom: 100px;

}



#main-footer .ftr-top {

  position: relative;

  z-index: 5;

}



#main-footer .ft-logo {

  margin-bottom: 60px;

  padding: 0 15px;

  text-align: center;

}



#main-footer .ft-logo .footer-logo-cont {

  display: inline-block;

  text-align: center;

}



/* #main-footer .ft-logo .footer-logo-cont img {

  max-height: 100px;

} */

#main-footer .ft-logo h2 {

  font-size: 32px;

  font-family: var(--font-family-title);

  text-transform: uppercase;

  line-height: 1;

  margin: 0;

  font-weight: 400;

}



#main-footer .ft-logo span {

  text-transform: uppercase;

  font-size: 11px;

  line-height: 1.2;

  letter-spacing: 0.33em;

  letter-spacing: 0.5em;

  color: var(--primary-text-color);

}



#main-footer h2 {

  color: var(--primary-text-color);

  font-size: 19px;

  text-transform: uppercase;

  margin-bottom: 32px;

  font-weight: bold;

  font-family: var(--font-family-title);

}



#main-footer .ft-rows {

  display: flex;

}



#main-footer .ft-row:first-child+.ft-row {

  width: 27%;

  margin: 0 15%;

}



#main-footer .ft-row p {

  color: var(--primary-text-accent);

  font-size: 15px;

  line-height: 1.6;

}



#main-footer .ft-row ul li {

  color: var(--primary-text-accent);

  font-size: 15px;

  padding: 3px 0;

  line-height: 1.6;

}



#main-footer .ft-row ul li a {

  color: var(--primary-text-accent);

  font-size: 15px;

  transition: all 0.6s ease;

}



#main-footer .ft-row ul li a:hover {

  color: var(--primary-text-color);

}



#main-footer .ft-row ul.footernav li {

  text-transform: uppercase;

}



#main-footer .ft-row:nth-child(2) ul li:nth-child(3) {

  margin-top: 40px;

  display: block;

}



#main-footer .ftr-newsletter .newsletter-form {

  position: relative;

}



#main-footer .ftr-newsletter .newsletter-form input[type=email] {

  width: calc(100% - max(13%, 47px));

  background: transparent;

  color: var(--primary-text-accent);

  border: 1px solid var(--primary-text-accent);

  font-size: 15px;

  height: 57px;

  padding: 0px 15px;

  outline: none;

  border-right: none;

}



#main-footer .ftr-newsletter .newsletter-form span {

  display: block;

  width: auto;

}



#main-footer .ftr-newsletter .newsletter-form .wpcf7-spinner {

  width: 24px;

  height: 24px;

  width: 24px;

  position: absolute;

  top: 0;

  bottom: 0;

  right: 100%;

  margin: auto 15px;

}



#main-footer .ftr-newsletter .newsletter-form input:invalid:placeholder-shown {

  background: url(../images/error-icon.png) no-repeat 95% center transparent;

  background-size: 16px;

  border-color: red;

  padding-right: 16px;

  color: red;

}



#main-footer .ftr-newsletter .newsletter-form .wpcf7-not-valid-tip {

  position: absolute !important;

  top: 0;

  margin: auto 0;

  left: 20px !important;

  right: auto;

  font-size: 14px;

}



#main-footer .ftr-newsletter .newsletter-form .ajax-loader {

  width: 24px;

  position: absolute;

  top: 0;

  bottom: 0;

  right: 100%;

  margin: auto 15px;

}



#main-footer .ftr-newsletter .newsletter-form .ftr-bttn {

  position: absolute;

  top: 0;

  right: 0;

  height: 100%;

  background: var(--primary);

  width: max(13%, 46px);

}



#main-footer .ftr-newsletter .newsletter-form .ftr-bttn input {

  width: 100%;

  height: 100%;

  background: transparent;

  font-size: 0;

  border: none;

}



#main-footer .ftr-newsletter .newsletter-form .ftr-bttn i {

  font-size: 20px;

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  color: #fff;

}



#main-footer .ftr-newsletter .newsletter-form .wpcf7-response-output {

  text-align: center;

}



#main-footer .ftr-newsletter .smi {

  margin-top: 50px;

}



#main-footer .ftr-newsletter .smi a {

  display: inline-block;

  vertical-align: top;

  width: 47px;

  height: 47px;

  background: var(--primary);

  border-radius: 50%;

  text-align: center;

  font-size: 21px;

  line-height: 56px;

  color: #fff;

  margin: 0 6px;

  -webkit-transition: all 0.35s ease-in-out;

  -moz-transition: all 0.35s ease-in-out;

  -o-transition: all 0.35s ease-in-out;

  transition: all 0.35s ease-in-out;

}



#main-footer .ftr-newsletter .smi a:first-child {

  margin-left: 0;

}



#main-footer .ftr-newsletter .smi a:hover {

  opacity: 0.7;

}



#main-footer .wpcf7 form .wpcf7-response-output {

  color: #000;

  position: absolute;

  margin: 5px 0;

  width: 100%;

  font-size: 12px;

}



#main-footer .wpcf7-not-valid-tip {

  font-size: 16px;

  position: absolute;

  top: 0 !important;

  left: 0;

}



#main-footer .ft-copyright {

  margin-top: 70px;

  border-top: 1px solid #c3c3c3;

}



#main-footer .ft-copyright .compass-logo {

  color: var(--primary);

  font-size: 37px;

  margin-top: 36px;

}



#main-footer .ft-copyright .compass-copyright {

  color: var(--primary-text-accent);

  font-size: 15px;

  padding: 36px 0 10px;

  line-height: 1.8;

}



#main-footer .ft-copyright .compass-copyright p {

  display: block;

}



#main-footer .ft-copyright .copright {

  color: var(--primary-text-accent);

  font-size: 15px;

  line-height: 1.8;

  transition: all 0.6s ease;

}



#main-footer .ft-copyright .copright a:hover {

  color: var(--primary-text-color);

}



#main-footer .ft-copyright .copright i {

  color: var(--primary);

  font-size: 50px;

  margin-top: 20px;

  display: inline-block;

}



#main-footer .ft-copyright .copright i.ai-font-realtor-mls {

  margin-left: 15px;

}



/* Contact Form */

.hp-contact-us {

  position: relative;

}



.hp-contact-us .hp-contact-us-bg {

  width: 100%;

  position: absolute;

  height: 443px;

  left: 0;

  top: 50%;

  transform: translate(0, -50%);

  background-size: cover;

  background-position: center;

}



.hp-contact-us .hp-contact-us-bg::after {

  display: block;

  content: "";

  background: #000000;

  position: absolute;

  left: 0;

  top: 0;

  opacity: 0.5;

  width: 100%;

  height: 100%;

}



.hp-contact-us .hp-contct-us-wrapp {

  position: relative;

  background: var(--primary);

  width: 100%;

  max-width: 630px;

  margin: 0 auto;

  padding: 80px 87px;

}



.hp-contact-us .hp-contct-us-wrapp .glob-bg {

  display: block;

  content: "";

  width: 100%;

  height: 100%;

  position: absolute;

  left: 0;

  top: 0;

  opacity: 0.1;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw {

  position: relative;

  z-index: 5;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .default_title {

  font-size: 35px;

  color: var(--secondary);

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .default_title span {

  color: var(--secondary);

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form {

  margin-top: 37px;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form form {

  display: flex;

  flex-flow: row wrap;

  margin: -10px;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input {

  padding: 10px;

  position: relative;

  width: 50%;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input span {

  display: block;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input label {

  display: block;

  color: var(--secondary);

  font-size: 13px;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=text] {

  width: 100%;

  border: none;

  border-bottom: 1px solid var(--secondary);

  color: var(--secondary);

  background: transparent;

  height: 26px;

  margin-top: 3px;

  outline: none;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=text]::placeholder {

  font-size: 0;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=email] {

  width: 100%;

  border: none;

  border-bottom: 1px solid var(--secondary);

  color: var(--secondary);

  background: transparent;

  height: 26px;

  margin-top: 3px;

  outline: none;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=email]::placeholder {

  font-size: 0;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=tel] {

  width: 100%;

  border: none;

  border-bottom: 1px solid var(--secondary);

  color: var(--secondary);

  background: transparent;

  height: 26px;

  margin-top: 3px;

  outline: none;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=tel]::placeholder {

  font-size: 0;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=text].wpcf7-not-valid {

  background: url(../images/error-icon.png) no-repeat right center transparent;

  background-size: 16px;

  border-color: red;

  padding-right: 16px;

  color: red;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=email].wpcf7-not-valid {

  background: url(../images/error-icon.png) no-repeat right center transparent;

  background-size: 16px;

  border-color: red;

  padding-right: 16px;

  color: red;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input input[type=tel].wpcf7-not-valid {

  background: url(../images/error-icon.png) no-repeat right center transparent;

  background-size: 16px;

  border-color: red;

  padding-right: 16px;

  color: red;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input textarea {

  width: 100%;

  border: none;

  border-bottom: 1px solid var(--secondary);

  color: var(--secondary);

  background: transparent;

  height: 65px;

  margin-top: 3px;

  resize: none;

  outline: none;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input.field-lg {

  width: 100%;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .form-btn {

  position: relative;

  display: block;

  width: 100%;

  text-align: center;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .form-btn input[type=submit] {

  width: 100%;

  height: 51px;

  color: var(--secondary);

  font-weight: 500;

  font-size: 15px;

  background: transparent;

  border: 1px solid var(--secondary);

  max-width: 214px;

  margin: 40px auto 0;

  display: block;

  transition: all 0.6s ease;

}



.hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .form-btn input[type=submit]:hover {

  background: var(--secondary);

  color: var(--primary);

  border-color: var(--secondary);

}



.hp-contact-us .wpcf7 form .wpcf7-response-output {

  position: absolute;

  top: 100%;

  left: 0;

  right: 0;

  width: 100%;

  margin: 15px auto 0;

  color: #fff;

  font-size: 13px;

  text-align: center;

  line-height: 20px;

}



.hp-contact-us .use-floating-validation-tip .wpcf7-not-valid-tip {

  position: absolute;

  top: -50%;

  left: 0;

  background: transparent;

  border: none;

  width: 100%;

  text-align: right;

  font-size: 12px;

  padding: 0;

}



.hp-contact-us .use-floating-validation-tip .ajax-loader {

  position: absolute;

  left: 0;

  right: 0;

  top: -10px;

  margin: 15px auto;

  filter: invert(1);

}



.hp-contact-us .use-floating-validation-tip .wpcf7-spinner {

  position: absolute;

  left: 0;

  right: 0;

  top: -10px;

  margin: 15px auto;

  filter: invert(1);

}



/* CTA */

.hp-cta-wrap {

  position: relative;

  padding: 150px 0;

  background-size: cover;

  background-position: center center;

  overflow: hidden;

  background: var(--primary);

}



.hp-cta-wrap .glob-bg {

  display: block;

  width: 100%;

  height: 100%;

  content: "";

  position: absolute;

  left: 0;

  top: 0;

  opacity: 0.5;

  background-size: cover;

  background-position: center center;

}



.hp-cta-wrap .default_container {

  position: relative;

  z-index: 6;

}



.hp-cta-wrap .hp-cta {

  display: flex;

  margin: 0 -13.5px;

}



.hp-cta-wrap .hp-cta div {

  width: 33.3333333333%;

  padding: 0 25px;

}



.hp-cta-wrap .hp-cta div a {

  display: flex;

  width: 100%;

  background: var(--secondary);

  color: var(--primary);

  text-align: center;

  height: 180px;

  align-items: center;

  justify-content: center;

  font-weight: 500;

  font-size: 25px;

  letter-spacing: 0.15em;

  text-transform: uppercase;

  line-height: 1.3;

  transition: all 0.6s ease;

}



.hp-cta-wrap .hp-cta div a:hover {

  color: var(--secondary);

  background: var(--primary);

}



/*******************************************************

 *

 * IP Styles

 *

 *******************************************************/

.ip-banner {

  position: relative;

  width: 100%;

  z-index: 5;

}



.ip-banner::before {

  content: "";

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  z-index: 1;

  background: url(data:img/png;base64,iVBORw0KGgoAAAANSUhEUgAABkAAAACcCAQAAACNKa9CAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQflBQ4GFjXsxNWUAAADgklEQVR42u3dsRXDIBQEQWTRf+CCsbtYgj9TAem+Q+JZ3wUAAJDY69w+AgAAMMVev9tHAAAAphAgAABARoAAAAAZAQIAAGQECAAAkBEgAABARoAAAAAZ74AAAAAZCwgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQMZveAEAgIwFBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMd0AAAICMBQQAAMgIEAAAICNAAACAjAABAAAyAgQAAMgIEAAAICNAAACAjHdAAACAjAUEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIx3QAAAgIwFBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIeIgQAADIWEAAAIGMBAQAAMhYQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgs9e5fQQAAGAKCwgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJD53D4AAAAwx17n9hEAAIApXMECAAAyAgQAAMgIEAAAICNAAACAjAABAAAyAgQAAMh4BwQAAMhYQAAAgIyHCAEAgIwFBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyHgHBAAAyAgQAAAg4woWAACQ8RAhAACQsYAAAAAZAQIAAGR8hA4AAGQsIAAAQEaAAAAAGQECAABkBAgAAJDxEToAAJCxgAAAABkBAgAAZAQIAACQESAAAEBGgAAAABkBAgAAZPyGFwAAyFhAAACAjAABAAAyAgQAAMgIEAAAICNAAACAjL9gAQAAGQsIAACQESAAAEBGgAAAABnfgAAAABkLCAAAkBEgAABARoAAAAAZAQIAAGR8hA4AAGQsIAAAQEaAAAAAGVewAACAjAUEAADICBAAACAjQAAAgIxvQAAAgIwFBAAAyAgQAAAg4woWAACQsYAAAAAZCwgAAJCxgAAAABkBAgAAZFzBAgAAMhYQAAAgI0AAAICMK1gAAEDGAgIAAGQsIAAAQMYCAgAAZCwgAABAxgICAABkBAgAAJBxBQsAAMi867l9BAAAYAoLCAAAkLGAAAAAGQsIAACQeW8fAAAAmMMCAgAAZP44sIRFaYQA/QAAAABJRU5ErkJggg==) repeat-x top left;

}



.ip-banner canvas {

  display: block;

  position: relative;

  z-index: 0;

  width: 100%;

  min-height: 250px;

  background-color: var(--dark);

  background-position: center center;

  background-repeat: no-repeat;

  background-size: cover;

  background-image: url(../images/slide-1.jpg);

}



.ip-banner .container {

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  z-index: 2;

}



.ip-banner h1 {

  font-weight: 700;

  font-size: 32px;

  text-align: center;

  color: #FFFFFF;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  line-height: 1.7;

}



.ip-banner h1 span {

  display: block;

  font-size: 24px;

  font-weight: 400;

  text-transform: none;

  letter-spacing: 0.01em;

}



.ip-banner .ip-breadcrumbs {

  position: absolute;

  bottom: 0;

  z-index: 4;

  width: 100%;

  color: var(--secondary);

  font-size: 16px;

  padding-top: 21px;

  padding-bottom: 21px;

  text-transform: uppercase;

  letter-spacing: 0.05em;

}



.ip-banner .ip-breadcrumbs .breadcrumb_last,

.ip-banner .ip-breadcrumbs span {

  color: var(--secondary);

}



#inner-page-wrapper {

  padding-left: 15px;

  padding-right: 15px;

}



#inner-page-wrapper .container {

  position: relative;

  z-index: 6;

}



/* Adjust minimum height of page area */

#content-sidebar,

#content-full {

  min-height: 500px;

  margin-top: 20px;

}



/** Adjust width of content columns **/

#content-sidebar #content {

  width: 77.08%;

}



#content-full #content {

  width: 100%;

}



/* Adjust width of sidebar */

.sidebar {

  width: 20.83%;

}



/* fullwidth template */

.page-template-template-fullwidth #content {

  padding-left: 15px;

  padding-right: 15px;

}



.page-template-template-fullwidth #content ihf-search[data-eureka-id*=""].ihf-eureka {

  margin-left: -15px;

  margin-right: -15px;

}



#content>#breadcrumbs {

  display: none;

}



#content .entry-content a {

  color: #337ab7;

}



#content .entry-content a:focus,

#content .entry-content a:hover {

  color: #237fcf;

}



.single-aios-listings #inner-page-wrapper,

.aios-custom-ihomefinder-details-template #inner-page-wrapper {

  padding: 0;

}



/* Adjust line height of page elements */

#content h4,

aside h4,

#content p,

aside p,

#content blockquote,

aside blockquote,

#content ul,

aside ul,

#content fieldset,

aside fieldset,

#content form,

aside form,

#content ol,

aside ol,

#content dl,

aside dl,

#content dir,

aside dir,

#content menu,

aside menu {

  line-height: 1.7;

  font-weight: 700;

}



/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */

#content .entry-title,

#content .archive-title {

  font-family: var(--font-family-title);

  color: var(--primary);

  font-size: 33px;

  text-transform: uppercase;

}



/* Styles for category/archive/search/etc subheadings (h2) */

#content .archive-subtitle {

  color: var(--primary);

  font-family: var(--font-family-title);

}



body.ip-container .hp-contact-us {

  margin-top: 50px;

}



/** IHF Common Issues Fixes */

body>img,

body>iframe[name*=__bkframe] {

  display: none;

}



#ihf-main-container .mc-total-payment-subline {

  color: #666;

}



#ihf-main-container .nav-tabs {

  margin-left: 0;

}



#ihf-main-container .chosen-drop ul.chosen-results {

  padding-left: 0;

  margin: 0;

}



.ihf-grid-result-address {

  display: block;

}



#ihf-main-container #ihf-refine-map-search-form .checkbox,

#ihf-main-container #ihf-refine-map-search-form .col-xs-8 {

  padding: 0;

}



#ihf-agent-sellers-rep>div[style] {

  max-width: 100%;

}



#ihf-main-container .chosen-drop ul.chosen-results {

  max-height: 150px;

}



/** End of IHF Common Issues Fixes */

#content .contact-form .use-floating-validation-tip .wpcf7-not-valid-tip {

  width: auto;

  left: 0;

  display: inline-block;

  position: absolute;

}



/** Pojo Accessibility */

body #pojo-a11y-toolbar {

  bottom: 0 !important;

  top: auto !important;

}



body #pojo-a11y-toolbar.pojo-a11y-toolbar-left .pojo-a11y-toolbar-toggle {

  top: auto !important;

  bottom: 0 !important;

}



button:focus-visible,

a:focus-visible {

  outline-style: solid !important;

  outline-width: 5px !important;

  outline-color: red !important;

  transition: none !important;

}



/* High contrast and Negative contrast break canvas elements with backgrounds */

#pojo-a11y-toolbar .pojo-a11y-btn-high-contrast,

#pojo-a11y-toolbar .pojo-a11y-btn-negative-contrast,

#pojo-a11y-toolbar .pojo-a11y-btn-grayscale,

#pojo-a11y-toolbar .pojo-a11y-btn-light-background {

  display: none !important;

}



.agents-popup-form .wpcf7-not-valid-tip {

  position: absolute;

  top: 0;

  right: 0;

  left: auto;

  width: auto;

  line-height: 1;

}



.agents-popup-form .wpcf7-response-output {

  margin-left: auto;

  margin-right: auto;

  text-align: center;

}



.header .logo-wrap a.site-name-fixed {

  display: none;

}



.header.show-fh .logo-wrap a.site-name-fixed {

  display: block;

  opacity: 1;

  color: var(--secondary);
  color: #fff;

  text-transform: uppercase;

  letter-spacing: 1px;

  font-size: 15px;

  font-weight: 600;

  width: 100%;

  max-width: 100%;

}



.aios-custom-ihomefinder-results-template #content-full .entry-title {

  width: 100% !important;

  padding: 0 !important;

}



.aios-custom-ihomefinder-template #inner-page-wrapper>.container {

  width: 100%;

  padding: 0;

}



.ip-breadcrumbs.container-padding .container {

  width: 100%;

}



.page-template-template-fullwidth #content {

  padding-left: 0;

  padding-right: 0;

}



.aios-custom-ihomefinder-printable-template #content .listings-printable-header span {

  display: none;

}



.aios-custom-ihomefinder-printable-template #content .listings-printable-header img {

  width: 100%;

  max-width: 200px;

}



.error-page-content-wrapper .use-floating-validation-tip .wpcf7-not-valid-tip {

  position: absolute;

  width: auto;

  left: auto;

  right: 2px;

  font-size: 11px;

  top: 2px;

}



.error-page-content-wrapper .wpcf7 form .wpcf7-response-output {

  position: absolute;

  width: 100%;

  text-align: center;

  margin: auto;

  font-size: 13px;

}



.sticky-contact-information ul li a em.ai-font-google-my-business-outline {

	font-weight: bold;

  font-size: 23px;

}



.header-right {

	width: 70%;

	display: flex;

	justify-content: flex-end;

	align-items: center;

	flex-wrap: wrap;

	align-self: flex-start;

}



.header-info {

	width: 100%;

	flex-grow: 1;

	text-align: right;

	margin: 40px 0 20px;

}



.header-info-wrap {

	display: flex;

	justify-content: flex-end;

	gap: 30px;

}



.header-info-wrap span {

	color: var(--secondary);
	color: #fff;

	font-size: 18px;

	font-weight: 500;

	letter-spacing: 0.05em;

	transition: all 0.6s ease;

	position: relative;

	line-height: 1.4;

}



.header-info-wrap span i {

	font-size: 13px;

}



.header-info-wrap span a:hover {

	/*color: var(--primary);*/

}



.header.show-fh .header-info {

	margin-top: 0;

}



.fp-pagination .default_button.button_white {

	padding: 0 25px;

	margin-left: 20px;

}

.grecaptcha-badge{
  bottom: 140px!important;
  z-index: 999;
}

#agents-results .agents-contact li a:hover {
    color: var(--secondary) !important;
}



/*******************************************************

 *

 * Media Queries

 *

 *******************************************************/



@media only screen and (max-width: 1366px) {

  .header .logo-wrap {

    width: 28%;

  }

	

	body.home .header .logo-wrap a {

	max-width: 300px;

}



  .header .logo-wrap a .logo h2 {

    font-size: 30px;

  }



  .header .logo-wrap a .logo span {

    font-size: 9px;

  }



  .header .logo-wrap a .logo-image i {

    font-size: 20px;

  }



  .header .navigation {

    /*margin-left: 3.5%;*/

  }



  .header .navigation ul li {

    padding: 0 8px;

  }



  .header .navigation ul li a {

    font-size: 13px;

  }



  .header .navigation #nav>li:last-child a {

    min-width: 74px;

    padding: 8px 0;

  }



  .header.show-fh .logo-wrap {

    width: 24%;

  }



  .header.show-fh .logo-wrap a .logo h2 {

    font-size: 17px;

  }



  .header.show-fh .logo-wrap a .logo span {

    font-size: 6px;

  }



  .header.show-fh .logo-wrap a .logo-image i {

    font-size: 13px;

  }



  .header.show-fh .navigation {

    /*width: 55%;

    margin-left: 13.5%;*/

  }



  .header.show-fh .navigation ul li {

    padding: 0px 8px;

  }



  .header.show-fh .navigation ul li a {

    font-size: 12px;

  }



  #main-footer .wpcf7 form .wpcf7-response-output {

    font-size: 10px;

  }

}



@media only screen and (max-width: 1199px) {

  .default_title {

    font-size: 30px;

  }



  .max-container {

    padding: 0 15px;

  }



  .burger-menu-wrap .burger-container {

    padding: 0 20px;

  }



  .header .logo-wrap {

    width: 28%;

  }



  .header .logo-wrap a .logo h2 {

    font-size: 20px;

  }



  .header .logo-wrap a .logo span {

    font-size: 6px;

  }



  .header .logo-wrap a .logo-image i {

    font-size: 15px;

  }



  .header.show-fh .navigation ul li {

    padding: 0px 3px;

  }



  .header .navigation ul li a,

  .header.show-fh .navigation ul li a {

    font-size: 11px;

  }



  #main-footer .ftr-newsletter .smi a {

    width: 30px;

    height: 30px;

    font-size: 14px;

    line-height: 38px;

  }



  #main-footer h2 {

    font-size: 13px;

  }



  .hp-cta-wrap .hp-cta div a {

    font-size: 19px;

  }

}



@media only screen and (max-width: 991px) {

  .aios-mobile-header-wrapper {

    display: block !important;

  }



  .default_container {

    max-width: 750px;

  }



  .sticky-contact-information {

    display: none;

  }



  #pojo-a11y-toolbar {

    display: none;

  }



  .header {

    position: relative;

    background: var(--primary);

    padding: 30px;

    margin-top: 52px;

  }



  .header .navigation {

    display: none;

  }



  .header .burger-menu {

    display: none;

  }



  .header .logo-wrap {

    width: 100%;

  }



  .header .logo-wrap a {

    justify-content: center;

	  margin: auto;

  }

	

	body.home .header .logo-wrap a {

		 max-width: 200px; 

	}

	

	.header-right {

		display: none;

	}



  .header .logo-wrap a .logo h2 {

    font-size: 25px;

  }



  .header .logo-wrap a .logo span {

    font-size: 8px;

  }



  .header .logo-wrap a .logo-image i {

    font-size: 20px;

  }



  .burdger-menu-float {

    display: none;

  }



  #main-footer .ftr-newsletter {

    padding-top: 40px;

  }



  .hp-contact-us .hp-contct-us-wrapp {

    padding: 50px;

  }



  .hp-contact-us .wpcf7 form .wpcf7-response-output {

    position: relative;

    top: 0;

  }



  /* The following are used on inner pages. Please edit carefully. */

  .inner {

    width: 100%;

  }



  #content-sidebar,

  #content-full {

    width: 100%;

  }



  .outer {

    width: 100%;

    min-width: 100%;

  }



  #content-sidebar #content {

    width: 100%;

  }



  .footer {

    width: 100%;

    background: #d7d7d7;

    padding: 30px 0;

  }



  .footer p {

    line-height: 1.7;

    text-align: center;

  }



  .footer .footernav {

    display: flex;

    flex-flow: column;

    align-items: center;

    justify-content: center;

  }



  .footer .footernav li {

    padding: 10px;

  }



  .footer .footer-logo {

    width: 100% !important;

    float: none !important;

  }



  .hp-cta-wrap {

    padding: 60px 0;

  }



  .hp-cta-wrap .hp-cta {

    flex-flow: column;

    margin: 0;

    padding: 0 30px;

  }



  .hp-cta-wrap .hp-cta div {

    width: 100%;

    margin: 10px 0;

    padding: 0;

  }

}



@media only screen and (max-width: 767px) {

  .container-padding {

    padding: 0 20px;

  }



  #main-footer {

    /*padding-top: 50px;*/

    padding-top: 30px;

    padding-bottom: 50px;

  }



  #main-footer h2 {

    font-size: 13px;

    margin-bottom: 5px;

  }



  #main-footer .ft-logo {

    margin-bottom: 40px;

  }



  #main-footer .ft-rows {

    flex-flow: column;

  }



  #main-footer .ft-row {

    width: 100% !important;

    margin: 20px 0 !important;

  }



  #main-footer .ft-row ul li .ai-mobile-phone {

    margin-top: 0;

  }



  .header .logo-wrap {

    text-align: center;

  }



  .header .logo-wrap a {

    display: inline-flex;

    flex-direction: column;

    width: auto;

  }



  .header .logo-wrap a .logo {

    padding-right: 0;

  }



  .header .logo-wrap a .logo-image {

    display: block;

    width: 100%;

    text-align: center;

    margin: 10px 0 0;

    padding: 10px 0 0;

    border-left: none;

    border-top: 1px solid rgba(255, 255, 255, 0.302);

  }



  .ip-banner .container {

    width: 100%;

  }

}



@media only screen and (max-width: 480px) {

  .hp-contact-us .hp-contct-us-wrapp .hpcw .hp-contact-form .field-input {

    width: 100%;

  }



  #main-footer .ftr-newsletter .newsletter-form .wpcf7-not-valid-tip {

    font-size: 12px;

  }



  #content .contact-main {

    margin: 50px 0px !important;

    padding: 60px 0 0 !important;

  }



  #content .contact-info ul li {

    font-size: 12px !important;

  }



  #content .contact-info ul li i.location {

    min-width: 20px;

  }



}



input#ihf-login-user-password {

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

  outline: none !important;

  box-shadow: none !important;

  display: block;

  width: 100%;

  height: 40px;

  font-size: 15px;

  font-weight: 400;

  border: none !important;

  border-bottom: 1px solid #a5a5a5 !important;

  border-radius: 0 !important;

  padding: 0 !important;

  color: #636363;

  -webkit-box-shadow: none;

  box-shadow: none;

  background: none;

}



input#ihf_inforeq_password {

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

  outline: none !important;

  box-shadow: none !important;

  display: block;

  width: 100%;

  height: 40px;

  font-size: 15px;

  font-weight: 400;

  border: none !important;

  border-bottom: 1px solid #a5a5a5 !important;

  border-radius: 0 !important;

  padding: 0 !important;

  color: #636363;

  -webkit-box-shadow: none;

  box-shadow: none;

  background: none;

}