
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: poppins;
}

html, body {
    overflow-x: hidden;
}
/*-----------------------reusable css(Arewell arctecture part, approch section, project page)---------------*/
.re-desc{
    padding: 80px 0px;
}
.home-titleheader{
    text-align: center;
    font-size:22px;
    color: rgba(51,51,51);
    font-weight: 500;
    font-family: poppins;
}
.custom-lead{
    text-align: justify;
    margin-top: 40px;
    font-size: 18px;
    color: rgba(127,126,126);
}
/*---------------------------------------home page----------------------------------------------*/
/*------------------Navbar-----------------*/
#mainNavbar {
    /*position: absolute;*/
    top: 0;
    width: 100%;
    z-index: 1000;
    transition: all 0.4s ease;
}

#mainNavbar.sticky-navbar {
    position: fixed;
    background: #323d3f;
    animation: slideDown 0.4s ease; 
}
@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}
.navbar {
    background: #323d3f;
}

.custom-logo {
    height: 60px;
    width: auto;
}

.navbar .nav-link.active {
    color: #ffc107 !important;

}

/* SHOW DROPDOWN ON HOVER */
.navbar .dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0;
}

/* REMOVE CLICK BEHAVIOR DELAY */
.navbar .dropdown-menu {
    display: none;
}

/* SMOOTH FADE EFFECT */
.dropdown-menu {
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
}

/* ON HOVER SHOW */
.navbar .dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
/*--------------hero section--------------*/
.custom-itmes {
  height: 90vh;
}

.custom-itmes img {
  width: 100% !IMPORTANT;
  height: 100% !important;
  
} 



/*-----------------contact components--------------*/

.cont-wraper{
    background: rgba(221,221,221);
    color: #616161;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 40px;
}
.cont-wraper p{
    font-size: 22px;
    line-height: 1.5;
    margin: 0px;
    font-weight: 300;
}
/*------------------approch section--------------------*/
.custom-cardgroup{
    gap:20px;
    margin-top:40px;
}
.cus-cardtitle{
    text-align: center;
}
.custom-card{
    border: none;
}
.custom-card img{
    border-radius: 10px !IMPORTANT;
}

.re-deslty{
    padding: 0px;
}

/*---------------------client review------------------------*/
.testimonial-card{
    background: #fff;
    padding: 25px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    height: 250px !important;
    
}

/* avatar */
.client-img{
    width: 60px;
    height: 60px;
    border-radius: 50%;
    margin: 0 auto 10px;
    background: linear-gradient(135deg, #667eea, #764ba2);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

.clientreview-wrapper{
    background: rgba(221, 221, 221);
    margin-top: 80px;
}
.custom-swip{
    padding: 40px !important;
    width: 80%;
}

/*-----------------------------------------------------Project page css code--------------------------------------------------------*/

.carousel-item img {
    height: 90vh;
    object-fit: cover;
    width:100%;
}

.custom-caption {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    width: auto;
}

.custom-caption h5 {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    background: rgba(0,0,0,0.4);
    padding: 10px 20px;
    border-radius: 6px;
}

#main-cont{
    padding: 0px 90px;
}
/*------------------------------projects card--------------------------------*/
.pro-cardwrepper{
    padding: 80px 0px 80px 0px;
}
.project-card {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  padding: 0px;
  height: 260px;
}

 /*IMAGE */
.project-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

 /*DARK OVERLAY */
.project-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
  opacity: 0;
  transition: 0.4s ease;
  z-index: 1;
}

 /*CONTENT */
.project-content {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: -72px;
  color: #fff;
  z-index: 2;
  opacity: 1;
  transition: all 0.4s ease;
}

 /*HOVER EFFECT */
.project-card:hover .project-img {
  transform: scale(1.1);
}
.project-card:hover::before {
  opacity: 1;
}
.project-card:hover .project-content {
  bottom: 20px;
  opacity: 1;
}
 /*Default style */
.hr-role-box {
  transition: all 0.3s ease-in-out;
}
 /*Hover effect */
