@tailwind base;
@tailwind components;
@tailwind utilities;


.bg{
    background-image: url("download.jpg");
}
nav {
  background-color: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(15px); /* For Safari and older browsers */
  backdrop-filter: blur(15px);        /* For modern browsers */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

    body {
        margin: 0;
        padding: 0;
    }
    .hero-section {
        position: relative;
        background: url('your-image-url.jpg') center/cover no-repeat; /* Replace with your image URL */
        height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
      }
    .video-bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: -1; /* Place the video behind the content */
    }
    .navbar {
        backdrop-filter: blur(10px); /* Apply blur effect */
        background-color: rgba(0, 0, 0, 0.3); /* Semi-transparent black background */
        position: absolute;
        width: 100%;
        z-index: 10; /* Ensure the navbar stays above the video */
    }
    .navbar-dark .navbar-nav .nav-link {
        
        font-size: 22px;
        padding-inline: 20px;
    }
    .hero-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5); /* Subtle overlay */
        z-index: 1;
      }
    .hero-content {
        position: relative;
        z-index: 2;
        text-align: center;
        max-width: 800px;
        margin: 0 auto;
      }
    .hero-content h1 {
        font-size: 5rem;
        font-weight: 700;
        margin-bottom: 20px;
        line-height: 1.2;
      }
      .hero-content p {
        font-size: 1.2rem;
        letter-spacing: 2px;
        text-transform: uppercase;
        margin-bottom: 15px;
        color: black;
        font-weight: 600;
      }
      .btn-custom {
        display: inline-block;
        padding: 12px 24px;
        font-size: 1.1rem;
        border: 2px solid transparent;
        border-radius: 5px;
        text-transform: uppercase;
        font-weight: 600;
        transition: all 0.3s ease-in-out;
        width: 40%;
        margin: 5px;
        background-color: #111; /* Black or near-black background */
        color: #fff; /* White text */
    }
    
    .btn-custom:hover {
        background-color: #2c2c2c; /* Slightly lighter black for hover */
        color: #f9f9f9; /* Cream-white text on hover */
        border: 2px solid #f9f9f9; /* Cream-white border */
    }
    
  
    
