/* INDEX
----------------------------------------------------------------------------------------
01. Hero Css
02. Our Experience Css
03. About Us Css
04. Our Property Css
05. Our Amenities Css
06. Intro Video Css
07. Our Team Css
08. Our Testimonial Css
09. Our FAQ Css
-------------------------------------------------------------------------------------- */

/************************************/
/***        01. Hero Css	      ***/
/************************************/

.hero{
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
    padding: 350px 0 280px;
    overflow: hidden;
}

.hero::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: var(--primary-color);
	opacity: 30%;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.hero.hero-video .hero-bg-video{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}

.hero.hero-video .hero-bg-video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero.hero-slider-layout{
	background: none;
	padding: 0;
}

.hero.hero-slider-layout .hero-slide{
	position: relative;
    padding: 300px 0 230px;
}

.hero.hero-slider-layout .hero-slide::before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--primary-color);
	opacity: 30%;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.hero.hero-slider-layout .hero-slide .hero-slider-image{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

.hero.hero-slider-layout .hero-slide .hero-slider-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero.hero-slider-layout .hero-pagination{
	position: absolute;
    bottom: 50px;
	text-align: left;
	padding-left: calc(((100vw - 1300px) / 2));
	z-index: 2;
}

.hero.hero-slider-layout .hero-pagination .swiper-pagination-bullet{
    width: 12px;
    height: 12px;
    background: var(--white-color);
    opacity: 1;
    transition: all 0.3s ease-in-out;
    margin: 0 5px;
}

.hero.hero-slider-layout .hero-pagination .swiper-pagination-bullet-active{
    background-color: var(--accent-color);
}

.hero-content{
	position: relative;
	z-index: 2;
}

.hero-content .section-title h1{
	font-size: 86px;
}

.hero-social-media{
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-36%);
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	z-index: 2;
}

.hero-social-media h3{
	position: relative;
	font-size: 14px;
    text-transform: uppercase;
    color: var(--white-color);
    transform: rotate(180deg);
    cursor: none;
	writing-mode: vertical-rl;
	padding-bottom: 85px;
    transition: all 0.3s ease-in-out;
}

.hero-social-media h3:after{
	position: absolute;
	content: '';
	height: 76px;
	width: 1px;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	background: var(--text-color);
}

