*{
    padding: 0;
    margin: 0;
}
html{
  scroll-behavior: smooth;
}
.navbar {
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  background-color: transparent;
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 999;
}

/* Background on scroll */
.navbar.scrolled {
  background-color: #ffffff !important;/* Change this to match your theme */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.navbar.scrolled .nav-link span {
  color: #000000; /* black text, or any color you prefer */
}
.navbar .nav-link span {
    position: relative;
    display: inline-block;
    color: #ffffff;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-size: medium;
  font-style: normal;
  }
  .dropdown-menu {
  display: none;
  position: absolute;
  z-index: 1000;
}

.dropdown:hover .dropdown-menu {
  display: block;
}

  
  /* Underline */
  .navbar .nav-link span::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    background-color: #C2A33B;
    width: 0%;
    transition: width 0.4s ease-out;
  }
  
  /* On hover only on the span */
  
  .navbar .nav-link:hover span::after {
    transition-delay: 0.3s;
    width: 100%;
  }
  
  /* Active styling for nav-link (optional) */
  .navbar .nav-link.active span{
    background-color: #C2A33B;
    color: #fff;
    padding:3px;
    border-radius: 6px;
  }
 /* Banner Images control */
  #carouselBannerImages {
    height: 70vh; /* 60% of the viewport height */
    overflow: hidden;
  }
  
  #carouselBannerImages .carousel-inner,
  #carouselBannerImages .carousel-item,
  #carouselBannerImages img {
    height: 100%;
  } 
  
  #carouselBannerImages img {
    object-fit: cover; /* Makes sure the image fills the container without distortion */
  }

  /* ========= Main Carsouel ========== */
.my-carousel-wrapper {
      position: relative;
      height: 100vh;
      overflow: hidden;
    }

    .my-slide {
      position: absolute;
      top: 0; left: 0;
      height: 100%;
      width: 100%;
      opacity: 0;
      transition: opacity 1s ease-in-out;
      z-index: 0;
    }

    .my-slide.active {
      opacity: 1;
      z-index: 1;
    }

    .my-bg {
      position: absolute;
      top: 0; left: 0;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      z-index: 0;
      animation: zoomEffect 10s ease-in-out infinite;
    }

    @keyframes zoomEffect {
      0% {
        transform: scale(1);
      }
      100% {
        transform: scale(1.1);
      }
    }

    .my-overlay {
      position: absolute;
      top: 0; left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.4);
      z-index: 1;
    }

    .my-caption {
      position: absolute;
      bottom: 25%;
      left: 5%;
      z-index: 2;
      color: #fff;
    }

    .my-caption h1 {
      font-weight: bold;
      margin-bottom: 1rem;
    }

    @media (max-width: 768px) {
      .my-caption h1 {
        font-size: 2rem;
      }
    }

    @media (min-width: 769px) {
      .my-caption h1 {
        font-size: 5rem;
      }
    }

/* ================== End of Main carsouel =========== */
  .MainAboutus{
    /* background-color: #f8f9fa; Light background for the About Us section */
    padding: 2rem; /* Padding for spacing */
    border-radius: 8px; /* Rounded corners */
    /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); Subtle shadow for depth */
  }
.tailoredInterior {
  font-family: "Bricolage Grotesque", sans-serif;
    font-size: 6.3rem; /* Larger font size for emphasis */
    /* font-weight: bold; Bold text */
    color: #000000; /* Dark color for contrast */
    margin-bottom: 1.5rem; /* Spacing below the title */
    text-align: left; /* Centered text */
}
h3.SubAbout {
    font-family: "Jost", sans-serif;
    font-size: 1.3rem;
    color: #2c2c2c; /* Dark color for contrast */
    margin-bottom: 1.5rem; /* Spacing below the subtitle */
    text-align: left; /* Left-aligned text */
}
h3.SubAbout::after{
    content: "";
    display: block;
    width: 50px; /* Width of the line */
    height: 2px; /* Thickness of the line */
    background-color: #C2A33B; /* Color of the line */
    margin-top: 20px; /* Spacing above the line */
    margin-bottom: 20px; /* Spacing below the line */
}
.AboutText {
  /* position:relative; */
    font-family: "Jost", sans-serif;
    font-size: 1.1rem; /* Font size for the text */
    color: #333; /* Dark color for readability */
    line-height: 1.6; /* Line height for better readability */
    margin-top: 20px; /* Spacing above the text */
    text-align: left; /* Left-aligned text */
    width: 100%;
}
.material-symbols-outlined {
  position: relative;
  top: 6px; /* Adjusts the vertical position of the icon */
}
.nav-item .nav-link {
 font-family: "Jost", sans-serif;
  font-size: 1.1rem; /* Font size for the text */
  color:rgb(75, 75, 75)
}
.tab-content .mt-4 strong{
  font-family: "Jost", sans-serif;
  font-size: 1.1rem; /* Font size for the text */
}
.tab-content .tab-pane.fade.show.active p{
  font-family: "Jost", sans-serif;
  font-size: 1.1rem; /* Font size for the text */
}

/* Custom Carousel Styles */
        .image-stack {
            position: relative;
            width: 100%;
            max-width: 400px; /* Adjust as needed */
            height: 300px; /* Adjust as needed */
            margin: 0 auto;
        }
        
        .stacked-image {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 8px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            opacity: 0;
            transition: opacity 1.5s ease-in-out;
        }
        
        .stacked-image.active {
            opacity: 1;
        }
        
        /* Positioning for the overlapping effect */
        .stacked-image:nth-child(1) {
            transform: rotate(-3deg);
            z-index: 1;
        }
        
        .stacked-image:nth-child(2) {
            transform: rotate(2deg);
            z-index: 2;
            top: 10px;
            left: 10px;
        }
        
        .stacked-image:nth-child(3) {
            transform: rotate(-1deg);
            z-index: 3;
            top: 20px;
            left: -10px;
        }

