/*
Theme Name: Martha Thorn
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

*/


/* fonts */
@font-face {
    font-family: 'Galderglynn Titling Rg';
    src: url('fonts/GalderglynnTitlingRg-BoldItalic.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingRg-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Rg';
    src: url('fonts/GalderglynnTitlingRg-Bold.woff2') format('woff2'),
        url('GalderglynnTitlingRg-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling El';
    src: url('fonts/GalderglynnTitlingEl-Italic.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingEl-Italic.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Bk';
    src: url('fonts/GalderglynnTitlingBk-Regular.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingBk-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Bk';
    src: url('fonts/GalderglynnTitlingBk-Italic.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingBk-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Bl';
    src: url('GalderglynnTitlingBl-Italic.woff2') format('woff2'),
        url('GalderglynnTitlingBl-Italic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Bl';
    src: url('fonts/GalderglynnTitlingBl-Regular.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingBl-Regular.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Rg';
    src: url('fonts/GalderglynnTitlingRg-Regular.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingRg-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Rg';
    src: url('fonts/GalderglynnTitlingRg-Italic.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingRg-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Lt';
    src: url('fonts/GalderglynnTitlingLt-Italic.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingLt-Italic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Ul';
    src: url('fonts/GalderglynnTitlingUl-Italic.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingUl-Italic.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Lt';
    src: url('fonts/GalderglynnTitlingLt-Regular.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingLt-Regular.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling El';
    src: url('fonts/GalderglynnTitlingEl-Regular.woff2') format('woff2'),
        url('GalderglynnTitlingEl-Regular.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Galderglynn Titling Ul';
    src: url('fonts/GalderglynnTitlingUl-Regular.woff2') format('woff2'),
        url('fonts/GalderglynnTitlingUl-Regular.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}



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

 :root {
    /** Font default */
    --font-family-default: 'Raleway', sans-serif;
    --font-family-title: 'Galderglynn Titling Bk';   
    --font-family-accent: 'The Nautigal', cursive;
    --font-size-default: 14px;
    --font-size-title: 18px;
    --font-color-default: #454545;
    --font-color-title: #454545;

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

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

body.home section p {
    font-size: 15px;
    line-height: 1.8;
    margin: 0 0 25px;
}

body.home section p.intro {
    font-size: 21px;
}

#main-wrapper {
    overflow: hidden;
}

.custom-container {
    width: 90%;
    max-width: 1285px;
    margin-left: auto;
    margin-right: auto;
}

.relative {
    position: relative;
}

.flex {
    display: flex;
}

.flex-wrap {
    flex-wrap: wrap;
}

.j-center {
    justify-content: center;
}

.j-end {
    justify-content: flex-end;
}

.j-spacebet {
    justify-content: space-between;
}

.a-start {
    align-items: flex-start;
}

.a-center {
    align-items: center;
}

.a-end {
    align-items: flex-end;
}

.col-50 {
    width: 50%;
}

.canvas-img {
    display: block;
    position: relative;
    overflow: hidden;
}

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

.canvas-img img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: var(--default-transition);
    object-fit: cover;
}

.canvas-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
}

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

.canvas-bg.section-logo-bg canvas  {
    background-size: contain;
    background-repeat: no-repeat;
    opacity: .06;
}

.canvas-bg + .custom-container {
    position: relative;
    z-index: 1;
}

.canvas-bg canvas.is-gray {
    filter: grayscale(1);
}

.canvas-bg.is-white::before {
    content: '';
    position: absolute;
    background-color: #fff;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: .80;
}

.canvas-bg.is-white::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 50%;
    background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
    top: 0;
    z-index: 1;
}

.canvas-bg.is-black::before {
    content: '';
    position: absolute;
    background-color: #000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: .75;
}

/* .canvas-bg.is-black::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 50%;
    background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 70%);
    top: 0;
    z-index: 1;
} */

.section-title {
    margin-bottom: 50px;
}

.section-title h1, .section-title h2 {
    font-size: 80px;
    font-family: var(--font-family-title);
    font-weight: 400;    
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    margin: 0;
    text-align: left;
    color: var(--font-color-title);
}

.section-title h1.text-right, .section-title h2.text-right {
    text-align: right;
}

.section-title span.br {
    display: block;
}

.section-title small {
    display: block;
    color: var(--primary);
    font-size: 18px;
    font-family: var(--font-family-default);
    margin: 0 0 10px;
    letter-spacing: 6px;
}

.section-title small.is-secondary {
    color: var(--secondary);
}
 
.section-title h1 span.line-number, .section-title h2 span.line-number {
    font-size: 18px;
    height: 92%;
    position: absolute;
    left: -55px;
    top: 0;
    font-weight: 400;
    border-right: 1px #cbcbcb solid;
    padding-right: 14px;
    color: #a3a3a3;
}

.ip-container .line-number {
    display: none;
}

.section-btn {
    font-size: 14px;
    font-family: var(--font-family-title);
    font-weight: 400;
    color: #525252;
    text-transform: uppercase;
    letter-spacing: 1px;
    min-width: 200px;
    border: 1px #c1c1c1 solid;
    display: inline-block;
    text-align: center;
    padding: 24px 40px 20px;
    transition: var(--default-transition);
    background-color: transparent;
    position: relative;
}

.section-btn::before {
    content: '';
    position: absolute;
    width: 60px;
    height: 2px;
    background: var(--primary);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    transition: all var(--default-transition);
    z-index: -1;
}

.section-btn:hover {
    /* background-color: var(--primary); */
    border-color: var(--primary);
    color: #fff;
    font-weight: 700;
}

.section-btn:hover::before {
    width: 100%;
    height: 100%;
}

.slide-arrow {
    border: 0;
    background: transparent;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 20px;    
}

.slide-icon {
    width: 73px;
    height: 60px;
    display: inline-block;    
    vertical-align: middle;
    background-image: url(images/slide-arrow.png);
    background-size: contain;
    margin: 0 15px;
    transition: all var(--default-transition);
    background-repeat: no-repeat;
}


.slide-arrow:hover i {
    opacity:  0.5;
}

.slide-arrow-n .slide-icon {
    transform: scaleX(-1);
}

/* .slide-arrow-n:hover i {
    transform: scale(-1.1, 1.1);
} */


/* header */
.header {
    color: #fff;
    padding: 35px 0;
    position: absolute;
    z-index: 900;
    width: 100%;
    background-color: transparent
}

.header.fixed {
  position: fixed;
  background-color: rgb(0 0 0 / 85%);
  animation: smoothScroll 1s forwards;
  border-bottom: 3px var(--primary) solid;
  padding: 12px 0; 
  z-index: 1010;
}

@keyframes smoothScroll {
	0% {
		transform: translateY(-40px);
	}
	100% {
		transform: translateY(0px);
	}
}

.header .custom-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    max-width: 1410px;
    width: 95%;
}

.header .logo, .header .logo-2 {
    max-width: 30%;
}

.header .logo img, .header .logo-2 img {
    transition: var(--default-transition);
    width: 100%;
    height: auto;
}

.header.fixed .logo {
    margin-right: 35px;
}

.header .logo a {
    display: block;
}

.header .hdr-nav-inner .navigation{
    display: flex;
    position: relative;
    align-items: center;
}

.header .hdr-contact { 
    text-align: center;
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 5px;
    position: absolute;
    left: 0;
    bottom: -40px;
    text-align: center;
    width: 100%;
}

.header .hdr-contact a {
    transition: var(--default-transition);
}

.header .hdr-contact a:hover {
    color: var(--secondary);
}

.header.fixed .hdr-contact {
    position: relative;
    left: auto;
    bottom: 0;
    width: auto;
    font-size: 35px;
    margin-right: 35px;
}


/* Sub Menu */
.hdrnav {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-family-default);
}

.hdrnav > li {
    position: relative;
    margin: 0;
}

.hdrnav > li:not(:last-child) {
    margin-right: 35px;
}

.hdrnav > li:last-child {
    margin-right: 20px;
}

.hdrnav > li::after {
    content: '';
    width: 15px;
    height: 5px;
	position: absolute;	
    top: 110%;    
    left: 50%;
    transform: translateX(-50%);
    opacity: 1;
    border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #fff;
	border-width: 6px;
    opacity: 0;
}

.hdrnav > li.menu-item-has-children:hover::after {
    opacity: 1;
}

.hdrnav > li > a {
    font-size: 14px;
    color: var(--white-text);
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: 1.2px;
    padding: 5px 0;
    display: block;
    position: relative;
    transition: var(--default-transition);
    white-space: nowrap;
}

.hdrnav > li > a:hover {
    color: var(--primary);
}

.hdrnav .sub-menu {
    list-style: none outside none;
    margin: 0;
    padding: 20px 0 0;
    position: absolute;
    width: 100%;
    min-width: 210px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 99;
    transition: var(--default-transition);
    opacity: 0;
    visibility: hidden;
}

.header.fixed .hdrnav .sub-menu {
    padding-top: 37px;
}

.hdrnav li:hover > .sub-menu, .hdrnav li:focus > .sub-menu, .hdrnav li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
}

.hdrnav .sub-menu li {
    display: block;
    position: relative;
    padding: 0;
    margin-bottom: 1px;
    background: rgb(0 0 0 / .75);
}

.hdrnav .sub-menu li:before {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--primary);
    transition: var(--default-transition);
    z-index: 1;
    opacity: 0;
    pointer-events: none;
}

.hdrnav .sub-menu li:hover:before, .hdrnav .sub-menu li:focus:before {
    opacity: 1;
}

.hdrnav .sub-menu li.menu-item-has-children:after {
    position: absolute;
    content: '';
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-right: 7px solid #fff;
    z-index: 2;
    pointer-events: none;
}

.hdrnav .sub-menu a {
    font-size: 13px;
    color: #fff;
    line-height: 1;
    letter-spacing: .025em;
    display: block;
    text-align: center;
    padding: 10px !important;
    text-transform: uppercase;
    line-height: 1;
    transition: var(--default-transition);
    position: relative;
    z-index: 2;
}

.hdrnav .sub-menu a:hover, .hdrnav .sub-menu a:focus {
    color: #fff;
}

.hdrnav .sub-menu .sub-menu {
    margin-left: 100%;
    padding: 0 0 0 1px;
    top: 0;
}

/* footer: contact form */
.footer-contact-form {    }

.footer-cf {
    position: relative;
    padding: 60px 0;
    background: #000;
    border-bottom: 5px var(--primary) solid; 
    color: #fff;
}

.footer-cf .custom-container {
    position: relative;
    z-index: 2;
}

.footer-cf .section-title h2 {
    color: #fff;
}

.footer-cf .wpcf7 {
    width: 95%;
    max-width: 825px;
    margin: 0 auto;
    position: relative;
}

.footer-cf .wpcf7 form {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    position: relative;
    margin-top: 30px;
}

.footer-cf .wpcf7 .wpcf7-response-output {
    position: absolute;
    width: 100%;
    text-align: center;
    color: #fff;
    bottom: -40px;
    margin: 0;
    padding: 5px;
}

.cf-field {
    width: calc(50% - 10px);
    padding: 5px 0;
    position: relative;
    margin-bottom: 15px;
}

.cf-field-full {
    width: 100%;
}

.cf-field input,
.cf-field textarea{
    width: 100%;
    background: transparent;
    border: 0;
    padding: 15px;
    font-size: 15px;
    letter-spacing: 1.1px;
    outline: none;
    border: 1px #fff solid;
    color: #fff;
}

.cf-field input::placeholder,
.cf-field textarea::placeholder {
    text-transform: uppercase;
    color: #fff;
}

.cf-field textarea {
    resize: none;
    padding-top: 20px;
    height: 175px;
    padding-right: 60px;
}

.cf-field textarea::-webkit-scrollbar {
    display: none;
}

.cf-submit {
    position: absolute;
    bottom: 40px;
    right: 40px;
    right: 20px;
}

.cf-submit .section-btn {
    border: 0;
    font-size: 0;    
    min-width: auto;
    height: auto;
    padding: 0;
    color: #fff;
}

.cf-submit .section-btn::before {
    display: none;
}

.cf-submit .section-btn i {
    font-size: 35px;
}

.cf-submit .section-btn:hover {
    background: transparent;
    color: var(--primary);
}

.cf-field .wpcf7-not-valid-tip {
    position: absolute;
    left: auto;
    right: 0;
    width: auto;
}

/* footer */
.footer {
    background: #fff;
    padding: 50px 0 40px;
    position: relative;
    color: #2a2a2a;
}

.footer .custom-container {
    max-width: 1220px;
    position: relative;
    z-index: 1;
    text-align: center;
}

.footer-logo {
    margin-bottom: 35px;
}

.footer-logo .main-logo {
    margin-right: 20px;
    display: inline-block;
}

.footer-logo img {
    vertical-align: middle;
    max-width: 90%;
    height: auto;
}

.footer-contact-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-bottom: 1px rgb(255 255 255 / .20) solid;
/*
    max-width: 845px;
    margin: 0 auto;
*/
    padding-bottom: 35px;
}

.footer-contact.with-divider::after {
    content: '';
    width: 1px;
    height: 15px;
    background: #fff;
    right: 0;
    opacity: .20;
    display: inline-block;
    margin: 0 15px;
    position: relative;    
    vertical-align: middle;
}

.footer-contact i {
    color: var(--secondary);
    margin-right: 12px;
    vertical-align: middle;
    display: inline-block;
}

.footer-contact i.ai-font-phone {
    font-size: 14px;
}

.footer-contact i.ai-font-envelope-f{
    font-size: 13px;
}

.footer-contact i.ai-font-location-c {
    font-size: 20px;
}

.footer-contact > a, .footer-contact > span {
    display: inline-block;
    vertical-align: middle;
}

.footer-contact-smis {
    width: 100%;
    margin-bottom: 30px;
}

.footer-contact-smis a {
    display: inline-block;
    width: 45px;
    height: 45px;
    line-height: 45px;
    text-align: center;    
    color: #000;
    border-radius: 50%;
    font-size: 20px;
    margin: 0 6px;
    border: 2px #808080 solid;
}

.footer-contact-smis a:hover {
    background-color: var(--secondary);
    border-color: var(--secondary);
    transition: var(--default-transition);
    color: #fff !important;
}

.footer-nav {
    width: 100%;
    padding-bottom: 35px;    
    margin: 0 0 30px;
    text-align: center;
    border-bottom: 1px rgb(0 0 0 / 15%) solid;
}

.footernav li {
    display: inline-block;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    position: relative;
}

.footernav li:not(:last-child)::after {
    content: '';
    width: 1px;
    height: 15px;
    background: transparent;
    right: 0;
    opacity: .20;
    display: inline-block;
    margin: 0 10px;
    position: relative;
    top: 2px;
}

.footer-bottom {
    padding: 40px 0;
    text-align: center;
}

.footer-copyright {
    font-size: 14px;
    line-height: 20px;
}

.agent-name {
    text-transform: uppercase;
    font-weight: 700;
    color: var(--secondary)
}

.footer-copyright p {
    padding: 5px 0;
}

.footer-copyright .ai-icon {
    font-size: 28px;
    margin-right: 5px;
    color: #000;
}

.footer-disclaimer {
    font-size: 11px;
    line-height: 20px;    
    margin: 0 auto 30px;
}

.footer a {
    transition: var(--default-transition);
    color: #454545;
}

.footer a:hover, .footer a:focus {
    color: var(--secondary);
}

/* home: slideshow */
.hp-slider, .hp-slider .textwidget {
    position: relative;
}

.hp-slider .aios-scroll-to {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%);
    z-index: 1;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 4px;
    padding-bottom: 40px;
}

.hp-slider .aios-scroll-to img {
    display: block;
    margin: 15px auto 0;
}

.hp-slider .aios-scroll-to::before,.hp-slider .aios-scroll-to::after {
    content: '';
    width: 1px;
    height: 25px;
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.hp-slider .aios-scroll-to::after {
    background: #000;
    bottom: -25px;
}

.hp-slider .aios-slider-img::before, .hp-slider .aios-slider-img::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 30%;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 80%;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);    
}

.hp-slider .aios-slider-img::after {
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);    
    top: auto;
    bottom: 0;
}

.hp-slider-tagline {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: #fff;
    width: 100%;
    text-align: center;    
}

.hp-slider-tagline h1, .hp-slider-tagline h2 {
    font-size: 100px;
    font-family: var(--font-family-title);
    color: var(--secondary);
    text-shadow: 0 0 20px #000;
    position: relative;
    z-index: 2;
}

.hp-slider-tagline::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 100px;
    background: #000;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    filter: blur(40px);
    border-radius: 50%;
    z-index: 1;
    opacity: .6;
}

/* home: smis */
.hp-smis-list {    
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    right: 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 10;
}

.hp-smis-list .divider {
    height: 30px;
    width: 1px;
    background: #fff;
}

.hp-smis-list a {
    display: inline-block;    
    text-align: center;
    color: #fff;    
    font-size: 22px;
    margin: 15px 6px;
    transition: all var(--default-transition);
}

body[sidebar-active-section="hp-welcome"] .hp-smis-list a,
body[sidebar-active-section="hp-stats"] .hp-smis-list a,
body[sidebar-active-section="hp-featured-properties"] .hp-smis-list a,
body[sidebar-active-section="hp-ctas"] .hp-smis-list a,
body[sidebar-active-section="hp-social-media"] .hp-smis-list a{
    color: #454545;
}

body[sidebar-active-section="hp-welcome"] .hp-smis-list .divider,
body[sidebar-active-section="hp-stats"] .hp-smis-list .divider, 
body[sidebar-active-section="hp-featured-properties"] .hp-smis-list .divider,
body[sidebar-active-section="hp-ctas"] .hp-smis-list .divider, 
body[sidebar-active-section="hp-social-media"] .hp-smis-list .divider{
    background: #454545;
}

.hp-smis-list a.aios-ai-phone, .hp-smis-list a.asis-mailto-obfuscated-email  {
    font-size: 0;
}

.hp-smis-list a.aios-ai-phone i {
    font-size: 16px;
}

.hp-smis-list a.asis-mailto-obfuscated-email i {
    font-size: 14px;
}

.hp-smis-list a:hover {
    color: var(--primary);
}

/* home: social media */
.hp-sm {
    position: relative;
    padding: 80px 0 0;
}

.hp-sm::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 25%;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
}

.hp-sm .custom-container {
    max-width: 1410px;
    background: rgb(255 255 255 / 85%);
    padding: 100px 150px;
    z-index: 2;
}

.hp-sm-feed {
    display: flex !important;
    flex-wrap: wrap;
}

.hp-sm-feed-item, .hp-sm-feed-source {
    width: 33.33%;
    padding: 10px;
}

.hp-sm-feed-source  {
    display: flex;
    align-items: center;
    justify-content: center;
    order: 4;
    flex-direction: column;
}

    .hp-sm-feed-source-list {
        width: 100%;
    }
    .hp-sm-feed-source-item {
        text-align: center;
    }
        .hp-sm-feed-source-item img {
            margin-left: auto;
            margin-right: auto;
        }

.hp-sm-feed-source-logo {
    margin: 15px 0;
}

.hp-sm-feed-source-logo img {
    max-width: 250px;
}

.hp-sm-feed-source-handle {
    color: #525252;
    font-size: 12px;
    font-weight: 600;
}

.hp-sm-feed-item:nth-child(2) {
    order: 0;
}

.hp-sm-feed-item:nth-child(3) {
    order: 1;
}

.hp-sm-feed-item:nth-child(4) {
    order: 2;
}

.hp-sm-feed-item:nth-child(5) {
    order: 3;
}

.hp-sm-feed-item:nth-child(6) {
    order: 4;
}

.hp-sm-feed-item:nth-child(7) {
    order: 5;
}

.hp-sm-feed-item:nth-child(8) {
    order: 6;
}

.hp-sm-feed-item:nth-child(9) {
    order: 7;
}

.hp-sm-feed-item-hover {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgb(224 33 138 / 50%);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity var(--default-transition);
}

.hp-sm-feed-item:hover .hp-sm-feed-item-hover {
    opacity: 1;
}

.hp-sm-feed-item-hover > span {
    margin: 0 15px;
    font-size: 15px;
    font-family: var(--font-family-title);
    letter-spacing: 2px;
}

.hp-sm-feed-item-hover > span i {
    font-size: 20px;
    margin-right: 8px;
    position: relative;
    top: 2px;
}

.hp-sm-feed-nav .slide-icon {
    width: 37px;
    height: 29px;
}

.hp-sm-feed-nav .slide-arrow {
    margin: 0;
}

.hp-sm-feed-nav .slide-arrow:nth-child(2) {
    border-left: 1px #959595 solid;
    margin-left: 5px;
    padding-left: 20px;
}

.hp-sm-smis {
    margin-bottom: 60px;
}

.hp-sm-smis > a {
    width: calc(20% - 10px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 140px;
    border: 1px #a1a1a1 solid;
    border-bottom: 3px var(--primary) solid;
    transition: all var(--default-transition);
}

.hp-sm-smis > a:hover {
    background: var(--primary);
    color: #fff;
}

.hp-sm-smi-label {
    font-size: 12px;
    font-weight: 600;
}

.hp-sm-smis > a span[class*=ai-font-] {
    font-size: 25px;
    margin-bottom: 15px;
}

/* Home: Quick Search */
.hp-qs {   
    padding: 70px 0;
}

.hp-qs .custom-container {    
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1265px;
}

.hp-qs-left {
    width: 25%;
}

.hp-qs-right {
    width: 70%;
}

.hp-qs .section-title  {
    margin-bottom: 0;
}

.hp-qs .section-title h2 span.sub {
    color: #fff;
}

.hp-qs-form form {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-end
}


.hp-qs-form .form-col {
    width: 38%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.hp-qs-form .form-buttons {
    width: 14%;
}

.hp-qs-form .form-buttons button {
    width: 60px;
    height: 50px;
    border: 0;
    font-size: 0;
    background: transparent;
    border: 1px #c1c1c1 solid;
    border-bottom: 2px var(--primary) solid;
    transition: all .5s;
}

.hp-qs-form .form-buttons button:hover {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

.hp-qs-form .form-buttons a.adv-search {
    font-size: 0;
    width: 60px;
    height: 50px;
    line-height: 50px;
    display: inline-flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    color: var(--secondary);
     transition: all .5s
}

.hp-qs-form .form-buttons a.adv-search:hover {
    color: var(--primary);
}


.hp-qs-form .form-buttons button i, .hp-qs-form .form-buttons a.adv-search i{
    font-size: 30px;
}

.hp-qs-form .form-input {
    width: calc(50% - 10px);
    margin-bottom: 5px;
    position: relative;
}

.hp-qs-form .form-input-lg {
    width: 100%;
}

.hp-qs-form .powered-by {
    text-align: right;
    width: 100%;
    margin-top: 25px;
    font-size: 12px;
    letter-spacing: 1.5px;
    font-weight: 300;
}

.hp-qs-form .form-input > input,
.hp-qs-form .form-input > select{
    width: 100%;
    background: transparent;
    text-transform: uppercase;
    border: 0;
    border-bottom: 1px #000 solid;
    height: 50px;
    padding: 0 30px;
    font-size: 12px;
    letter-spacing: 1px;
    outline: none;
}

.hp-qs-form .form-input > select {
    -webkit-appearance: none;
    appearance: none;
}

.hp-qs-form .form-input::after {
    content: '';
    width: 10px;
    height: 5px;
	position: absolute;	    
    opacity: 1;
    border: solid transparent;
	content: "";	
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-top-color: var(--secondary);
	border-width: 6px;    
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.hp-qs-form .form-input > select option {
    color: #666;
}

.hp-qs-form .form-select{
    position: relative;
}

.hp-qs-form .form-button {
    border: 1px #fff solid;
    color: #fff;
    height: 50px;
}

.hp-qs-form .form-button button {
    width: 100%;
    height: 100%;
    background: transparent;
    border: 0;
    text-transform: uppercase;
    z-index: 2;
    position: relative;
    letter-spacing: 1px;
}

.hp-qs-form .form-button:hover button {
    color: #000;
}

.hp-qs-form .advanced-button {
    width: calc(33.33% - 2.5px);
    text-align: center;
    height: 50px;
    line-height: 50px;
    display: block;
    background-color: #120024;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.hp-qs-form .form-input i {    
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
}

.hp-qs-form .form-input i.icon-qs-house {
    background-image: url(images/icon-qs-house.png);
}

.hp-qs-form .form-input i.icon-qs-bed {
    background-image: url(images/icon-qs-bed.png);
}

.hp-qs-form .form-input i.icon-qs-bath {
    background-image: url(images/icon-qs-bath.png);
}

.hp-qs-form .form-input i.icon-qs-tag {
    background-image: url(images/icon-qs-tag.png);
}

.hp-qs-form .form-input i.icon-qs-location {
    background-image: url(images/icon-qs-location.png);
}

/* home: welcome */
.hp-wc {
    overflow: hidden;
}

.hp-wc::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 10%;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
    bottom: 0;
    left: 0;
    z-index: 1;
}


.hp-wc .custom-container {    
    padding: 0 50px;
    position: relative;
    max-width: 1430px;
    z-index: 2;
}

.hp-wc .custom-container::before {
    background: rgb(255 255 255 / 85%);
    position: absolute;
    top:0;
    left: 0;
    width: 70%;
    height: 100%;
    content: '';
    z-index: -1;
}

.hp-wc-text {
    width: 55%;
    padding: 0 10px 0 40px;
}

.hp-wc-contact-name {
    font-family: var(--font-family-accent);
    font-size: 65px;
    color: var(--primary);
    display: inline-block;
    width: 280px;
    height: 65px;
}

.hp-wc-contact-name span {
    overflow: hidden;    
    display: inline-block;    
    white-space: nowrap;        
    width: 100%;
}

[data-aos="grow-width"]  {
    width: 0 !important;
}
[data-aos="grow-width"].aos-animate {
    width: 100% !important;
}

.hp-wc-contact-details {
    margin-left: 50px;
}

.hp-wc-contact-info {
    font-size: 15px;
    margin-bottom: 10px;
}

.hp-wc-contact-info i {
    margin-right: 8px;
    color: var(--secondary);
}

.hp-wc-contact-info i.ai-font-envelope-f {
    font-size: 12px;
}

.hp-wc-contact-info:nth-child(1) {
    font-family: var(--font-family-title);
}

.hp-wc-photo {
    position: relative;
    width: fit-content;
}

.hp-wc-photo::before {
    content: '';
    position: absolute;
    width: 100vw;
    height: 5px;
    background: #d2d2d2;
    top: 100px;
    left: calc(100% - 200px);
}

.hp-wc-photo img {
    z-index: 3;
    position: relative;
    display: block;
}

.hp-wc-img-bg-1 {
    z-index: 2;
    height: 60%;
    bottom: 60px;
    top: auto;    
    width: 110%;    
    left: auto;
    right: -20px;
}

.hp-wc-img-bg-2 {
    z-index: 1;
    width: 40%;
    height: 55%;
    left: -80px;
    bottom: 0;
    top: auto;
}


/* home: stats */
.hp-stats {
    position: relative;
}

.hp-stats::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 25%;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
}

.hp-stats .section-title h2 {
    position: relative;
}

.hp-stats .section-title h2::before,.hp-stats .section-title h2::after {
    content: '';
    position: absolute;
    width: 113px;
    height: 90px;
    background: url(images/quote.png) no-repeat;
    opacity: 8%;
    left: -60px;
    top: -30px;
}

.hp-stats .section-title h2::after {
    right: -70px;
    bottom: -35px;
    left: auto;
    top: auto;
    transform: rotate(180deg)
}

.hp-stats .section-title small {
    color: #454545;
}

.hp-stats .section-title h2 {
    color: var(--primary);
}

.hp-stats h3 {
    font-size: 40px;
    text-transform: uppercase;
    margin: 30px 0;
}

.hp-stats .custom-container {
    background: rgb(255 255 255 / 85%);
    padding: 50px  50px 150px;
    z-index: 3;
}

.hp-pp-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.hp-pp-item {
    width: calc(25% - 18px);
    margin: 18px 0;
    border: 1px #a1a1a1 solid;
    border-bottom: 5px var(--primary) solid;
    text-transform: uppercase;
    padding: 50px 10px;    
    font-size: 15px;
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
}

.hp-pp-item strong {
    font-size: 30px;
    font-family: var(--font-family-title);
    color: #000;
}

.hp-pp-item strong.m {
    font-size: 40px;
}

.hp-pp-item strong.l {
    font-size: 50px;
}

/* home: meet the team */
.hp-mtt {
    overflow-x: hidden;
}

.hp-mtt-top .section-title {
    position: absolute;
    z-index: 1;
    top: 84px;
    left: 10%;
}

.hp-mtt-top .section-title h2 {
    color: #fff;
}

.hp-mtt-top .section-title .line-number {
    color: #fff;
}

.hp-mtt-top .section-btn {
    position: absolute;
    bottom: 65px;
    z-index: 2;
    left: 50%;
    transform: translateX(-50%);
} 

.hp-mtt-top .section-btn {
    color: #fff;
}

.hp-mtt-top::before, .hp-mtt-top::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 50%;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
    z-index: 1;
    opacity: 25%;
    pointer-events: none;
}

.hp-mtt-top::after {
    height: 30%;
    background: linear-gradient(0, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
    bottom: 0;
    top: auto;
    z-index: 1;
}

.hp-mtt-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 -5px;
}

.hp-mtt-item {
    width: calc(100% / 6);
    margin: 10px 0;
    padding: 0 5px;
    position: relative;
}

.hp-mtt-item-img::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border: 5px var(--primary) solid;
    z-index: 3;
    transition: all var(--default-transition);
    opacity: 0;
}

.hp-mtt-item:hover .hp-mtt-item-img::before {
    opacity: 1;
}

.hp-mtt-item-img::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 50%;
    bottom: 0;
    left: 0;
    z-index: 1;
    opacity: 80%;
    pointer-events: none;
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);    
}

