/*
Theme Name: Kristopher German
Description: AIOS mobile semi-custom theme.
Author: AgentImage
Author URI: http://www.agentimage.com
Version: 1.6.1
Tags: one-column, two-columns, right-sidebar, custom-menu, full-width-template, sticky-post
License: Proprietary
License URI: http://www.agentimage.com
Template: aios-starter-theme
*/

/*

TABLE OF CONTENTS

1. Variables
2. Custom CSS
3. IP styles
4. MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css

*/

/*******************************************************
 *
 * 1. Variables
 *
 *******************************************************/

:root {
  /** Font default */
  /* --font-family-default: 'Open Sans', sans-serif; */
  /* --font-family-title: 'Noto Serif', serif; */
  --font-family-default: "Poppins", sans-serif;
  --font-family-title: "Playfair Display", serif;
  --font-size-default: 14px;
  --font-size-title: 18px;
  --font-color-default: #000000;
  --font-color-title: #000000;

  /** Use for input, button, and any other element */
  --primary: #007bff;
  --secondary: #000000;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  /* --default-transition: .3s cubic-bezier(.4,0,.2,1); */

  --title-font: "Playfair Display", serif;
  --text-font: "Poppins", sans-serif;
  --primary-color: #1b75bc;
  --accent-color: #000000;
  --default-transition: all 0.35s ease-in-out;
}

/*******************************************************
 *
 * 2. Navigation
 *
 *******************************************************/

/* Sub Menu */
#nav li {
  position: relative;
  display: inline-block;
}

#nav .sub-menu {
  list-style: none outside none;
  margin: 0;
  background: rgba(0, 0, 0, 0.9) url("images/submenu-fixer.png");
  display: none;
  padding: 0;
  position: absolute;
  width: 100%;
  min-width: 180px;
}

#nav .sub-menu a {
  color: #ffffff;
  display: block;
  padding: 10px;
}

#nav .sub-menu a:hover {
  background: none repeat scroll 0 0 var(--light);
  color: var(--font-color-default);
  text-decoration: none;
}

#nav .sub-menu .sub-menu {
  margin-left: 100%;
  top: 0;
}

#nav li:hover > .sub-menu {
  display: block;
}

#nav .sub-menu li {
  position: relative;
}

/*******************************************************
 *
 * 3. Custom CSS
 *
 *******************************************************/

/* Global */

body {
  font-family: var(--font-family-default);
  /* font-size: var(--font-size-default); */
  font-size: 15px;
  background: #ffffff;
  color: var(--font-color-default);
  margin: 0;

  /* Remove the comment from line 85 to 86 if the font issue in safari occurs */
  /* -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; */
}

/********* START DEFAULT STYLES *******/
#main-wrapper {
  overflow: hidden;
}

.site-easing {
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  -ms-transition: all 0.35s ease-in-out;
  -o-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}

.blue-btn a {
  display: block;
  padding: 14.5px 18px;
  font-size: 15px;
  background: var(--primary-color);
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.blue-btn a:hover {
  background: var(--accent-color);
}

.section-title {
  position: relative;
}

.section-title.centered {
  text-align: center;
}

.section-title h2 {
  font-size: 60px;
  letter-spacing: 0.04em;
  font-weight: 500;
  color: #000000;
  text-transform: uppercase;
}

.section-title span {
  font-size: 21px;
  color: #000000;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  font-weight: 400;
  display: block;
}

.section-title.white h2 {
  color: #ffffff;
}

.section-title.white span {
  color: #ffffff;
}

.section-title::after {
  position: absolute;
  content: "";
  width: 30px;
  height: 2px;
  bottom: -27px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #1b75bc;
}

.site-btn a,
.site-btn > span {
  display: block;
  width: 100%;
  max-width: 204px;
  padding: 17px;
  /* margin: auto; */
  color: #000000;
  letter-spacing: 0.12em;
  font-size: 14px;
  text-transform: uppercase;
  border: 1px solid #8c8c8c;
  transition: var(--default-transition);
  text-align: center;
  position: relative;
}

.site-btn a:hover,
.site-btn > span:hover {
  border: 1px solid var(--primary-color);
  background-color: var(--primary-color);
  color: #ffffff;
}

.site-btn.with-line a::after,
.site-btn.with-line > span::after {
  position: absolute;
  content: "";
  width: 75px;
  height: 3px;
  bottom: 0;
  background-color: var(--primary-color);
  left: 50%;
  transform: translateX(-50%);
}

.site-btn.white-btn a,
.site-btn.white-btn > span {
  color: #ffffff;
  border: 1px solid #ffffff;
}

.site-btn.white-btn a:hover,
.site-btn.white-btn > span:hover {
  border: 1px solid var(--primary-color);
  background-color: var(--primary-color);
  color: #ffffff;
}

.site-btn.white-btn > span:hover {
  border-color: #ffffff;
}

.img-wrap {
  position: relative;
}

.img-wrap canvas {
  position: relative;
  display: block;
  height: auto;
  width: 100%;
}

.img-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  /*    object-fit: cover;*/
  object-fit: contain;
  font-size: 0;
  width: 100%;
  height: 100%;
  outline: none;
  transition: var(--default-transition);
}

.slick-btn {
  display: flex;
}

.slick-btn a {
  display: flex;
  align-items: center;
  position: relative;
  width: max-content;
  /* margin: 0 21px; */
}

.slick-btn a.slide-prev {
  margin-right: 21px;
}

.slick-btn a.slide-next {
  margin-left: 21px;
}

.slick-btn a span {
  font-size: 13px;
  color: #ffffff;
  font-weight: 300;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  position: relative;
  transition: var(--default-transition);
}

.slick-btn a.slide-prev span {
  padding-left: 15px;
}

.slick-btn a.slide-next span {
  padding-right: 15px;
}

.slick-btn a i {
  color: #ffffff;
  position: absolute;
  z-index: 1;
  /* top: 50%;
    transform: translateY(-50%); */
}

.slick-btn a i.slick-arrow::before {
  position: absolute;
  content: "";
  width: 28px;
  height: 14px;
  background-image: url("https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/07/slick-arrow-white.png");
  background-size: contain;
  background-repeat: no-repeat;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.slick-btn a.slide-prev i.slick-arrow::before {
  left: 0;
}

.slick-btn a.slide-next i {
  right: 30px;
}

.slick-btn a.slide-next i.slick-arrow::before {
  transform: scaleX(-1) translateY(-50%);
  right: 0;
}

.slick-btn a .circle {
  position: relative;
  width: 34px;
  height: 34px;
  border: 1px solid #ffffff;
  border-radius: 50%;
  /* top: 50%;
    transform: translateY(-50%); */
  opacity: 51%;
  transition: var(--default-transition);
}

.slick-btn a.slide-prev .circle {
  margin-left: 14px;
}

.slick-btn a.slide-next .circle {
  margin-right: 14px;
}

/* .slick-btn a.slide-prev .circle i{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -8px;
}
.slick-btn a.slide-next .circle i{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -8px;
} */
/* .slick-btn a .circle::before{
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    border: 1px solid #ffffff;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 51%;
    transition: var(--default-transition);
} */

/* .slick-btn a span::before{
    position: absolute;
    content: '';
    width: 34px;
    height: 34px;
    border: 1px solid #ffffff;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 51%;
}
.slick-btn a span::after{
    position: absolute;
    content: '';
    width: 13px;
    height: 2px;
    background: #ffffff;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    z-index: 1;
}
.slick-btn a.slide-prev span::before{
    left: -13px;
}
.slick-btn a.slide-next span::before{
    right: -13px;
}
.slick-btn a.slide-prev span::after{
    left: -11px;
}
.slick-btn a.slide-next span::after{
    right: -11px;
} */
/* .slick-btn a:hover .circle::before{
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
}
.slick-btn a i{

} */
.bg-section {
  position: absolute;
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  top: 0;
  left: 0;
  overflow: hidden;
}

.bg-section canvas {
  width: 100%;
  height: 100%;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.desktop-btn {
  /* display: block !important; */
}

.mobile-btn {
  display: none !important;
}

/*******  END DEFAULT STYLES ******/

/*******  HEADER ******/
.header {
  z-index: 5;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  font-size: 0;
  text-align: center;
  padding: 0 25px;
  /* height: 100px; */
}

.header.fixed {}

.header::before {
  content: "";
  background: #ffffff;
  height: 100%;
  width: 100%;
  opacity: 1;
  top: 0;
  left: 0;
  position: absolute;
  transition: var(--default-transition);
}

.header.fixed::before {
  height: 100%;
}

.header > .container {
  width: 100%;
  max-width: 1400px;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  transition: var(--default-transition);
  padding: 0;
}

.header_logo {
  visibility: visible;
  opacity: 1;
  margin-right: auto;
  transition: var(--default-transition);
}

.header_logo img {
  transition: var(--default-transition);
}

.header_logo .client-logo {
  opacity: 1;
}

.header.fixed .header_logo .client-logo {
  opacity: 0;
}

.header_logo .fixed-logo {
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.header.fixed .header_logo .fixed-logo {
  opacity: 1;
}

.header.fixed .header-contact {
  visibility: hidden;
  opacity: 0;
}

#dh-nav {
  display: flex;
}

#dh-nav > li {
  position: relative;
  padding: 30.5px 25.5px;
  transition: var(--default-transition);
  display: flex;
  align-items: center;
}

#dh-nav > li:hover {
  background: var(--accent-color);
}

