/*

Theme Name: Tatiana Novick

Description: AIOS mobile semi-custom theme.

Author: AgentImage

Author URI: http://www.agentimage.com

Version: 1.6.0

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-montserrat: 'Montserrat', sans-serif;

    --font-family-playfair: 'Playfair Display', serif;

    --font-family-italiana: 'Italiana', serif;

    --font-size-default: 14px;

    --font-size-title: 18px;

    --font-color-default: #000000;

    --font-color-title: #6c757d;

    

    /** Use for input, button, and any other element */

    --blue: #3a82ce;

    --gray: #848484;

    --green: #788264;

    --warning: #ffc107;

    --danger: #dc3545;

    --light: #f8f9fa;

    --dark: #343a40;

}



/*******************************************************

 *

 * 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,

#nav .sub-menu a:focus-within {

    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,

#nav li:focus-within > .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; */

}



/*******************************************************

 *

 * 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-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 60px;

  letter-spacing: .02em;

  line-height: 1.39;

  color: #000000;

  text-transform: uppercase;

}



/* Styles for category/archive/search/etc subheadings (h2) */

#content .archive-subtitle {



}



/* Content font style */

#content * {

  font-family: var(--font-family-montserrat);

}



/*******************************************************

 *

 * 5. Helpers

 *

 *******************************************************/

#content, #listings {

  overflow-x: hidden;

  overflow-y: hidden;

}

.img-fluid {

	max-width: 100%;

	height: auto;

}

.upper {

  text-transform: uppercase;

}

.button-clickable {

  position: relative;

}

.button-clickable::before {

  content: '';

  position: absolute;

  width: 55px;

  height: 2px;

  background: #000000;

  left: 0;

  bottom: 0;

  transition: all 0.3s ease-in-out;

}

.button-clickable:hover::before{

  width: 100%;

}

a {

  font-family: var(--font-family-montserrat);

}

a:hover {

  color: inherit;

}

.arrow span {

  cursor: pointer;

}

.arrow span {

  transition: all 0.3s ease-in-out;

} 

.arrow span:hover {

  background: var(--blue) !important;

}



 /*******************************************************

 *

 * 6. Header

 *

 *******************************************************/

.header {

  position: fixed;

  width: 100%;

  top: 0;

  left: 0;

  z-index: 1;

  font-family: var(--font-family-montserrat);

  color: #FFFFFF;

  font-size: 14px;

  font-weight: 600;

  letter-spacing: 0.16em;

  text-transform: uppercase;

  padding-top: 40px;

  z-index: 4;

  min-height: 92.13px;

  transition: all 0.2s ease-in-out;

}

.header-container {

  display: flex;

  justify-content: space-between;

  width: 100%;

  padding: 0 60px;

}

.header-container .textwidget {

  width: 22.63%;

}

.header .logo {

  width: 100%;

  display: flex;

}

.header .logo .agent-logo > div {

  padding: 0 30px 6px 30px;

}

.header .logo img {

	filter: brightness(0) invert(1);

}

.header .logo .agent-logo {

  width: 65.52%;

  font-weight: 500;

  font-size: 10px;

  letter-spacing: 0.05em;

  line-height: 1.60;

  padding-right: 20px;

  text-align: center;

}

.header .logo .broker-logo {

  width: 34.48%;

  border-left: 1px solid #FFFFFF;

  height: fit-content;

  padding-left: 40px;

}

.header .links {

  min-width: 818px;

  display: flex;

  justify-content: flex-end;

  align-items: center;

  padding-top: 15px;

  height: fit-content;

}

.header p {

  min-width: 173px;

}

.header .burger {

  width: 45px;

  height: 45px;

  background: var(--blue);

  display: flex;

  flex-direction: column;

  justify-content: space-evenly;

  align-items: flex-end;

  padding: 10px;

  visibility: hidden;

}

.header .burger span {

  width: 24px;

  height: 2px;

  background: #FFFFFF;

}

.header .burger span:first-child {

  width: 12px;

}

.header ul li {

  margin: 0 27.5px;

}

.header ul li:first-child {

  margin-left: 0;

}

.header .phone {

  padding: 0 27.5px;

  padding-right: 40px;

  border-left: 1px solid #FFFFFF;

}

.header.fixed {

  position: fixed;

  background: #ffffff;

  color: black;

  padding-top: 10px;

  box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;

}

.header.fixed .header-container .textwidget {

  width: 17.63%;

}

.header.fixed .logo img {

	filter: brightness(0) invert(0);

}

.header.fixed .agent-logo p {

  display: none;

}

.header .logo .broker-logo {

  border-left: 1px solid var(--gray);



}

.header #nav > li {

  position: relative;

} 

.header #nav > li::before {

  content: '';

  position: absolute;

  width: 0;

  height: 1px;

  background: #fff;

  bottom: -10px;

  left: 50%;

  transform: translateX(-50%);

  transition: all 0.3s ease-in-out;

} 

.header #nav > li::after {

  content: '';

  position: absolute;

  width: 0;

  height: 1px;

  background: #fff;

  top: -10px;

  left: 50%;

  transform: translateX(-50%);

  transition: all 0.3s ease-in-out;

} 

.header.fixed #nav > li::after,

.header.fixed #nav > li::before {

  background: #000;

}

.header #nav > li:hover::after,

.header #nav > li:hover::before {

  width: 110%;

}

.header #nav .sub-menu {

  left: 50%;

  transform: translateX(-50%);

  text-align: center;

  min-width: 200px;

  background-color: transparent;

  padding-top: 12px;

} 

.header.fixed #nav .sub-menu {

  padding-top: 40px;

}

.header #nav .sub-menu li {

  left: 50%;

  transform: translateX(-50%);

  text-align: center;

  padding: 0;

  margin: 0;

  width: 100%;

  margin-bottom: 1px;

} 

.header #nav .sub-menu a {

  padding: 15px 10px;

  background: #3a82ced9;

  transition: all 0.3s ease-in-out;

} 

.header #nav .sub-menu a:hover,

.header #nav .sub-menu a:focus-within {

  background: #3a82ce;

  color: #fff;

} 

.mobile-header {

  margin-top: 52px;

  padding: 10px;

  background: #000;

  text-align: center;

  display: none;

}