/* .hp-mtt-item:hover .hp-mtt-item-img::after {
    bottom: 40px;
} */

.hp-mtt-item-more {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--primary);
    z-index: 3;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    padding: 15px;
    font-family: var(--font-family-title);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 2px;
    opacity: 0;
    transition: all var(--default-transition);
}

.hp-mtt-item:hover .hp-mtt-item-more {
    opacity: 1;
}

.hp-mtt-info{
    position: absolute;
    bottom: 20px;
    width: 100%;
    text-align: center;
    color: #fff;
    left: 0;
    z-index: 2;
    transition: all var(--default-transition);
    padding: 0 10px;
    line-height: 1.2;
}


.hp-mtt-item-name {
    font-size: 16px;
    font-weight: 700;
    transition: all var(--default-transition);
    text-transform: uppercase;
    margin-bottom: 10px;
}

.hp-mtt-item-title{
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 20px;
}

.hp-mtt-item-phone {
    font-size: 12px;
    font-family: var(--font-family-title);
    margin-bottom: 10px;
}

.hp-mtt-item-phone i {
    font-size: 13px;
    margin-right: 5px;
}

.hp-mtt-item-email {
    font-size: 12px;
    font-weight: 600;
}

.hp-mtt-item-email i {
    font-size: 10px;
    margin-right: 8px;
}

