*{
  margin:0;
  padding:0;
  box-sizing: border-box;
  font-family: "Exo", serif;
}

li {
  list-style-type: none;
}

a {
  color: unset;
  text-decoration: none;
}
.header ul li a {
  padding: 15px 15px !important;
  text-transform: uppercase;
}
.header .offcanvas-body {
  justify-content: space-between;
  align-items: center;
  color: #000;
}
.header .nav-link {
  color: #000000 !important;  
  transition: color 0.3s ease-in-out;
}

.header .offcanvas-body li:hover,
.header .offcanvas-body li:focus {
  color: #2b2d91 !important;
}

.header .offcanvas-body li.current-menu-item,
.header .offcanvas-body li.current_page_item {
  color: #2b2d91 !important;
}

section.header.sticky-top {
  background-color: #fff;
}
.banner .carousel-item
{
  max-height: 75vh;
/*  max-height: 90vh;	 */
}
/* @media(min-width:768px) and (max-width:1024px){
.banner .carousel-item
	{	 max-height: 90vh;	
	}
} */
.bnr_btn {
  background-color: #2b2d91;
    padding: 15px 20px;
    color: #fff;
    border-radius: 9px;
    border: none;
}

a.view_more:hover{
  color:#000;
}
.carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover {
background-color: transparent;
}
.bnr_btn span {
  background-color: #fff;
  border-radius: 23px;
  padding: 6px 9px;
  margin-left: 5px;
  color: #2b2d91;
}
.banner h5
{
    font-size: 35px;
    font-weight: 600;

}
.register_btn
{
  background-color: #2b2d91;
    padding: 15px 20px;
    color: #fff;
    border-radius: 10px;
    border: none;
    text-transform: uppercase;
    font-size: 15px;

}
.register_btn span {
  background-color: #fff;
  border-radius: 23px;
  padding: 6px 9px;
  margin-left: 5px;
  color: #2b2d91;
}
.register_btn span i{
  padding-top: 5px;
}
.feature_main {
  display: flex;
    gap: 15px;
}
.feature_sub {
  padding: 20px;
  border: 1px solid #ded9d9;
  margin: 40px 0px;
  border-radius: 20px;
}

.feature_subs {
  padding: 10px;
  /*border: 1px solid #ded9d9;*/
  /*margin: 40px 0px;*/
  /*border-radius: 20px;*/
}

div#carouselExampleAutoplaying {
  padding: 0;
}


div#elevators p {
    font-size: 20px !important;
    color: #2b2d91;
}


.firstimgdiv
{
  width:100%;
  height: auto;
}
.abt{
  background-image:url(../imgs/escalator-airport_animation.gif);
  background-attachment: fixed;
  width: 100%;
  height: auto;
 
}
.firstwhite
{
  background-color: rgb(43 45 145 / 72%);
    color: #fff;
    padding: 50px;
}
.firstwhite h1 {
  font-size: 30px;
  margin-bottom: 20px;
}
.firstwhite p{
  font-size: 15px;
 line-height:30px ;
}
.feature_sub h4 {
  
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 15px;
}
.feature_sub p {
  font-size: 16px;
  line-height: 28px;
}

.feature_subs h4 {
  
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 15px;
}
.feature_subs p {
  font-size: 16px;
  line-height: 28px;
}

.firstwhite button
{
 color: #2b2d91;
  padding: 15px 20px;
  background-color: #fff;
  border-radius: 10px;
  border: none;
}
.firstwhite button span {
color: #fff;
  border-radius: 23px;
  padding: 6px 9px;
  margin-left: 5px;
  background-color: #2b2d91;
}
.hi
  {
    display: flex
;
    align-items: center;
}
section.about {
  padding: 40px 0px;
}
.about  h1 {
  font-size: 30px;
  margin-bottom: 20px;
}

button span.navbar-toggler-icon:hover{
	color:#fff;
}

button.navbar-toggler:hover{
	background-color:#2b2d91;
	color:#fff;
}

