/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/*UTILITY*/

.w-900 *{
	font-weight: 900 !important;
}

.w-800 *{
	font-weight: 800 !important;
}

.w-700 *{
	font-weight: 700 !important;
}

.w-600 *{
	font-weight: 600 !important;
}

.w-500 *{
	font-weight: 500 !important;
}

.w-400 *{
	font-weight: 400 !important;
}

.w-300 *{
	font-weight: 300 !important;
}

.underline-me *{
	text-decoration: underline !important;
}

.uppercase-me *{
	text-transform: uppercase !important;
}

.italic-me *{
	font-style: italic !important;
}

@media only screen and (min-width:1024px){
	.lh-100 *{
		line-height: 1.1em !important;
	}
}

@media only screen and (max-width:1366px){
	.lantab-no-br br{
		display: none !important;
	}
}

@media only screen and (max-width:1024px){
	.tab-no-br br{
		display: none !important;
	}
}

@media only screen and (max-width:767px){
	.no-br br{
		display: none !important;
	}
}

.have-color-in-span span, .have-color-in-bold strong{
	color: #BA002F;
}

.link-underline a{
	text-decoration: underline;
}

.link-white a{
	color: #fff !important;
}

.have-color-in-bold{
	color: #BA002F;
}

.ul-no-padding ul{    
    margin-left: 0px !important;
}


.lh-100 *{
	line-height: 1.1em !important;

}

@media only screen and (max-width: 767px){

.lh-100 *{
	line-height: 1.3em !important;

}


}

.lh-130 *{
	line-height: 1.3em !important;
}

.content-container :is(h1, h2, h3, h4, h5, h6){
	line-height: 1.3em;
}

.content-container h1{
	font-size: 180%;
}

.content-container h2{
	font-size: 170%;
}

.content-container h3{
	font-size: 160%;
}

.content-container h4{
	font-size: 150%;
}

.content-container h5{
	font-size: 140%;
}

.content-container h6{
	font-size: 130%;
}

@media only screen and (min-width: 1640px){
	.right-open-container{
		padding-left: calc( calc(100vw - 1600px) / 2 );
	}
	.left-open-container{
		padding-right: calc( calc(100vw - 1600px) / 2 );
	}
	
	.right-open-container .left-box{
		width: calc(50% - calc( calc(100vw - 1600px) / 4 ));
	}
	
	.right-open-container .right-box{
		width: calc(50% + calc( calc(100vw - 1600px) / 4 ));
	}
	
	.left-open-container .left-box{
		width: calc(50% + calc( calc(100vw - 1600px) / 4 ));
	}
	
	.left-open-container .right-box{
		width: calc(50% - calc( calc(100vw - 1600px) / 4 ));
	}
 
 }



/*---- Infinite Scroll Slider ----*/

.infinite-slide .swiper-wrapper{
	transition-timing-function: linear !important;
}





/*ADDED FOR ALL SITES*/ 

#header-menu li.menu-item.menu-item-has-children{
    position: relative;
}

#header-menu span.sub-arrow{
    position: absolute;
    right: 15px;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-background-clip: text;    
}

*:focus{
	outline: none !important;
	outline-style: none !important;
}
 
}

:is(a, li):focus-visible, :is(a, li):focus-within {
    outline: none !important;
    
}

:is(.red-btn, .white-btn) svg{
	fill: #ffffff;
}