.hp-mtt-item:hover .hp-mtt-info {
    bottom: 70px;
}

.hp-mtt-highlight {
    flex: 1;
    margin: 10px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
}

.hp-mtt-highlight h3 {
    font-size: 48px;
    font-family: var(--font-family-title);    
    color: var(--primary);   
    margin-bottom: 15px;
    font-weight: 700
}

.hp-mtt-highlight p {
    margin-bottom: 10px !important;
    font-size: 36px !important;
    font-weight: 500;
    color: var(--secondary);
}

/* home: featured properties */
.hp-fp {
    padding: 70px 0;
}

.hp-fp::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 25%;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
}

.hp-fp > .custom-container {
    z-index: 2;
}

.hp-fp-list {
    margin-bottom: 60px;
}

.hp-fp-item {
    /* width: calc(50% - 10px); */
    position: relative;
    padding: 10px;
}

.hp-fp-item-img::before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    z-index: 2;
    opacity: 0;
    pointer-events: none;    
    border: 5px var(--primary) solid;
    transition: opacity var(--default-transition);
}

.hp-fp-item:hover .hp-fp-item-img::before {
    opacity: 1;
}

.hp-fp-item-img::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 50%;
    bottom: 0;
    left: 0;
    z-index: 1;
    opacity: 80%;
    pointer-events: none;
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);    
}

