/*
---------------------------------------------
Table of contents
------------------------------------------------
1. Typography
2. Main Nav
3. Home
4. About
5. Work
6. Single Work
7. Pricing
8. Contact
--------------------------------------------- */

/* Adjust spacing for mobile devices */
@media (max-width: 768px) {
  .service-tag .nav-item {
    margin: 0.5rem 0.5rem;
    /* Adjust the top/bottom and left/right margins as needed */
  }

  .service-tag .nav {
    flex-wrap: wrap;
    /* Allow buttons to wrap if necessary */
    justify-content: center;
    /* Center align the wrapped rows */
  }

  /* Ensure the image on the About page fits properly on mobile devices */
  .container .row.d-flex.align-items-center.py-5 img {
    width: 100%;
    height: auto;
  }

  .container .row.d-flex.align-items-center.py-5 .col-lg-6 {
    width: 100%;
    text-align: center;
  }

  .container .row.d-flex.align-items-center.py-5 {
    flex-direction: column;
    /* Do not reverse the column order */
  }

  .about-us-section {
    padding-top: 0;
    /* Remove top padding */
  }

  .custom-bg {
    margin-top: 0;
    /* Ensure no extra margin */
    padding: 20px;
    /* Ensure consistent padding */
  }
}

.emoji {
  font-size: 1.6em;
  /* Adjust the size as needed */
  vertical-align: middle;
  /* Align emoji with the middle of the text */
}

.about-us-section {
  padding-top: 0;
  /* Ensure no extra padding */
  margin-top: 0;
  /* Ensure no extra margin */
}

.about-us-section {
  padding: 0 !important;
  /* Remove all padding */
  margin: 0 !important;
  /* Remove all margin */
}

.about-us-section .container {
  padding-top: 0 !important;
  /* Remove top padding */
  margin-top: 0 !important;
  /* Remove top margin */
  padding-bottom: 0 !important;
  /* Remove bottom padding */
  margin-bottom: 0 !important;
  /* Remove bottom margin */
}

.about-us-section .row {
  padding-top: 0 !important;
  /* Remove top padding */
  margin-top: 0 !important;
  /* Remove top margin */
  padding-bottom: 0 !important;
  /* Remove bottom padding */
  margin-bottom: 0 !important;
  /* Remove bottom margin */
}

.about-us-section .col-lg-6.text-start {
  padding-top: 0 !important;
  /* Remove top padding */
  margin-top: 0 !important;
  /* Remove top margin */
  padding-bottom: 0 !important;
  /* Remove bottom padding */
  margin-bottom: 0 !important;
  /* Remove bottom margin */
}

.about-us-section .col-lg-6 {
  padding-top: 0 !important;
  /* Remove top padding */
  margin-top: 0 !important;
  /* Remove top margin */
  padding-bottom: 0 !important;
  /* Remove bottom padding */
  margin-bottom: 0 !important;
  /* Remove bottom margin */
}


.creative-heading {
  text-align: center;
}

.creative-content {
  display: flex;
  justify-content: center;
  align-items: center;
}

.custom-bg {
  background-color: #333333;
  color: #ffffff;
  /* Update text color to ensure readability */
  padding: 20px;
  /* Add padding for better spacing */
  border-radius: 5px;
  /* Optional: Add border radius for rounded corners */
}

.custom-bg h2,
.custom-bg p {
  color: #ffffff !important;
  /* Ensure the text inside the section is white */
}

.why-us {
  background-color: #333333;
  /* Ensure the background color applies to the whole section */
}

html {
  font-family: 'Open Sans', sans-serif;
}

/* Typography */
p,
a {
  font-weight: 400;
}

.h2 {
  font-size: 40px;
}

.h3 {
  font-size: 28px;
}

.light-300 {
  font-family: 'Open Sans', sans-serif !important;
  font-weight: 300;
}

.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 #000;
  padding-top: .5em;
}

.typo-space-line-center::after {
  left: 50%;
  margin-left: -75px;
}