.mobile-header .agent-logo {

  width: 200px;

  margin: auto;

}

.mobile-header p, .mobile-header .broker-logo {

  display: none;

}

.mobile-header img {

  filter: brightness(1) invert(1);

}

.header.fixed .phone {

  border-color: #000;

}

.header.fixed .logo .broker-logo {

  width: 30.48%;

  padding-left: 27px;

}

.header.fixed .logo .agent-logo {

  width: 53.52%;

}

.header.fixed .logo .broker-logo img {

  transform: translateX(40px);

}

.header.fixed .logo .agent-logo {

  padding-right: 0;

}

.header.fixed .header-container .textwidget {

  width: 18.63%;

  width: 276.09px;

}



 /*******************************************************

 *

 * 7. Side Menu

 *

 *******************************************************/

#side-menu {

  position: fixed;

  width: 100%;

  min-height: 100vh;

  z-index: 10;

  transform: translateX(200%);

  opacity: 0;

  transition: all 0.4s ease-in-out;

}

#side-menu .navigation #side-menu-nav {

  display: flex;

  flex-wrap: wrap;

}

#side-menu .navigation #side-menu-nav > li {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 24px;

  line-height: 1.08;

  letter-spacing: .1em;

  color: #000000;

  text-transform: uppercase;

  width: 50%;

  margin-bottom: 90px;

}

#side-menu .navigation #side-menu-nav > li > a {

  font-family: var(--font-family-playfair);

}

#side-menu .navigation #side-menu-nav > li > a {

  margin-bottom: 30px;

  display: block;

}

#side-menu .navigation #side-menu-nav .sub-menu li {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 13px;

  line-height: 2.00;

  letter-spacing: .2em;

  color: var(--gray);

  text-transform: uppercase;

}

#side-menu .contacts a {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 14px;

  line-height: 1.5;

  letter-spacing: .1em;

  color: #000000;

}

#side-menu .side-menu-main {

  width: 690px;

  height: 100vh;

  margin-right: 0;

  margin-left: auto;

  background: #fff;

  padding-left: 6%;

  padding-top: 9.5%;

  padding-bottom: 3.5%;

  overflow: scroll;

  position: relative;

}

#side-menu .side-menu-main::before {

  content: '';

  background: url(images/logo.png) no-repeat;

  background-size: contain;

  opacity: 0.1;

  width: 400px;

  aspect-ratio: 312/232;

  bottom: 0;

  right: 0;

  position: fixed;

}

#side-menu .contacts {

  display: flex;

}

#side-menu .contacts .left {

  width: 50%;

}

#side-menu .contacts i {

  color: var(--blue);

  display: inline-block;

  width: 10%;

}

#side-menu .contacts .left > div {

  display: flex;

  justify-content: center;

  align-items: center;

  margin-bottom: 10px;

}

#side-menu .contacts .left > div a,

#side-menu .contacts .left > div span {

  width: 90%;

}

#side-menu .smi a {

  margin-right: 25px;

}

#side-menu .smi i {

  font-size: 20px;

}

#side-menu .side-menu-overlay {

  position: absolute;

  width: 100%;

  height: 100%;

  z-index: -1;

}

#side-menu a {

  transition: all 0.3s ease-in-out;

}

.header .phone a:hover {

  transition: all 0.3s ease-in-out;

}

#side-menu .smi a:hover {

  color: var(--blue);

  opacity: 0.5;

}

.header .phone a:hover,

#side-menu a:hover {

  color: var(--blue);

}

.burger-container {

  width: fit-content;

  height: 20%;

  background: transparent;

  z-index: 13;

  position: fixed;

  top: 0;

  right: 0;

}

.burger-container .burger {

  width: 45px;

  height: 45px;

  background: var(--blue);

  display: flex;

  flex-direction: column;

  justify-content: space-evenly;

  align-items: flex-end;

  padding: 10px;

  position: absolute;

  right: 60px;

  top: 55px;

  transition: all 0.2s ease-in-out;

  cursor: pointer;

}

.burger-container .burger:hover {

  background: #000;

}

.burger-container .burger span {

  width: 24px;

  height: 2px;

  background: #FFFFFF;

}

.burger-container .burger span:first-child {

  width: 12px;

}

body.side-menu-active #side-menu {

  transform: translateX(0);

  opacity: 1;

}

body.side-menu-active {

  overflow: hidden;

}

header.fixed ~ .burger-container .burger {

  top: 25px;

}

body.side-menu-active #burger span {

  position: absolute;

  left: 23%;

  transition: all 0.3s ease-in-out;

}

body.side-menu-active #burger span:nth-child(1){

  display: none;

}

body.side-menu-active #burger span:nth-child(2) {

  transform: rotate(45deg);

}

body.side-menu-active #burger span:nth-child(3) {

  transform: rotate(-45deg);

}

.side-menu-main .navigation {

  position: relative;

}

.side-menu-main .navigation::after {

  height: 100px;

  width: 690px;

  background: #fff;

  top: 0;

  right: 0;

  content: '';

  position: fixed;

}



 /*******************************************************

 *

 * 8. Slider

 *

 *******************************************************/

#slider {

  padding: 20px;

  position: relative;

}

#slider .slides {

  position: relative;

}

#slider .cycloneslider-slides::after {

  content: '';

  position: absolute;

  left: 0;

  top: 0;

  width: 100%;

  height: 100%;

  background: linear-gradient(0deg, rgba(0,0,0,0.12) 5%, rgba(0,0,0,0.20) 80%, rgba(0,0,0,0.70) 100%);

  z-index: 100;

}

#slider .cycloneslider-pager {

  position: absolute;

  right: 0;

  bottom: 0;

  text-align: right;

}

#slider .content {

  position: absolute;

  bottom: 8vw;

  left: 40%;

  transform: translateX(-40%);

  padding: 40px;

  width: fit-content;

}

#slider .content h1 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 48px;

  line-height: 1.74;

  letter-spacing: .02em;

  color: #FFFFFF;

  text-transform: uppercase;

}

#slider .content span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 24px;

  line-height: 1.08;

  letter-spacing: .2em;

  color: #FFFFFF;

  display: block;

}



 /*******************************************************

 *

 * 9. Featured Communities

 *

 *******************************************************/