.hp-fp-item-body {
    position: absolute;
    bottom: 0;
    color: #fff;
    width: 100%;
    padding: 0 40px 30px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    z-index: 1;    
    left: 0;
}

.hp-fp-item-details {
    font-family: var(--font-family-title);
}

.hp-fp-item-price {
    font-size: 32px;        
    font-weight: 700;
    margin-bottom: 20px;
}

.hp-fp-item-address-1 {
    font-size: 22px;
    margin-bottom: 10px;
}

.hp-fp-item-address-2 {
    font-size: 16px;
    margin-bottom: 20px;
}

.hp-fp-item-spec {
    display: inline-block;
    margin-right: 10px;
}

.hp-fp-item-spec i {
    width: 15px;
    height: 13px;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 5px;
}

.hp-fp-item-spec i.icon-bed {
    background-image:url(images/icon-bed.png);
}

.hp-fp-item-spec i.icon-bath {
    background-image:url(images/icon-bath.png);
}

.hp-fp-item-spec i.icon-sqft {
    background-image:url(images/icon-sqft.png);
}

.hp-fp-item-btn .section-btn {
    color: #fff;
}

.hp-fp-item:hover .section-btn {
    border-color: var(--primary);
    font-weight: 700;
}
.hp-fp-item:hover .section-btn::before {
    width: 100%;
    height: 100%;    
}