/* Load the custom font */
@font-face {
  font-family: 'Quantify';
  src: url('./../fonts/Quantify-Bold.ttf') format('woff2'),
    url('./../fonts/Quantify-Bold.ttf') format('woff'),
    url('./../fonts/Quantify-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
  /* Ensure font loads quickly */
}

/* Load the custom font */
@font-face {
  font-family: 'Quantify';
  src: url('./../fonts/Quantify-Bold.ttf') format('woff2'),
    url('./../fonts/Quantify-Bold.ttf') format('woff'),
    url('./../fonts/Quantify-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
  /* Ensure font loads quickly */
}

/* Apply the custom font to the navbar and footer */
.custom-font {
  font-family: 'Quantify', Arial, sans-serif;
  /* Added fallback fonts */
  font-weight: bold;
  color: #000000;
  display: flex;
  flex-direction: column;
  align-items: center;
  /* Center align the text */
  justify-content: center;
  height: 55px;
  line-height: 1;
}

.custom-font .event-font {
  font-family: 'Quantify', Arial, sans-serif;
  /* Added fallback fonts */
  font-size: 0.6em;
  font-weight: normal;
  color: #000000;
  text-align: center;
}

/* Additional styling for logo alignment */
.navbar-brand {
  display: flex;
  align-items: center;
  height: 55px;
}

.navbar-brand img {
  margin-right: 10px;
  height: 55px;
}

/* Apply the custom font to the footer */
.footer-font {
  font-family: 'Quantify', Arial, sans-serif;
  /* Added fallback fonts */
  font-weight: bold;
  display: flex;
  flex-direction: column;
  align-items: center;
  /* Center align the text */
  justify-content: center;
  color: #ffffff;
  /* Ensure the text color is white */
}

.footer-font .text-light.h5 {
  font-weight: bold;
  font-size: 1.25rem;
  margin: 0;
  text-align: center;
  /* Center align the text */
}

.footer-font .event-font {
  font-family: 'Quantify', Arial, sans-serif;
  /* Added fallback fonts */
  font-size: 0.6em;
  font-weight: normal;
  color: #ffffff;
  text-align: center;
}

.filter-btn:focus {
  outline: none;
  box-shadow: none;
  /* This removes the box shadow, if there is one */
}

.filter-btn:focus {
  outline: 2px solid #000000;
  /* Replace #yourColor with the color you want */
  box-shadow: 0 0 5px #232333;
  /* Optional: Add a box-shadow for a different effect */
}


.social-icon {
  width: 36px;
  height: 36.5px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -10px;
  /* Adjust this value to align with other icons */
}

/* Main Nav */

#main_nav .navbar-brand.h1 {
  margin-bottom: 0 !important;
}

#main_nav .nav-item .nav-link:hover {
  color: #fff;
}

.navbar-nav {
  flex-direction: row;
  gap: 15px;
  /* Adjust this value to reduce/increase spacing */
  width: 100%;
  justify-content: center;
}

.navbar-nav .nav-item .nav-link {
  background-color: rgba(255, 255, 255, 0.7) !important;
  /* Semi-transparent background */
  color: black !important;
  /* Black text */
  border-radius: 15px;
  /* Rounded corners */
  padding: 5px 15px;
  /* Padding for better appearance */
  backdrop-filter: blur(10px);
  /* Background blur */
  -webkit-backdrop-filter: blur(10px);
  /* Background blur for Safari */
  border: 1px solid rgba(255, 255, 255, 0.3);
  /* Optional border for better separation */
  font-family: 'Open Sans', sans-serif !important;  /* Ensure 'Open Sans' is applied */
  font-weight: 400;  /* Adjust weight to match the Home page */
  font-size: 16px;    /* Adjust the size as needed */
}

/* Custom Glassy Translucent Navbar Style */
.glassy-navbar {
  background: rgba(255, 255, 255, 0.7) !important;
  /* Semi-transparent background */
  backdrop-filter: blur(10px);
  /* Background blur */
  -webkit-backdrop-filter: blur(10px);
  /* Background blur for Safari */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  /* Subtle shadow */
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  /* Optional border for better separation */
}

