/*********************
START: HERO
*********************/
.hero {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100vh;
    background-color: black;
}

.hero .video--wrapper {
    width: 100%;
    height: 100%;
}

.hero video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero .overlay-component {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.5);
    transition-property: opacity;
    transition-timing-function: linear;
}

.scrollTo {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    cursor: pointer;
    opacity: 0;
    transition: .5s;
}

.scrollTo.visible {
    opacity: 1;
    bottom: 20px;
}


.hero--title{
	position: absolute;
	left:50%;
	top: 50%;
	transform:translate(-50%, -50%);
	color: var(--baseLight-color);
    width: 60%;
    margin-inline: auto;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 90%;
}

.hero--title h1, 
.hero--title p{
	font-style: italic;
    font-family: var(--font-family-Bodoni);
}

.hero--title h1{
	font-weight: 600 !important;
	line-height: 140%;
}

.hero--title p{
	width: 70%;
	margin-inline: auto;
	font-size: var(--text-2xl);
	margin-block: 1rem;
	font-weight: 400 !important;
}

.rch-search-listing-form{
	margin-block: 0 !important;
	padding-block: 0 !important;
}
/*********************
END: HERO
*********************/

/*********************
START: SERVICE
*********************/
.service {
    background-color: var(--bg-color);
    padding-block-start: var(--global-section-padding);
}

.service--content {
    display: flex;
    justify-content: space-between;
}

.service--title,
.service--text {
    flex-basis: 50%;
    padding: 0px 77px;
    color: var(--text-color-1);
    min-height: 250px;
}

.service--title h1{
	font-size: var(--text-3xl);
    line-height: 1.3;
    letter-spacing: 2px;
    font-weight: 400;
    text-transform: uppercase;
    font-family: var(--font-family-Bodoni);
}

.service--text>p {
    margin-block-end: 1.666rem;
}

/*********************
END: SERVICE
*********************/

/*********************
START: TRANSACTION
*********************/
.transactions {
	margin-block-start: 5rem;
	padding-block-end: 5rem;
}

.transactions--content>h2 {
    text-align: center;
    color: var(--text-color-1);
    padding: 0 16px;
    margin: 0 0 37px 0;
}

.transactions--slider {
    height: 630px;
}

.transactions--slider .swiper {
    width: 100%;
    height: 100%;
}

.transactions--slider .swiper-slide {
    color: var(--baseLight-color);
    height: 469px;
    transition: .3s all linear;
}

.transactions--slider .swiper-slide.swiper-slide-active {
    height: 530px;
}

.transactions--slider .swiper-slide picture>img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.transactions--slider .swiper-slide .slider--info {
    width: 564px;
    max-width: 100%;
    transition: .3s all;
    padding: 20px 16px;
    position: absolute;
    left: 0;
    bottom: 0;
    color: var(--baseLight-color);
    background-color: rgba(92, 92, 92, 0.7);
    display: flex;
    align-items: center;
    justify-content: space-between;
    opacity: 0;
}

.transactions--slider .swiper-slide.swiper-slide-active .slider--info {
    opacity: 1;
}

.transactions--slider .swiper-slide .slider--info:hover {
    width: 580px;
    background-color: rgba(92, 92, 92, 0.5);
}