/* home: areas of expertise */
.hp-aoe .custom-container {
    width: 100%;
    max-width: 100%;
}

.hp-aoe-list-more {
    margin-top: 140px;
}

.hp-aoe-item-img::before {    
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border: 4px var(--primary) solid;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
    transition: all .5s;
}

.hp-aoe-item:hover .hp-aoe-item-img::before {
    opacity: 1;
}

.hp-aoe-item, .hp-aoe-item-spacer, .hp-aoe-more-group {
    width: calc(100% / 6 - 5px);
    position: relative;
    margin: 2.5px;
}

.hp-aoe-item-label {
    position: absolute;
    bottom: 0;
    z-index: 1;
    width: 100%;
    text-align: center;
    color: #fff;
    text-transform: uppercase;    
    padding: 15px 5px;
    font-family: var(--font-family-title);
    font-size: 16px;
    background: linear-gradient(0deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,1) 100%);
    opacity: 0.9;
    transition: all .5s;
}

.hp-aoe-item-label::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background: var(--primary);
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    transition: all .5s;
}

.hp-aoe-item:hover .hp-aoe-item-label::before  {
    opacity: 1;
}

.hp-aoe-group-name {
    width: calc(33.33% - 5px);
    font-size: 40px;
    text-align: center;
    font-family: var(--font-family-title);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 2.5px;
    padding-right: 35px;
}