.red-btn a.elementor-button, .white-btn a.elementor-button{
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.red-btn *, .white-btn *{
	position: relative; 
    z-index: 2;
}

.red-btn a.elementor-button::after, .white-btn a.elementor-button::after{
	content: "";
	position: absolute;
	top: 0;
    left: 0;
	z-index: 1;
	height: 100%;
	width: 100%;
	transform: translateY(100%);
}

.red-btn a.elementor-button{
	border-color: #BA002F;
}

.white-btn a.elementor-button{
	border-color: #FFFFFF;
}

.red-btn a.elementor-button:hover::after, .white-btn a.elementor-button:hover::after{
	transform: translateY(0%);
	transition: transform 0.5s ease-in;
}


.red-btn a.elementor-button::after{
	background: #ffffff;
}


.white-btn a.elementor-button::after{
	background: #BA002F;
}

.red-btn a.elementor-button:hover {
	color: #BA002F !important;
	border-color: #ffffff;
}

.red-btn.hover-white-border a.elementor-button:hover {
	border-color: #ffffff !important;
}

.red-btn a.elementor-button:hover svg{
	fill: #BA002F !important;
}

.white-btn a.elementor-button:hover {
	color: #FFFFFF !important;
	border-color: #BA002F;
}


.white-btn a.elementor-button:hover svg{
	fill: #ffffff !important
}


.rotate-forever{
	animation: rotateme 2.5s linear infinite !important;
	width: 70px;
  	height: 70px;
}

@keyframes rotateme{
	from {
		transform: rotate(0deg);
		transform-origin: center center !important;
  	}
	
	to {
		transform: rotate(360deg);
		transform-origin: center center !important;
	}
}

.project-card .video-holder{
	opacity: 0;
}

.project-card:hover .video-holder{
	opacity: 1;
	height: 536px;
}

.project-card .hover-appear-up{
	max-height: 0px !important;
	overflow: hidden;
	transition: all 1s ease-in !important;
}

.project-card:hover .hover-appear-up{
	max-height: 400px !important;
	
}


.menu-item .elementor-icon-box-icon{
	max-width: 0px; 
	overflow: hidden;
	transition: all 0.7s ease-in !important;
}

.menu-item:hover .elementor-icon-box-icon{
	max-width: 50px; 
}

.menu-item.active .elementor-icon-box-icon{
	max-width: 50px; 
}

.grid-box .grid-image-box {
	background-color: #ffffff;
}


.grid-box:hover .grid-image-box {
    background-color: #BA002F;
    transition: background-color 0.3s ease;
}


.grid-box:hover .grid-image-box img {
    /* brightness(0) makes it black, invert(1) makes it white */
    filter: brightness(0) invert(1);
    transition: filter 0.3s ease;
}

.amenities-box-text li{
	list-style-type: none;
}

.amenities-box-text li:not(:last-child) {
    margin-bottom: 15px;	
}

.location-box-text li{
	position: relative;
	padding-left: 24px;
	list-style-type: none;
}

.location-box-text li:not(:last-child) {
    margin-bottom: 15px;
}

.location-box-text li::before{
	content: "";
	top: 12.5px;
	left: 0px;
	position: absolute;
	width: 20px;
	height: 5px;
	background-color: #BA002F;
	
}


.aspect-3 img{
    aspect-ratio: 3/2 !important;
}

@media only screen and (min-width: 1025px){
	#home-tab .e-n-tabs-heading{
		width: 50%;
		align-self: end;
		justify-content: center;
	}
}

#homeslider .swiper-button-disabled{
	opacity: 0 !important; 
	display: none !important;
}

.ast-article-single figure, .ast-article-single img:not(figure img){
	box-shadow: none !important;
}

/**/

/* --- 1. The Triggers (Icon Boxes) --- */
.menu-item {
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Active State for Triggers (Optional styling) */
.menu-item.active .elementor-icon svg line {
    stroke: #333 !important; /* Change line color when active */
}
.menu-item.active .elementor-icon-box-title span {
    color: #BA002F; /* Change text color when active */
}


.menu-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    
    /* Initial State: Hidden ABOVE the container */
    transform: translateY(-100%);
    opacity: 0;
    visibility: hidden;
    
    /* Smooth Slide Animation */
    transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1), 
                opacity 0.6s ease,
                visibility 0.6s;
}

/* Active State: Slides down into view */
.menu-content.active {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
    position: absolute; /* Keep absolute to overlap smoothly during transition */
}

@media only screen and (min-width: 1640px){
	#project-single-tabs .e-n-tabs-heading{
		padding-right: calc( calc(100vw - 1600px) / 2 ) !important;
	}
	
	.offset-right-margin{
		margin-right: calc( calc(100vw - 1600px) / 2 ) !important;
	}
	
	
}

body.no_phase #phase-tab, body.no_spotlight #spotlight-tab, body.no_floorplan #floorplan-tab{
	display: none; 
}



.image-gallery-with-cap .gallery-caption{
	border:none;
}

.image-gallery-with-cap	img {
    height: 200px;
    object-fit: cover;
    width: 300px;
}

.mithila-accordion span.e-n-accordion-item-title-icon {
    background: #705D43;
    padding: 8px;
    border-radius: 50%;
}

.mithila-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title {
    border-radius: 10px 10px 0px 0px;
}

.mithila-accordion .e-n-accordion-item[open] > .e-n-accordion-item-title {
    text-decoration-line: underline;
    text-decoration-thickness: 2px;   /* underline width */
    text-underline-offset: 12px;       /* gap between text and underline */
}