/*

TemplateMo 561 Purple Buzz

https://templatemo.com/tm-561-purple-buzz

---------------------------------------------
Table of contents
------------------------------------------------
1. Typography
2. Main Nav
3. Home
4. About
5. Work
6. Single Work
7. Pricing
8. Contact
--------------------------------------------- */
@media (max-width: 768px) {
  .banner-heading {
      font-size: 1.75rem; /* Smaller heading for mobile */
  }
  .banner-body {
      font-size: 1rem; /* Adjust font size for mobile */
  }
  .banner-button {
      padding: 3px 6px; /* Smaller padding for the button */
      font-size: 2rpx;
  }
}




html {font-family: 'Open Sans', sans-serif;}
/* Typography */
p, a {font-weight: 400;}
.h1 {font-size: 44px;font-weight: 600;}
.h2 {font-size: 40px;}
.h3 {font-size: 28px;}
.light-300 {
  font-family: 'Open Sans', sans-serif !important;
  font-weight: 400;
}
.regular-400 {
  font-family: 'Open Sans', sans-serif !important;
  font-weight: 400;
}
.semi-bold-600 {
  font-family: 'Open Sans', sans-serif !important;
  font-weight: 600;
}
.typo-space-line::after,
.typo-space-line-center::after {
  content: "";
  width: 150px;
  display:block;
  position: absolute;
  border-bottom:  5px solid #ffff;
  padding-top: .5em;
}
.typo-space-line-center::after {
  left: 50%;
  margin-left: -75px;
}
/* Main Nav */
.linkk:hover{
  color:#00adef;
  font-weight: 500;
}



#main_nav .nav-item .nav-link:hover {
  color:#00adef;
  font-family: 500;
}
/* Home */
/* Existing styles */
#index_banner {
  /* background-image: url('./../img/banner-bg-01.jpg'); */
  background-position: center center;
  background-size: cover;
  height: 100%;
  min-height: 60vh;
  width: 100%;
  position: relative; /* Position relative to position the overlay */
  display: flex;
  align-items: center;
}

#index_banner .carousel-item {
  min-height: 60vh;
  position: relative; /* Ensure overlay is positioned relative to this */
}

/* Add the dark overlay */
#index_banner .carousel-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5); /* Dark overlay with 50% opacity */
  z-index: 1; /* Place overlay behind the content */
}

#index_banner .carousel-control-prev i,
#index_banner .carousel-control-next i {
  color: #00adef !important;
  text-decoration: none;
  font-size: 4em;
}

#index_banner .carousel-inner {
  height: 80vh;
}

#index_banner .carousel-indicators li,
#index_banner .carousel-indicators.active {
  background-color: #00adef!important;
}

/* Ensure banner content is above the overlay */
#index_banner .banner-content {
  position: relative;
  z-index: 2; /* Content should be above the overlay */
}



.service-work {
  overflow: hidden; /* Hide overflow to prevent horizontal scroll */
}

.service-work:hover {
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2); /* Slight shadow for elevation */
  transform: translateY(-5px); /* Moves card up slightly */
}

.service-work-vertical {
  background-color: rgba(0, 0, 0, 0.4); /* Darker overlay */
  transition: background-color 0.3s ease-in-out;
}

.service-work:hover .service-work-vertical {
  background-color: rgba(0, 0, 0, 0.7); /* Darker on hover */
}

/* Button visibility enhancement */
.service-work .btn-outline-- {
  background-color: #00adef; /* Primary color */
  color: #fff; /* White text */
  border: 2px solid #00adef; /* Light blue border */
  transition: background-color 0.3s ease, color 0.3s ease;
}

.service-work:hover .btn-outline-light {
  background-color: transparent; /* Transparent background on hover */
  color: #00adef; /* Blue text */
  border: 2px solid #00adef; /* Blue border */
}
/* Adjust the card text visibility */
.service-work-content p {
  color: #fff; /* Keep the text white for better readability */
}





/* General styles for buttons */
.btn-fixed {
  width: 200px; /* Fixed width for consistency */
  height: 40px; /* Fixed height for consistency */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0.5rem 1rem; /* Adjust padding as needed */
  font-size: 0.875rem; /* Adjust font size as needed */
}

/* Ensure card text doesn't disturb card height */
.card-text {
  margin: 0; /* Remove margin to prevent extra spacing */
  padding: 0; /* Remove padding if it's causing overflow */
  box-sizing: border-box; /* Include padding and border in element's total width and height */
  word-wrap: break-word; /* Break long words and URLs to prevent overflow */
  text-align: left; /* Align text to left for better readability */
}