.hr-role-box:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
  transform: translateY(-5px);/* optional slight lift */
}
/*-----------------------------------------------FAQ-------------------------------*/
.accordion-body{
    font-size: 16px;
    color: rgba(127, 126, 126);
    text-align: justify;
}


/*-----------------------------------------------------single project page--------------------------------------------------------*/

/*--------------------hero section---------------------------*/
.heroSlider {
    height: 70vh;
    position: relative;
}

.heroSlider img {
    width: 100%;
    height: 70vh;
    object-fit: cover;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    /*background: rgba(0,0,0,0.4);*/
    color: #fff;
    text-align: center;
    z-index: 1;
}

/*-------------------------thumbnail slider----------------------------*/

.cus-swslider{
    width: 32.6% !important;
}

.custom-carousel-caption {
  top: 50%;
  left: 50%;
  bottom: auto;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 10;
}

.thumbSlider .swiper-slide img {
    width: 100%;
    height: 281px;  /*🔥 increase size */
    object-fit: cover;
    border-radius: 10px;
}
/* THUMBNAILS */
.thumbSlider {
    height: 300px;
    width: 80%;
    margin-top: 80px;
    position: relative;
    overflow: visible; /* IMPORTANT */
    /*bottom: 130px;*/
}

.thumbSlider .swiper-slide {
    cursor: pointer;
}

.thumbSlider .swiper-slide-thumb-active {
    opacity: 1;
    border: 2px solid #000;
}

.thumbSlider .swiper-button-next,
.thumbSlider .swiper-button-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 35px;
    height: 35px;
    /*background: rgba(0,0,0,0.6);*/
    background: #fff;
    border-radius: 50%;
    color: #000;
}

 /*LEFT */
.thumb-prev,
.thumb-next {
    left: 10px;
}
/* ICON SIZE */
.thumbSlider .swiper-button-next:after,
.thumbSlider .swiper-button-prev:after {
    font-size: 14px;
    font-weight: 900;
}

/*------------------------------clients details-----------------------*/

.clt-wrapper{
    display:flex;
    justify-content: center;
    align-items: center;
    margin: 60px 0px 60px 0px ;
}

.client-details{
    text-align: center;
    color:rgba(127,126,126);;
}
.project-brief{
    padding: 0px 180px;
}
/*-------------------------------video---------------------------------*/

.au-video iframe{
    border-radius: 8px;
    /*margin-bottom: 80px;*/
}

/*----------------------------------after and before---------------------------*/
.ba-container{
    position: relative;
    /*width: 48%;*/
    overflow: hidden;
    border-radius: 10px;
}
.pper{
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}
/* BEFORE */
.ba-before{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ba-wrapper{
    width:48%;
}
/* AFTER WRAPPER */
.ba-after-wrapper{
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    overflow: hidden;
}

/* AFTER IMAGE */
.ba-after-wrapper img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* SLIDER */
.ba-slider{
    position: absolute;
    top: 0;
    left: 50%;
    width: 3px;
    height: 100%;
    background: #fff;
    cursor: ew-resize;
    z-index: 10;
}
/* SLIDER LINE */
.ba-slider{
    position: absolute;
    top: 0;
    left: 50%;
    width: 3px;
    height: 100%;
    background: #fff;
    cursor: ew-resize;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* CIRCLE HANDLE */
.dboble-arrow-custom{
    position: absolute;
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    font-size: 18px;
    font-weight: bold;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    user-select: none;
}

/* OPTIONAL HOVER EFFECT */
.dboble-arrow-custom:hover{
    transform: scale(1.1);
}
.ba-label-row {
     position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%;

    display: flex;
    justify-content: space-between;
    padding: 0 10px;

    z-index: 20; /* above images */
    margin-top: 0; /* remove old spacing */
}

.ba-btn {
    padding: 8px 15px;
    border-radius: 20px;
    font-size: 12px;

    background: rgba(0,0,0,0.6);
    color: #fff;
    border: none;

    backdrop-filter: blur(4px); /* 🔥 premium glass effect */
    
}

/*------------------------------------------------------------intrior page-------------------------------------------------------------------*/

/*--------------306 view--------------------*/
.wide-view{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/*------------------------------------------------------------contact page-------------------------------------------------------------------*/

.alwraper{
    display: flex;
    justify-content: space-between;
    height: 80vh;
    align-items: center;
    padding: 20px 0px;
}
.arccontact-form{
    width: 50%;
}

/*------------------------------------------------------------Team page-------------------------------------------------------------------*/
.woner-details{
    text-align: center;
    
}
.woner-details p {
    font-size: 18px;
    margin-bottom: 2px;
    color: rgba(127,126,126);
    
}
.team-card{
    height: 400px !important;
}
.footer-line{
    margin-bottom: -30px;
    height: 44px;
    background-color: #E6E6E6;
    width: 80.0em;
    background: linear-gradient(to bottom, rgba(0, 0, 0, .14), rgba(0, 0, 0, .04) 3px, transparent);
}
.footer-line::after{
    display: block;
    width: 100%;
    height: 44px;
    background-color: transparent;
    background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0), #fff);
    z-index: 1;
    content: "";
}
/*----------------------------------------------------------service page-----------------------------------------------------------------*/

.service-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.7);
}