#fc .container-default {

  width: 96.25%;

  max-width: 1540px;

  margin: auto;

  padding-bottom: 50px;

}

#fc .title {

  text-align: center;

  padding-top: 30px;

  padding-bottom: 35px;

}

#fc .title h2 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 60px;

  letter-spacing: .02em;

  line-height: 1.39;

  color: #000000;

  text-transform: uppercase;

}

#fc .title h2 span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 18px;

  letter-spacing: .3em;

  line-height: 1.44;

  color: var(--gray);

  display: block;

  text-transform: uppercase;

}

#fc .communities-slick-container {

  display: flex;

  gap: 55px;

  justify-content: center;

  flex-wrap: wrap;

}

#fc .comm {

  position: relative;

  display: block;

  width: 27.3%;

}

#fc .comm::before {

  content: '';

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  background: linear-gradient(180deg, rgba(0,0,0,0) 65%, rgba(0,0,0,0) 12%, rgba(0,0,0,0.7) 90%);

  z-index: 1;

}

#fc .comm .img {

  position: relative;

}

#fc .comm .img::before {

  content: '';

  position: absolute;

  width: 100%;

  height: 100%;

  top: -25px;

  right: -25px;

  border-width: 3px;

  border-style: solid;

  border-image: linear-gradient(180deg, rgba(203,201,201,1) 35%, rgba(0,0,0,0.5) 90%) 1;

}

#fc .comm .img img {

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  object-fit: cover;

}

#fc .comm .img canvas {

  display: block;

  width: 100%;

  aspect-ratio: 420.96/444;

}

#fc .comm .text {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 22px;

  letter-spacing: .2em;

  line-height: 1.18;

  color: #FFFFFF;

  text-transform: uppercase;

  position: absolute;

  width: 100%;

  bottom: 0;

  left: 0;

  padding-left: 40px;

  padding-bottom: 40px;

  z-index: 3;

  transform: translateY(80px);

  transition: all 0.4s ease-in-out;

}

#fc .comm:last-child .text {

  transform: none;

}

  #fc .comm:hover .text {

    transform: translateY(0);

  }

#fc .comm .text span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 14px;

  letter-spacing: .1em;

  line-height: 1.86;

  color: #FFFFFF; 

  text-transform: uppercase;

  text-transform: uppercase;

  width: fit-content;

  padding-top: 30px;

  padding-bottom: 20px;

  transition: all 0.4s ease-in-out;

  opacity: 0;

  display: block;

}

  #fc a.comm:hover .text span {

    opacity: 1;

  }

#fc .comm:last-child .text span {

  opacity: 1;

  display: block;

}

#fc .comm .text span {

  position: relative;

}

#fc .comm .text span::after {

  content: '';

  position: absolute;

  background: #fff;

  height: 1px;

  width: 48px;

  bottom: 0;

  left: 0;

  transition: all 0.3s ease-in-out;

}

#fc .comm:hover .text span::after {

  width: 100%;

}

#fc .comm .hover {

  position: absolute;

  width: 100%;

  height: 100%;

  bottom: 0;

  left: 0;

  padding: 40px;

  display: flex;

  justify-content: center;

  align-items: center;

  background: var(--blue);

  opacity: 0;

  transition: all 0.4s ease-in-out;

}

#fc .comm .hover img {

  filter: brightness(0) invert(1) opacity(0.3);

}

#fc a.comm:hover .hover {

  opacity: 0.7;

}

#fc .arrow span {

  background: #000000;

  height: 50px;

  width: 50px;

  display: flex;

  align-items: center;

  justify-content: center;

}

#fc .arrow span i {

  color: #fff;

  font-weight: bold;

  font-style: unset;

}

#fc .arrow {

  display: flex;

  justify-content: center;

  margin-top: 30px;

  gap: 10px;

  display: none;

}



 /*******************************************************

 *

 * 10. About

 *

 *******************************************************/

#about {

  padding-top: 75px;

}

#about .title .top {

  font-family: var(--font-family-italiana);

  font-weight: 400;

  font-size: 192.29px;

  line-height: 0.65;

  letter-spacing: .02em;

  text-transform: uppercase;

  position: relative;

} 

#about .title .bottom {

  font-family: var(--font-family-italiana);

  font-weight: 400;

  font-size: 147.56px;

  line-height: 0.70;

  letter-spacing: .02em;

  text-transform: uppercase;

  color: #fff;

  z-index: 2;

  position: relative;

}

#about p {

  font-family: var(--font-family-montserrat);

  font-weight: 700;

  font-size: 22.81px;

  line-height: 1.30;

  letter-spacing: .02em;

  color: #fff;

  text-transform: uppercase;

} 

#about span.big {

  font-family: var(--font-family-italiana);

  font-weight: 400;

  font-size: 48.08px;

  line-height: 0.54;

  letter-spacing: .02em;

  color: #fff;

  text-transform: uppercase;

} 

#about .left span.big {

  font-family: var(--font-family-italiana);

  font-weight: 400;

  font-size: 60px;

  line-height: 0.43;

  letter-spacing: .02em;

  color: #fff;

  text-transform: uppercase;

} 

#about .content .box {

  font-family: var(--font-family-montserrat);

  font-weight: 300;

  font-size: 20px;

  line-height: 1.20;

  letter-spacing: .02em;

  color: #fff;

  text-transform: uppercase;

  border-bottom: 1px solid #fff;

} 

#about .button {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 14px;

  line-height: 1.86;

  letter-spacing: .1em;

  color: #fff;

  text-transform: uppercase;

}

#about .tall span {

  margin: 20px 0;

  display: block;

} 

#about span.big {

  display: block;

  margin-bottom: 20px;

} 

#about .content .box {

  height: 150px;

  padding-top: 35px;

}

#about .img {

  position: relative;

  width: 100%;

  height: 100%;

}

#about .img canvas {

  display: block;

  width: 100%;

  height: 100%;

}

#about .img img {

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  object-fit: contain;
  object-position: bottom;

}

#about .type-2 .title .top::after {

  content: '';

  position: absolute;

  width: 100%;

  height: 300%;

  bottom: -300%;

  left: 0;

}   