/* Mobile styles */
@media (max-width: 768px) {
  /* Adjust button size for smaller screens */
  .btn-fixed {
    width: 150px; /* Reduced width for smaller screens */
    height: 35px; /* Reduced height for smaller screens */
    font-size: 0.75rem; /* Smaller font size for smaller screens */
  }

  .service-work-content {
    padding: 1rem; /* Add padding for small screens */
  }
  

  /* Adjust card text alignment and overflow */
  .card-text {
    font-size: 0.875rem; /* Adjust font size for readability on small screens */
  }

  /* Responsive grid layout for smaller screens */
  .col-xl-3 {
    flex: 0 0 100%; /* Full width for mobile screens */
    max-width: 100%; /* Full width for mobile screens */
  }
}

/* Extra small screens (phones in portrait mode) */
@media (max-width: 576px) {
  /* Further adjust button size */
  .btn-fixed {
    width: 120px; /* Further reduced width for very small screens */
    height: 30px; /* Further reduced height for very small screens */
    font-size: 0.65rem; /* Further reduced font size */
  }

  /* Adjust card padding and margin */
  .service-work {
    margin: 0; /* Remove margin for better fit */
  }

  .card-text {
    font-size: 0.75rem; /* Further adjust font size for very small screens */
  }
  /* Ensure card image is responsive */
  .card-img {
    height: auto; /* Adjust image height automatically */
  }
}










.service-wrapper .service-footer {
  max-width: 720px;
}
.service-work.card {
  border-radius: 10px !important;
  cursor: pointer;
}
.service-work .service-work-vertical {
	background: rgb(0,0,0);
  background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 33.33%, rgba(255,255,255,1) 66.66%, rgba(255,255,255,0) 99.99%);
  background-size: 300% 300%;
  background-position: 0% 100%;
  transition: .5s;
}
.service-work .service-work-vertical:hover {
  background-position: 0% 0%;
  transition: .5s;
}
.service-work .service-work-vertical:hover * {
  color: #000;
  border-color: #000;
  transition: .5s;
}
.recent-work.card{
  border-radius: 10px !important;
}
.recent-work .recent-work-vertical {
  background: rgb(255,255,255);
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.436) 0%, rgba(255,255,255,0) 33.333%, rgba(0,173,239,1) 66.666%, rgba(60,218,131,1) 99.999%);
  background-size: 300% 300%;
  background-position: 0% 100%;
  transition: .5s;
  cursor: pointer;
}

.recent-work .recent-work-vertical:hover {
  background-position: 0% 0%;
  transition: .5s;
}

.recent-work .recent-work-vertical:hover div.recent-work-content {
  top: 50%;
  margin-top: -2.5em;
  position: absolute;
}

.recent-work .recent-work-vertical:hover * {
  color: white;
  transition: .5s;
}

/* About */
#work_banner {
  background-image: url('./../img/132284.jpg');
  background-position: center center; background-size: cover;
  height: 100%;
  width: 100%;
}
.progress {
  height: 8px;
}
.objective-icon {
  border-radius: 13px;
  width: 8rem;
}
.partner-wap {
  background-color: #7276ec;
  transition: 1s;
  cursor: pointer;
}
.partner-wap:hover {
  background-color: #b1b3f5;
}
.why-us { 
  background: #00adef; /* Fallback color */
  background: -moz-linear-gradient(0deg, #00adef 0%, rgb(155, 227, 255) 100%); /* For Firefox */
  background: -webkit-linear-gradient(0deg, #00adef 0%, rrgb(155, 227, 255) 100%); /* For Safari */
  background: linear-gradient(0deg, rgba(0,173,239,1) 0%, rgb(155, 227, 255) 100%); /* Standard syntax */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00adef", endColorstr="#ffffff", GradientType=0); /* For older IE */
}

.team-member-img {
  transition-duration: 0.15s;
}
.team-member:hover .team-member-img {
  padding: 10px !important;
}

/* Work */
/* Singel Work */
#work_single_banner {
  background-image: url('./../img/132284.jpg');
  background-position: center center;
  background-size: cover;
  height: 100%;
  width: 100%;
}
.related-content {
  border-radius: 20px;
  cursor: pointer;
}
/* Pricing */
.pricing-list {
  margin-bottom: 1px;
}
.pricing-table {
  max-width: 350px;
  margin: auto;
}
.pricing-table,
.pricing-horizontal {
  border-radius: 15px !important;
}
/* Contact */
#floatingtextarea {
  height: 150px
}
/* Footer */
footer a.text-light:hover {
  color: #f3f3f3 !important;
  transition-duration: 0.15s;
}