.container.d-flex.justify-content-between.align-items-center {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.container .navbar-brand {
  margin-right: auto;
  /* Ensure the brand logo stays to the left */
}

/* Additional styling for better alignment and spacing */
.navbar-nav .nav-item {
  display: flex;
  align-items: center;
}

.navbar-nav .nav-item .nav-link {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Custom CSS for Darkening the Background */
#index_banner {
  background-image: url('./../img/banner-bg-01.avif'), url('./../img/banner-bg-01.webp'), url('./../img/banner-bg-01.jpg');
  background-position: center center;
  background-size: cover;
  height: calc(100vh - 70px);
  /* Adjust the height by subtracting the navbar height */
  width: 100%;
  position: relative;
  /* Ensure it's relative so the particles can be positioned correctly */
}

#index_banner::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  /* Adjust the opacity value as needed (0.5 = 50% dark) */
  z-index: 1;
  /* Ensure it's above the background but below the content */
}

/* Ensure particles cover the entire section */
#particles-js {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  /* Ensure it's above the background but below the content */
}

/* Ensure content is above the particles */
.banner-content {
  position: relative;
  z-index: 2;
  /* Ensure content is above the particles */
}

#index_banner .carousel-item {
  min-height: calc(100vh - 70px) !important;
  /* Adjusting height */
}

#index_banner .carousel-control-prev i,
#index_banner .carousel-control-next i {
  color: #ffffff !important;
  text-decoration: none;
  font-size: 4em;
}

#index_banner .carousel-inner {
  height: calc(100vh - 70px) !important;
  /* Ensure it fits the adjusted height */
}

#index_banner .carousel-indicators li,
#index_banner .carousel-indicators.active {
  background-color: #ffffff !important;
}

.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, 1) 0%, rgba(255, 255, 255, 0) 33.333%, rgb(0, 0, 0) 66.666%, rgba(255, 255, 255, 0) 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/banner-bg-02.avif'), url('./../img/banner-bg-02.webp'), url('./../img/banner-bg-02.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: #232333;
  transition: 1s;
  cursor: pointer;
}

.partner-wap:hover {
  background-color: #b1b3f5;
}