.transactions--slider .swiper-slide .slider--info .arrow--more {
    width: 7%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.transactions--slider .swiper-slide .slider--info .arrow--more .chevron {
    filter: brightness(0) invert(1);
    width: 0.75rem;
}

.transactions--slider .swiper-slide .slider--info .properties {
    width: 90%;
}

.transactions--slider .swiper-slide .slider--info .properties > h3{
	font-size: var(--text-lg);
}

.transactions--slider .swiper-slide .slider--info .properties--name {
    margin-block-end: 5px;
}

.transactions--slider .swiper-slide .slider--info .properties--features {
    opacity: .85;
}

.transactions--slider .swiper-slide .slider--info .properties--price {
    margin-block-start: 1rem;
}

/* slider--down */
.transactions--slider .slider--down {
    width: 90%;
    padding-top: 46px;
	padding-bottom: 0.5rem;
    margin-inline: auto;
    display: flex;
    justify-content: space-between;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
	z-index: 1;
}

.transactions--slider .slider--nav {
    display: flex;
}

.transactions--slider .slider--btn {
    display: flex;
    justify-content: flex-end;
}

.transactions--slider .swiper-button-next,
.transactions--slider .swiper-button-prev {
    color: var(--text-color-1);
    position: relative;
    width: 48px;
    height: 48px;
    border: 1px solid var(--text-color-1);
    transition: all 0.3s;
}

.transactions--slider .swiper-button-next:hover,
.transactions--slider .swiper-button-prev:hover {
    background-color: var(--text-color-1);
    color: var(--baseLight-color);
}

.transactions--slider .swiper-button-next,
.transactions--slider .swiper-rtl .swiper-button-prev {
    right: -55px !important;
}

.transactions--slider .swiper-button-prev,
.transactions--slider.swiper-rtl .swiper-button-next {
    left: -48px;
    right: 0;
}

.transactions--slider .swiper-button-next:after,
.transactions--slider .swiper-button-prev:after {
    font-size: 1rem !important;
}


/*********************
END: TRANSACTION
*********************/

/*********************
START: aboutMe
*********************/
.aboutMe {
    background-color: var(--bg-color);
    padding-block-start: var(--global-section-padding);
    padding-block-end: var(--global-section-padding);
}

.aboutMe--content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.aboutMe--img {
    flex: 25%;
}

.aboutMe--img img {
    width: 100%;
    height: auto;
        aspect-ratio: 4 / 3;

    object-fit: cover;
}

.aboutMe--text {
    flex: 50%;
    padding-inline-start: 120px;
}

.aboutMe--text>h2 {
    color: var(--text-color-1);
    margin-block-end: 1rem;
}

.aboutMe--text .aboutMe--text__content{
	margin-bottom: 1.666rem;
	color: var(--text-color-1);
	line-height: 1.6;
}

.aboutMe--text .aboutMe--text__btn {
    margin-block-start: 3rem;
	display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.aboutMe--text .aboutMe--text__btn > a.btn{
	max-width: 230px;
	width: 100%;
}

.aboutMe--text__content ul{
	margin-block: 1rem 0.5rem;
	margin-inline-start: 2rem;
	list-style: disc;
}

.aboutMe--text__content ul li{
	margin-bottom: 0.5rem;
	font-weight: 600;
}

/*********************
END: aboutMe
*********************/

/*********************
START: COMMUNITIES
*********************/
.communities {
    position: relative;
	padding-block-start: 5rem;
}

.communities::before {
    position: absolute;
/*     content: ""; */
	content: unset;
    width: 100%;
    height: 500px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-image: linear-gradient(rgba(251, 249, 247, 0.6), rgba(251, 249, 247, 0.6)), url("../img/vector-logo-2.jpg");
    background-repeat: no-repeat;
    -webkit-background-size: 650px;
    background-size: 650px;
    -webkit-background-position: top -145% left 50%;
    background-position: top -145% left 50%;
}

.communities--content {
	padding-bottom: 5rem;
}

.communities--content>h2 {
    color: var(--text-color-1);
    margin-inline: auto;
    text-align: center;
    position: relative;
}

.communities--content>ul {
    display: grid;
	grid-template-columns: repeat(4, 1fr);
    margin-block-start: 2rem;
}
/* 
.communities--content>ul li {
   flex-basis
} */

.communities--content>ul li>a {
    width: 100%;
    display: block;
    height: 300px;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.communities--content>ul li>a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transition: .3s;
/*     opacity: 0; */
    z-index: 1;
    background-color: transparent;
    background: rgba(0, 0, 0, 0.2);
}

.communities--content>ul li>a:hover::before {
    opacity: 1;
    background: rgba(0, 0, 0, 0.7);
}

.communities--content>ul li>a>p {
    color: var(--baseLight-color);
    margin-inline: auto;
    display: block;
    text-align: center;
    transition: .3s;
    position: absolute;
    left: 50%;
    top: 50%;
    z-index:1;
    transform: translate(-50% , -50%);
    font-size: 26px;
	font-family: var(--font-family-Bodoni) !important;
	font-weight: 500 !important;
	width: 97%;
	text-align: center;
}

.communities--content a.btn--dark{
	margin-inline: auto;
    display: block;
    width: max-content;
    margin-block-start: 3rem;
}
/*********************
END: COMMUNITIES
*********************/


/*********************
START: TESTIMONIALS
*********************/
.testimonials {
    background-image: url("../img/bg-testimonials.jpg");
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
}

.testimonials::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4));
}

.testimonials--content {
    padding-block: var(--global-section-padding);
    padding-inline: 50px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    position: relative;
}