.fixed #dh-nav > li {}

/* #dh-nav > li::after{
    content: '';
    position: absolute;
    height: 100%;
    width: 1px;
    right: -34px;
    background: #ffffff;
} */
#dh-nav > li:last-child {
  border-right: none;
  padding-left: 0;
  padding-right: 0;
}

#dh-nav li a {
  font-size: 15px;
  font-family: var(--font-family-default);
  color: #000000;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-weight: 400;
  transition: var(--default-transition);
}

#dh-nav > li a {
  position: relative;
  padding: 0 4px;
}

#dh-nav > li:last-child a {
  display: block;
  max-width: 180px;
  padding: 0 10px;
}

#dh-nav > li:hover > a {
  color: #ffffff;
}

/****** SUB MENU ******/
#dh-nav .sub-menu {
  z-index: 2;
  list-style: none outside none;
  margin: 0;
  /* padding: 66px 0 0; */
  position: absolute;
  width: 100%;
  text-align: center;
  left: -150%;
  right: -150%;
  margin: 0 auto;
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  bottom: calc(-100% + -11px);
  bottom: unset;
  top: 100%;
}

#dh-nav .sub-menu li {
  padding: 0;
  position: relative;
  margin: auto;
  background: rgb(0, 0, 0, 73%);
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}

#dh-nav .sub-menu li::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #000000;
  opacity: 0;
  transition: var(--default-transition);
}

#dh-nav .sub-menu li:hover::before {
  opacity: 41%;
}

.fixed #dh-nav .sub-menu {
  padding: 79px 0 0;
}

.fixed #dh-nav li:hover > .sub-menu {
  padding: 42px 0 0;
  padding: 0;
}

#dh-nav .sub-menu li a {
  color: #ffffff;
  display: block;
  padding: 18px 21px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  position: relative;
  z-index: 1;
  font-weight: 300;
}

#dh-nav li:hover > .sub-menu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  /* padding: 38px 0 0; */
}

/* SCHEDULE A CALL BTN */
.sched-call {
  margin-left: 5px;
}

/************** HP SLIDESHOW *************/
.hp-slideshow-wrap {
  position: relative;
}

.hp-slideshow {
  position: relative;
}

.hp-slideshow::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000000;
  opacity: 45%;
}

/************** HP TAGLINE *************/
.tagline-wrap {
  position: absolute;
  top: 48%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 100%;
}

.tagline-wrap h1 {
  font-size: 70px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-align: center;
  color: #ffffff;
  text-transform: uppercase;
}

.tagline-wrap h1 span {
  font-size: 38px;
  letter-spacing: 0.38em;
  display: block;
  margin-top: 7px;
}

.tagline-btn {
  margin-top: 30px;
}

.tagline-btn a {
  font-size: 14px;
  letter-spacing: 0.12em;
  padding: 22.5px 0;
  text-align: center;
  width: 100%;
  max-width: 241px;
  margin: auto;
}

/************** HP CTA *************/
.hp-cta {
  position: absolute;
  bottom: 0;
  width: 100%;
}

.cta-wrap {
  display: flex;
  flex-flow: row wrap;
}

.cta-item {
  width: calc(100% / 3);
  position: relative;
  /* cursor: pointer; */
}

.cta-item a {
  display: block;
  width: 100%;
  height: 100%;
}

.cta-item-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 32.5px 0;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.cta-item-inner > span {
  position: absolute;
  right: -10px;
  top: -85px;
  font-size: 222px;
  font-family: var(--font-family-title);
  color: #ffffff;
  opacity: 0.06;
  pointer-events: none;
}

.cta-title h2 {
  font-size: 35px;
  color: #ffffff;
  letter-spacing: 0.04em;
  font-weight: 400;
  /* text-align: center; */
  text-transform: uppercase;
}

.cta-title span {
  font-size: 16px;
  position: relative;
  display: block;
  width: max-content;
  margin: auto;
  margin-bottom: 2px;
}

.cta-title span::after {
  position: absolute;
  content: "";
  width: 30px;
  height: 2px;
  background-color: #ffffff;
  display: inline-block;
  margin-left: 14px;
  bottom: 9px;
}

.cta-item:first-child {
  background-color: #2575bc;
}

.cta-item:nth-child(2) {
  background-color: #2e8bdb;
}

.cta-item:last-child {
  background-color: #369ef5;
}

.cta-item img {
  height: auto;
}

.cta-item:first-child img {
  margin-right: 28px;
}

.cta-item:nth-child(2) img {
  margin-right: 23px;
}

.cta-item:last-child img {
  margin-right: 15px;
  margin-top: 8px;
}

.cta-item:last-child .cta-title span {
  padding-left: 4px;
}

.cta-item:last-child .cta-title {
  margin-right: 55px;
}

.cta-hover {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  box-shadow: 0px 0px 20.16px 0.84px rgba(0, 0, 0, 0.07);
  color: #ffffff;
  background: #2e8bdb;
  padding: 35px 46px;
  line-height: 2.143;
  font-size: 14px;
  letter-spacing: 0.02em;
  font-weight: 300;
  width: 100%;
  z-index: 1;
  text-align: center;
  transition: var(--default-transition);
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.cta-item:hover .cta-hover {
  visibility: visible;
  opacity: 1;
}

/****** HP OWNING MULTI FAMILY ******/
.hp-omf-wrap {
  position: relative;
  padding: 95px 15px 100px;
}

.hp-omf {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: auto;
}

.hp-omf .section-title span {
  line-height: 1.429;
  display: block;
  font-weight: 500;
  width: 100%;
  max-width: 1030px;
  margin: auto;
  margin-top: 13px;
}

.hp-omf .desc {
  margin-top: 60px;
  padding: 0 16px;
}

.hp-omf .desc p {
  color: #000000;
  /* font-size: 15px; */
  line-height: 1.733;
  text-align: center;
  font-weight: 300;
}

.hp-omf .site-btn {
  margin-top: 38px;
}

.hp-omf .site-btn a {
  margin: auto;
}

/****** HP EXECUTABLE PLAN ******/
.hp-ep-wrap {
  position: relative;
  padding: 80px 0 85px;
}

.hp-ep {
  position: relative;
  width: 100%;
}

.hp-ep-bg {
  height: 49.84%;
  top: unset;
  bottom: 0;
}

.hp-ep-bg canvas {
  filter: grayscale(1);
  opacity: 9%;
}

.hp-ep-bg::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, transparent 0%, #ffffff 100%);
  top: 0;
  left: 0;
}