@media (max-width: 578px) {
    .hero-content h1 {
        font-size: 3rem;
        font-weight: 700;
        margin-bottom: 20px;
        line-height: 1.2;
      }
      .btn-custom {
       width: 70%;
    }
    
    .btn-custom:hover {
        background-color: #2c2c2c; /* Slightly lighter black for hover */
        color: #f9f9f9; /* Cream-white text on hover */
        border: 2px solid #f9f9f9; /* Cream-white border */
    }
    .about-section img{
        height: 200px;
    }
}
@media (min-width: 579px) and (max-width: 746px) {
    .hero-content h1 {
        font-size: 3rem;
        font-weight: 700;
        margin-bottom: 20px;
        line-height: 1.2;
      }
      .btn-custom {
       width: 70%;
    }
}
    

    .about-section {
        background-color: #f8f9fa; /* Light grey background */
    }
    .about-section h2 {
        color: #333;
    }
    .about-section p {
        font-size: 1.1rem;
        line-height: 1.2;
    }
    .about-section img {
        border-radius: 10px;
        transition: transform 0.3s ease-in-out;
    }
    .about-section img:hover {
        transform: scale(1.05); /* Slight zoom effect on hover */
    }
    .custom-img-height {
        height: auto; /* Default height is based on the image's natural aspect ratio */
        width: 100%;
    }
    

    
    @media (min-width: 768px) {
        .custom-img-height {
            height: 350px; /* Height on medium screens */
        }
    }
    
    @media (min-width: 992px) {
        .custom-img-height {
            height: 400px; /* Height on larger screens */
        }
    }
    
   
    .btn-outline-secondary:hover {
        background-color: #6c757d;
        color: #fff;
    }
    .services-section {
        background-color: #111; /* Dark theme */
        color: #fff;
        padding-top: 50px; /* Add some top padding for spacing */
        padding-bottom: 50px; /* Add some bottom padding for spacing */
    }
    
    .service-card {
        background-color: #222;
        padding: 1.5rem;
        border-radius: 8px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        transition: transform 0.3s ease;
        margin-bottom: 20px;
    }
    .card-icon {
        font-size: 2.5rem;  /* Large size */
        color: #0854ce;     
        margin-bottom: 1rem;
        display: inline-block;
    }
    
    .service-card:hover {
        transform: translateY(-5px);
    }
    
    .large-card {
        height: 200px; /* Larger height */
    }
    
    .small-card {
        height: 150px; /* Smaller height */
    }
    
    .service-card h5 {
        margin-bottom: 0.5rem;
        font-size: 1.5rem; /* Increased font size */
        color: #ffffff; /* Highlight color for titles */
    }
    
    .service-card p {
        font-size: 1rem; /* Increased font size */
        color: #bbb;
    }
    
    .services-heading {
        font-size: 2.5rem; /* Increase heading font size */
        margin-bottom: 1.5rem;
        font-weight: bold;
        color: #fff;
    }
    
    .services-section p {
        font-size: 1rem; /* Increase paragraph font size */
        margin-bottom: 1.5rem;
        color: #bbb;
    }
    
    @media (max-width: 767px) {
        .services-heading {
            font-size: 2rem;
            text-align: center !important;
        }
        .services-button{
            float: none !important;
        }
    
        .services-section p {
            font-size: 0.9rem; /* Adjust paragraph size for smaller screens */
        }
        
    
        .col-md-4 {
            text-align: center; /* Center text on small screens */
        }
    
        .col-md-8 {
            text-align: center; /* Center service cards on small screens */
        }
    }
    
    @media (min-width: 768px) {
        .services-heading {
            font-size: 3rem; /* Larger heading on medium and above */
        }
    }
    
    @media (min-width: 1200px) {
        .services-heading {
            font-size: 3.5rem; /* Larger heading on extra-large screens */
        }
    }
    
    
    .btn-primary {
        background-color: #111; /* Black or near-black background */
        border: none;
        color: #fff; /* White text */
        padding: 0.75rem 1.5rem;
        border-radius: 4px;
        text-transform: uppercase;
        font-weight: bold;
        transition: background-color 0.3s ease, color 0.3s ease;
    }
    
    .btn-primary:hover {
        background-color: #2c2c2c; /* Slightly lighter black for hover */
        color: #f9f9f9; /* Cream-white text on hover */
    }
    .services-button {
        background-color: #2c2c2c; /* Black or near-black background */
        border: none;
        color: #fff; /* White text */
        padding: 0.75rem 1.5rem;
        border-radius: 4px;
        text-transform: uppercase;
        font-weight: bold;
        transition: background-color 0.3s ease, color 0.3s ease;
    }
    
    .services-button:hover {
        background-color: #2c2c2c; /* Slightly lighter black for hover */
        color: #f9f9f9; /* Cream-white text on hover */
        border: 2px solid #f9f9f9; /* Cream-white border */
    }
    
    /* Key Features Section */
.key-features {
    background-color: #111; /* Dark background for the section */
    color: #fff;
    padding-top: 50px;
    padding-bottom: 50px;
}

.key-features .section-title {
    font-size: 2.5rem;
    font-weight: bold;
    color: #ffffff;
    margin-bottom: 3rem;
    text-align: center;
}

.key-feature-card {
    background-color: #222;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-align: center;
    color: #fff; /* Text color inside cards */
}

/* Hover effects */
.key-feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.key-feature-icon {
    font-size: 3rem;
    color: #0854ce; 
    margin-bottom: 1rem;
}

.key-feature-title {
    font-size: 1.5rem;
    color: white; /* Golden color for titles */
    font-weight: bold;
    margin-bottom: 1rem;
}

.key-feature-card p {
    font-size: 1rem;
    color: #bbb; /* Light gray color for text */
}

/* Ensure larger cards have the same height */
.key-feature-large-card {
    min-height: 150px;
}

/* Ensure smaller cards have the same height */
.key-feature-small-card {
    min-height: 100px; /* Consistent smaller height */
}

