/* Custom styles to supplement Bootstrap */
.logo{
  width: 150px !important;
  height: auto;
  margin: 0 auto;
  display: block;
  transition: transform 0.3s ease;
}
.feature-heading {
    color: #212529;
    font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 1.5rem;
  }
  
  .dark-mode .feature-heading {
    color: #f8f9fa;
  }
  
  :root {
    --primary-color: #0d6efd;
    --secondary-color: #6c757d;
    --success-color: #198754;
    --info-color: #0dcaf0;
    --warning-color: #ffc107;
    --danger-color: #dc3545;
    --bs-dark-rgb: 33, 37, 41;
  }
  
  /* Dark mode styles */
  .dark-mode {
    --bs-body-color: #f8f9fa;
    --bs-body-bg: #212529;
    --bs-card-bg: #343a40;
    --bs-border-color: #495057;
    color: #f8f9fa;
    background-color: #212529;
  }
  
  .dark-mode .navbar {
    background-color: #343a40;
  }
  
  .dark-mode .navbar .nav-link,
  .dark-mode .navbar-brand {
    color: #f8f9fa;
  }
  
  .dark-mode .navbar .nav-link:hover {
    color: #0d6efd;
  }
  
  .dark-mode .header-solid {
    background-color: #343a40;
  }
  
  .dark-mode .card {
    background-color: #343a40;
    border-color: #495057;
    color: #f8f9fa;
  }
  
  .dark-mode .text-dark,
  .dark-mode .display-4,
  .dark-mode h1,
  .dark-mode h2,
  .dark-mode h3,
  .dark-mode h4,
  .dark-mode h5,
  .dark-mode h6,
  .dark-mode p,
  .dark-mode .lead {
    color: #f8f9fa !important;
  }
  
  .dark-mode .bg-light {
    background-color: #343a40 !important;
  }
  
  .dark-mode .btn-outline-primary {
    color: #f8f9fa;
    border-color: #0d6efd;
  }
  
  .dark-mode .navbar-toggler-icon {
    filter: invert(1);
  }
  
  .dark-mode h1,
  .dark-mode h2,
  .dark-mode h3,
  .dark-mode h4,
  .dark-mode h5,
  .dark-mode h6,
  .dark-mode .display-4,
  .dark-mode p,
  .dark-mode .feature-heading,
  .dark-mode .lead {
    color: #f8f9fa !important;
  }
  
  .dark-mode .text-dark,
  .dark-mode .display-4 {
    color: #f8f9fa !important;
  }
  
  body {
    transition: background-color 0.3s, color 0.3s;
  }
  
  /* Animation classes */
  .animate-fade-in {
    animation: fadeIn 1s ease-in-out;
  }
  
  .animate-fade-up {
    animation: fadeUp 1s ease-out;
  }
  
  .animate-scale {
    animation: scale 0.5s ease-out;
  }
  
  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }
  
  @keyframes fadeUp {
    from { 
      opacity: 0;
      transform: translateY(20px);
    }
    to { 
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  @keyframes scale {
    from { transform: scale(0.95); }
    to { transform: scale(1); }
  }
  
  /* Floating icon animation */
  .floating-icon {
    animation: float 3s ease-in-out infinite;
  }
  
  @keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
  }
  
  /* Progress bar */
  .progress-top {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background-color: var(--primary-color);
    z-index: 9999;
  }
  
  /* Card hover effect */
  .card {
    transition: transform 0.3s, box-shadow 0.3s;
  }
  
  .card {
    border: none !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
  }
  
  .card:hover {
    transform: translateY(-5px) scale(1.01);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
  }
  
  .card .badge {
    font-size: 0.85rem;
    letter-spacing: 0.5px;
    transform: translateY(0);
    transition: all 0.3s ease;
  }
  
  .card:hover .badge {
    transform: translateY(-2px);
  }
  
  .floating-icon {
    animation: floatingIcon 3s ease-in-out infinite;
  }
  
  @keyframes floatingIcon {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
  }
  
  .bg-gradient-primary,
  [style*="background: linear-gradient"] {
    opacity: 0.9;
    transition: opacity 0.3s ease;
  }
  
  .card:hover .bg-gradient-primary,
  .card:hover [style*="background: linear-gradient"] {
    opacity: 1;
  }
  
  .badge {
    padding: 0.5rem 1rem;
    font-weight: 500;
    letter-spacing: 0.5px;
  }
  
  .badge.bg-light {
    background-color: rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
  }
  
  .dark-mode .badge.bg-light {
    background-color: rgba(0, 0, 0, 0.2) !important;
    border-color: rgba(255, 255, 255, 0.1);
  }
  
  .project-icon {
    font-size: 2.5rem;
    transition: transform 0.3s ease;
  }
  
  .card:hover .project-icon {
    transform: scale(1.1);
  }
  
  /* Header styles */
  .header-transparent {
    background-color: transparent;
    transition: all 0.3s;
  }
  
  .header-solid {
    background-color: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: all 0.3s;
  }
  
  .dark-mode .header-solid {
    background-color: #212529;
  }
  
  /* Feature sections */
  .feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
  }
  
  /* Dashboard visual elements */
  .dashboard-chart-bar {
    height: 100px;
    background: linear-gradient(to top, #e9ecef, #f8f9fa);
    border-radius: 4px;
  }
  
  .dark-mode .dashboard-chart-bar {
    background: linear-gradient(to top, #343a40, #495057);
  }
  
  .chart-bar {
    display: inline-block;
    width: 100%;
    border-radius: 4px 4px 0 0;
    background-color: var(--primary-color);
  }
  
  .chart-circle {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    border: 8px solid #e9ecef;
    margin: 0 auto;
  }
  
  .dark-mode .chart-circle {
    border-color: #343a40;
  }
  
  .chart-circle::before {
    content: "";
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
    border-radius: 50%;
    border: 8px solid transparent;
    border-top-color: var(--primary-color);
    transform: rotate(45deg);
  }
  
  /* Product highlight gradients */
  .bg-gradient-blue {
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.1), rgba(105, 81, 255, 0.1));
  }
  
  .bg-gradient-purple {
    background: linear-gradient(135deg, rgba(111, 66, 193, 0.1), rgba(232, 62, 140, 0.1));
  }
  
  .bg-gradient-teal {
    background: linear-gradient(135deg, rgba(32, 201, 151, 0.1), rgba(13, 202, 240, 0.1));
  }
  
  .dark-mode .bg-gradient-blue {
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.2), rgba(105, 81, 255, 0.2));
  }
  
  .dark-mode .bg-gradient-purple {
    background: linear-gradient(135deg, rgba(111, 66, 193, 0.2), rgba(232, 62, 140, 0.2));
  }
  
  .dark-mode .bg-gradient-teal {
    background: linear-gradient(135deg, rgba(32, 201, 151, 0.2), rgba(13, 202, 240, 0.2));
  }
  
  /* Custom text colors */
  .text-fasttrax {
    color: #0d6efd;
  }
  
  .text-data-analysis {
    color: #6f42c1;
  }
  
  .text-verisys {
    color: #20c997;
  }
  
  /* Project Cards */
  .project-card {
    backdrop-filter: blur(10px);
    transform: translateY(0);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.95);
  }
  
  .dark-mode .project-card {
    background: rgba(52, 58, 64, 0.95);
  }
  
  .project-card:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
  }
  
  .project-card .project-icon-wrapper {
    border-radius: 16px 0 0 16px;
    overflow: hidden;
  }
  
  .project-card .badge {
    transition: all 0.3s ease;
    transform: translateY(0);
  }
  
  .project-card:hover .badge {
    transform: translateY(-2px);
  }
  
  .project-icon-bg {
    opacity: 0.9;
    transition: opacity 0.3s ease;
  }
  
  .project-card:hover .project-icon-bg {
    opacity: 1;
  }
  
  .project-icon {
    font-size: 2.5rem;
    transition: all 0.4s ease;
  }
  
  .project-card:hover .project-icon {
    transform: scale(1.1) rotate(-10deg);
  }
  
  @media (max-width: 767.98px) {
    .project-card .project-icon-wrapper {
      border-radius: 16px 16px 0 0;
      min-height: 200px;
    }
  }
  
  .project-icon-wrapper {
    transform: scale(1);
    transition: transform 0.5s ease;
  }
  
  .project-card:hover .project-icon-wrapper {
    transform: scale(1.1);
  }
  
  .project-icon-bg {
    background: linear-gradient(135deg, var(--primary-color), #60a5fa);
    opacity: 0.9;
    transition: opacity 0.3s ease;
  }
  
  .project-card:hover .project-icon-bg {
    opacity: 1;
  }
  
  .project-icon {
    color: #ffffff;
    font-size: 2.5rem;
    z-index: 1;
    transition: all 0.3s ease;
  }
  
  .project-card:hover .project-icon {
    transform: scale(1.1) rotate(-10deg);
  }
  
  .project-card .badge {
    transform: translateY(0);
    transition: all 0.3s ease;
  }
  
  .project-card:hover .badge {
    transform: translateY(-2px);
  }
  
  .bg-gradient-primary {
    background: linear-gradient(45deg, #0d6efd, #60a5fa);
  }
  
  .bg-gradient-purple {
    background: linear-gradient(45deg, #6f42c1, #9c55f5);
  }
  
  .bg-gradient-teal {
    background: linear-gradient(45deg, #20c997, #46e8b9);
  }
  
  .bg-gradient-orange {
    background: linear-gradient(45deg, #fd7e14, #ffb555);
  }
  
  .bg-gradient-red {
    background: linear-gradient(45deg, #dc3545, #ff6b7d);
  }
  
  .bg-gradient-cyan {
    background: linear-gradient(45deg, #0dcaf0, #6bdfff);
  }
  
  .dark-mode .project-card {
    background-color: #343a40;
    border-color: #495057;
  }
  
  .dark-mode .project-card .text-dark {
    color: #f8f9fa !important;
  }
  
  /* Footer */
  footer {
    background-color: #f8f9fa;
  }
  
  .dark-mode footer {
    background-color: #343a40;
    color: #f8f9fa;
  }
  
  .dark-mode footer a,
  .dark-mode footer .text-gray-400,
  .dark-mode .text-muted {
    color: #f8f9fa !important;
  }
  
  .dark-mode footer a:hover {
    color: #0d6efd !important;
  }
  
  /* Navbar adjustments */
  .navbar-toggler:focus {
    box-shadow: none;
  }
  
  .navbar-brand i {
    margin-right: 0.5rem;
  }
  
  @media (max-width: 992px) {
    .navbar-collapse {
      margin-top: 1rem;
    }
  }