.hero-social-media ul{
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

.hero-social-media ul li{
	line-height: normal;
	margin-bottom: 10px;
}

.hero-social-media ul li:last-child{
	margin-bottom: 0;
}

.hero-social-media ul li a{
	color: var(--white-color);
}

.hero-social-media ul li i{
	font-size: 16px;
	color: inherit;
	transition: all 0.4s ease-in-out;
}

.hero-social-media ul li i:hover{
	color: var(--accent-color);
}

.hero-btn{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
}

/************************************/
/***    02. Our Experience Css    ***/
/************************************/

.our-experience{
	padding: 80px 0 50px 0;
}

.our-experience-img{

	background-position: bottom left;
	background-size: auto;
}

.our-experience-img img{
	width: 100%;
}

.experience-counter-list{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.experience-counter-item{
	position: relative;
	width: calc(50% - 10px);
	text-align: center;
	padding: 20px 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.experience-counter-item:before{
	content: '';
	position: absolute;
	height: 100%;
	width: 1px;
	top: 0;
	right: -10px;
	bottom: 0;
	left: auto;
	background: var(--divider-color);	
}

.experience-counter-item:after{
	content: '';
	position: absolute;
	height: 1px;
	width: 100%;
	top: auto;
	right: 0;
	bottom: -10px;
	left: 0;
	background: var(--divider-color);	
}

.experience-counter-item:nth-last-child(-n + 2):after,
.experience-counter-item:nth-child(2n + 2):before{
	display: none;
}

.experience-counter-item .icon-box{
	position: relative;
	display: inline-block;
	margin-right: 20px;
}

.experience-counter-item .icon-box:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background-color: var(--accent-color);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	z-index: 0;
    transition: all 0.4s ease-in-out;
}

.experience-counter-item .icon-box img{
	position: relative;
	width: 100%;
	max-width: 60px;
	z-index: 1;
}

.experience-counter-content{
	width: calc(100% - 80px);
	text-align: left;
}

.experience-counter-content h2{
	font-size: 22px;
}

.experience-counter-content p{
	text-transform: uppercase;
	margin: 0;
}

/************************************/
/***       03. About Us Css       ***/
/************************************/

.about-us{
	background: url('../images/about-us-bg.svg') no-repeat;
	background-position: right center;
	background-size: auto;
	padding: 50px 0;
}

.about-us-images{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	margin-right: 30px;
}

.about-us-image-box-1,
.about-us-image-box-2{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.about-us-image-box-1{
	width: calc(60% - 15px);
}

.about-us-image-box-2{
	width: calc(40% - 15px);
}

.about-img-1,
.about-img-2,
.about-img-3{
	width: 100%;
}

.about-img-1 figure,
.about-img-2 figure,
.about-img-3 figure{
	width: 100%;
	display: block;
}

.about-img-1 img,
.about-img-2 img,
.about-img-3 img{
	width: 100%;
	object-fit: cover;
}

.about-img-1 img{
	aspect-ratio: 1 / 1.97;
}

.about-img-2 img{
	aspect-ratio: 1 / 1.28;
}

.about-img-3{
	margin-right: 10px;
}

.about-img-3 img{
	aspect-ratio: 1 / 1.22;
}

.intro-video-box{
	position: absolute;
	top: calc(50% + 30px);
	left: 40%;
	transform: translate(-50% , -50%);
}

.intro-video-box .video-play-button a{
	width: 120px;
	height: 120px;
	background: var(--primary-color);
	border: 10px solid var(--white-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: none;
	transition: all 0.3s ease-in-out;
}

.intro-video-box .video-play-button:hover a{
	background: var(--accent-color);
}

.intro-video-box .video-play-button a i{
	font-size: 34px;
	color: var(--white-color);
}

.about-content-body{
	margin-bottom: 40px;
}

.about-detail-item{
	display: flex;
	margin-bottom: 30px;
}

.about-detail-item:last-child{
	margin-bottom: 0;
}

.about-detail-item .icon-box{
	position: relative;
	margin-right: 20px;
}

.about-detail-item .icon-box:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background-color: var(--accent-color);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	z-index: -1;
    transition: all 0.4s ease-in-out;
}

.about-detail-item .icon-box img{
	max-width: 60px;
}

.about-detail-item .about-detail-content{
	width: calc(100% - 80px);
}

.about-detail-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.about-detail-content p{
	margin: 0;
}

.about-content-footer{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 15px 30px;
}

.about-contact-box{
	display: flex;
	align-items: center;
}

.about-contact-box .icon-box{
	width: 50px;
	height: 50px;
	background: var(--white-color);
	box-shadow: 0px 0px 10px 0px #14183E1A;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content:center;
	margin-right: 15px;
	transition: all 0.3s ease-in-out;
}

.about-contact-box:hover .icon-box{
	background: var(--accent-color);
}

.about-contact-box .icon-box img{
	max-width: 24px;
	transition: all 0.3s ease-in-out;
}

.about-contact-box:hover .icon-box img{
	filter: brightness(0) invert(1);
}

.about-contact-content{
	width: calc(100% - 65px);
}

.about-contact-content p{
	font-size: 14px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.about-contact-content h3{
	font-size: 16px;
}

.about-contact-content h3 a{
	color: inherit;
}



/************************************/
/***     04. Our Property Css     ***/
/************************************/

.our-property{
    padding: 10px 0;
}

.property-tab-nav{
    margin-bottom: 20px;
}

.property-tab-nav ul{
    list-style: none;
    border: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px 60px;
    padding: 0;
    margin: 0;
}

.property-tab-nav ul li .nav-link{
	position: relative;
    background: transparent;
	border: none;
    color: var(--text-color);
	font-size: 18px;
    font-weight: 400;
    line-height: 1.6em;
    padding: 0;
    text-transform: capitalize;
    transition: all 0.3s ease-in-out;
}

.property-tab-nav ul li .nav-link::before{
    content: '';
    position: absolute;
    top: 50%;
    right: -34px;
    background: var(--text-color);
    border-radius: 50%;
    transform: translateY(-50%);
    height: 8px;
    width: 8px;
}

.property-tab-nav ul li:last-child .nav-link::before{
    display: none;
}

.property-tab-nav ul li .nav-link.active,
.property-tab-nav ul li .nav-link:hover{
    color: var(--accent-color);
    background: transparent;
}

.property-tab-image{
    position: relative;
}

.property-tab-image::before{
    content: '';
    position: absolute;
    /*bottom: -50%;
    left: 50%;
    transform: translate(-50%, -50%);*/
    background: url(../images/property-bg-shape.svg) no-repeat;
    background-size: cover;
    height: 375px;
    width: 375px;
	z-index: 0;
}

.property-tab-image figure{
    display: block;
}

.property-tab-image img{
	position: relative;
    width: 100%;
    object-fit: contain;
    aspect-ratio: 1 / 0.871;
	z-index: 1;
}

.property-content-info{
    margin-bottom: 20px;
}

.property-content-info h2{
    font-size: 34px;
    font-weight: 600;
	text-transform: capitalize;
}

.property-content-info p{
    margin-top: 15px;
    margin-bottom: 0;
}

.property-content-types{
    display: flex;
    flex-wrap: wrap;
    gap: 40px 30px;
}

.property-type-item{
	position: relative;
    width: calc(50% - 15px);
    display: flex;
    flex-wrap: wrap;
}

.property-type-item::before{
	content: '';
	position: absolute;
	bottom: -20px;
	left: 0;
	right: 0;
	background-color: var(--divider-color);
	width: 100%;
	height: 1px;
}

.property-type-item:last-child::before,
.property-type-item:nth-last-child(-n + 2)::before{
    display: none;
}

.property-type-item .icon-box{
    position: relative;
    margin-right: 20px;
}

.property-type-item .icon-box:before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--accent-color);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.property-type-item .icon-box img{
    position: relative;
    width: 100%;
    max-width: 40px;
    z-index: 1;
}

.property-type-content{
    width: calc(100% - 60px);
}

.property-type-content h3{
    font-size: 22px;
    text-transform: capitalize;
    margin-bottom: 5px;
}

.property-type-content p{
    text-transform: capitalize;
    margin-bottom: 0;
}

/************************************/
/***     05. Our Amenities Css    ***/
/************************************/

.our-amenities{
	padding: 50px 0;
	background: url('../images/section-bg.png'), var(--secondary-color);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.our-amenities-list{
	display: flex;
	flex-wrap: wrap;
}

.amenities-item{
	width: 33.33%;
	border: 1px solid var(--divider-color);
	padding: 15px 22px;
	text-align: center;
}

.amenities-item:nth-child(3n + 1){
	padding-left: 0;
	border-top: none;
	border-left: none;
}

.amenities-item:nth-child(3n + 2){
	border-top: none;
	border-left: none;
}

.amenities-item:nth-child(3n + 3){
	padding-right: 0;
	border-top: none;
	border-right: none;
	border-left: none;
}

.amenities-item:nth-last-child(-n + 3){
	border-bottom: none;
}

.amenities-item .icon-box{
	position: relative;
	display: inline-block;
	margin-bottom: 10px;
}

.amenities-item .icon-box:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background-color: var(--accent-color);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	z-index: 0;
    transition: all 0.4s ease-in-out;
}

.amenities-item .icon-box img{
	position: relative;
	width: 100%;
	max-width: 60px;
	z-index: 1;
}

.amenities-item-content{
	margin-bottom: 15px;
}

.amenities-item-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.amenities-item-content p{
	margin: 0;
}

.features-btn a{
	position: relative;
	display: inline-block;
	color: var(--accent-color);
	font-size: 18px;
	text-transform: capitalize;
	padding-right: 25px;
	transition: all 0.4s ease-in-out;
	/* visibility: hidden; */
	/* transform: translateX(-50%); */
}

/* .amenities-item:hover .features-btn a{
	visibility: visible;
	transform: translateX(0%);
} */

.features-btn a:after{
	content: '';
    position: absolute;
    top: 50%;
    bottom: 0;
    right: 0;
    transform: translateY(-50%) rotate(45deg);
    background: url('../images/arrow-accent.svg') no-repeat;
    background-position: right center;
    background-size: cover;
    width: 13px;
    height: 13px;
	visibility: visible;
    transition: all 0.4s ease-in-out;
}

.features-btn a:hover{
	color: var(--primary-color);
}

.features-btn a:hover:after{
	filter: brightness(0);
}


/************************************/
/***      06. Intro Video Css     ***/
/************************************/

.intro-video{
    position: relative;
    background: url(../images/tabakhmela.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 100px 0 50px;
}

.intro-video::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--primary-color);
    opacity: 60%;
}

.intro-video .section-title{
    position: relative;
    margin-bottom: 0;
    z-index: 1;
}

.intro-video .intro-video-box{
    position: inherit;
    transform: translate(0, 0);
    text-align: end;
}

.intro-video .intro-video-box .video-play-button{
	display: inline-block;
}

.intro-video .intro-video-box .video-play-button a{
    font-size: 20px;
    font-weight: 500;
    text-transform: capitalize;
	background: var(--primary-color);
    color: var(--white-color);
    width: 140px;
    height: 140px;
    border: none;
    border-radius: 50%;
    margin: 0 0 0 auto;
    transition: all 0.3s ease-in-out;
}

.intro-video .intro-video-box .video-play-button:hover a{
	background: var(--accent-color);
}

.intro-video-counter-list{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    border-top: 1px solid var(--dark-divider-color);
    padding-top: 40px;
    margin-top: 100px;
    z-index: 1;
}

.intro-video-counter-item{
    position: relative;
    text-align: center;
    width: calc(25% - 22.5px);
	padding: 0 10px;
}

.intro-video-counter-item::before{
    content: '';
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%);
    background-color: var(--dark-divider-color);
    width: 1px;
    height: 70%;
}

.intro-video-counter-item:last-child::before,
.intro-video-counter-item:nth-of-type(4n + 4):before{
    display: none;
}

.intro-video-counter-item h3{
    font-size: 18px;
    color: var(--accent-color);
    margin-bottom: 5px;
}

.intro-video-counter-item h2{
    font-size: 44px;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--white-color);
    margin-bottom: 5px;
}