.hp-aoe-more-group {    
    font-size: 40px;
    font-family: var(--font-family-title);
    padding: 0 60px
}

.hp-aoe-group-name.line-left {
    padding-right: 0;
    padding-left: 35px;
    justify-content: flex-start
}

.hp-aoe-group-name::after, .hp-aoe-group-name.line-left::before {
    width: 100%;
    max-width: 100px;
    height: 1px;
    background: #454545;
    content: '';
    margin-left: 20px;
}

.hp-aoe-group-name.line-left::after {
    display: none;
}

.hp-aoe-group-name.line-left::before {
    margin-right: 20px;
}

/* home: ctas */
.hp-ctas-wrap {
    padding: 150px 0;
}

.hp-cta {
    width: calc(50% - 30px);
    position: relative;
}

.hp-cta::before {
    border: 5px #d2d2d2 solid;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: -45px;
    left: -45px;
}

.hp-cta:last-child::before {
    left: auto;
    right: -45px;
    top: auto;
    bottom: -45px;
}

.hp-cta-img {
    border: 5px transparent solid;
    transition: all var(--default-transition);
}

.hp-cta-img canvas {
    background: #000;
}

.hp-cta:hover .hp-cta-img {
    border-color: var(--primary);
}

.hp-cta-img::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 50%;
    bottom: 0;
    left: 0;
    z-index: 1;
    opacity: 80%;
    pointer-events: none;
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);    
}