.hp-ep .section-title span {
  display: block;
  font-weight: 500;
  margin-bottom: 8px;
}

.hp-ep .section-title::after {
  bottom: -20px;
}

.ep-inner {
  margin-left: 6.25%;
  margin-right: 4.0625%;
  display: flex;
  margin-top: 72px;
  position: relative;
}

.ep-inner .img-area {
  position: relative;
  width: 50.59%;
}

.ep-inner .text-area {
  width: 54.425%;
  z-index: 1;
  position: absolute;
  right: 0;
  padding: 28px 65px 40px 60px;
  background: var(--primary-color);
}

.ep-inner .text-area::after {
  position: absolute;
  content: "";
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background: var(--primary-color);
  border-left: 1px solid #5a9bcf;
}

.ep-slick .slide-title {
  font-size: 51px;
  line-height: 1.2;
  text-transform: uppercase;
  color: #ffffff;
  margin-bottom: 20px;
  letter-spacing: 0.04em;
  font-weight: 500;
  padding-right: 16%;
}

.ep-slick .desc p {
  line-height: 1.533;
  color: #ffffff;
  margin-bottom: 20px;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.02em;
}

.ep-wrap .ep-btn {
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
}

.ep-btn .site-btn a {
  width: 204px;
}

.ep-btn .site-btn.white-btn a:hover {
  border: 1px solid var(--accent-color);
  background-color: var(--accent-color);
}

.ep-btn .slick-btn a:hover .circle {
  border: 1px solid #000000;
  background: #000000;
  opacity: 1;
}

.slick-btn a:hover span {
  color: #000000;
}

/****** HP WEALTH IN MULTI FAMILY ******/
.hp-wmf-wrap {
  position: relative;
  padding: 70px 15px 70px;
}

.hp-wmf-bg {
  background: #000000;
}

.hp-wmf-bg canvas {
  opacity: 14%;
}

.hp-wmf {
  position: relative;
}

.wmf-wrap .section-title span {
  margin-bottom: 20px;
}

.wmf-inner {
  width: 100%;
  max-width: 1310px;
  margin: auto;
}

.wmf-logo {
  width: 100%;
  max-width: 508px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-top: 55px;
}

.wmf-logo img {
  transition: var(--default-transition);
}

.wmf-logo img:first-child {
  margin-right: 15px;
}

.wmf-logo img:hover {
  transform: scale(1.08);
}

.wmf-inner .desc {
  margin-top: 32px;
}

.wmf-inner .desc p {
  font-size: 20px;
  letter-spacing: 0.02em;
  color: #ffffff;
  text-align: center;
  margin-bottom: 23px;
  line-height: 1.3;
  font-weight: 300;
}

.wmf-inner .desc p span {
  font-weight: 600;
}

.wmf-btn {
  margin-top: 35px;
}

.wmf-btn a {
  margin: auto;
}

/* HP STATS */
.hp-stats-wrap {
  position: relative;
  padding: 71px 15px 71px;
}

.hp-stats-bg {
  background: #000000;
}

.hp-stats-bg canvas {
  opacity: 15%;
  filter: grayscale(1);
}

.stats-list {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 1170px;
  margin: auto;
  flex-flow: row wrap;
}

.stats-item {
  width: calc(100% / 3);
  max-width: 389px;
  position: relative;
  padding-top: 45px;
  padding-bottom: 30px;
}

.stats-item::after {
  position: absolute;
  content: "";
  top: 0;
  height: 100%;
  width: 2px;
  background-color: #8a8a8a;
  opacity: 42%;
}

.stats-item:first-child:after {
  right: 0;
}

.stats-item:nth-child(2)::after {
  opacity: 0;
}

.stats-item:last-child:after {
  left: 0;
}

.stats-item::before {
  position: absolute;
  content: "";
  top: 0;
  height: 2px;
  width: 100%;
  background-color: #8a8a8a;
  opacity: 42%;
}

.stats-item:first-child:before {
  right: 2px;
  width: 200%;
}

.stats-item:nth-child(2)::before {
  top: unset;
  bottom: 0;
}

.stats-item:last-child:before {
  left: 2px;
  width: 200%;
}

.stats-item:nth-child(2) {
  padding-top: 95px;
}

.stats-item span {
  text-align: center;
  display: block;
}

.stats-item .stats-num {
  font-size: 65px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ffffff;
  text-transform: uppercase;
}

.stats-item .stats-num i {
  font-style: normal;
}

.stats-item .stats-label {
  font-size: 17px;
  font-weight: 400;
  letter-spacing: 0.14em;
  margin-top: 10px;
  color: #ffffff;
  text-transform: uppercase;
  line-height: 1.294;
}

.stats-item:first-child .stats-label {
  margin: auto;
  margin-top: 12px;
  width: 100%;
  max-width: 240px;
}

.stats-item:last-child .stats-label {
  margin-top: 12px;
}

.stats-btn a {
  margin: auto;
}

.stats-item:first-child .stats-btn {
  margin-top: 30px;
}

.stats-item:last-child .stats-btn {
  margin-top: 25px;
}

.stats-item:last-child .stats-btn a {
  max-width: 273px;
}

/****** HP FINANCIAL SECURITY ******/
.hp-fs-wrap {
  position: relative;
  padding: 100px 0 0;
}

.hp-fs-bg {
  height: 69.45%;
}

.hp-fs-bg canvas {
  opacity: 5%;
  filter: grayscale(1);
}

.hp-fs-bg::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 40%;
  bottom: 0;
  left: 0;
  background: linear-gradient(to bottom, transparent 0%, #ffffff 100%);
}

.section-title.fs-title span {
  margin-bottom: 7px;
}

.section-title.fs-title::after {
  bottom: -21px;
}

.fs-inner {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
  margin-top: 83px;
}

.fs-item {
  width: 33%;
  position: relative;
  background-color: #000000;
  transition: var(--default-transition);
}

.fs-item:hover {
  /*transform: scale(1.03);*/
  z-index: 1;
  background-color: #1b75bc;
}

.fs-item a {
  display: block;
  width: 100%;
  height: 100%;
}

.fs-item .img-wrap {
  transition: var(--default-transition);
}

.fs-item:hover .img-wrap {
  opacity: 0;
}

.fs-item img {
  opacity: 63%;
}

.fs-item .fs-text {
  position: absolute;
  width: 100%;
  bottom: -104px;
  padding-left: 24px;
  transition: all 0.3s ease-in-out;
}

.fs-item a:hover .fs-text {
  bottom: 24px;
}

.fs-item:first-child .fs-text {
  padding-left: 52px;
}

.fs-text-default {
  display: flex;
  align-items: center;
}

.fs-text .fs-number {
  width: 65px;
  height: 65px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 32px;
  font-family: var(--font-family-title);
  background-color: var(--primary-color);
  color: #f8f8f8;
  margin-right: 15px;
}

.fs-text .fs-number div {
  margin-bottom: 9px;
}

.fs-text .fs-title h2 {
  color: #f8f8f8;
  font-size: 26px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.fs-text .fs-title h2 span {
  font-size: 14px;
  color: #f8f8f8;
  display: block;
  margin-bottom: 10px;
  letter-spacing: 0.38em;
  position: relative;
}

.fs-text .fs-title h2 span::before {
  position: relative;
  content: "";
  display: inline-block;
  width: 30px;
  height: 2px;
  background-color: #ffffff;
  top: -4px;
  margin-right: 17px;
}

.fs-hover {
  min-height: 128px;
  padding-top: 15px;
  color: #ffffff;
  font-size: 14px;
  line-height: 1.5;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.3s ease-in-out;
}

.fs-item a:hover .fs-hover {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  bottom: auto;
}

.fs-hover p {
  min-height: 63px;
  margin-bottom: 10px;
}

.fs-hover .site-btn.white-btn > span {
  padding: 10px;
  font-size: 12px;
  background-color: transparent;
}

.fs-item:nth-child(2) .fs-hover .site-btn.white-btn > span {
  max-width: 250px;
}

.fs-hover .site-btn.white-btn > span:hover {
  opacity: 0.8;
  background-color: transparent;
}

/* HP MEET KRISTOPHER */
.hp-meet-wrap {
  position: relative;
  padding: 100px 15px 110px;
}

.meet-wrap {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: auto;
  display: flex;
  flex-flow: row wrap;
}

.meet-img-area {
  width: 40%;
  position: relative;
  z-index: 1;
}

.meet-img-area::before {
  position: absolute;
  content: "";
  top: 18%;
  right: 0;
  height: 1px;
  width: 150%;
  background-color: #b9b9b9;
}

.meet-text-area {
  width: 60%;
  padding-left: 150px;
  padding-top: 110px;
  position: relative;
}

.meet-text-area::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  height: 60%;
  width: 1px;
  background-color: #b9b9b9;
}