@media (max-width: 767px) {
    .key-features .section-title {
        font-size: 2rem; /* Adjust for smaller screens */
    }

    .key-feature-card {
        padding: 1.5rem;
    }

    .key-feature-title {
        font-size: 1.25rem; /* Adjust title size */
    }

    .key-feature-card p {
        font-size: 0.9rem; /* Adjust paragraph font size */
    }

    /* Make sure the min-heights of cards are still respected on smaller screens */
    .key-feature-large-card, .key-feature-small-card {
        min-height: unset; /* Let the content define the height on mobile */
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .key-features .section-title {
        font-size: 2.2rem; /* Slightly larger title on medium screens */
    }
}
.cta-section {
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    width: 100%;
    margin: 20px 0;
  }
  
  .cta-content p {
    font-size: 1.2rem;
    color: #333333;
    margin: 0;
  }
  
  .cta-button .btn {
    background-color: #000000;
    color: #ffffff;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 1rem;
    transition: background-color 0.3s ease;
  }
  
  .cta-button .btn:hover {
    background-color: #333333;
  }
  
  @media (max-width: 768px) {
    .cta-section {
      flex-direction: column;
      text-align: center;
    }
  
    .cta-content, .cta-button {
      margin: 10px 0;
    }
  }
/* Modern Box Shadow for the entire section */
.modern-shadow {
    background-color: black;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2), 0 4px 6px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
  }
  
  /* Section padding adjustments */
  .container-fluid {
    padding: 2rem 3rem;
  }
  
  /* Button styling */
  .btn-dark {
    background-color: #343a40;
    color: white;
    border: none;
    transition: all 0.3s ease-in-out;
  }
  
  .btn-dark:hover {
    background-color: #212529;
    color: white;
    transform: translateY(-3px);
  }
  
  /* Text adjustments for better contrast */
  h3 {
    font-size: 2rem;
    color: #343a40;
  }
  
  p {
    color: #5a5a5a;
  }
  
  @media (max-width: 768px) {
    h3 {
      font-size: 1.6rem;
    }
  
    p {
      font-size: 0.9rem;
    }
  }
  .about-banner {
    height: 80vh;
    background-image: url("assets/elevator.avif");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative; /* For positioning the overlay */
}

.about-banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Adjust opacity for desired brightness effect */
    z-index: 1; /* Ensure the overlay is above the image */
}