#about .content .box.tall {

  height: 300px;

}

#about .content .box.tall span:last-child {

  margin-top: 30px;

}

#about .content .box:last-child {

  border: none;

}

#about .type-1 .title .top::after {

  content: '';

  position: absolute;

  width: 100%;

  height: 300%;

  bottom: -300%;

  left: 0;

}

#about .button-clickable::before {

  background: #fff;

}



#about .type-1 {

  position: relative;

  /* background: linear-gradient(0deg, rgba(88,88,88,1) 80%, rgba(255,255,255,1) 62%); */
  background: linear-gradient(0deg, rgba(63,65,69,1) 80%, rgba(255,255,255,1) 62%);

  padding-bottom: 50px;

  padding-top: 40px;

} 

#about .type-1 .title .top {

  color: #000;

  padding-left: 35.2%;

} 

#about .type-1 .title .top::after {

  /* background: #585858; */
  background: #3f4145;

}

#about .type-1 .title .bottom {

  padding-left: 61%;

} 

#about .type-1 .title .bottom::before {

  position: absolute;

  content: '';

  height: 10px;

  width: 100%;

  background: linear-gradient(90deg, rgb(0, 0, 0) 59%, rgba(58,130,206,0) 25%, rgba(220,233,246,0) 95%, rgb(0, 0, 0) 75%);

  left: 0;

  bottom: 40%;  z-index: -1;	

} 

#about .type-1 p {

  z-index: 2;

  position: relative;

  margin: 40px 0 15px 0;

  text-align: center;

} 

#about .type-1 .button {

  position: absolute;

  bottom: 55px;

  left: 53.5%;

}

#about .type-1 .button a,

#about .type-2 .button a {

  display: block;

  height: 45px;

  width: fit-content;

}

#about .type-1 .img-container {

  position: absolute;

  width: 43%;

  height: 100%;

  left: 3.5%;

  bottom: 0;

  z-index: 2;

} 

#about .type-1 .content {

  margin-left: 45%;

  width: 49%;

}

#about .type-1 .awards {

  display: flex;

  text-align: center;

  gap: 8%;

  position: relative;

}

#about .type-1 .awards .left {

  width: 50%;

}

#about .type-1 .awards .right {

  width: 50%;

}



#about .type-2 {

  position: relative;

  background: linear-gradient(0deg, rgb(0, 0, 0) 80%, rgba(255,255,255,1) 62%);

  padding-bottom: 75px;

  padding-top: 65px;

} 

#about .type-2 .title .top::after {

  background: #000000;

}

#about .type-2 .title .top::before {

  position: absolute;

  content: '';

  height: 10px;

  width: 100%;

  background: linear-gradient(90deg, rgba(255,255,255,0) 55%, rgba(0,0,0,1) 0);

  left: 0;

  bottom: 20%;

} 

#about .type-2 .title .top {

  font-size: 171.62px;

  padding-left: 5%;

  color: #000000;

} 

#about .type-2 .title .bottom {

  font-size: 160.24px;

  margin-left: 60%;

  line-height: 0.62;

}

#about .type-2 .img-container {

  position: absolute;

  width: 39%;

  max-width: 625px;

  height: auto;

  left: 50%;

  bottom: 0;

  z-index: 2;

  transform: translateX(-50%);

} 

#about .type-2 p {

  width: 35%;

  padding-left: 15px;

}

#about .type-2 .content {

  padding: 0 7% 0 8%;

  position: relative;

  margin-top: -40px;

}

#about .type-2 .awards {

  display: flex;

  justify-content: space-between;

  padding-top: 50px;

}

#about .type-2 .awards .left {

  width: 27%;

  text-align: left;

}

#about .type-2 .awards .left .box {

  padding-left: 15px;

  padding-top: 30px;

  padding-bottom: 40px;

  height: unset;

}

#about .type-2 .awards .left .box:last-child {

  padding-bottom: 0;

}

#about .type-2 .awards .right {

  width: 27%;

  text-align: right;

}

#about .type-2 .awards .right .box {

  padding-right: 15px;

  height: 155px;

  padding-top: 30px;

}

#about .type-2 .awards .right .box:first-child {

  padding-top: 0;

  height: 115px;

}

#about .type-2 .awards .right .box:last-child {

  height: unset;

}

#about .type-2 .button {

  margin-left: calc(8% + 15px);

}



 /*******************************************************

 *

 * 11. Featured Listings

 *

 *******************************************************/

 #listings {

  padding: 180px 0 130px 0;

  position: relative;

 }

 #listings::before {

  content: '';

  background: url(images/logo.png) no-repeat;

  background-size: contain;

  opacity: 0.1;

  width: 47%;;

  aspect-ratio: 312/232;

  top: 70px;

  left: 0;

  position: absolute;

  display: none;

}

#listings .container-default {

  width: 88.75%;

  max-width: 1420px;

  margin: auto;

  position: relative;

}

#listings .title {

  width: 32.6%;

  aspect-ratio: 469/329;

  padding-left: 6%;

  padding-top: 8%;

}

#listings .title h2 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 60px;

  line-height: 1.39;

  letter-spacing: .02em;

  color: #000000;

  text-transform: uppercase;

}

#listings .title h2 span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 18px;

  line-height: 1.44;

  letter-spacing: .3em;

  color: var(--gray);

  text-transform: uppercase;

  display: block;

}

#listings .lists .text .button {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 14px;

  line-height: 1.86;

  letter-spacing: .1em;

  color: #fff;

  text-transform: uppercase;

  display: block;

  background: var(--blue);

  padding: 10px 30px;

  width: fit-content;

  margin-bottom: 15px;

  opacity: 0;

  transition: all 0.3s ease-in-out;

}

#listings .lists .text .name {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 22px;

  line-height: 1.18;

  letter-spacing: .2em;

  color: #fff;

  text-transform: uppercase;

  display: block;

}

#listings .lists .text .address {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-style: italic;

  font-size: 16px;

  line-height: 1.63;

  letter-spacing: .1em;

  color: #fff;

  display: block;

}