.meet-text-area::after {
  position: absolute;
  content: "";
  bottom: 0;
  height: 1px;
  width: 150%;
  left: 0;
  background-color: #b9b9b9;
}

.meet-img-area .img-wrap {
  width: 89.64%;
  margin-left: auto;
  margin-right: 15px;
}

.meet-title h2 {
  font-family: var(--font-family-title);
  font-size: 100px;
  font-weight: 400;
}

.meet-title span {
  font-family: var(--font-family-default);
  margin-bottom: 7px;
}

.meet-title::after {
  opacity: 0;
}

.meet-title h2 em {
  font-style: normal;
  position: relative;
}

.meet-title h2 em::before {
  position: relative;
  content: "";
  width: 30px;
  height: 2px;
  background-color: var(--primary-color);
  display: inline-block;
  margin-right: 28px;
  bottom: 35px;
  left: 5px;
}

.meet-pos {
  font-size: 21px;
  font-weight: 500;
  line-height: 1.429;
  letter-spacing: 0.38em;
  margin-top: 30px;
  text-transform: uppercase;
}

.meet-text-area .desc {
  margin-top: 45px;
  padding-right: 55px;
}

.meet-text-area .desc p {
  color: #000000;
  line-height: 1.765;
  letter-spacing: 0.02em;
  font-size: 17px;
  font-weight: 300;
}

.meet-btn {
  margin-top: 40px;
}

.meet-accent {
  position: absolute;
  background: var(--primary-color);
}

.meet-accent canvas {
  position: relative;
  display: block;
  height: auto;
  width: 100%;
}

.meet-accent img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  font-size: 0;
  width: 100%;
  height: 100%;
  outline: none;
  transition: var(--default-transition);
}

.meet-accent.left {
  bottom: 0;
  left: -40px;
  width: 83.67%;
}

.meet-accent.right {
  top: 40px;
  right: -50px;
  width: 81.27%;
}

.meet-accent.left img {
  opacity: 34%;
}

/****** HP TEAM *******/
.hp-team-wrap {
  position: relative;
  /* padding: 100px 0 100px; */
  padding: 0 0 98px;
  display: none;
}

.team-wrap {}

.team-img {
  width: 100%;
  height: 100%;
}

.team-inner {
  position: absolute;
  top: 10.5%;
  width: 100%;
  z-index: 1;
}

.team-title span {
  margin-bottom: 6px;
}

.team-title::after {
  opacity: 0;
}

.team-btn {
  margin-top: 20px;
}

.team-btn a {
  margin: auto;
}

/****** HP QUICK SEARCH ******/
.hp-qs-wrap {
  position: relative;
}

.qs-wrap {
  position: relative;
  padding: 65px 0 0;
}

.bg-qs {
  position: absolute;
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  top: 0;
  left: 0;
  overflow: hidden;
}

.bg-qs canvas {
  width: 100%;
  height: 100%;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.bg-qs.outer {
  width: 94.19%;
  /* max-height: 350px; */
  height: 90%;
  background-color: var(--primary-color);
}

.bg-qs.outer canvas {
  opacity: 18%;
}

.bg-qs.inner {
  background-color: #000000;
}

.bg-qs.inner canvas {
  opacity: 16%;
}

.qs-inner {
  position: relative;
  margin-left: 3.6875%;
  padding: 60px 15px 67px;
}

.qs-inner .qs {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 1118px;
  margin: auto;
  margin-left: 11.2%;
}

.qs-title {
  width: 25.94%;
  margin-bottom: 15px;
}

.qs-title h2 {
  font-size: 51px;
}

.qs-title span {
  margin-bottom: 5px;
  padding-left: 5px;
}

.qs-title::after {
  background-color: #ffffff;
  left: 2px;
  transform: unset;
  bottom: -20px;
}

.qs .fields-wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  width: 74.06%;
}

.fields-wrap .long {
  width: 47.83%;
  margin-bottom: 25px;
}

.fields-wrap .short {
  width: 22.71%;
  margin-bottom: 20px;
}

.fields-wrap .qs-price {
  padding-top: 23px;
}

.fields-wrap .qs-btn {
  display: flex;
  justify-content: space-between;
  padding-top: 15px;
  flex-flow: row wrap;
}

.fields-wrap .qs-btn > div {
  /*width: 47.73%;*/
  width: 100%;
}

.fields-wrap .qs-units-built {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}

.fields-wrap .qs-units-built.single-field > div {
  width: 100%;
}

.fields-wrap .qs-units-built > div {
  width: 47.5%;
}

.fields-wrap input[type="text"],
.fields-wrap input[type="number"] {
  background: none;
  outline: none;
  border: none;
  border-bottom: 1px solid #ffffff;
  padding-bottom: 20px;
  padding-top: 20px;
  padding-left: 0;
  color: #ffffff;
  letter-spacing: 0.02em;
  width: 100%;
  font-size: 14px;
  font-weight: 300;
}

.fields-wrap select {
  background: url(https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/caret-icon.png) no-repeat right;
  background-size: 8px 4px;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-position-x: calc(100% - 2px);
  background-position-y: 48%;
  outline: none;
  border: none;
  border-bottom: 1px solid #ffffff;
  padding-bottom: 23px;
  padding-top: 20px;
  padding-left: 0;
  color: #ffffff;
  letter-spacing: 0.02em;
  width: 100%;
  font-weight: 300;
}

.fields-wrap select option {
  color: #000000;
}

.qs-price .price-range {
  display: flex;
  justify-content: space-between;
  margin-bottom: 23px;
}

.qs-price .price-range span em {
  color: #ffffff;
  letter-spacing: 0.02em;
  font-size: 14px;
  font-style: normal;
}

.qs-price .range-input-scoller {
  height: 1px;
  border: 1px solid #ffffff;
  border-radius: 5px;
  margin: 5px 0;
  margin-left: 3px;
  width: calc(100% - 6px);
}

.qs-price .ui-slider-horizontal .ui-slider-handle {
  -webkit-appearance: none;
  width: 7px;
  height: 7px;
  text-align: center;
  border-radius: 50%;
  background: #ffffff;
  margin-top: 1px;
  outline: none !important;
  border: none !important;
  margin-left: -3px;
}

.qs-search-btn input {
  display: block;
  width: 100%;
  /*max-width: 204px;*/
  padding: 17px;
  /* margin: auto; */
  color: #ffffff;
  letter-spacing: 0.12em;
  font-size: 14px;
  text-transform: uppercase;
  border: 1px solid #ffffff;
  transition: var(--default-transition);
  text-align: center;
  position: relative;
  background-color: transparent;
}

.qs-search-btn input:hover {
  border: 1px solid var(--primary-color);
  background-color: var(--primary-color);
  color: #ffffff;
}

.qs-poweredby {
  font-size: 14px;
  color: #ffffff;
  letter-spacing: 0.02em;
  width: 100%;
  max-width: 1118px;
  margin: auto;
  margin-left: 11.2%;
  text-align: right;
  position: relative;
  font-weight: 300;
}

.safari-true .bg-qs canvas {
  background-attachment: scroll;
}