.why-us {
  background: rgb(239, 239, 253);
  background: -moz-linear-gradient(0deg, rgba(239, 239, 253, 1) 50%, rgba(255, 255, 255, 1) 50%);
  background: -webkit-linear-gradient(0deg, rgba(239, 239, 253, 1) 50%, rgba(255, 255, 255, 1) 50%);
  background: linear-gradient(0deg, #E0E0E0 50%, rgba(255, 255, 255, 1) 50%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#efeffd", endColorstr="#ffffff", GradientType=1);
}

.team-member-img {
  transition-duration: 0.15s;
}

.team-member:hover .team-member-img {
  padding: 10px !important;
}

/* Work */
/* Single Work */
#work_single_banner {
  background-image: url('./../img/banner-bg-02.avif'), url('./../img/banner-bg-02.webp'), url('./../img/banner-bg-02.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: #bfbfbf !important;
  transition-duration: 0.15s;
}

/* Monochrome Theme Adjustments */
/* Primary Colors */
.text-primary {
  color: #FFFFFF !important;
  /* White */
}

.btn-primary,
.btn-outline-primary {
  background-color: #000000 !important;
  /* Black */
  border-color: #000000 !important;
  color: #FFFFFF !important;
  /* White text */
}

.btn-primary:hover,
.btn-outline-primary:hover {
  background-color: #333333 !important;
  /* Dark Gray */
  border-color: #333333 !important;
  color: #FFFFFF !important;
  /* White text */
}

/* Secondary Colors */
.text-secondary {
  color: #000000 !important;
  /* Black */
}

.bg-secondary {
  background-color: #333333 !important;
  /* Dark Gray */
}

/* Tertiary Colors */
.text-tertiary {
  color: #4F4F4F !important;
  /* Medium Gray */
}

.bg-tertiary {
  background-color: #4F4F4F !important;
  /* Medium Gray */
}

/* Background Colors */
.bg-light {
  background-color: #E0E0E0 !important;
  /* Light Gray */
}

.bg-white {
  background-color: #FFFFFF !important;
  /* White */
}

.bg-dark {
  background-color: #000000 !important;
  /* Black */
}

/* Text Colors */
.text-dark {
  color: #000000 !important;
  /* Black */
}

.text-light {
  color: #FFFFFF !important;
  /* White */
}
  /* Success, Warning, Error Colors */
  .text-success {
    color: #27AE60 !important;
    /* Green for success */
  }

  .text-warning {
    color: #F2C94C !important;
    /* Yellow for warning */
  }

  .text-error {
    color: #EB5757 !important;
    /* Red for error */

    /* Navigation Bar Text Color */
    .navbar .nav-link,
    .navbar .navbar-brand {
      color: #FFFFFF !important;
      /* White */
    }

    .navbar .nav-link:hover,
    .navbar .nav-link:focus,
    .navbar .nav-link:active {
      color: #E0E0E0 !important;
      /* Light Gray */
    }

    /* Hero Section Text Color */
    .banner-content h1,
    .banner-content h3,
    .banner-content p {
      color: #FFFFFF !important;
      /* White */
    }

    /* Specific Styling for h1 in Hero Section */
    #index_banner .carousel-item h1 {
      color: #FFFFFF !important;
      /* Ensure h1 is White */
    }

    /* Arrows in Hero Section */
    .banner-content .btn-outline-light {
      color: #000000 !important;
      /* White */
      border-color: #000000 !important;
      /* White */
    }

    .banner-content .btn-outline-light:hover,
    .banner-content .btn-outline-light:focus {
      background-color: #333333 !important;
      /* Dark Gray */
      border-color: #333333 !important;
      /* Dark Gray */
    }

    .banner-content .btn-secondary {
      background-color: #000000 !important;
      /* Black */
      border-color: #000000 !important;
      /* Black */
    }

    .banner-content .btn-secondary:hover,
    .banner-content .btn-secondary:focus {
      background-color: #333333 !important;
      /* Dark Gray */
      border-color: #333333 !important;
      /* Dark Gray */
    }

    /* Ensure all links and buttons adhere to the new color scheme */
    a {
      color: #FFFFFF !important;
      /* White */
    }

    a:hover,
    a:focus {
      color: #E0E0E0 !important;
      /* Light Gray */
    }

    .btn {
      color: #FFFFFF !important;
      /* White */
    }

    .btn:hover,
    .btn:focus {
      color: #E0E0E0 !important;
      /* Light Gray */
    }

    /* Ensure all text elements are visible */
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    span,
    div,
    li,
    ul,
    ol,
    a {
      color: #FFFFFF !important;
      /* White for all text elements */
    }

    /* Adjust background colors to ensure contrast */
    body,
    .bg-light,
    .bg-white {
      background-color: #000000 !important;
      /* Black */
    }

    .navbar,
    .footer {
      background-color: #000000 !important;
      /* Black */
    }

    /* Specific styles for the hero section button */
    #main_nav .btn-outline-primary {
      color: #FFFFFF !important;
      /* White text */
      border-color: #000000 !important;
      /* Black border */
    }

    #main_nav .btn-outline-primary:hover,
    #main_nav .btn-outline-primary:focus {
      color: #FFFFFF !important;
      /* White text */
      background-color: #333333 !important;
      /* Dark Gray background */
      border-color: #333333 !important;
      /* Dark Gray border */
    }


    /* ---- reset ---- */
    body {
      margin: 0;
      font: normal 75% Arial, Helvetica, sans-serif;
    }

    canvas {
      display: block;
      vertical-align: bottom;
    }

    /* ---- particles.js container ---- */
    #particles-js {
      position: absolute;
      width: 100%;
      height: 100%;
      background-color: #ffffff;
      background-image: url("");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: 50% 50%;
    }

    /* ---- stats.js ---- */
    .count-particles {
      background: #000022;
      position: absolute;
      top: 48px;
      left: 0;
      width: 80px;
      color: #13E8E9;
      font-size: .8em;
      text-align: left;
      text-indent: 4px;
      line-height: 14px;
      padding-bottom: 2px;
      font-family: Helvetica, Arial, sans-serif;
      font-weight: bold;
    }

    .js-count-particles {
      font-size: 1.1em;
    }

    #stats,
    .count-particles {
      -webkit-user-select: none;
      margin-top: 5px;
      margin-left: 5px;
    }

    #stats {
      border-radius: 3px 3px 0 0;
      overflow: hidden;
    }

    .count-particles {
      border-radius: 0 0 3px 3px;
    }