#listings .lists .text .price {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 13px;

  line-height: 2.00;

  letter-spacing: .3em;

  color: #fff;

  text-transform: uppercase;

  display: block;

  margin-top: 15px;

}

#listings .lists {

  position: relative;

  display: block;

  width: 32.6%;

  aspect-ratio: 469/329;

}

#listings .lists::before {

  content: '';

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  background: linear-gradient(180deg, rgba(0,0,0,0) 39%, rgba(0,0,0,0) 14%, rgba(0,0,0,0.8) 96%);

  z-index: 1;

}

#listings .lists::after {

  content: '';

  position: absolute;

  width: 100%;

  height: 100%;

  bottom: 0;

  left: 0;

  background: linear-gradient(180deg, rgba(58,130,206,.8) 16%,  rgba(58,130,206,.2) 73%, rgba(58,130,206,0.1) 77%);

  opacity: 0;

  transition: all 0.4s ease-in-out;

  z-index: 1;

}

#listings .lists:hover:after,

#listings .lists:hover .button {

  opacity: 1;

}

#listings .lists .img canvas {

  display: block;

  width: 100%;

}

#listings .lists .img img {

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  object-fit: cover;

}

#listings .lists .text {

  position: absolute;

  width: 100%;

  bottom: 0;

  left: 0;

  z-index: 3;

  padding-bottom: 20px;

  padding-left: 30px;

}

#listings .listings-slick-container {

  display: flex;

  gap: 15px;

  justify-content: center;

  flex-wrap: wrap;

}
  #listings .listings-slick-container p.no-listings {
    display: none;
  }

#listings .lists:last-child .text {

  display: flex;

  justify-content: center;

  align-items: center;

  height: 100%;

}

#listings .lists .all {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 14px;

  letter-spacing: .1em;

  line-height: 1.86;

  color: #FFFFFF;

  text-transform: uppercase;

  transition: all 0.6s ease-in-out;

  position: relative;

  display: block;

  height: 40px;

}

#listings .lists .all::after {

  content: '';

  position: absolute;

  background: #fff;

  height: 1px;

  width: 48px;

  bottom: 0;

  left: 0;

  transition: all 0.3s ease-in-out;

}

#listings .lists:hover .all::after {

  width: 100%;

}



 /*******************************************************

 *

 * 12. Featured Properties

 *

 *******************************************************/

#fp {

  padding-top: 70px;

  position: relative;

}

#fp::before {

  content: '';

  background: url(images/logo.png) no-repeat;

  background-size: contain;

  opacity: 0.1;

  width: 47%;

  aspect-ratio: 312/232;

  top: -67px;

  right: 0;

  position: absolute;

  display: none;

}

#fp .prop {

  position: relative;

  display: block;

  width: 100%;

  padding: 40px;

  overflow: hidden;

}

#fp .prop .img canvas {

  display: block;

  width: 100%;

  height: auto;

}

#fp .prop .img img {

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  object-fit: cover;

  transition: all 0.3s ease-in-out;

}

#fp .prop .text {

  position: relative;

}

#fp .top {

  display: flex;

  justify-content: space-between;

  padding: 0 14%;

  align-items: center;

  padding-bottom: 30px;

}

#fp .top .title h2 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 60px;

  line-height: 1.39;

  letter-spacing: .02em;

  color: #000000;

  text-transform: uppercase;

}

#fp .top .title h2 span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 18px;

  line-height: 1.44;

  letter-spacing: .3em;

  color: var(--gray);

  display: block;

  text-transform: uppercase;

}

#fp .top a.button-clickable {

    font-family: var(--font-family-montserrat);

    font-weight: 500;

    font-size: 14px;

    line-height: 1.86;

    letter-spacing: .1em;

    color: #000000;

    transition: all 0.3s ease-in-out;

    position: relative;

    height: 50px;

    display: block;

}

#fp .bottom {

  padding: 20px;

}

#fp .bottom .text {

  background: #000000e0;

  padding: 30px 70px 30px 45px;

  width: fit-content;

  position: absolute;

  bottom: 45px;

}

#fp .bottom .prop:hover .text {

  padding: 30px 70px 65px 45px;

}

#fp .bottom .text::after {

  content: '';

  position: absolute;

  width: 3px;

  background: linear-gradient(0deg, rgba(151,173,109,.6) 10%, rgba(255,255,255,1) 77%);

  height: 120%;

  left: 22.5px;

  bottom: 0;

}

#fp .bottom .text::before {

  content: '';

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  background: linear-gradient(180deg, rgba(58,130,206,0.7) 2%, rgba(255,255,255,0) 85%);

  opacity: 0;

  transition: all 0.3s ease-in-out;

}

#fp .bottom span {

  display: block;

  position: relative;

}

#fp .bottom .name {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 22px;

  line-height: 1.18;

  letter-spacing: .2em;

  color: #ffffff;

  text-transform: uppercase;

}

#fp .bottom .subname {

  font-family: var(--font-family-playfair);

  font-style: italic;

  font-weight: 400;

  font-size: 16px;

  line-height: 1.63;

  letter-spacing: .1em;

  color: #ffffff;

}

#fp .bottom .features {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 13px;

  line-height: 2.00;

  letter-spacing: .1em;

  color: #ffffff;

  padding: 13px 0;

  text-transform: uppercase;

}

#fp .bottom .price {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 13px;

  line-height: 2.00;

  letter-spacing: .3em;

  color: #ffffff;

}

#fp .bottom .button-clickable {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 14px;

  line-height: 1.86;

  letter-spacing: .1em;

  color: #ffffff;

  text-transform: uppercase;

  padding-top: 20px;

  width: fit-content;

  display: none;

}

#fp .bottom .button-clickable::before {

  background: #ffffff;

  bottom: -20px;

}

#fp .bottom .prop:hover .text::before {

  opacity: 1;

}

#fp .prop:hover .img img {

  transform: scale(1.1);

}

#fp .bottom .prop:hover .button-clickable {

  display: block;

}

#fp .arrow {

  position: absolute;

  right: 60px;

  bottom: 60px;

}

#fp .arrow span {

  background: #000000;

  height: 50px;

  width: 50px;

  display: flex;

  align-items: center;

  justify-content: center;

}