/******* HP FEATURED PROPERTIES *******/
.hp-fp-wrap {
  position: relative;
  padding: 80px 0 115px;
}

.fp-wrap {
  position: relative;
}

.fp-wrap .title-btn-wrap {
  display: flex;
  /* width: 100%;
    max-width: 1400px; */
  margin: 0 6.25%;
  justify-content: space-between;
  align-items: end;
}

.fp-btn {
  height: max-content;
}

.fp-btn a {
  max-width: 260px;
  padding: 17px 34px;
  white-space: nowrap;
}

.fp-title::after {
  left: -3px;
  transform: unset;
  bottom: -20px;
}

.fp-title span {
  margin-bottom: 5px;
  margin-left: -5px;
}

.fp-inner {
  /* width: 100%;
    max-width: 1500px; */
  margin-left: auto;
  margin-left: 6.25%;
  position: relative;
  overflow: hidden;
  margin-top: 65px;
}

.fp-img-item {
  position: relative;
}

.fp-img-item a {
  display: block;
  width: 100%;
  height: 100%;
}

.fp-img-item .img-wrap {
  background-color: #000000;
}

.fp-img-item img {
  opacity: 77%;
}

.fp-img-item canvas {
  min-height: 250px;
}

.fp-details-wrap {
  position: absolute;
  bottom: 45px;
  right: 8.13%;
  /* width: 100%;
    max-width: 1378px; */
}

.fp-details-wrap::before {
  /* position: relative;
    content: '';
    background-color: #b9b9b9;
    width: 100%;
    display: inline-block;
    bottom: 50px; */
}

.fp-details-slick {
  margin-left: auto;
  width: max-content;
  max-width: 372px;
  position: relative;
}

.fp-details-slick::before {
  position: absolute;
  content: "";
  background-color: #b9b9b9;
  width: 500%;
  height: 1px;
  left: -500%;
  display: inline-block;
  bottom: 80px;
}

.fp-details-item {
  position: relative;
  padding: 64px 54px 60px;
  width: 100%;
  /* max-width: 372px; */
}

.fp-details-item a {
  display: block;
  width: 100%;
  height: 100%;
}

.fp-details-item::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  border: 1px solid #ffffff;
  top: 0;
  left: 0;
  pointer-events: none;
}

.fp-price {
  font-size: 44px;
  letter-spacing: 0.04em;
  text-align: center;
  color: #ffffff;
  font-family: var(--font-family-title);
  margin-bottom: 13px;
}

.fp-address {
  font-size: 19px;
  color: #ffffff;
  letter-spacing: 0.28em;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 50px;
}

.fp-beds-baths {
  display: flex;
}

.fp-beds-baths ul li {
  font-size: 16px;
  line-height: 2.186;
  color: #ffffff;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  font-weight: 500;
}

.fp-beds-baths .details-label {
  width: 75px;
  margin-left: 20px;
}

.fp-beds-baths ul li i {
  margin-right: 11px;
}

.fp-beds-baths ul li .sqft-icon {
  position: relative;
  width: 24px;
  display: inline-block;
}

.fp-beds-baths ul li .sqft-icon::after {
  position: relative;
  content: "";
  display: inline-block;
  background-image: url("https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/sqft-icon-1.png");
  width: 21px;
  height: 19px;
  background-repeat: no-repeat;
  background-size: cover;
  top: 3px;
}

.fp-beds-baths ul li .ai-font-showers {
  font-size: 20px;
}

.fp-slick-btn {
  position: absolute;
  bottom: 45px;
  left: 9.25%;
}

.fp-slick-btn a:hover span {
  color: #ffffff;
}

.blue-hover-slick-btn a:hover .circle {
  background-color: var(--primary-color) !important;
  border: 1px solid var(--primary-color) !important;
  opacity: 1 !important;
}

/* .blue-hover-slick-btn a:hover i.slick-arrow::before{
    background-image: url('https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/slick-arrow-hover.png');
} */

.fp-inner:hover .fp-img-item img {
  filter: grayscale(1);
  opacity: 40%;
}

/****** HP AREAS OF SERVICE ******/
.hp-aos-wrap {
  position: relative;
  padding: 90px 15px 96px;
}

.hp-aos-bg {
  background-color: var(--primary-color);
}

.hp-aos-bg canvas {
  opacity: 10%;
}

.aos-title span {
  margin-bottom: 7px;
}

.aos-title::after {
  background-color: #ffffff;
  bottom: -18px;
}

.aos-inner {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
  width: 100%;
  max-width: 1400px;
  margin: auto;
  margin-top: 65px;
}

.aos-item {
  width: 24.57%;
  position: relative;
  margin-bottom: 7px;
}

.aos-item::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  border: 2px solid #ffffff;
  top: 0;
  left: 0;
  pointer-events: none;
}

.aos-item a {
  display: block;
  width: 100%;
  height: 100%;
}

.aos-item .img-wrap {
  background-color: #000000;
}

.aos-item .img-wrap img {
  opacity: 67%;
  object-fit: cover;
  transition: var(--default-transition);
}

.aos-item:hover .img-wrap img {
  filter: grayscale(1);
  opacity: 63%;
}

.aos-item .aos-title {
  position: absolute;
  width: 100%;
  text-align: center;
  color: #ffffff;
  font-size: 20px;
  letter-spacing: 0.04em;
  bottom: 30px;
  text-transform: uppercase;
  font-family: var(--font-family-title);
}

/****** HP TESTI WRAP ******/
.hp-testi-wrap {
  position: relative;
  padding: 100px 0 90px;
}

.testi-title span {
  margin-bottom: 5px;
}

.testi-title::after {
  bottom: -21px;
}

.testi-inner {
  position: relative;
  margin-top: 60px;
}

.testi-slick .slick-list {
  padding: 0 18.31% !important;
}

.testi-item:not(.with-vid) {
  position: relative;
  padding: 30px 62px;
}

.testi-item {
  position: relative;
  padding: 0 62px;
}

.slick-active .testi-item {
  padding: 79px 85px 144px;
  position: relative;
  border-top: 1px solid #b9b9b9;
  border-left: 1px solid #b9b9b9;
  border-right: 1px solid #b9b9b9;
}

.slick-slide:not(.slick-active) .testi-item {
  opacity: 29%;
}

.slick-active .testi-item.with-vid {
  padding: 0 105px 102px;
}

.slick-active .testi-item.with-vid a {
  max-width: 803px;
  margin: auto;
}

.slick-active .testi-item::before {
  position: absolute;
  content: "";
  background-color: #b9b9b9;
  width: 100%;
  height: 1px;
  left: -100%;
  bottom: 0;
}

.slick-active .testi-item::after {
  position: absolute;
  content: "";
  background-color: #b9b9b9;
  width: 100%;
  height: 1px;
  right: -100%;
  bottom: 0;
}

.slick-slide:not(.slick-active) .testi-item .img-wrap {
  max-width: 737px;
  filter: grayscale(1);
}

.testi-item .img-wrap {
  background-color: #000000;
  overflow: hidden;
}

.testi-item .img-wrap img {
  opacity: 63%;
  transition: var(--default-transition);
}

.testi-item a:hover .img-wrap img {
  transform: scale(1.05);
}

.testi-item.with-vid a {
  display: block;
  height: 100%;
  width: 100%;
  position: relative;
  outline: none;
  border: none;
}