.hp-cta-body {
    position: absolute;
    bottom: 0;
    padding: 50px 25px;
    z-index: 2;
}

.hp-cta-label {    
    color: #fff;
    font-size: 50px;
    font-family: var(--font-family-title);    
    margin-bottom: 20px;
}

.hp-cta-more {    
    color: #fff;
    background: var(--primary);
    z-index: 2;
    font-family: var(--font-family-title);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 2px;
    width: 200px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    max-height: 0;
    overflow: hidden;
    transition: all var(--default-transition);
}

.hp-cta:hover .hp-cta-more {
    max-height: 100px;
}

/* home: testimonials */
.hp-testi .custom-container {
    max-width: 1410px;
}


.hp-testi-list .slick-list {
    padding: 60px 0 80px;
}

.hp-testi-list .slick-slide {
    padding: 0 9px;
}

.hp-testi-item {
    text-align: center;
    background: #fff;
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
    padding: 70px 40px 40px;
    position: relative;
}

.hp-testi-item::before {
    content: '';
    position: absolute;
    width: 113px;
    height: 90px;
    background: url(images/quote.png) no-repeat;
    opacity: 8%;
    left: 50%;
    top: -50px;
    transform: translateX(-50%);
}

.hp-testi-name {
    font-size: 22px;
    font-family: var(--font-family-title);
    margin-bottom: 20px;
}