#fp .arrow span i {

  color: #fff;

  font-weight: bold;

}



 /*******************************************************

 *

 * 13. Logo

 *

 *******************************************************/

#logo {

  padding: 80px 0;

  overflow: hidden;

  position: relative;

  background: #fff;

}

#logo::before {

  content: '';

  height: 100px;

  width: 100px;

  left: -30px;

  top: 50%;

  transform: translateY(-50%);

  position: absolute;

  border-radius: 50%;

  background: #ffffffd6;

  box-shadow: 0px 0px 31px 24px rgba(255, 255, 255, 0.9);

  z-index: 2;

}

#logo::after {

  content: '';

  height: 100px;

  width: 100px;

  right: -30px;

  top: 50%;

  transform: translateY(-50%);

  position: absolute;

  border-radius: 50%;

  background: #ffffffd6;

  box-shadow: 0px 0px 31px 24px rgba(255, 255, 255, 0.9);

  z-index: 2;

}

#logo .box {

  display: inline-block;

  margin: auto 45px;

  padding: 20px 0;

}

#logo .box a {

  display: inline-block;

}

#logo .box img {

  filter: brightness(0) invert(0);

  display: inline-block;

  height: 60px;

  width: auto;

}

#logo .box.larger {

  padding: 0;

}

#logo .box.larger img {

  height: 100px;

}



 /*******************************************************

 *

 * 14. Statistics

 *

 *******************************************************/

#statistics {

  position: relative;

  padding: 85px 0 95px 0;

}

#statistics .bg {

  width: 100%;

  height: 100%;

  position: absolute;

  top: 0;

  left: 0;

}

#statistics .bg canvas {

  width: 100%;

  height: 100%;

  display: block;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-attachment: fixed;filter: brightness(0.7);

}

#statistics .content {

  position: relative;

  text-shadow: 2px 2px 5px black;

}

#statistics .title h2 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 60px;

  line-height: 1.39;

  letter-spacing: .02em;

  color: #FFFFFF;

  text-align: center;

  text-transform: uppercase;

}

#statistics .title h2 span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 18px;

  line-height: 1.44;

  letter-spacing: .3em;

  color: #FFFFFF;

  display: block;

}

#statistics .box {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 65px;

  line-height: 0.40;

  letter-spacing: .05em;

  color: #FFFFFF;

  width: 234px;

}

#statistics .box .text {

  font-family: var(--font-family-playfair);

  font-weight: 500;

  font-style: italic;

  font-size: 22px;

  line-height: 1.18;

  letter-spacing: .1em;

  color: #FFFFFF;

  display: block;

  margin-top: 50px;

}

#statistics .stats {

  display: flex;

  gap: 5%;

  justify-content: center;

  margin-top: 55px;

}

#statistics .box {

  text-align: center;

  border-top: 1px solid #fff;

  border-bottom: 3px solid var(--blue);

  padding: 70px 20px 40px 20px;

  box-shadow: 0px 12px 9px -9px rgb(0 0 0 / 71%);

  -webkit-box-shadow: 0px 12px 9px -9px rgb(0 0 0 / 71%);

  -moz-box-shadow: 0px 12px 9px -9px rgba(0,0,0,0.71);

}

#statistics .box span {

  transition: all 0.1s ease-in;

}



 /*******************************************************

 *

 * 15. Contact Form

 *

 *******************************************************/

#contact {

  position: relative;

  padding: 85px 0 140px 0;

}

#contact::before {

  content: '';

  width: 100%;

  height: 100%;

  position: absolute;

  top: 0;

  left: 0;

  background: #000000;

  opacity: 0.5;

  z-index: 1;

}

#contact .bg {

  width: 100%;

  height: 100%;

  position: absolute;

  top: 0;

  left: 0;

}

#contact .bg::before {

  content: '';

  width: 20px;

  height: 50%;

  position: absolute;

  top: 0;

  right: 0;

  background: #f2fae1;

}

#contact .bg::after {

  content: '';

  width: 20px;

  height: 50%;

  position: absolute;

  bottom: 0;

  right: 0;

  border-left: 1px solid #ffffff99;

}

#contact .bg canvas {

  width: 100%;

  height: 100%;

  display: block;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-attachment: fixed;

}

#contact .content {

  position: relative;

  z-index: 1;

}

#contact .title {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-style: italic;

  font-size: 14px;

  line-height: 1.86;

  letter-spacing: .02em;

  color: #fff;

  text-align: center;

  margin-bottom: 40px;

}

#contact .title h2 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  text-transform: uppercase;

  font-size: 60px;

  line-height: 1.39;

  letter-spacing: .02em;

  color: #fff;

  font-style: initial;

  margin-bottom: 25px;

}

#contact .title h2 span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  text-transform: uppercase;

  font-size: 18px;

  line-height: 1.44;

  letter-spacing: .3em;

  color: #fff;

  display: block;

}

#contact .form {

  padding: 0 100px;

}

#contact .form::before {

  content: '';

  width: 100%;

  height: 100%;

  position: absolute;

  top: 70px;

  left: 0;

  border-width: 5px;

  border-style: solid;

  border-image: linear-gradient(180deg, rgb(255 255 255 / 45%) 35%, #3a82cec7 90%) 1;

  border-top: none;

  background: linear-gradient(to right, #ffffff61 30%, transparent 30%, transparent 70%, #ffffff61 70%) no-repeat;

  background-size: 100% 5px;

  background-position: 100% 0;

}

#contact .form .line.small {

  display: flex;

  justify-content: center;

  gap: 15px;

}

  #contact .form .line.small .input{

    width: 33.33%;

  }

#contact .form .line.wide {

  margin-top: 15px;

}

  #contact .form .line.wide .input{

    width: 100%;

  }

  #contact .form .line.wide label{

    top: 20px;

  }

#contact .form input {

  background: transparent;

  border: none;

  border-bottom: 1px solid #fff;

  height: 40px;

  width: 100%;

}

#contact .form textarea {

  background: transparent;

  border: none;

  border-bottom: 1px solid #fff;

  resize: none;

  width: 100%;

  height: 105px;

}

#contact .form .input {

  position: relative;

} 

#contact .form label {

	position: absolute;

  left: 15px;

  top: 50%;

  transform: translate(0, -50%);

}