.testi-item.with-vid a::after {
  position: absolute;
  content: "";
  width: 76px;
  height: 76px;
  top: 46%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url("https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/play-icon.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.testi-quote {
  margin: auto;
  display: block;
  margin-bottom: 40px;
}

.testi-stars {
  text-align: center;
  margin-bottom: 15px;
}

.testi-stars li {
  font-size: 24px;
  color: #ffc107;
  margin: 0 2px;
  display: inline-block;
}

.testi-desc {
  line-height: 1.765;
  font-size: 17px;
  color: #000000;
  font-weight: 300;
  margin-bottom: 30px;
  text-align: center;
  letter-spacing: 0.02em;
}

.testi-name {
  font-size: 17px;
  font-weight: 500;
  color: #000000;
  text-align: center;
}

.testi-slick-btn a span {
  color: #000000;
}

.testi-slick-btn a .circle {
  border: 1px solid #818181;
}

.testi-slick-btn a i.slick-arrow::before {
  filter: brightness(0.5);
}

.testi-slick-btn a:hover i.slick-arrow::before {
  background-image: url("https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/slick-arrow-hover.png");
  filter: none;
}

.testi-btn-wrap {
  position: absolute;
  width: 100%;
  bottom: 20px;
}

.testi-slick-btn {
  top: 9px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
}

.testi-slick-btn a.slide-prev {
  margin-right: 320px;
}

.testi-btn a {
  margin: auto;
  max-width: 213px;
}

/******* HP NEWS *******/
.hp-news-wrap {
  position: relative;
  padding: 20px 0 145px;
}

.news-wrap {
  position: relative;
}

.news-inner {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  margin-right: 3.75%;
  padding-top: 53px;
  padding-bottom: 82px;
}

.news-inner::before {
  position: absolute;
  content: "";
  width: 80.85%;
  height: 100%;
  right: 0;
  top: 0;
  border: 1px solid #b9b9b9;
  pointer-events: none;
}

.news-text-wrap {
  position: relative;
  width: 32.6%;
  padding-top: 80px;
  padding-top: 5.5%;
}

.news-main-wrap {
  position: relative;
  width: 67.4%;
}

.news-title span {
  margin-bottom: 5px;
}

.news-title::after {
  bottom: -21px;
}

.news-text-wrap .desc {
  padding: 0 40px;
  margin-top: 50px;
}

.news-text-wrap .desc p {
  line-height: 2;
  font-size: 15px;
  font-weight: 300;
  color: #000000;
  letter-spacing: 0.02em;
  text-align: center;
}

.news-btn {
  margin-top: 35px;
}

.news-btn a {
  margin: auto;
  max-width: 271px;
}

.news-main-item {
  overflow: hidden;
}

.news-main-item a {
  display: block;
  width: 100%;
  height: 100%;
}

.news-main-item img {
  transition: var(--default-transition);
}

.news-main-item a:hover img {
  transform: scale(1.05);
}

.news-thumb-wrap {
  position: absolute;
  bottom: -26px;
  padding: 19px 0 19px 16px;
  background-color: #ffffff;
  right: -3px;
  width: 56.19%;
}

.news-thumb-slick:not(.slick-initialized) {
  display: flex;
}

.news-thumb-slick .news-thumb-item {
  width: 100%;
  padding: 0 4.5px;
  cursor: pointer;
}

/* .news-thumb-slick .news-thumb-item:last-child{
    padding-right: 0;
} */
/* .news-thumb-slick .slick-active ~ .slick-active ~ .slick-active ~ .slick-active .news-thumb-item{
    padding-right: 0;
} */
.news-thumb-slick .news-thumb-item .img-wrap {
  background-color: #000000;
  overflow: hidden;
}

.news-thumb-slick .news-thumb-item img {
  opacity: 88%;
  transition: var(--default-transition);
}

.news-thumb-slick .news-thumb-item:hover img {
  transform: scale(1.05);
}

.news-slick-btn {
  position: absolute;
  bottom: 0;
  left: 4.2%;
}

.news-slick-btn a span {
  color: #000000;
}

.news-slick-btn a .circle {
  border: 1px solid #818181;
}

.news-slick-btn a i.slick-arrow::before {
  background-image: url("https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/slick-arrow-gray.png");
}

.news-slick-btn a:hover i.slick-arrow::before {
  background-image: url("https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2023/08/slick-arrow-hover.png");
}

.news-slick-btn a:hover span {
  color: var(--primary-color);
}

.news-slick-btn a.slide-prev {
  margin-right: 15px;
}

/****** FOOTER CONSULTATION ******/
.footer {
  position: relative;
  padding: 120px 0 24px;
}

.hp-footer-bg {
  background-color: #000000;
}

.hp-footer-bg canvas {
  opacity: 15%;
}

.hp-git-wrap {
  position: relative;
  padding: 0 15px;
}

.git-title span {
  margin-bottom: 5px;
}

.git-title::after {
  bottom: -18px;
  background-color: #fff;
}

.git-wrap .git-inner {
  position: relative;
  width: 100%;
  max-width: 815px;
  margin: auto;
  margin-top: 50px;
}

.git-inner .contact-form-area-inner {
  display: flex;
  flex-flow: row wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 100%;
}

.contact-form-area-inner > div .wpcf7-form-control-wrap {
  display: block;
}

.contact-form-area-inner > div.long {
  width: 100%;
  margin-bottom: 15px;
  position: relative;
}

.contact-form-area-inner > div.short {
  width: calc(50% - 6.5px);
  margin-bottom: 15px;
  position: relative;
}

.contact-form-area-inner > div.submit-field {
  margin-top: 23px;
}

.contact-form-area-inner input[type="text"],
.contact-form-area-inner input[type="tel"],
.contact-form-area-inner input[type="email"],
.contact-form-area-inner textarea {
  background: none;
  outline: none;
  border: 1px solid #ffffff;
  padding-bottom: 13px;
  padding-top: 14px;
  padding-left: 21px;
  color: #ffffff;
  letter-spacing: 0.04em;
  width: 100%;
  font-size: 14px;
  font-weight: 400;
}

.contact-form-area-inner textarea {
  height: 110px;
  resize: none;
}

.contact-form-area-inner input[type="submit"] {
  display: block;
  /* width: 100%;
    max-width: 204px; */
  padding: 16px 71px;
  margin: auto;
  color: #ffffff;
  letter-spacing: 0.12em;
  font-size: 14px;
  text-transform: uppercase;
  border: 1px solid #ffffff;
  transition: var(--default-transition);
  text-align: center;
  position: relative;
  background-color: transparent;
}

.contact-form-area-inner input[type="submit"]:hover {
  background-color: var(--primary-color);
  border: 1px solid var(--primary-color);
}

.interested-field .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 -5px;
}

.interested-field .wpcf7-radio .wpcf7-list-item {
  width: 33.33%;
  padding: 0 5px;
  margin: 0;
}

.interested-field .wpcf7-radio .wpcf7-list-item label {
  display: block;
  position: relative;
}

.interested-field .wpcf7-radio .wpcf7-list-item label input {
  display: none;
}

.interested-field .wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 18px;
  color: #ffffff;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  height: 46px;
  z-index: 1;
  font-family: var(--font-family-title);
  cursor: pointer;
}

.interested-field .wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label::before,
.interested-field .wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  transition: var(--default-transition);
}

.interested-field .wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label::before {
  background: var(--primary-color);
  opacity: 0;
}

.interested-field .wpcf7-radio .wpcf7-list-item label input:checked + .wpcf7-list-item-label::before,
.interested-field .wpcf7-radio .wpcf7-list-item label:hover .wpcf7-list-item-label::before {
  opacity: 1;
}

.interested-field .wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label::after {
  border: 1px solid #ffffff;
}

.interested-field .wpcf7-radio .wpcf7-list-item label input:checked + .wpcf7-list-item-label::after,
.interested-field .wpcf7-radio .wpcf7-list-item label:hover .wpcf7-list-item-label::after {
  opacity: 0;
}

.git-wrap .use-floating-validation-tip .wpcf7-not-valid-tip {
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
  width: max-content;
}

.git-wrap form {
  position: relative;
}

.git-wrap .wpcf7 form .wpcf7-response-output {
  width: 100%;
  margin: 0;
  color: #fff;
  text-align: center;
  position: absolute;
  bottom: -30px;
}

.git-wrap .wpcf7-spinner {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
}

/* MAIN FOOTER */
.main-footer {
  position: relative;
  margin-top: 100px;
}

.main-footer a {
  transition: var(--default-transition);
}