button:hover{background-color:#000;
  color:#fff;}

.about  p {
  font-size: 15px;
    line-height: 30px;
}
.steptitle
{
  border-bottom: 1px solid #7e7e7e;
display: flex;
margin-bottom: 25px;
align-items: baseline;
}
.steptitle h2
{
  font-size: 43px;
    font-weight: 600;
 
}
.building h3
{
font-size:18px;
font-weight:500;
}
.steptitle p
{
  font-size: 16px;
  line-height: 28px;
}
.building h1 {
  font-size: 30px;
  margin-bottom: 20px;
}
.building{
  background-image: url(../imgs/escalators-mall.png);
  background-attachment: fixed;
  background-position: top center;
  color: #fff;
  background-size: cover;
  padding: 40px 0px;

}
.feature_sub img {
  margin: 15px 0px 15px 0px;
}

.feature_subs img {
  margin: 15px 0px 15px 0px;
}

a.view_more {
  color: #2b2d91;
    display: flex;
    align-items: center;
    gap: 5px;
    font-family: "Exo", serif;
    font-size: 16px;
}
.building p{
  font-size: 15px;
    line-height: 30px;
}
.giving h1 {
  font-size: 30px;
  margin-bottom: 20px;
}
section.giving {
  padding: 40px 0px;
}
.givingbox
{
  position: relative;
}
.givingbox p{
  position: absolute;
    color: #fff;
    bottom: 0;
    background-color: rgb(0 0 0 / 80%);
    width: 100%;
    padding: 10px 15px;
    text-transform: capitalize;
}
.testi_user img{
  width: auto !important;
}
.testi_user {
  display: flex;
  gap: 15px;
  align-items: center;
  
}
.owl-nav
{
  display:none;
}
.testi_user h4 {
  font-size: 17px;
}
.testi{
  color: #fff;
    padding:25px;
}
section.testimonial {
  background-image: url(../imgs/testibg.png);
  background-attachment: fixed;
  background-position: top center;
  color: #fff;
  background-size: cover;
  padding: 40px 0px;


}
.clientlogo_main{
  margin-bottom: 20px;
}
.testimonial .owl-stage-outer {
  background-color: rgb(0 0 0 / 52%);
  border-radius: 30px;
 
}
.testi  p {
  font-size: 15px;
  line-height: 30px;
}
.testimonial h1{
  font-size: 30px;
    margin-bottom: 20px;
}
.counter h1 {
  font-size: 54px;
  font-weight: 700;
}
.latest
{
  padding: 40px 0px; 
}
.latest h1 {
  font-size: 30px;
  margin-bottom: 20px;

}
.latest p {
  font-size: 15px;
  line-height: 30px;

}
.latest h3 {
  font-size: 18px;
    font-weight: 500;
    margin: 15px 0px 10px;

}
.latestsub
{
  border-radius: 5px;
  border: 1px solid #e7e1e1;
  padding: 20px;
}
.blog{
  padding: 40px 0px; 
}
.blog_title h1 {
  font-size: 30px;
  margin-bottom: 20px;
}
.blog_title{
  display: flex;
  justify-content: space-between;
}
.blog1
{
  position: relative;
}
.blog1_details{
  position: absolute;
  bottom: 0;
}
.social {

display: flex;
gap: 10px;
}
.ftr1 {
  display: flex
  ;
      justify-content: space-between;
      padding-bottom: 15px;
      border-bottom: 1px solid #8b8b8b;
      margin-bottom: 30px;
      align-items: baseline;

}
footer{

  background-image: url(../imgs/footerbg.png);
  background-attachment: fixed;
  background-position: top center;
  color: #fff;
  background-size: cover;
  padding: 40px 0px 0px;
}
.list1, .list2{
  width:50%;
  float:left;
  padding-left: 0px;
}
.list1 li, .list2 li {
  padding-bottom: 12px;
}
.cnt
{
    display: flex;
    /* gap: 15px; */
    flex-direction: column;
}
.contact_div i{
  padding-right: 15px;
}
.contact_div i {
  padding-right: 5px;
}
.ft_cnt
{
  font-size: 15px;
  line-height: 30px;
 
}
.social i{
  font-size:24px;
}
.quote
{
  position: absolute;
  z-index: 999;
}
.ftrbtm
{
  padding: 15px 0px 0px;
  border-top: 1px solid #8b8b8b;
  color:#fff;
  font-size: 16px;
}

/***PRODUCT PAGE****/

.product {
  padding: 50px 0;
  background-color: #fff;
}

.product h1 
{
    font-size: 30px;
    margin-bottom: 20px;
    text-transform: capitalize;
}

/* Grid Layout */
.product_item {
  padding: 15px;
}

.product_main{
  margin-bottom:20px;
}


.product_img {
  width: 100%;
  height: 250px;
  background-color: #ddd;
  overflow: hidden;

}

.product_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;  /* Ensures full image coverage */
}
.pr img {
  margin-bottom:30px;
}

  /* Ensure Equal Height for Columns */

  /* Limit Content to 4 Lines */

