/* 
Theme Name: Your New Site
Theme URI: https://github.com/elementor/hello-theme/
Description: Welcome to your new site
Author: Rooftop Twenty Two
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

html {
  overflow-y: scroll;
/*   scrollbar-gutter: stable; */
}

.page-header { display: none; }
p{ margin-block-end:0px; }
.marquee-slider .swiper-slide { width: auto; white-space: nowrap; padding: 0 20px; }
.marquee-logo .swiper-slide { width: auto !important; white-space: nowrap; padding: 0px; display: flex; align-items: center;}

.header-menu nav ul li a:hover{color: #ffffff80 !important;}
/* FAQ Services css */
.faq-section .e-n-accordion .e-n-accordion-item:first-child summary{border-top:0px !important;}
.faq-section .e-n-accordion-item-title { display: flex; justify-content: space-between; }

/* End FAQ Services css */

/* Start Home Slider css */
.home-slider .custom-pagination-wrapper, .home-slider .custom-nav-wrapper { width: 1320px; margin: 0 auto; position: relative; }
.home-slider .custom-nav-wrapper { display: flex; gap: 16px; }
.home-slider .custom-nav-wrapper .elementor-swiper-button { position: absolute;  bottom: 64px; }
.home-slider .custom-nav-wrapper .elementor-swiper-button svg{ width: 20px; fill: #fff !important; }
.home-slider .swiper.elementor-loop-container{padding-bottom:0px !important;}
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-prev{right: 34px;}
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-next{right: 0px;}
.home-slider .swiper-pagination.swiper-pagination-progressbar { top: unset !important; left: unset !important; bottom: 100px; right: 0px; width: 312px;    background: rgba(255, 255, 255, 0.50) !important; height: 2px !important; }
.home-slider .heading-portfolio {  z-index: 9; }
.home-slider .swiper-slide::before { content: "";  position: absolute; top: 0; bottom:0; left:0; right:0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.50) 16%, rgba(0, 0, 0, 0.00) 41%),
 linear-gradient(180deg, rgba(0, 0, 0, 0.00) 50%, #000 95%); z-index: 1 !important; pointer-events: none; }
.nextSlideTitleportfilio .elementor-heading-title{
color: #FFF; font-size: 28px; font-weight: 400; }
.nextslidenameportfolio { z-index: 9; position: relative; right: 0; }
.nextslidenameportfolio .nextSlideTitleportfilio {
 width: 50%;  position: absolute; right: 0; text-align: right; bottom: 80px; }
/* End Home Slider css */

/* Start Contact css */

.contact-form .elementor-field { padding: 32px 24px 28px; font-size: 21px !important; line-height: 25px !important; color: #000 !important; height: 80px;}
.contact-form textarea.elementor-field{height: 200px; }
.contact-form .elementor-field-group .elementor-button {height: 80px; }
.contact-form .elementor-field::placeholder{ opacity:1; font-size: 21px !important;}
.socialmedia figure.elementor-image-box-img {margin-bottom: 0px !important; }
/* End Contact css */

.testimonial-card { background-size: 50% 101% !important; }
.bloggrid-content, .portfoliogrid-content { height: 100%; position: relative; }
.vision-mission-section .elementor-widget-n-accordion .e-n-accordion details:first-child summary{border:0px !important;}
.vision-mission-section .elementor-widget-n-accordion .e-n-accordion details summary{justify-content: space-between;}
.vision-mission-section .elementor-widget-n-accordion .e-n-accordion details summary .e-opened svg{ transform: rotate(-45deg);}
.vision-mission-section .elementor-widget-n-accordion ul{padding-left: 25px; list-style: none;}
.vision-mission-section .elementor-widget-n-accordion ul li{position: relative;}
.vision-mission-section .elementor-widget-n-accordion ul li:before { content: ''; position: absolute; left: -17px; top: 12px; width: 5px; height: 5px; background-color: #70605b; transform: rotate(45deg);  }

.blog-loop-grid .e-loop__load-more.elementor-button-wrapper {  margin-top: 32px !important; }
.blog-loop-grid .e-loop__load-more.elementor-button-wrapper .elementor-button { width: 100%; color:#000 !important;}
.blog-loop-grid .e-loop__load-more.elementor-button-wrapper .elementor-button:hover { color:#e34b49 !important;}
.blogpost-content p { margin-bottom: 12px !important; }
.blogpost-content h3, .blogpost-content h4{margin-top:28px; margin-bottom:12px;}
.blogpost-content .elementor-widget-container > :first-child{margin-top: 0 !important;}
.blogpost-content .elementor-widget-container > :last-child{margin-bottom: 0 !important;}
.blog-detail-page:before{background-position: 100% 0px !important;}
.blogcontentbg { position: relative; z-index: 0; }
.blogcontentbg::before { content: ''; position: absolute; top: 0; right: 0; width: 100%; height: 100%; background: radial-gradient(circle at calc(100% - 0px) 150px, rgba(227, 75, 73, 0.15) 0%, rgba(255, 255, 255, 0) 70% ); z-index: -1; pointer-events: none; }
.blogcontentbg::after {content: ''; position: absolute; bottom: -40%; left: -50%; width: 100%; height: 100%; background: radial-gradient( 50% 50% at 50% 50%, rgba(227, 75, 73, 0.3) 0%, rgba(255, 255, 255, 0) 90% ) !important; z-index: -1; }
.service-sectionpage .faq-section.service-faq .e-n-accordion-item-title span.e-closed svg path{stroke: white !important;}
.service-sectionpage .faq-section.service-faq .e-n-accordion-item:open {background: transparent !important; }
.service-section.service-sectionpage:before{background-size: auto !important; background-position: right bottom !important;}
.buttonicon svg, .testimonial-slider .elementor-swiper-button svg { width: 30px !important; height: 30px !important; }

.portfoliodetail-img{position:relative;}
.portfoliodetail-img:before{content:''; position:absolute; top:0%; left:-50%; width: 100%; height: 100%; background: radial-gradient(50% 50% at 50% 50%, rgba(227, 75, 73, 0.60) 0%, rgba(255, 255, 255, 0.00) 90%); }
.portfoliodetail-ired strong { font-weight: 600 !important; }
.portfolio-testimonial .testimonial-section:before, .portfolio-testimonial .testimonial-section .elementor-swiper-button{display:none !important;}
.portfolio-testimonial .testimonial-innercontainer{gap: 80px !important;}
.portfolio-testimonial .testimonial-section .testimonialheading{width:100% !important; text-align: center;}
.portfoliocontent h3, .portfoliocontent h4, .portfoliocontent h5{margin-top:24px; margin-bottom:12px; font-weight:600 !important;}
.portfoliocontent .elementor-element .elementor-widget-container>:first-child{margin-top:0px !important; padding-top:0px !important;}
.portfoliocontent .elementor-element .elementor-widget-container>:last-child{margin-bottom:0px !important; padding-bottom:0px !important;}
.portfoliocontent h5{color:#e34b49;}
.projects-grid .portfolio-category-term span.elementor-post-info__terms-list { flex-direction: row !important; gap: 4px; align-items: flex-start !important; flex-wrap: wrap;}



.portfolio-detail-content::before { content: ''; position: absolute; top: 0; right: 0; width: 100%; height: 100%; 
/* 	background: radial-gradient(53% 69% at 100% 61%,  rgba(227, 75, 73, 0.30) 0%, rgba(255, 255, 255, 0.00) 90%);  */
	background: radial-gradient(34% 48% at 100% 58%,  rgba(227, 75, 73, 0.30) 0%, rgba(255, 255, 255, 0.00) 90%);
	z-index: -1; pointer-events: none; } 

body .portfolio-category-term .elementor-icon-list-item .elementor-icon-list-text{font-size:0px; display: flex !important; flex-direction: column !important; align-items: flex-start;}
.portfolio-category-term .elementor-icon-list-item .elementor-icon-list-text .elementor-post-info__terms-list-item{font-size:16px; background:#A1D295; padding:12px 12px 10px; width: fit-content; display: inline-block !important;}
.portfolio-category-term .elementor-post-info__terms-list {display: flex !important; flex-direction: column; gap: 0px; align-items: flex-end !important; }
.portfolio-category-term .elementor-post-info__terms-list-item { display: inline-block !important; width: fit-content !important; }
.portfoliocontent .elementor-widget-container h5 { margin-bottom: 0px; }
.portfoliocontent .elementor-widget-container p{margin-bottom: 20px;}
.portfoliocontent .elementor-widget-container ul{margin-top: 15px;}
.portfoliocontent .elementor-widget-container ul li{ margin-bottom: 15px;}

/* Start Testimonial CSS */
.testimonial-slider .elementor-swiper-button-prev, .testimonial-slider .elementor-swiper-button-next {z-index: 20; cursor: pointer; position: absolute; top: 50%; transform: translateY(-50%); }
.testimonial-slider .elementor-swiper-button-prev { left: -30px; }
.testimonial-slider .elementor-swiper-button-next { right: -30px; }
.testimonial-slider .swiper-wrapper{transform: translate3d(0px, 0px, 0px) !important;}

/* End Testimonial CSS */


.projects-grid .elementor-widget-image .elementor-widget-container{overflow: hidden;}
.projects-grid:hover img{transform: scale(1.1); transition: transform 0.5s ease;}
.projects-grid img { transition: transform 0.5s ease; }

#page-loader { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 9999; display: flex; justify-content: center; align-items: center; transition: opacity 0.8s ease, visibility 0.8s ease; }
#page-loader video { width: 100%; height: 100%; object-fit: cover; }
#page-loader.hidden { opacity: 0; visibility: hidden; pointer-events: none; }

.homeslide-heading > .e-con-inner, .home-portfolioslider-heading > .e-con-inner { position: relative !important; }
.home-slider .swiper-slide { position: relative; }
.home-slider .progress-bar { position: absolute; bottom: 0px; right: 0; height: 1.054px; width: 100%; max-width:312.076px; background: #FFFFFF80; overflow: hidden; z-index: 10; }
.home-slider .progress-bar span { display: block; height: 100%; width: 0%; background-color: #fff; transition: none; }


.menucloseicon svg path {stroke: #e34b49 !important;}
.menucloseicon svg { transform: rotate(43deg); }
.footersocialicon span.elementor-grid-item { height: 30px; }
.buttonicon span.elementor-button-content-wrapper {align-items: center; }
.service-testimonial .testimonial-section:before{display:none !important;}
.testimonial-section{background-size: 100% 50% !important;}

.menu-close-icon svg.icon { fill: #fff !important; }

.offcanva-content-row { overflow-y: scroll; justify-content: space-between; height: 100vh; }
@media (min-width: 1920px) {
	.offcanva-content-row {  row-gap: 100px !important; justify-content: flex-start !important;}
}

@media (max-width: 1366px) {
.about-intro-section:before{background-size: 42% 65% !important;}
.blog-detail-page:before{background-position: 100% 0px !important;}

}
@media (max-width: 1200px) {
.home-slider .custom-pagination-wrapper, .home-slider .custom-nav-wrapper { width: 100%; }
.home-slider .swiper-pagination.swiper-pagination-progressbar, .home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-next { right: 20px; }
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-prev { right: 55px; }
.nextSlideTitleportfilio .elementor-heading-title {font-size: 24px; }
.about-intro-section:before{background-size: 44% 63% !important;}
.service-section.formsection:before{ background-size: 66% auto !important; background-position: -48px -8px !important;}
.blog-bg-section:before{ background-size: 57% auto !important; background-position: 109% 0px !important;}
/* .testimonial-top-container >.e-con-inner { width: 880px !important;} */
	
}
@media (min-width: 1025px) and (max-width: 1200px) {
.testimonial-top-container .e-con-inner{width:768px !important;}
}

@media (max-width: 1024px) {
.nextSlideTitleportfilio .elementor-heading-title { font-size: 22px; }
.about-intro-section:before{background-size: 42% 63% !important;}
.service-section.formsection:before{ background-size: 70% auto !important; background-position: -34px 0px !important;}
.contact-form .elementor-field { padding: 28px 20px; color: #000 !important; }
.blog-bg-section:before{ background-size: 57% 26.5% !important;}
.blog-loop-grid .e-loop__load-more.elementor-button-wrapper {  margin-top: 24px !important; }
/* .testimonial-top-container >.e-con-inner { width: 75% !important;} */
/* .testimonial-card { background-size: 100% 46% !important; } */
/* .testimonial-top-container { overflow: hidden; } */
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-next { right: 40px; bottom: 40px;}
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-prev { right: 75px; bottom: 40px;}
.testimonial-slider .swiper-slide{padding-bottom:40px;}
.contact-form textarea.elementor-field{height: 168px; }
}

@media (min-width: 780px) and (max-width: 900px) {
h1.elementor-heading-title{line-height:78px !important}
.metablog{display: block !important; flex-direction: column; gap: 0px; align-items: flex-start !important; }
.bloggrid-related .metablog .elementor-element{width: auto !important; display: block !important; width: fit-content !important;}
.metablog .elementor-element:not(:last-child) { margin-bottom: 10px; }
.testimonial-top-container >.e-con-inner { width: 500 !important;}
.testimonial-top-container .elementor-swiper-button-prev{left: 104% !important;}
.testimonial-top-container .elementor-swiper-button-next{right: -80px !important;}
.about-intro-section:before { background-size: 42% 50% !important; }
.portfolio-bg-section:before{background-size: 70% auto !important;}
	
	
}
@media (max-width: 768px) {
.marquee-logo .swiper-slide { width: 200px; }
.about-intro-section:before{background-size: 42% 54% !important;}
.vision-mission-section .elementor-widget-n-accordion ul li:before { width: 5px; height: 5px; }
.service-section.formsection:before{ background-size: 76% auto !important; background-position: -29px -6px !important;}
.contact-form .elementor-field {  padding: 24px 20px; }
.blog-bg-section:before { background-size: 57% 16% !important; }
.portfolio-category-term .elementor-icon-list-item .elementor-icon-list-text .elementor-post-info__terms-list-item{font-size:14px;}
.testimonial-card { background-size: 100% 46% !important; }
.testimonial-top-container >.e-con-inner { width: 70% !important; }
.testimonial-top-container .elementor-swiper-button-prev{left: 111% !important;}
.projects-grid .portfolio-category-term span.elementor-post-info__terms-list { flex-direction: column !important; align-items: flex-start !important; gap: 0px !important; }

.testimonial-top-container { overflow: hidden; } 
.home-slider .progress-bar { max-width:250px; right: unset; }
.home-portfolioslider-heading > .e-con-inner > .elementor-element{width:100% !important;}
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-next {right:unset; left: 75px; bottom: 40px;}
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-prev {right:unset; left: 40px; bottom: 40px;}
.contact-form textarea.elementor-field{height: 200px; }
	
}
@media (max-width: 767px) {
.footer-menu li.menu-item { justify-content: center !important; display: flex; }
.bloggrid-content, .portfoliogrid-content{ height: auto; }
.home-slider .swiper-pagination.swiper-pagination-progressbar { width: 200px; bottom: 75px;}
.home-slider .custom-nav-wrapper .elementor-swiper-button { position: absolute; bottom: 40px; }
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-next {left: 55px;}
.home-slider .custom-nav-wrapper .elementor-swiper-button.elementor-swiper-button-prev { left: 20px; }
/* .nextslidenameportfolio .nextSlideTitleportfilio { width: 100%; bottom: -85px; } */
.about-intro-section:before { background-size: 77% 38% !important; }	
.socialmedia figure.elementor-image-box-img {margin-bottom: 5px !important; }
.testimonial-card { background-size: 100% 350px !important; }
.service-section.formsection:before {background-size: 100% 53% !important; background-position: 0px 0px !important; }
.blog-bg-section:before { background-size: 100% auto !important; }
.blog-detail-page:before{background-size: 100% 100% !important;}
.portfolio-testimonial .testimonial-innercontainer { gap: 50px !important; }
.portfolio-testimonial .testimonial-section .testimonialheading { text-align: center !important; }
.portfolio-category-term .elementor-post-info__terms-list {align-items: center !important; }
.testimonial-top-container { overflow: hidden; }
.testimonial-top-container >.e-con-inner { width: 85% !important; }
.testimonial-top-container .elementor-swiper-button-prev { left: 0% !important; top: -63px !important;}
.testimonial-top-container .elementor-swiper-button-next { left: 6% !important; right:unset !important; top: -63px !important;}
.contact-form .elementor-field, .contact-form .elementor-field-group .elementor-button{height: 76px; }
.contact-form textarea.elementor-field{height: 154px; }
.contact-form .elementor-field, .contact-form .elementor-field::placeholder {font-size: 20px !important;}
.header-menu nav ul li.menu-item { display: flex !important; justify-content: left !important;  }
.testimonial-slider .swiper-slide { padding-bottom: 0px; }



}

@media (max-width: 375px) {
.contact-info{background-position: 0px 101px !important;}
.service-section.formsection:before { background-size: 100% 53% !important; background-position: 0px 0px !important; }
	
} 
@media (max-width: 320px) {
.contact-info > .e-con-inner{padding-top: 400px !important;}
.contact-info .address-info{width: 78% !important;}
.service-section.formsection:before { background-size: 100% 60% !important; }
	
}



@media (min-width: 1650px) {
.about-intro-section:before { background-size: 51% 67% !important; }	
.service-section:before{ background-position: 25% 0px !important; background-size: 792px auto !important;}
.testimonial-section:before { background-position: 18% -60px !important; background-size: 40% auto !important; }
.blog-bg-section:before{ background-size: 49% 31.5% !important; background-position: 100% 0px !important;}
.portfolio-bg-section:before{background-size: 36% auto !important;}
.blog-detail-page:before{background-size: 48% 113% !important; }
	
}
@media (min-width: 1700px) {
.service-section:before{background-position: 14% 0px !important; }
}
@media (min-width: 1800px) {
.service-section:before{background-position: 18% 0px !important; }
}
@media (min-width: 1920px) {
.service-section:before{background-position: 21% 0px !important; }
}
@media (min-width: 2000px) {
.testimonial-section:before {background-position: 24% -30px !important;  background-size: 700px auto !important; }
.portfolio-bg-section:before { background-size: 43% 157% !important;}
}

@media (min-width: 2560px) {
.about-intro-section:before { background-size: 53% 68% !important; background-position: 102% 0px !important; }
.service-section:before{background-position: 32% -13px !important; background-size: 31% auto !important;}
.testimonial-section:before{ background-position: 29% -53px !important; background-size: 30% auto !important; }
.blog-bg-section:before{ background-size: 51% 31.5% !important; background-position: 100% 0px !important;}
.portfolio-bg-section:before { background-size: 44% 158% !important; }
.testimonial-section { background-size: 100% 90% !important; }

}

/* @media (min-width: 767px) and (max-width: 810px) {
 
} */

.header-menu li.menu-item, .header-menu .infocontact {
    overflow: hidden;
}
/* .header-menu li.menu-item a{line-height:1.3em !important;} */

.header-menu li.menu-item a,
.infocontact {
  opacity: 0;
  transform: translateY(40px);
  visibility: hidden;
}




/* Disable scrolling while video plays */
body.video-loading {
    overflow: hidden;
    height: 100vh; /* Prevents scroll even if content is taller */
}