.main-footer a:hover {
  opacity: 0.5;
  color: #ffffff;
}

.footer-wrap {
  width: 100%;
  max-width: 1430px;
  padding: 0 15px;
  margin: auto;
  position: relative;
}

.footer-inner {
  display: flex;
  flex-flow: row wrap;
}

.ftr-contact-info,
.ftr-nav {
  width: 37.14%;
}

.ftr-logo {
  display: flex;
  justify-content: center;
  padding-top: 5px;
  width: 25.72%;
}

.ftr-nav {
  padding-left: 90px;
}

.ftr-title {
  font-size: 40px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #ffffff;
  text-transform: uppercase;
}

.ftr-contact-info .contact-info {
  margin-top: 15px;
}

.ftr-contact-info .contact-info li {
  font-size: 15px;
  letter-spacing: 0.02em;
  color: #ffffff;
  font-weight: 300;
  line-height: 1.733;
  margin-bottom: 4px;
}

.ftr-contact-info .contact-info li.address {
  display: flex;
}

.ftr-contact-info .contact-info li i {
  color: var(--primary-color);
  margin-right: 15px;
}

.ftr-contact-info .contact-info li i.ai-font-phone {
  font-size: 11px;
}

.ftr-contact-info .contact-info li i.ai-font-envelope-f {
  font-size: 8px;
  bottom: 3px;
}

.ftr-contact-info .contact-info li i.ai-font-location-c {
  font-size: 19px;
  top: 5px;
  margin-right: 9px;
  left: -3px;
}

.ftr-smi {
  display: flex;
  margin-top: 30px;
  margin-left: -7px;
}

.ftr-smi li {
  margin: 7px;
}

.ftr-smi li a {
  height: 32px;
  width: 32px;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  border-radius: 50%;
  font-size: 15px;
  color: #ffffff;
  border: 1px solid #ffffff;
  transition: var(--default-transition);
}

.ftr-smi li a:hover {
  border: 1px solid var(--primary-color);
  background-color: var(--primary-color);
  opacity: 1;
}

.ftr-smi li a:hover i {
  color: #ffffff !important;
}

.ftr-smi li a .ai-font-facebook {
  color: #5270a4;
}

.ftr-smi li a .ai-font-instagram {
  color: #ce8987;
}

.ftr-smi li a .ai-font-twitter {
  color: #4cb5ec;
}

.ftr-smi li a .ai-font-linkedin {
  color: #3c86ad;
}

.ftr-smi li a .ai-font-youtube {
  color: #bb413e;
}

.ftr-disclaimer {
  line-height: 1.733;
  font-size: 15px;
  color: #ffffff;
  text-align: center;
  letter-spacing: 0.02em;
  font-weight: 300;
  margin: 0 -10px;
  margin-top: 15px;
  margin-bottom: 20px;
}

.copyright-wrap {
  width: 100%;
  position: relative;
  padding-top: 30px;
  padding-left: 15px;
  padding-right: 15px;
}

.copyright-wrap::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  top: 0;
  left: 0;
  background-color: #ffffff;
  opacity: 12%;
}

.footer .copyright {
  font-size: 12px;
  color: #ffffff;
  letter-spacing: 0.035em;
  text-align: center;
}

.footer .copyright span {
  text-transform: uppercase;
}

.ftr-logo a {
  display: block;
  /* width: max-content; */
  opacity: 1 !important;
}

.ftr-logo img {
  width: 100%;
  max-width: 293px;
  height: auto;
}

.menu-ftr-menu-container {
  margin-top: 25px;
}

.footernav {
  column-count: 2;
}

.footernav li {
  letter-spacing: 0.04em;
  font-size: 14px;
  text-transform: uppercase;
  color: #ffffff;
  line-height: 3.214;
}

.ftr-nav .sched-call {
  position: absolute;
  margin-left: 0;
  right: 17px;
  top: 110px;
}

.ftr-nav .sched-call a {
  padding: 14px 39.5px;
  opacity: 1 !important;
  font-size: 14px;
  letter-spacing: 0.04em;
}

.ftr-nav .sched-call a:hover {
  background: #fff;
  color: #000000;
}

.footer_mls {
  font-size: 0;
  margin-top: 15px;
  text-align: center;
}

.footer_mls span {
  display: inline-block;
  vertical-align: middle;
  color: #ffffff;
}

.footer_mls span.ai-font-eho {
  font-size: 21px;
  margin-right: 10px;
}

.footer_mls span.ai-font-realtor-mls {
  font-size: 30px;
}

/********* POJO ********/
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-light-background,
#pojo-a11y-toolbar .pojo-a11y-btn-grayscale {
  display: none !important;
}

/*******************************************************
 *
 * 4. IP Styles
 *
 *******************************************************/
.ip-banner {
  position: relative;
  width: 100%;
}

.ip-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.6);
}

.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;
}

.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;
}

/* 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;
}

/* 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;
}

/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
#content .entry-title,
#content .archive-title {
  font-size: 21px;
  color: #000000;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  font-weight: 400;
  display: block;
}

#content .entry-title span,
#content .archive-title {
  font-size: 50px;
  letter-spacing: 0.04em;
  font-weight: 500;
  color: #000000;
  text-transform: uppercase;
  line-height: 1;
  display: block;
}

/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {}

/* Styles for inner page body texts */
body.ip-container #content {
  color: #000000;
  /* font-size: 15px; */
  line-height: 1.733;
  font-weight: 300;
}

.grecaptcha-badge {
  z-index: 1000;
}

.hp-quick-search .bootstrap-select.btn-group .dropdown-toggle {
  background: none;
  outline: none;
  border: none;
  border-bottom: 1px solid #ffffff;
  padding-bottom: 20px;
  padding-top: 20px;
  padding-left: 0;
  border-radius: 0;
}

.hp-quick-search .bootstrap-select.btn-group .dropdown-toggle .filter-option {
  color: #ffffff;
  letter-spacing: 0.02em;
  width: 100%;
  font-size: 14px;
  font-weight: 300;
}

.hp-quick-search .dropdown-menu.open {
  max-height: 300px !important;
}

.hp-quick-search ul.dropdown-menu.inner {
  max-height: 250px !important;
}

.hp-quick-search .bs-searchbox .form-control {
  color: #555555 !important;
}

.ai-font-threads {}

.ai-font-threads::before {
  position: relative;
  content: "";
  width: 15px;
  height: 16px;
  background-image: url(https://cdn.agentimagehosting.com/rUMmYeki2pWGENHoBwdCi/2024/01/threads-icon.png);
  background-position: center;
  background-size: contain;
  display: block;
  background-repeat: no-repeat;
}

.ihf-results-template.aios-custom-ihomefinder-results-template #content-full .entry-title,
.ihf-results-template .ip-banner > .container {
  width: 100%;
  padding: 0 0 15px;
}

.ihf-results-template #content #breadcrumbs {
  width: 100%;
}

.ihf-results-template .listings-map .leaflet-map-pane .leaflet-div-icon {
  border: none;
  background: transparent;
}

.ihf-results-template #listings-results .listings-table .listings-table-body .listings-table-label {
  color: #fff;
}

.ihf-results-template #inner-page-wrapper,
.ihf-results-template:not(.aios-custom-ihomefinder-shortcode) #inner-page-wrapper {
  margin-bottom: 0;
}

.ihf-results-template #content-full {
  margin-bottom: 30px;
}

.ihf-results-template #listings-results .listings-grid .listings-media li img {
  -webkit-filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.25)) drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.25));
  filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.25)) drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.25));
}

.ihf-details-template #listings-details .listings-box {
  background-color: var(--aios-ihf-template-details-page-secondary-color) !important;
}

.ihf-details-template #listings-details .button-amante-ii:hover {
  color: #fff !important;
}

.ihf-details-template #listings-details .listings-smi {
  color: #fff;
}

/*
.ihf-details-template #listings-details .listings-smi ul > li > a {
    color: #fff !important;
} */