.product_in p {
    display: -webkit-box;
    -webkit-line-clamp: 4; /* Limits text to 4 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    max-height: 6.4em; /* Adjust based on your line-height */
    line-height: 1.6em; /* Set line-height for proper clamping */
    cursor: pointer;
}

.product_in.expanded p{
    -webkit-line-clamp: unset;
    -webkit-box-orient: unset;
    overflow: visible;
    max-height: none;
}

  /* Customize Swiper Pagination */
  .swiper-pagination .swiper-pagination-bullet {
    background: #ccc; /* Default bullet color */
    opacity: 0.6;
  }

  .swiper-pagination .swiper-pagination-bullet-active {
    background: #2b2d91 !important; /* Active bullet color */
    opacity: 1;
  }

.product_in{
 padding: 32px;
    border: 1px solid #ded9d9;
    margin: 20px 0px;
    border-radius: 20px;
}

/* Responsive Design */

@media (max-width: 991px) { /* Target mobile screens */
    .offcanvas-body .navbar-nav {
        align-items: flex-start !important; /* Align menu items to the left */
        text-align: left; /* Ensure text is left-aligned */
		gap:10px;
    }

    .offcanvas-body .navbar-nav .nav-item {
        width: 100%; /* Ensure items take full width */
    }
      .offcanvas-body .offcanvas-title {
        display: block;
        text-align: left;
        margin-bottom: 20px; /* Adjust space below logo */
    }
}


@media (max-width: 992px) {
  .product_item {
    width: 50%;
  }
}

@media (max-width: 768px) {
  .product_item {
    width: 100%;
  }
}



/*Contact Page*/

/* Optional: Add a transition effect for placeholder text */
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
  transition: opacity 0.3s ease-out;
}




/* Styling for the overall contact section */
.contact {
  padding: 50px 0;
  background-color: #f7f7f7;
}

.contact_title h1 {
  text-align: center;
  font-size: 32px;
  color: #333;
  margin-bottom: 30px;
}