#contact .form label,

#contact .form input,

#contact .form textarea {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-style: italic;

  font-size: 16px;

  line-height: 1.86;

  letter-spacing: .02em;

  color: #fff;

  outline: none;

}

#contact .form .submit {

  margin-top: 45px;

  text-align: center;

  display: flex;

  flex-direction: column;

  align-items: center;

}

#contact .form .submit input {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-style: initial;

  font-size: 14px;

  line-height: 1.86;

  letter-spacing: .1em;

  color: #fff;

  text-transform: uppercase;

  border: none;

  position: relative;

  width: fit-content;

  padding: 0 0 44px 0;

}

#contact .wpcf7 form.invalid .wpcf7-response-output,

#contact .use-floating-validation-tip .wpcf7-not-valid-tip,

#contact .wpcf7 form.unaccepted .wpcf7-response-output {

	position: absolute;

  width: fit-content;

}

#contact .small .wpcf7-not-valid-tip {

  top: -5ex;

}

#contact .wide .wpcf7-not-valid-tip {

  top: -9ex;

}

#contact .wpcf7-response-output {

  color: #fff;

  left: 50%;

  transform: translateX(-50%);

  margin: 0;

}

#contact .form .submit .accent {

  position: relative;

  width: 65px;

}

#contact .form .submit .accent::after {

  content: '';

  position: absolute;

  background: #fff;

  height: 2px;

  width: 40px;

  bottom: 25px;

  left: 0;

  transition: all 0.3s ease-in-out;

}

#contact .form .submit .accent:hover::after {

  width: 100%;

}



 /*******************************************************

 *

 * 16. Testimonials

 *

 *******************************************************/

#testimonials {

  padding-top: 120px;

  padding-bottom: 95px;

  background: linear-gradient(0deg, rgba(58,130,206,1) 65%, rgba(255,255,255,1) 62%);

  position: relative;

}

#testimonials::before {

  content: '';

  height: 100%;

  width: 20px;

  background: var(--blue);

  top: 0;

  bottom: 0;

  border-right: 1px solid #fff;

  position: absolute;

}

#testimonials .container-default {

  width: 88.75%;

  max-width: 1420px;

  margin: auto;

  position: relative;

}

#testimonials .title {

  padding-left: 10%;

  margin-bottom: 40px;

}

#testimonials .title h2 {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 60px;

  line-height: 1.39;

  letter-spacing: .02em;

  color: #000000;

  text-transform: uppercase;

}

#testimonials .title h2 span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 18px;

  line-height: 1.44;

  letter-spacing: .3em;

  color: var(--gray);

  text-transform: uppercase;

  display: block;

}

#testimonials .testimonials-list .tests {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-style: italic;

  font-size: 16px;

  line-height: 1.63;

  letter-spacing: .05em;

  color: #000000;

  padding: 2px;

}

#testimonials .testimonials-list .tests span {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-style: initial;

  font-size: 16px;

  line-height: 1.63;

  letter-spacing: .05em;

  color: #000000;

  text-transform: uppercase;

  display: block;

  margin-top: 25px;

  margin-bottom: 50px;

}

#testimonials .testimonials-list .button {

  font-family: var(--font-family-montserrat);

  font-weight: 500;

  font-size: 14px;

  line-height: 1.86;

  letter-spacing: .1em;

  color: #000000;

  text-transform: uppercase;

}

#testimonials .testimonials-list .button a {

  height: 45px;

  display: block;

}

#testimonials .img {

  position: absolute;

  right: 0;

  bottom: 0;

  height: 100%;

  width: 49%;

  z-index: 1;

}

#testimonials .img canvas {

  height: 100%;

  width: 100%;

}

#testimonials .img img {

  position: absolute;

  right: 0;

  bottom: 0;

  height: 100%;

  width: 100%;

  object-fit: cover;

}

#testimonials .testimonials-list {

  width: 54%;

  background: #fff;

  padding: 3% 10% 5.2% 10%;

  z-index: 2;

  position: relative;

}

#testimonials .arrow span {

  background: #000000;

  height: 50px;

  width: 50px;

  display: flex;

  align-items: center;

  justify-content: center;

}

#testimonials .controls{

  display: flex;

  align-items: center;

  justify-content: space-between;

}

#testimonials .arrow span i {

  color: #fff;

  font-weight: bold;

}

#testimonials .button-clickable::before {

  width: 50px;

}

#testimonials .quotes {

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 132.98px;

  letter-spacing: .05em;

  color: var(--blue);

  display: block;

  height: 100px;

}

#testimonials .button-clickable:hover::before {

  width: 100%;

}



 /*******************************************************

 *

 * 17. Footer

 *

 *******************************************************/

footer {

  padding-top: 90px;

  padding-bottom: 90px;

}

footer .contacts {

  display: flex;

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 16px;

  line-height: 3.66;

  letter-spacing: .1em;

  color: #000000;

}

footer .contacts a {

  font-family: var(--font-family-playfair);

  /* font-weight: 400; */
  font-weight: 600;

  /* font-size: 16px; */
  font-size: 16px;

  line-height: 3.66;

  letter-spacing: .1em;

  color: #000000;

}

footer .contacts i {

  color: var(--blue);

  display: inline-block;

  width: 45px;

}

footer .contacts .smi i {

  margin-right: 20px;

  width: auto;

  font-size: 20px;

}

footer .contacts .left {

  width: 24.1%;

  margin-right: 8.5%;

}

footer .contacts .center {

  width: 33.33%;

  display: flex;

}

  footer .contacts .center p {

    display: none;

  }

  footer .contacts .center .agent-logo{

    width: 60%;

    padding: 0 40px;

  }

    footer .contacts .center .agent-logo img{

      filter: brightness(1) invert(0);

    }

  footer .contacts .center .broker-logo{

    width: 40%;

    padding: 0 40px;

    border-left: 1px solid #989898;

    height: fit-content;

  }

    footer .contacts .center .broker-logo img{

      filter: brightness(1) invert(1);

      display: block;

    }