.testimonials--content>h2 {
    color: var(--baseLight-color);
    margin-bottom: 30px;
    text-align: center;
}

.testimonials--content>ul {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: wrap;
    margin-block-end: 70px;
}

.testimonials--content>ul>li {
    -webkit-flex-basis: 33.3%;
    -ms-flex-preferred-size: 33.3%;
    flex-basis: 33.3%;
    min-height: 272px;
    margin: 0;
}

.testimonials--content>ul>li>div.item {
    height: calc(1px + 100%);
    width: calc(1px + 100%);
    padding: 32px 27px;
    border: none;
    position: relative;
}

.testimonials--content>ul>li>div.item>img {
    max-width: 50px;
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
    filter: brightness(0) invert(1);
    margin-bottom: 1.666rem;
}

.testimonials--content>ul>li>div.item>p {
    text-align: center;
    color: var(--baseLight-color);
    font-style: italic;
}

.testimonials--content>a.btn {
    margin-inline: auto;
    display: block;
    width: max-content;
}

/*********************
END: TESTIMONIALS
*********************/

/*********************
START: INBOX
*********************/
.inbox {
    background-color: var(--bg-color);
}

.inbox--content {
    text-align: center;
	color: var(--text-color-1);
    padding-top: calc(6 / 4* var(--global-section-padding)) !important;
    padding-bottom: calc(8 / 4* var(--global-section-padding)) !important;
}

.inbox--content>h2 {
    margin: 8px 0 24px;
}

.inbox--content>p {
    margin-block-end: 2rem;
}

.inbox--content #leadCaptureForm{
	max-width: 730px;
    margin-inline: auto;
	display: flex;
	justify-content: space-between;
}

.inbox--content #leadCaptureForm .form-group{
	max-width: 100%;
    min-width: 250px; 
}

.inbox--content #leadCaptureForm .form-group label{
	text-align: left;
	display: none;
}

.inbox--content #leadCaptureForm .form-group input{
	padding: 16px 0;
	font-weight: 400;
	font-family: var(--font-family-Lato);
}

.inbox--content #leadCaptureForm .form-group input::placeholder{
	color: #cbcac8;
}

.inbox--content #leadCaptureForm button[type=submit]{
	width: 200px;
	padding: 16px;
}

/* 
.inbox--content .wpcf7.js form{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.inbox--content .wpcf7.js form > p:nth-child(2),
.inbox--content .wpcf7.js form > p:nth-child(3){
	width: 49%;
}

.wpcf7-list-item{
	text-align: justify;
	font-size: var(--text-xs);
}

.inbox--content .wpcf7.js form input[type=submit]{
	margin-block-start: 1rem;
} */

/*********************
END: INBOX
*********************/

/*********************
START: WORK WITH US
*********************/
.work-with-us {
    height: 100vh;
    position: relative;
    background-image: url(../img/work-with-us-img.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-background-position: center;
    background-position: center;
}

.work-with-us::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
	z-index: 0;
    background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3));
}

.work-with-us::after {
    position: absolute;
/*     content: ""; */
	content: unset;
    width: 50%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-size: 600px;
    -webkit-background-size: 600px;
    background-position: center;
    background-image: url("../img/vector-logo.jpg");
    background-repeat: no-repeat;
	z-index:0;
}

.work-with-us__content {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: var(--baseLight-color);
    width: 100%;
    max-width: 750px;
    text-align: center;
    padding: 50px;
	z-index:1;
}

.work-with-us__content>h2 {
    margin: 0 0 30px;
}

.work-with-us__content>p {
    margin: 0 0 65px;
}

/*********************
END: WORK WITH US
*********************/

/*********************
START: 
*********************/

/*********************
END: 
*********************/

/*********************
START: MEDIA
*********************/
@media screen and (min-width: 1440px) {
	.hero--title h1{
		font-size:var(--text-8xl);
	}

}

@media screen and (min-width: 1320px) and (max-width: 1439px) {
	.hero--title h1{
		font-size:var(--text-7xl);
	}

}

@media screen and (max-width: 1319px) {
	.hero--title h1{
		font-size:var(--text-6xl);
	}

}

@media screen and (max-width: 1200px) {
	.hero--title h1{
		font-size:var(--text-5xl);
	}
	
    .aboutMe--img img {
        aspect-ratio: 4/6.5;
    }

    .work-with-us::after {
        width: 65%;
    }
}