.ihf-details-template #listings-details .listings-smi ul > li > a:hover {
  background-color: var(--aios-ihf-template-details-page-primary-color);
}

.ihf-details-template #listings-details .listings-cta.listings-box-cta li a,
.ihf-details-template #listings-details .listings-cta.listings-main-cta li a {
  font-weight: 600;
}

/* .ihf-details-template #listings-details .listings-cta>li a {
    border-color: #000!important;
    color: #fff!important;
    background-color: #000!important;
}

.ihf-details-template #listings-details .listings-cta>li a:hover {
    border-color: #fff !important;
    color: #000!important;
    background-color: #fff!important;
} */

.ihf-details-template #listings-details .listings-cta.listings-main-cta > li a {
  border-color: #000 !important;
  background: #000 !important;
  color: #fff !important;
}

.ihf-details-template #listings-details .listings-smi ul > li > a:hover {
  color: #fff !important;
}

.ihf-details-template #listings-details .listings-cta.listings-main-cta > li a:hover {
  border-color: #000 !important;
  background: #fff !important;
  color: #000 !important;
}

#ihf-main-search-form .ihf-advanced-search-launch {
  display: none;
}

.ihf-details-template #listings-cta-printable {
  display: none !important;
}

/* .ihf-details-template #listings-details ul.listings-cta.white.listings-box-cta li>  a {
    color: #fff!important;
    border-color: #000!important;
}

.ihf-details-template #listings-details ul.listings-cta.white.listings-box-cta li> a:hover {
    color: #000!important;
    background: #fff!important;
    border-color: #fff!important;
} */

body.single-post #content .entry-title {
  font-size: 50px;
  letter-spacing: 0.04em;
  font-weight: 500;
  color: #000000;
  line-height: 1;
}

body.single-post #content .entry-title span {
  display: inline;
}

/* MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css */

.single-aios-listings #listings-details .listings-main-left .listings-cta > li > a {
  border-color: #000 !important;
  background: #000 !important;
  color: #fff !important;
}

.single-aios-listings #listings-details .listings-main-left .listings-cta > li > a:hover {
  background-color: #fff !important;
  color: #000 !important;
}

.single-aios-listings #breadcrumbs strong {
  font-weight: 400;
}

.single-aios-listings #breadcrumbs,
.single-aios-listings #breadcrumbs span,
.single-aios-listings #breadcrumbs a,
.single-aios-listings #breadcrumbs strong {
  color: #000000 !important;
}

.single-aios-listings .listings-address strong {
  font-weight: bolder;
}

#inner-page-wrapper #listings-details #breadcrumbs {
  margin-bottom: 30px;
}

.single-aios-listings #listings-details .listings-cta > li {
  font-family: "Source Serif Pro", serif;
}

.single-aios-listings #listings-details .listings-cta > li > a {
  font-size: 13px !important;
}

#listings-details .listings-price,
#listings-details .listings-extras > li > span,
#listings-details .listings-extras > li > strong,
#listings-details .listings-cta.white > li > a,
#listings-details .listings-smi h2,
#listings-details .listings-smi ul > li > a,
#listings-details .listings-number span,
#listings-details .listings-plan > ul > li,
#listings-details .listings-plan span,
.ihf-details-template .button-amante-ii,
.ihf-details-template .button-element,
#listings-details .listings-description h2,
#listings-details .listings-accordion h2,
#listings-details .listings-form h2 span {
  color: #1b75bc !important;
}

#listings-details .listings-cta.listings-main-cta li a {
  font-weight: 600;
  letter-spacing: 0.46em;
}

#listings-details #listings-cta-mortgage {
  display: none;
}

.page-id-235 #listings-results .listings-table .listings-table-header {
  background: #000;
  color: #fff;
}

/* hp fp */
.fp-wrap :where(.details-value, .details-label) li:has(.detail-digits[data-digits="0"]) {
  display: none;
}

/*iframe*/

.frame-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.frame-responsive iframe {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/*9-18-2024*/
.hp-quick-search .bootstrap-select.btn-group .dropdown-toggle .filter-option{
    text-overflow: ellipsis;
}
.hp-fp .slick-btn a{
    filter: drop-shadow(3px 2px 3px black);
}
.fp-details-item a{
    filter: drop-shadow(3px 2px 3px black);
}
.aos-item .aos-title{
    filter: drop-shadow(3px 2px 3px black);
}
.error-page-content-wrapper .use-floating-validation-tip .wpcf7-not-valid-tip{
  position: absolute;
  top: 0;
  left:0;
  width: max-content;
}
.error-page-content-wrapper .wpcf7 form .wpcf7-response-output{
  text-align: center;
}
.post-page-sold-properties #inner-page-wrapper > .container{
  width: 100%;
}
body:has(.aios-listing-list-wrap) #listings-results .listings-list .listings-link{
  color: #ffffff !important;
}
body:has(.aios-listing-list-wrap) #listings-results .listings-pagination{
  margin-bottom: 35px;
}
.ai-communities-minimalist-row .ai-communities-minimalist-list a .ai-communities-minimalist-content h2{
  text-shadow: -2px 2px 3px RGBA(0, 0, 0, 1);
}
.single-aios-communities.ihf-results-template #content #breadcrumbs{
  padding-bottom: 20px;
}
.single-aios-communities.ihf-results-template #content-full{
  margin-top: 0;
}
.single-aios-communities.ihf-results-template #listings-results .listings-table .listings-table-body .listings-plan{
    min-width: unset !important;
}
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=text],
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=email],
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=tel],
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form textarea{
  outline: none !important;
}
.post-page-meet-the-team #inner-page-wrapper #breadcrumbs{
  padding: 0;
}
.post-page-meet-the-team #agents-results .agents-contact{
  justify-content: center;
}
.post-page-meet-the-team #agents-results .agent-top{
  margin: 0;
  margin-top: 50px;
}
.page-template-template-report .col-md-6{
  margin-bottom: 30px;
}
.page-template-template-report .col-md-6 img{
  max-width: 100%;
  height: auto;
  margin-bottom: 15px;
}
#listings-details .listings-form .wpcf7-spinner{
  position: absolute;
  margin: 0;
}
.pojo-a11y-readable-font [class*=ai-font-]{
  font-family: agentimage !important;
}
.single-aios-agents .use-floating-validation-tip .wpcf7-not-valid-tip{
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: max-content;
  right: unset;
    font-size: 12px;
}
.single-aios-agents .wpcf7 form .wpcf7-response-output{
  text-align: center;
}
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=submit]:hover {
    color: #1b75bc;
}
.single-aios-agents #agents-single .agents-listings {
  display: none;
}


.single-post .ip-banner canvas {
	display: none;
}

#listings-details .listings-box {
    background: #cbcbcb !important;
}
.hp-qs-wrap{
    z-index: 1;
}
.post-page-available-properties #listings-results{
    z-index: 1;
}
/** CSS */
.show-on-scroll {
  display: none !important;
}
.opacity-0{
    opacity: 0;
    pointer-events: none;
}

#listings-details .listings-cta.white > li > a.listings-cta-brochure.ytb {
    background: #dd2525 !important;
    border:0;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    font-size: 20px;
}

#listings-details .listings-cta.white > li > a.listings-cta-brochure.ytb span {
    font-size: 16px;
    letter-spacing: 0.3em;
}

#listings-details .listings-cta.white > li > a.listings-cta-brochure.ytb i {
    font-size: 15px;
}

#listings-details .listings-cta.white > li > a.listings-cta-brochure.ytb:hover{
  opacity: 70%;
}

.video-responsive{
  position: relative;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
  height: 0;
  overflow: hidden;
  max-width: 100%;
  background: #000;
}

.video-responsive iframe,
.video-responsive video,
.video-responsive embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.listing-module-page #listings-results .listings-sort .sort-dropdown button .caret,
.listing-module-page #listings-results .listings-sort .sort-dropdown > div.dropdown-backdrop  {
  display: none;
}

.listing-module-page #listings-results .listings-pagination {
  width: 100%;
}