footer .contacts .right {

  width: 27.07%;

  margin-left: 7%;

}

  footer .contacts .right .location {

    width: 30vw;

  }

  footer .contacts .right .location a {

    font-family: var(--font-family-playfair);

    /* font-weight: 400; */
    font-weight: 600;

    /* font-size: 14px; */
    font-size: 16px;

    letter-spacing: .05em;

    color: #000000;

  }

  footer .contacts .right .location i {

    font-size: 20px;

  }

footer .footnote {

  font-family: var(--font-family-montserrat);

  font-weight: 400;

  font-size: 13px;

  line-height: 1.38;

  letter-spacing: 0.02em;

  color: #989898;

  text-align: center;

  margin-top: 60px;

}

footer .nav {

  font-family: var(--font-family-montserrat);

  font-weight: 600;

  font-size: 13px;

  letter-spacing: .1em;

  line-height: 1.50;

  color: #000000;

  text-transform: uppercase;

  text-align: center;

  margin: 30px 0;

}

  footer .nav li {

    display: inline-block;

    padding: 0 27.5px;

  }

  footer .nav li:not(:last-child) {

	  border-right: 1px solid;

  }

footer .copyright {

  font-family: var(--font-family-montserrat);

  font-weight: 400;

  font-size: 13px;

  letter-spacing: .05em;

  line-height: 1.54;

  color: #989898;

  text-align: center;

}

footer .copyright a:last-child {

  text-decoration: underline;

  font-weight: bold;

}

footer .copyright .upper {

  text-transform: uppercase;

  text-align: center;

}

footer .realtor {

	color: #989898;

	text-align: center;

	font-size: 39px;

	display: flex;

	justify-content: center;

	align-items: center;

  margin-top: 15px;

}

footer .realtor .ai-font-eho {

	font-size: 31px;

	margin-left: 9px;

}

footer a {

  transition: all 0.2s ease-in-out;

}

footer a:hover,

footer .contacts .right .location a:hover {

  color: var(--blue);

}

footer .smi a:hover {

  opacity: 0.5;

}



/*******************************************************

*

* 18. Accessibility

*

*******************************************************/



/* Diasable background fix on safari */



_::-webkit-full-page-media, _:future, :root canvas{

  background-attachment: unset !important;

}



/* Submenu accessibility */



#nav .sub-menu.show-menu {

  display: block;

  opacity: 1;

}



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

}



footer .calre {

  text-align: center;

  font-family: var(--font-family-playfair);

  font-weight: 400;

  font-size: 16px;

  line-height: 3.66;

  letter-spacing: .1em;

  color: #000000;



}



footer .contacts a {

	font-family: 'Amiri', serif !important;

}





/** Archive Default Layout (Archive Page) */

#content .archive-list {

  position: relative;

  display: flex;

  flex-flow: row wrap;

}



#content .archive-list:before,

#content .archive-list:after {

  display: none;

}



#content .archive-list > article {

  float: none;

}



#content .archive-list .post {

  border-bottom: none;

}



#content .archive-list .archive-thumbnail,

#content .archive-list .archive-content {

  width: 100%;

}



#content .archive-list .archive-thumbnail a {

  display: block;

  outline: none;

}



#content .archive-list .archive-thumbnail canvas {

  display: block;

  width: 100%;

  background-repeat: no-repeat;

  background-size: contain;

  background-position: center center;

}



#content .archive-list .article-long .archive-thumbnail {

  width: 60%;

}



#content .archive-list .article-long .archive-has-thumbnail {

  width: 37%;

  margin-left: 3%;

}



#content .archive-list .article-long .archive-has-thumbnail .archive-subtitle {

  margin-top: 0;

  font-size: 32px;

}



#content .archive-list .article-long p {

  font-size: 22px;

}



#content .archive-more {

  font-style: normal;

  text-decoration: none;

  width: 190px !important;

}



/** End of Archive Default Layout (Archive Page) */



/** Button */

.site-button {

  display: flex;

  align-items: center;

  justify-content: center;

  width: 248px;

  height: 54px;

  max-width: 100%;

  border: 2px solid #000000;

}



.site-button::before {

  content: '';

  width: 13px;

  height: 1px;

  background: #868686;

}



.site-button,

.site-button::before {

  -webkit-transition: all 0.35s ease-in-out;

  -moz-transition: all 0.35s ease-in-out;

  -o-transition: all 0.35s ease-in-out;

  transition: all 0.35s ease-in-out;

}



.site-button:hover {

  background: #000000;

}



.site-button:hover::before {

  background: #ffffff;

}



.site-button span {

  font-weight: 700;

  font-size: 12px;

  line-height: 1;

  letter-spacing: 0.2em;

  text-transform: uppercase;

  text-align: center;

  margin: 0 12px 0 16px;

}



.site-button i {

  font-size: 10px;

  font-style: normal !important;

}



.site-button:hover span,

.site-button:hover i {

  color: #ffffff;

}

/** End of Button */

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



.category-press .archive-content.archive-has-thumbnail h2 a {
  font-family: 'Playfair Display', serif !important;
}

#listings-details .listings-form textarea {
  padding-right: 35px !important;
}
.ihf-details-template .header {
  background: linear-gradient(180deg, black, transparent);
}
.ihf-details-template .header.fixed{
  background: white;
}
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;
}
#contact .wpcf7-response-output {
  position: absolute !important;
}
.grecaptcha-badge{
  z-index: 99999 !important;
}
.aios-communities-legacy .aioscomu-label {
  text-shadow: 2px 2px 2px black, 0 0 2em #040404, 0 0 0.2em #000000;
}
.page-id-34 div.container-theme-filter#content {
  width: 100%;
}


.aios-custom-ihomefinder-results-template #content-full .entry-title {
  width: 100% !important;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 !important;
}
.post-page-exclusive .container-theme-filter{
  padding: 0;
}
#listings-details .listings-slideshow-text span {
  text-shadow: 2px 2px 2px black, 0 0 2em #040404, 0 0 0.2em #000000 !important;
}
.wpcf7 form .wpcf7-response-output {
  text-align: center;
}
#content .listings-printable-header span {
  text-shadow: 2px 2px 2px black, 0 0 2em #040404, 0 0 0.2em #000000 !important;
}
.aios-custom-ihomefinder-printable-template #breadcrumbs{
  display: none;
}