@media screen and (max-width: 992px) {
	.hero--title h1{
		font-size:var(--text-4xl);
	}
	
	.hero--title p{
		width: 80%;
		margin-block-start: 0;
	}
	
    .service--content {
        flex-direction: column;
		margin-bottom: var(--global-section-padding);
    }

    .service--title,
    .service--text {
        flex-basis: 100%;
        padding: 1.25rem;
		min-height: auto;
		text-align: center;
    }
	
	.communities--content>ul {
		grid-template-columns: repeat(3, 1fr);
	}

    .aboutMe--content {
        flex-direction: column;
    }

    .aboutMe--text {
        padding-inline-start: 0;
        margin-block-start: 29px;
    }

    .aboutMe--img img {
        aspect-ratio: 4 / 5;
    }

    .testimonials--content>ul>li>div.item {
        padding-inline: 1rem;
    }

    .work-with-us::after {
        width: 75%;
        -webkit-background-size: 380px;
        background-size: 380px;
    }
}

@media screen and (max-width: 768px) {
	.rch-search-listing-form .rch-search-filters select, 
	.rch-search-listing-form .rch-search-filters input[type="search"]{
		height: 40px !important;
	}
	
	.rch-search-form-submit button{
		padding-block: 14px;
	}

	
	.hero--title h1{
		font-size:var(--text-3xl);
	}
	
	.hero--title p{
		width: 90%;
	}
	
    .transactions--slider .swiper-slide {
        height: 400px;
    }

    .transactions--slider .swiper-slide.swiper-slide-active {
        height: 470px;
    }

    .transactions--slider .swiper-slide picture>img {
        height: calc(100% - 151px);
    }

    .transactions--slider .swiper {
        padding-block-end: 9rem;
    }
	
	.transactions--slider .swiper-slide .slider--info .properties > h3 {
    	font-size: var(--text-base);
	}

    .transactions--slider .swiper-slide .slider--info {
        position: relative;
        transition: .9s;
    }

    .transactions--slider .swiper-slide .slider--info,
    .transactions--slider .swiper-slide .slider--info .properties {
        width: 100%;
    }

    .transactions--slider .swiper-slide .slider--info .arrow--more {
        display: none;
    }

    .transactions--slider .slider--down {
        flex-direction: column;
        width: auto;
        align-items: center;
    }

    .transactions--slider .slider--btn {
        margin-block-start: 1rem;
    }

	 .communities--content>ul {
		grid-template-columns: repeat(2, 1fr);
	}
	
    .communities--content>ul li>a {
        height: 330px;

    }

    .communities--content>ul li>a::before {
        content: unset;
    }

    .communities--content>ul li>a::after {
        position: absolute;
        content: "";
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        opacity: 1;
        background-color: rgba(0, 0, 0, 0.7);
    }

    .communities--content>ul li>a>p {
        opacity: 1;
		font-size: 24px;
    }

    .testimonials--content {
        padding-inline: 25px;
    }

    .testimonials--content>ul {
        flex-direction: column;
    }

    .testimonials--content>ul>li {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }

    .testimonials--content>ul>li>div.item {
        padding-inline: 0;
    }
	
	.inbox--content #leadCaptureForm{
		flex-direction: column;
	}
	
	.inbox--content #leadCaptureForm .form-group input{
		padding-block-end: 4px;
	}
	
	.inbox--content #leadCaptureForm button[type=submit]{
		width: 100%;
	}
	
	.inbox--content #leadCaptureForm .form-group{
		margin-bottom: 32px;
	}
	
    .work-with-us::after {
        width: 85%;
    }

    .work-with-us__content {
        padding-inline: 25px;
    }
}

@media screen and (max-width: 576px) {
	.hero--title p{
		font-size: var(--text-xl);
		width: 100%;
	}
	
	.service--title h1{
        font-size: var(--text-xl);
        letter-spacing: .5px;
        line-height: 1.6;
    }
	
    .transactions--slider .swiper-slide {
        height: 320px;
    }

    .transactions--slider .swiper-slide.swiper-slide-active {
        height: 370px;
    }

    .transactions--slider .swiper-slide picture>img {
        height: calc(100% - 166px);
    }
	
	.communities--content>ul {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 1rem;
	}
	

    .work-with-us::after {
        width: 100%;
    }
}

@media screen and (max-width: 425px) {
	.hero--title p{
		font-size: var(--text-lg);
	}
}

@media screen and (max-width: 375px) {}

/*********************
END: MEDIA
*********************/