.modal-content {
  background: #fff;
  margin: 5% auto;
  padding: 30px;
  width: 70%;
  border-radius: 12px;
  position: relative;
}

.modal-body {
  display: flex;
  gap: 30px;
  align-items: center;
}

.modal-body img {
  width: 30%;
  height: auto;
  border-radius: 10px;
}

.modal-body div {
  width: 60%;
}

.close-btn {
  position: absolute;
  right: 20px;
  top: 10px;
  font-size: 30px;
  cursor: pointer;
}

/* Mobile */
@media (max-width: 768px) {
  .modal-body {
    flex-direction: column;
  }

  .modal-body img,
  .modal-body div {
    width: 100%;
  }
}

/*-----------------------------------------------------------------news & media--------------------------------------------------------------*/

/* FILTER */
.media-filters {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.filter-btn {
    padding: 8px 18px;
    border-radius: 25px;
    border: 1px solid #000;
    background: transparent;
    cursor: pointer;
}

.filter-btn.active {
    background: #000;
    color: #fff;
}

/* CARD */
.media-card {
    border: 1px solid #ddd;
    border-radius: 12px;
    padding: 10px;
    text-align: center;
    transition: 0.3s;
}

.media-card:hover {
    transform: translateY(-6px);
}

/* IMAGE */
.media-card img {
    width: 100%;
    border-radius: 10px;
}

/* VIDEO BOX */
.video-box {
    position: relative;
    cursor: pointer;
}

.video-box iframe {
    width: 100%;
    height: 220px;
    border-radius: 10px;
}

/* PLAY BUTTON */
.play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 40px;
    color: white;
    background: rgba(0,0,0,0.6);
    padding: 10px 15px;
    border-radius: 50%;
}

/* ANIMATION */
.media-item {
    transition: opacity 0.3s ease;
}


.blog-ong img{
    width: 100%;
    height: auto;
}

/*-----------------------------------------------------------Footer------------------------------------------------------------*/

.footer-link {
    color: #f8f9fa;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-link:hover {
    color: #0d6efd;
}

.social-icon {
    width: 35px;
    height: 35px;
    line-height: 35px;
    border-radius: 50%;
    text-align: center;
    color: #fff;
    display: inline-block;
    margin: 0 8px;
    transition: all 0.3s ease;
}

.social-icon:hover {
    transform: translateY(-3px);
    color: #fff;
}

.footer-logo{
    overflow: hidden;
    height: 80px;
    width: 100%;
}
.footer-logo img {
    
    object-fit: cover;
    width: 130%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 200px;
    position: relative;
    top: -88px;
    left: -130px;
    
}