.hp-testi-star {
    margin-bottom: 30px;
}

.hp-testi-star i {
    color: var(--primary);
    font-size: 18px;
    margin: 0 2px;
}

.hp-testi-text {
    font-size: 16px;
    color: #000;
    line-height: 1.5;
}

/*******************************************************
 *
 * 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,.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: 70px;
    font-family: var(--font-family-title);
    font-weight: 400;
    display: inline-block;
    text-transform: uppercase;
    margin: 0;
    text-align: left;
    color: var(--primary);
}

/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {
    font-size: 30px;
    font-family: var(--font-family-title);
    font-weight: 400;
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    margin: 0;
    text-align: left;
    line-height: 1.3;
    transition: color var(--default-transition);
}
#content .archive-subtitle a {
    transition: color var(--default-transition);
}
#content .archive-subtitle:hover, #content .archive-subtitle a:hover {
    color: var(--primary);
}

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

body.pojo-a11y-readable-font [class*="ai-font"] {
  font-family: agentimage !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;
}

body.single-aios-communities.aios-custom-ihomefinder-results-template #content-full .entry-title {
    width: auto;
}

.hp-qs-form button.btn.dropdown-toggle.btn-default {
    width: 100%;
    background: transparent;
    text-transform: uppercase;
    border: 0;
    border-bottom: 1px #000 solid;
    height: 50px;
    padding: 0 30px;
    font-size: 12px;
    letter-spacing: 1px;
    outline: none;
    border-radius: unset;
}

.hp-qs-form span.filter-option.pull-left {
    color: #000 !important;
}

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


.single-aios-events #content .entry-title {
    font-size: 50px;
    line-height: 1.2;
    margin-bottom: 30px;
}

.page-template-template-news article .entry .title-popup a:nth-child(n+2) {
    display: none;
}

.slick-track * {
    outline: none!important;
}

body.page-id-149 #listings-results .listings-status {
    background: #ff0000;
}

.hp-fp-list .slick-slide > div {
    display: flex;
    justify-content: center;
}

.hp-qs .bootstrap-select.btn-group .dropdown-toggle .filter-option {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 90%;
}

.hp-smis-list a {
    text-shadow: 0 0 1px #000;
}
.hp-smis-list .divider {
    box-shadow: 0 0 1px #000;
}

.hp-mtt-item-img::before {
    pointer-events: none;
}

.hp-mtt-info a {
    transition: all .5s;
}

.hp-mtt-info a:hover {
    color: #fff;
    opacity: .7;
}

.agents-popup-form .wpcf7-not-valid-tip {
    width: auto;
    left: 0;
    text-align: center;
}
.agents-popup-form .wpcf7-response-output {
    text-align: center;
    font-size: 12px;
}

body.page-id-0 #inner-page-wrapper {
    position: unset;
}

#agents-results .agent-top {
    margin: 10px 0;
}

body.page-id-159 .entry-content a:hover {
    color: var(--primary);
}

.ai-contact-wrap :is(.context-mob, .context-email):hover :is(a, em) {
    color: var(--primary) !important
}

.hp-mtt .slick-slide:has(.hp-mtt-highlight) {
    display: none;
}

.slick-slide .hp-mtt-item {
    margin: 0;
}

.hp-mtt-nav {
    margin-top: 20px;
}

#listings-details .listings-smi ul>li {
    padding: 10px 8px !important;
}

#listings-details .listings-smi ul>li>a {
    font-family: agentimage!important;
}
/* MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css */

#gt_float_wrapper {
    top: 10px !important;
    right: 10px !important;
}

.gt_float_switcher .gt-selected .gt-current-lang {
    padding: 5px !important;
}

.gt_float_switcher img {
    width: 24px !important;
}
.gt_float_switcher .gt-selected .gt-current-lang span.gt-lang-code {
    font-size: 16px !important;
    top: 1px !important
}

.gt_float_switcher .gt_options a {
    font-size: 16px !important;
}

.ip-vendors {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    margin: 0 -15px;
}

.ip-vendors p {
    margin: 0 !important;
}

.ip-vendor {
    width: 33.33%;
    padding: 0 15px;
    margin: 0 0 20px;
}

.ip-vendor-inner {
    position: relative;
}

.ip-vendor-inner > a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 60px;
    background: linear-gradient(to right,  #ff5691 0%,#ff0860 100%);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    transition: all 0.3s ease-in-out;
    padding: 0 15px;
    text-shadow: 0px 0px 5px #000;
    box-shadow: 5px 5px 10px #ccc;
}

.ip-vendor-inner > a:hover {
    color: #fff !important;
}

.ip-vendor-sub {
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 100;
    background: #fff;
    border: 1px solid #ccc;
    border-top: none;
    padding: 15px;
    display: none;
    max-height: 500px;
    overflow-x: hidden;
    
}

.ip-vendor-sub::-webkit-scrollbar {
    width: 4px;
    background: #ccc;
}

.ip-vendor-sub::-webkit-scrollbar-thumb {
    background: #666;
}

.ip-vendor-sub > div {
    line-height: 1.5;
}

.ip-vendor-sub > div:not(:last-of-type) {
    margin: 0 0 15px;
}

.ip-vendor-sub > div strong {
    text-transform: uppercase;
}

.post-page-vendors-we-love #inner-page-wrapper {
    z-index: 10;
}

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

.single-aios-agents #agents-single .agents-smi li a:hover {
    color: var(--aios-agents-icon-color);
}

.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-details-template #content-full #content, 
.ihf-details-template #content-sidebar #content {
    width: 100% !important;
}