/* Form Container */
.form-container {
  background-color: #fff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* Styling for input fields, textarea */
.form-container input[type="text"],
.form-container input[type="email"],
.form-container input[type="tel"],
.form-container textarea {
  width: 100%;
  padding: 15px;
  margin-bottom: 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 16px;
  box-sizing: border-box;
  background-color: #fafafa;
}

.form-container input::placeholder,
.form-container textarea::placeholder {
  color: #aaa;
  font-style: italic;
}

/* Submit Button Styling */
.form-container input[type="submit"] {
  background-color: #2b2d91;
  color: white;
  padding: 15px 30px;
  border: none;
  border-radius: 5px;
  font-size: 16px;
  cursor: pointer;
  width: 100%;
  transition: background-color 0.3s ease;
}

.form-container input[type="submit"]:hover {
  background-color: #1a1c7a;  /* Darker shade on hover */
}

/* Focus effect on inputs */
.form-container input:focus,
.form-container textarea:focus {
  border-color: #2b2d91;
  outline: none;
}

/* Detail Section */
.detail {
  padding: 30px;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.detail p {
  font-size: 16px;
  color: #555;
  line-height: 1.6;
}

/* Map container styling */
.map-container {
  margin-top: 30px; /* Add space above the map */
  text-align: center; /* Center the map */
}

.map-container iframe {
  width: 100%; /* Make the iframe take full width */
  max-width: 600px; /* Max width for the iframe */
  height: 355px; /* Set a height for the map */
  border: none;
  border-radius: 8px; /* Optional: rounded corners */
}

@media (max-width: 768px) {
  .map-container iframe {
    max-width: 100%; /* Make the map full width on smaller screens */
  }
}

@media (max-width: 991px) {
  .detail {
  margin-top: 40px;
}
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .contact .container .row {
    padding: 10px;
  }

  .contact_title h1 {
    font-size: 28px;
  }

  .form-container input[type="submit"] {
    padding: 12px 25px;
  }
}



/****BLOG PAGE****/


div#comments {
    display: none;
}


a.read{
  color: #fff;
}

/*a.read:hover{
  color:#000;
}*/

.blogp .container .row {
  display: flex;
  justify-content: flex-start;  /* Aligns items to the start horizontally */
  align-items: center;  /* Centers the items vertically within the row */
  flex-wrap: wrap;  /* Allows items to wrap when the screen is smaller */
  height: auto;  /* Let the row height adjust automatically */
  padding: 40px 0px;
}

.blogp .col-lg-6, .blogp .col-md-12 {
  display: flex;
  justify-content: flex-start;  /* Aligns content to the left within each column */
  margin-bottom: 20px;  /* Add space between rows */
  padding: 10px;  /* Add padding around columns */
}

.blogp .blogimg {
  width: 100%;  /* Make the container fill the column width */
  height: 300px;  /* Fixed height for the image container */
  position: relative;
  background-color: #f0f0f0;  /* Add a background to ensure the image area is visible */
}

.blogp .blogimg img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;  /* Full height of the container */
  object-fit: cover;  /* Ensures the image covers the area without distortion */
}

.blogp .blog_box {
  background-color: #2b2d91;  /* Ensure the box has a background */
  color: #fff;
  padding: 20px;
  border-radius: 5px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  text-align: left;  /* Align text to the left */
  flex: 1;  /* Allow the box to take available space */
}

.blog_box h4, .black h4 {
  font-size: 23px;
  margin-top: 20px;
}

@media (max-width: 768px) {
  /* Adjust the layout for smaller screens (tablets and below) */
  .blogp .container .row {
    height: auto;  /* Remove full height to accommodate content */
    padding-top: 20px;  /* Add some padding on top */
  }

  .blogp .col-lg-6, .blogp .col-md-12 {
    width: 100%;  /* Make columns take full width on smaller screens */
    padding: 10px;  /* Add padding around columns */
  }

  .blogp .blog_title h1 {
    font-size: 24px;  /* Reduce the title font size for smaller screens */
  }

  .blogp .blog_box {
    padding: 15px;  /* Adjust padding for smaller screens */
  }
}

@media (max-width: 480px) {
  /* Further adjustments for very small screens (smartphones) */
  .blogp .blog_title h1 {
    font-size: 20px;  /* Smaller font size for very small screens */
  }

  .blogp .blog_box {
    padding: 10px;  /* Reduce padding for smaller screens */
  }
}



/****BLOG SECTION home*****/

.blue_box
{
  background-color: #2b2d91;
    padding: 30px;
    color: #fff;
    margin: 15px 0px;
}
.blue_box h5, .black h5 {
  font-size: 16px;
}
span.whitebox {
  background-color: #fff;
  margin-right: 15px;
  color: #2b2d91;
  padding: 5px 13px;
  font-size: 15px;
}
.blue_box h4, .black h4 {
  font-size: 23px;
  margin-top: 20px;
}
.blog1 img{
  margin-top: 20px;
  height: -webkit-fill-available;
}
.blog1{
 
  height: 100%;
}
.black
{
  color:black;
  margin-top: 7px;
}
.black .whitebox {
color: #fff;
  margin-right: 15px;
  background-color: #2b2d91;
  padding: 5px 13px;
  font-size: 15px;
}
.blog2img
{
  height: -webkit-fill-available;
}
button.btn-close.btn-close-white {
  background-color: #bdbdbd;
}
.navbar-toggler:focus {
  box-shadow: none;
}
.nav-link.active, .navbar-nav .nav-link.show, .nav-link:hover {
 
color: #2b2d91 !important;
}
.abt_detail h1
{
  font-size: 30px;
  margin-bottom: 20px;
text-transform: capitalize;
}