/* Zooming image banner */
.zooming-banner {
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden;
}

.zoom-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: rightToLeftZoom 15s ease-in-out infinite;
    will-change: transform;
    backface-visibility: hidden;
}

@keyframes rightToLeftZoom {
    0% {
        transform: scale(1.1) translateX(5%);
    }
    50% {
        transform: scale(1) translateX(0);
    }
    100% {
        transform: scale(1.1) translateX(5%);
    }
}

/* Services Main */

.ServicesText {
  /* position:relative; */
    font-family: "Jost", sans-serif;
    font-size: 1.1rem; /* Font size for the text */
    color: #333; /* Dark color for readability */
    line-height: 1.6; /* Line height for better readability */
    margin-top: 20px; /* Spacing above the text */
    text-align: left; /* Left-aligned text */
    width: 100%;
}

/*---------------- Process steps */

.step-container {
      position: relative;
      text-align: center;
    }

    .step-icon {
      width: 120px;
      height: 120px;
      border-radius: 50%;
      border: 2px solid #ccc;
      margin: 0 auto 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      z-index: 2;
    }

    .step-number {
      position: absolute;
      top: 0px;
      right: -10px;
      background-color: #4d453c;
      color: white;
      font-size: 14px;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 3;
    }
    .step-title {
      font-family: "Jost", sans-serif;
      font-weight: bold;
      font-size: 1.1rem;
      margin-bottom: 10px;
    }

    .step-desc {
      font-family: "Jost", sans-serif;
      color: #666;
      font-size: 0.95rem;
      max-width: 250px;
      margin: 0 auto;
    }



/* ======== Bottom Carsouel Slide ======== */
    .carousel-container {
      max-width: 100%;
      height:300px;
      margin: 50px auto;
      overflow: hidden;
      position: relative;
    }

    .carousel-track {
      display: flex;
      transition: transform 0.7s ease-in-out;
    }

    .carousel-slide {
      flex: 0 0 100%;
      display: flex;
      gap: 10px;
      justify-content: center;
    }

    .carousel-slide img {
      width: 45%;
      border-radius: 10px;
    }

/* Word-by-word animation styles */
.word-animation {
    display: inline-block;
}

.word-animation .word {
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
}

.word-animation .word span {
    opacity: 0;
    display: inline-block;
    transform: translateY(20px);
    transition: all 0.4s ease;
}

.word-animation.animate .word span {
    opacity: 1;
    transform: translateY(0);
}

/* Space between words */
.word-animation .word + .word {
    margin-left: 0.3em;
}




/* Split Carousel Styles */
/* Half Image Carousel Styles */
#halfImageCarousel {
  overflow: hidden;
}

.half-image-left, 
.half-image-right {
  height: 500px; /* Adjust height as needed */
  background-size: 200% 100%;
  background-position: left center;
  transition: all 0.8s ease;
}

.half-image-left {
  background-position: left center;
}

.half-image-right {
  background-position: right center;
}

/* Animation when sliding */
.carousel-item.active .half-image-left {
  animation: revealLeft 0.8s ease forwards;
}

.carousel-item.active .half-image-right {
  animation: revealRight 0.8s ease forwards;
}

@keyframes revealLeft {
  from { background-position: left center; }
  to { background-position: right center; }
}

@keyframes revealRight {
  from { background-position: right center; }
  to { background-position: left center; }
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .half-image-left, 
  .half-image-right {
    height: 300px;
  }
  
  /* Show only one half on mobile */
  .half-image-right {
    display: none;
  }
  
  .half-image-left {
    background-size: cover;
    background-position: center;
  }
}




/* =================== */

/* Banner Styles */
  .hero-section {
      background: url('images/banner4.png') no-repeat center center/cover;
      height: 100vh;
      color: white;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
    }

    .hero-overlay {
      position: absolute;
      top: 0; left: 0;
      height: 100%;
      width: 100%;
      background: rgba(0,0,0,0.5);
    }

    .hero-content {
      position: relative;
      z-index: 2;
      max-width: 800px;
      text-align: left;
    }

    .hero-content h1 {
      font-size: 3.5rem;
      font-weight: bold;
    }

    .btn-custom {
      margin-top: 30px;
      padding: 12px 30px;
      font-size: 1rem;
      border-radius: 0;
    }



    /* ======== ABOUT US page styles ===================== */

   #about-carousel-section {
  height: 50vh;
  overflow: hidden;
  position: relative;
}

/* .about-carousel {
  height: 100%;
}

.about-carousel-inner {
  height: 100%;
}

.about-carousel-item {
  height: 100%;
} */

.about-carousel-img {
  height: 100vh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 10s ease;
}

.about-carousel-item.active .about-zoom-bg {
  transform: scale(1.1);
}

.about-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 2;
}

.about-caption {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  text-align: center;
}
.innerabout-carousel{
  /* position: relative; */
  height: 30rem;
  overflow: hidden;
}
.innerabout-carousel-img {
  height: 30rem;
  width:auto;
  /* background-size: cover; */
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 5s ease;
}


/* ========== Contact Us ============= */
.dream-banner-row{
  display: block;
  position: absolute;
  height: 100vh;
  background-color: #fff;
}