.about-banner h1,
.about-banner p {
    position: relative; /* To place the content above the overlay */
    z-index: 2; /* Ensure content is above the overlay */
}

    .services-banner {
      height: 80vh;
      background-image: url("assets/services.jpg");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: left;
      position: relative; 
      filter: grayscale(100%);
  }
  
  .services-banner::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5); /* Adjust opacity for brightness */
      z-index: 1; /* Place the overlay above the image */
  }
  
  .services-banner h1, 
  .services-banner p {
      position: relative; /* Keep text above the overlay */
      z-index: 2;
  }


    .contact-banner {
      height: 80vh;
      background-image: url("assets/contact-bg.jpg");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: left;
      position: relative; 
      filter: grayscale(50%);
  }
  
  .contact-banner::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5); /* Adjust opacity for brightness */
      z-index: 1; /* Place the overlay above the image */
  }
  
  .contact-banner h1, 
  .contact-banner p {
      position: relative; /* Keep text above the overlay */
      z-index: 2;
  }
  
    .about-title {
        color: white;
        font-size: 6rem; /* Large font size for bigger screens */
        font-weight: bold;
        text-transform: uppercase;
    }

    @media (min-width: 577px) and (max-width:922px) {
        .about-title {
            font-size: 4rem; /* Smaller font size for mobile screens */
        }
    }

    @media (max-width: 576px) {
        .about-title {
            font-size: 2rem; /* Further adjust for very small screens */
        }
    }


    .company-overview {
        background-color: #0d1117;
      }
    
      .company-overview h2 {
        font-size: 3.5rem;
        font-weight: 700;
        color: wheat;
        text-transform: uppercase;
      }
    
      .company-overview p {
        font-size: 1.2rem;
        color: #ccc;
        line-height: 1.2;
      }
    
      .company-overview .img-fluid {

        border-radius: 15px;
        height: 350px;
        width: 100%;
    }
    
      /* Hover Effect for Image */
      .company-overview .img-fluid:hover {
        transform: scale(1.05);
        transition: all 0.3s ease-in-out;
      }
    
      /* Additional spacing for smaller screens */
      @media (max-width: 767px) {
        .company-overview h2 {
          font-size: 2rem;
        }
    
        .company-overview p {
          font-size: 1rem;
        }
      } 
  
  
  
   


    .why-choose-us {
        background-color: black;
        color: #fff;
        padding: 50px 0;
      }
  
      .why-choose-us h2 {
        font-size: 2rem;
        color: #3e75c9;
        margin-bottom: 20px;
      }
      .chose{
        height: 480px;
        width: 100%;
      }
  
      .feature-box {
        text-align: center;
        padding: 20px;
        background-color: #222;
        border-radius: 10px;
        transition: transform 0.3s, box-shadow 0.3s;
      }
  
      .feature-box:hover {
        transform: translateY(-10px);
        box-shadow: 0 10px 15px rgba(0, 0, 0, 0.3);
      }
  
      .feature-box i {
        font-size: 2rem;
        color: #0854ce;
        margin-bottom: 15px;
      }
  
      .feature-box h5 {
        font-size: 1.2rem;
        margin: 10px 0 0;
      }


      .mission-vision {
        background-color: #0d1117;
        padding: 60px 0;
        color: #fff; /* Text color set to white */
      }
      
      .section-title {
        text-align: center;
        margin-bottom: 40px;
      }
  
      .section-title h2 {
        font-size: 2.5rem;
        font-weight: bold;
        color: #fff;
      }
  
      .section-title p {
        font-size: 1.1rem;
        color: #ccc; /* Light grey text for subheading */
        margin-top: 10px;
      }
  
      .mission, .vision {
        background-color: black;
        padding: 30px;
        border-radius: 10px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        text-align: center;
        transition: transform 0.3s, box-shadow 0.3s;
        color: #333; /* Black text for content */
        box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.356) ;
      }
  
      .mission:hover, .vision:hover {
        transform: translateY(-10px);
        box-shadow: 0 10px 20px rgba(255, 255, 255, 0.2);
      }
  
      .mission i, .vision i {
        font-size: 3rem;
        color: #0854ce;
        margin-bottom: 20px;
      }
  
      .mission h3, .vision h3 {
        font-size: 1.5rem;
        font-weight: bold;
        color: white; /* Dark text color for titles */
      }
  
      .mission p, .vision p {
        font-size: 1rem;
        color: white; /* Dark grey text color for description */
        margin-top: 15px;
      }
  
      @media (max-width: 767px) {
        .mission, .vision {
          margin-bottom: 30px;
        }
      }

      .modernization-section {
        background-color: #0d1117; /* Dark background */
      }
      
      .modernization-section h2 {
        font-size: 2rem; /* Adjust heading size */
        font-weight: 700; /* Bold heading */
      }
      
      .modernization-section p {
        font-size: 1.1rem; /* Slightly larger paragraph text */
        line-height: 1.2; /* Increase line spacing for readability */
        margin-top: 1rem;
      }
      
      .modernization-section video {
        border-radius: 8px; /* Optional: Adds rounded corners to the video */
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2); /* Optional: Adds a subtle shadow */
      }
      .contact-section {
        background-color: #0d1117;
      }
      
      .contact-section h2 {
        color: #ffffff;
      }
      
      .contact-section .form-label {
        font-size: 1rem;
        font-weight: 500;
        float: left;
      }
      
      .contact-section .form-control {
        background-color: #1b1f24;
        color: #ffffff;
        border: 1px solid #3a3f47;
      }
      
      .contact-section .form-control:focus {
        border-color: #5865f2;
        box-shadow: none;
      }
      
      .contact-section .btn-primary {
        background-color: #5865f2;
        border-color: #5865f2;
      }
      
      .contact-section .btn-primary:hover {
        background-color: #4753c5;
        border-color: #4753c5;
      }


   
    ::placeholder {
        color: #fff !important; /* White placeholder text */
        opacity: 1 !important; /* Ensure full opacity for visibility */
    }

    /* Webkit-specific placeholder styling */
    input::placeholder, 
    textarea::placeholder {
        color: #fff; /* White for all inputs */
        opacity: 1;
    }

    /* Form inputs */
    .form-control {
        background-color: #0d1117;
        color: #fff;
        border: 1px solid #444;
        border-radius: 4px;
        padding: 10px;
        font-size: 14px;
        transition: all 0.3s ease;
    }

    .form-control:focus {
        border-color: #006eff; /* Blue border on focus */
        box-shadow: 0 0 5px rgba(0, 110, 255, 0.5);
        outline: none;
        background-color: #161b22; /* Slightly lighter for better focus indication */
    }

    



    /* Form container enhancements */
    form {
        margin-top: 20px;
        animation: fadeIn 0.8s ease-in-out;
    }

    /* Animation for form appearance */
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(20px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    @media (max-width: 476px){
      .modernization-section h2{
        font-size: 30px;
      }
    }