.abt_detail p {
    font-size: 15px;
    line-height: 30px;
    font-weight: 400;
}
.abt_detail .feature_main .feature_sub {
  margin: 15px 0px;
}
.abt_detail .feature_main .feature_subs {
  margin: 15px 0px;
}
.abt_detail {
  padding: 40px 0px;
}

.abt_detail .feature_main .feature_sub h6 {
  margin-bottom: 30px;
  color: #2b2d91;
  font-size: 18px;
  font-weight: 600;
}
.abt_detail .feature_main .feature_subs h6 {
  margin-bottom: 30px;
  color: #2b2d91;
  font-size: 18px;
  font-weight: 600;
}
.believe
{

}
.bluebg
{
display:flex;
gap: 15px;

padding: 40px 40px;
    background:url(../imgs/321.jpg);
  height: 100%;
  background-attachment: fixed;
}
.bluebg_sub
{
  backdrop-filter: blur(43.9804px) brightness(93%);
  background: linear-gradient(142.13deg, rgba(254, 248, 255, .189) 1.8%, rgba(254, 248, 255, 0) 99.75%);
  height: fit-content;
  padding: 25px;
  border-radius: 8px;
}
.pt-33 {
  padding-top: 33px;
}
.bdr-t-1 {
  border-top: 1px solid;
}
.h-100
{height: 100%;}
.counter-title {
  color: #fff;
  font-size: 22px;
  font-weight: 600;
}

.cms-counter-desc {
  font-size: 15px;
  line-height: 30px;
}

/***Inner Banner***/


.innerbanner {
    position: relative;
    text-align: center;
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

.innerbanner img {
    width: 100%;
    height: auto;
    max-height: 500px;
    object-fit: cover;
    display: block;
}

.innerbanner h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 26px;
/*     background-color: rgba(62, 64, 149, 0.72); */
    padding: 10px 15px;
    border-radius: 6px;
    text-align: center;
    font-weight: bold;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
   
    white-space: normal; /* Allows line breaks */
    word-wrap: break-word; /* Ensures long words break properly */
}

@media (max-width: 768px) {
    .innerbanner img {
        max-height: 300px;
    object-fit: cover;
    }
    .innerbanner h1 {
        font-size: 22px;
        padding: 8px 12px;
/*     margin:20px 0px 20px 0px; */
        max-width: 90%; /* Ensures better fit on smaller screens */
    }
}

@media (min-width: 1940px) {
    .innerbanner {
        max-width: 100%;
    }
}



/***Inner Banner***/

@media (min-width: 992px) and (max-width: 1199px){ 
  

h5.clc {
    display: flex;
    flex-direction: row;
}
}


@media (max-width: 991px) { 
  
  .counter {
    margin-top: 20px;
} 
  .headlogo
 {
  display: block;
 } 
 .latestsub
 {
  margin-bottom: 20px;
 }
 .about h1 {
  
  margin-top: 25px;
}
.blog2img {
  height: -webkit-fill-available;
  width: 100%;
  margin-bottom: 20px;
}
}
@media (min-width: 991px) {
 .headlogo
 {
  display: none;
 } 
 
}
@media (max-width: 767px) { 
  .bluebg {
    flex-direction: column;
  }
.feature_main {
  display: flex
;
  gap: 15px;
  flex-direction: column;
  padding: 40px 0px;
}
.feature_sub {
  
  margin:  0px;
}

.feature_subs {
  
  margin:  0px;
} 

.blog_title {
  display: flex
;
  justify-content: space-between;
  flex-direction: column;
}
.register_btn {
  width: fit-content;
}
.givingbox img{
  margin-bottom: 20px;
}
.latestsub {
  margin-bottom: 20px;
  display: flex
;
  flex-direction: column;
}
}
@media (max-width: 575px) { 
.firstwhite h1, .about h1, .building h1, .giving h1, .testimonial h1, .latest h1, .blog_title h1  {
  font-size: 22px;
  margin-bottom: 20px;
  
}
/* .blog {
  padding: 0px 0px 15px;
} */
.latest {
  padding: 19px 0px;
}
section.giving {
  padding: 20px 0px;
}
}

.single-post{
  padding-top:40px
}