.intro-video-counter-item p{
    color: var(--white-color);
    margin-bottom: 0;
}

/************************************/
/***   	   07. Our Team Css 	  ***/
/************************************/

.our-team{
	padding: 50px 0 35px;
}

.team-member-item{
	height: calc(100% - 30px);
	margin-bottom: 15px;
}

.team-image{
	position: relative;
	margin-bottom: 10px;
    overflow: hidden;
}

.team-image a{
	display: block;
	cursor: none;
}

.team-image figure{
	display: block;
}

.team-image figure img{
	width: 100%;
    aspect-ratio: 1 / 1.356;
    object-fit: cover;
	transition: all 0.4s ease-in-out;
}

.team-member-item:hover .team-image figure img{
	transform: scale(1.1);
}

.team-readmore-btn{
	position: absolute;
	top: 50px;
	right: 30px;
	opacity: 0;
	visibility: hidden;
	z-index: 1;
	transition: all 0.4s ease-in-out;
}

.team-member-item:hover .team-readmore-btn{
	top: 30px;
	opacity: 1;
	visibility: visible;
}

.team-readmore-btn a{
	width: 60px;
	height: 60px;
	background-color: var(--accent-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.team-readmore-btn a:hover{
	background-color: var(--primary-color);
}

.team-readmore-btn img{
	max-width: 14px;
	transform: rotate(0);
	transition: all 0.4s ease-in-out;
}

.team-readmore-btn a:hover img{
	transform: rotate(45deg);
}

.team-content{
	text-align: center;
	margin-bottom: 20px;
}

.team-content h3{
	font-size: 22px;
	text-transform: capitalize;
    margin-bottom: 5px;
}

.team-content h3 a{
	color: inherit;
}

.team-content p{
	margin: 0;
}

.team-social-icon ul{
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

.team-social-icon ul li{
	display: inline-block;
	margin-right: 15px;
}

.team-social-icon ul li:last-child{
	margin-right: 0;
}

.team-social-icon ul li a{
	width: 40px;
	height: 40px;
	background: var(--secondary-color);
	color: var(--primary-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.4s ease-in-out;
}

.team-social-icon ul li a:hover{
	color: var(--white-color);
	background: var(--accent-color);
}

.team-social-icon ul li a i{
	color: inherit;
	font-size: 18px;
}

/************************************/
/***   08. Our Testimonial Css    ***/
/************************************/

.our-testimonial{
	background: url('../images/section-bg.png'), var(--secondary-color);
	background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	padding: 50px 0;
}

.testimonial-slider{
	position: relative;
}

.testimonial-slider .swiper{
    position: static;
    margin: 0 60px;
}

.testimonial-slider .swiper-wrapper{
	cursor: none;
}

.testimonial-item{
	text-align: center;
}

.testimonial-content{
	margin-bottom: 30px;
}

.testimonial-content p{
	color: var(--primary-color);
	font-size: 36px;
	line-height: 1.2em;
	margin: 0;
}

.author-image{
	margin-bottom: 10px;
}

.author-image figure,
.author-image img{
	border-radius: 50%;
	max-width: 100px;
	margin: 0 auto;
}

.author-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.author-content p{
	text-transform: capitalize;
	margin: 0;
}

.testimonial-btn-prev,
.testimonial-btn-next{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 60px;
	height: 60px;
	background-color: var(--accent-color);
	border-radius: 50%;
	transition: all 0.4s ease-in-out;
	z-index: 1;
}

.testimonial-btn-prev{
	left: 0;
}

.testimonial-btn-next{
	right: 0;
}

.testimonial-btn-prev:hover,
.testimonial-btn-next:hover{
	background-color: var(--primary-color);
}

.testimonial-btn-prev::before,
.testimonial-btn-next::before{
	font-family: 'FontAwesome';
	content: '\f053';
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	font-size: 16px;
	color: var(--white-color);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}

.testimonial-btn .testimonial-btn-next::before{
	transform: rotate(180deg);
}

/************************************/
/***   		09. Our FAQs Css 	  ***/
/************************************/

.our-faqs{
	padding: 50px 0;
}

.our-faqs-image{
	position: relative;
	margin-right: 15px;
}

.our-faqs-img figure{
	display: block;
}

.our-faqs-img img{
	width: 100%;
	aspect-ratio: 1 / 1.21;
	object-fit: cover;
}

.query-box{
	position: absolute;
	right: 40px;
	bottom: 40px;
	left: 40px;
	background: var(--primary-color);
	padding: 30px 40px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	z-index: 1;
}

.query-box-content h3{
	color: var(--white-color);
	font-size: 22px;
	margin-bottom: 5px;
}

.query-box-content p{
	color: var(--white-color);
	margin: 0;
}

.faq-accordion .accordion-item{
    border-bottom: 1px solid var(--divider-color);
    margin-bottom: 5px;
    padding-bottom: 5px;
}

.faq-accordion .accordion-item:last-child{
    border-bottom: none;
    margin-bottom: 0;
	padding-bottom: 0;
}

.faq-accordion .accordion-header .accordion-button{
    font-size: 22px;
	font-weight: 500;
    line-height: 1.4em;
    color: var(--primary-color);
    padding-right: 15px;
    transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-button:not(.collapsed){
    margin-bottom: 5px;
}

.faq-accordion .accordion-item .accordion-button::after, 
.faq-accordion .accordion-item .accordion-button.collapsed::after{
    content: '\2b';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
	right: 0;
    top: 0;
	font-size: 20px;
	color: var(--accent-color);
    transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-button:not(.collapsed)::after{
    content: '\f068';
}

.accordion-item .accordion-body{
	padding-right: 15px;
}

.accordion-item .accordion-body p{
    margin-bottom: 8px;
}

.accordion-item .accordion-body p:last-child{
    margin-bottom: 0;
}

