    /* --- General Styles --- */
    :root {
      /* New Palette */
      --primary-blue: #2563EB;
      /* Vibrant Royal Blue */
      --primary-dark: #1E40AF;
      /* Deep Blue */
      --accent-orange: #F59E0B;
      /* Energetic Orange */
      --accent-orange-dark: #EA580C;
      /* For Gradients */
      --accent-teal: #06B6D4;
      /* Fresh Teal */

      /* Neutrals */
      --text-dark: #0F172A;
      /* Dark Slate */
      --text-body: #475569;
      /* Medium Slate */
      --bg-light: #F8FAFC;
      --bg-white: #FFFFFF;

      --navbar-height: 80px;
    }

    body {
      font-family: 'Noto Sans', sans-serif;
      color: var(--text-body);
      line-height: 1.6;
      overflow-x: hidden;
      background-color: var(--bg-white);
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      font-family: 'Noto Sans', sans-serif;
      font-weight: 700;
      color: var(--text-dark);
    }

    /* --- Scroll Offset Fix --- */
    section,
    .consultant-section,
    footer {
      scroll-margin-top: var(--navbar-height);
    }

    /* --- Utility Class for Colors --- */
    .text-primary-dark {
      color: var(--primary-dark) !important;
    }

    .text-accent-teal {
      color: var(--accent-teal) !important;
    }

    /* --- Navbar --- */
    .navbar {
      background-color: #FFFFFF;
      /* White Background */
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
      padding-top: 0.5rem;
      padding-bottom: 0.5rem;
    }

    .navbar-brand {
      display: flex;
      align-items: center;
      margin-right: 2rem;
      font-family: 'Noto Sans', sans-serif;
    }

    /* Nav Links - Dark Grey */
    .nav-link {
      color: var(--text-dark) !important;
      font-weight: 600;
      transition: all 0.3s;
      font-size: 1.05rem;
      font-family: 'Noto Sans', sans-serif;
    }

    .nav-link:hover,
    .nav-link:focus {
      color: var(--primary-blue) !important;
      /* Blue on hover */
      transform: translateY(-1px);
    }

    /* --- DROPDOWN FIXES FOR OVERFLOW --- */
    .dropdown-menu {
      border: none;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
      border-radius: 8px;
      margin-top: 10px;

      /* Force a reasonable width */
      min-width: 280px;
      max-width: 320px;
    }

    /* On mobile, allow it to be full width of container if needed */
    @media (max-width: 991px) {
      .dropdown-menu {
        width: 100%;
        max-width: 100%;
        box-shadow: none;
        border-left: 2px solid var(--primary-blue);
        background-color: #f9fafb;
      }
    }

    /* On Desktop: If menu is too far right, align it to the right edge */
    @media (min-width: 992px) {

      /* This class will be added to the last item or specific items if needed */
      .dropdown-menu-end-custom {
        right: 0;
        left: auto;
      }
    }

    .dropdown-item {
      font-weight: 500;
      color: var(--text-body);
      padding: 0.75rem 1.5rem;
      /* Increased padding for better touch target */
      transition: all 0.2s;

      /* CRITICAL: Force wrapping */
      white-space: normal !important;
      word-wrap: break-word;
      overflow-wrap: break-word;
    }

    .dropdown-item:hover {
      background-color: var(--bg-light);
      color: var(--primary-blue);
      transform: translateX(5px);
    }

    /* --- Social Icons --- */
    .social-nav a {
      color: var(--text-dark);
      /* Default: Dark Grey */
      transition: all 0.3s ease;
      display: flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
    }

    /* Specific Brand Hover Colors */
    .social-nav a.fb:hover {
      color: #1877F2 !important;
      /* Facebook Blue */
      transform: translateY(-2px);
    }

    .social-nav a.ig:hover {
      color: #e930a2cc !important;
      /* Requested Purple */
      transform: translateY(-2px);
    }

    .social-nav a.li:hover {
      color: #0077b5 !important;
      /* LinkedIn Blue */
      transform: translateY(-2px);
    }

    /* Navbar Toggler (Mobile) - Dark */
    .navbar-toggler {
      border-color: var(--text-dark);
      color: var(--text-dark);
    }

    .navbar-toggler-icon {
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(15, 23, 42, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }

    /* --- Hero Section --- */
    .hero {
      position: relative;
      /* Reduced bottom padding to close gap */
      padding: 8rem 0 3rem;
      overflow: hidden;
      color: white;
    }

    .hero-bg-slider {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0;
    }

    .hero-bg-slider .carousel-inner,
    .hero-bg-slider .carousel-item {
      height: 100%;
    }

    .hero-bg-slider img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    /* UPDATED HERO OVERLAY */
    .hero-overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      /* Neutral Black, 50% opacity. No blue tint. */
      background: rgba(0, 0, 0, 0.5);
      z-index: 1;
    }

    .hero .container {
      position: relative;
      z-index: 2;
    }

    .hero-title {
      font-size: 3.5rem;
      font-weight: 700;
      color: #FFFFFF;
      margin-bottom: 1.5rem;
      text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    }

    .hero-subtitle {
      font-size: 1.25rem;
      color: #E2E8F0;
      margin-bottom: 3rem;
      max-width: 600px;
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
    }

    /* Buttons */
    .btn-custom-primary {
      /* Accent Gradient for Action Buttons */
      background: linear-gradient(135deg, var(--accent-orange), var(--accent-orange-dark));
      color: white;
      padding: 1rem 2.5rem;
      border-radius: 8px;
      text-decoration: none;
      font-weight: 600;
      transition: all 0.3s;
      border: none;
      display: inline-block;
      text-align: center;
      box-shadow: 0 4px 6px rgba(245, 158, 11, 0.3);
    }

    .btn-custom-primary:hover {
      background: linear-gradient(135deg, var(--accent-orange-dark), var(--accent-orange));
      color: white;
      transform: translateY(-2px);
      box-shadow: 0 6px 12px rgba(245, 158, 11, 0.4);
    }

    .btn-custom-secondary {
      background: transparent;
      color: white;
      padding: 1rem 2.5rem;
      border-radius: 8px;
      text-decoration: none;
      font-weight: 600;
      border: 2px solid white;
      transition: all 0.3s;
      display: inline-block;
      text-align: center;
    }

    .btn-custom-secondary:hover {
      background: white;
      color: var(--primary-blue);
    }

    .btn-custom-secondary-dark {
      background: transparent;
      color: var(--text-dark);
      padding: 1rem 2.5rem;
      border-radius: 8px;
      text-decoration: none;
      font-weight: 600;
      border: 2px solid var(--text-dark);
      transition: all 0.3s;
      display: inline-block;
      text-align: center;
    }

    .btn-custom-secondary-dark:hover {
      background: var(--text-dark);
      color: white;
    }


    /* --- Services --- */

    /* Reduced padding from 6rem to 2rem */
    .section {
      padding: 2rem 0;
    }

    .bg-light {
      background-color: var(--bg-light) !important;
    }

    .section-label {
      color: var(--accent-teal);
      /* Teal for freshness */
      font-size: 0.85rem;
      font-weight: 700;
      letter-spacing: 2px;
      text-transform: uppercase;
      margin-bottom: 0.5rem;
      text-align: center;
    }

    .section-title {
      text-align: center;
      font-size: 2.5rem;
      margin-bottom: 0.5rem;
      color: var(--text-dark);
    }

    .section-description {
      text-align: center;
      color: var(--text-body);
      max-width: 700px;
      /* Reduced bottom margin */
      margin: 0 auto 3rem auto;
    }

    .service-card {
      background: white;
      border-radius: 12px;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
      transition: all 0.3s;
      border: 1px solid #E2E8F0;
      overflow: hidden;
      height: 100%;
      display: flex;
      flex-direction: column;
      position: relative;
    }

    .service-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
      border-color: var(--primary-blue);
    }

    .service-img-wrapper {
      height: 180px;
      overflow: hidden;
      position: relative;
    }

    .service-img-wrapper img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.5s;
    }

    .service-card:hover .service-img-wrapper img {
      transform: scale(1.05);
    }

    /* FIXED ICON POSITIONING - Accent Gradient */
    .service-icon-badge {
      position: absolute;
      top: 155px;
      right: 20px;
      width: 50px;
      height: 50px;
      background: linear-gradient(135deg, var(--accent-orange), var(--accent-orange-dark));
      color: white;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
      z-index: 10;
    }

    .service-body {
      padding: 2rem 1.5rem 2rem 1.5rem;
      flex-grow: 1;
      display: flex;
      flex-direction: column;
    }

    .service-title {
      font-size: 1.25rem;
      font-weight: 700;
      margin-bottom: 1rem;
      color: var(--text-dark);
      padding-right: 40px;
    }

    .service-text {
      font-size: 0.95rem;
      color: var(--text-body);
    }

    /* --- Consultant Section --- */
    .consultant-section {
      background-color: var(--bg-white);
      padding: 6rem 0;
    }

    .profile-card {
      background: #0f172a;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
      text-align: center;
      height: 100%;
      display: flex;
      flex-direction: column;
    }

    .profile-img-container {
      background: #e2e8f0;
      flex-grow: 1;
      position: relative;
      min-height: 350px;
    }

    .profile-img-container img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: top;
      position: absolute;
      top: 0;
      left: 0;
    }

    .profile-content {
      padding: 2rem 1.5rem;
      background: #0f172a;
      color: white;
      border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    .profile-name {
      font-size: 1.5rem;
      font-weight: 700;
      margin-bottom: 0.5rem;
      color: #fff;
    }

    .profile-title {
      color: var(--accent-teal);
      font-size: 0.85rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 1px;
      margin-bottom: 0.25rem;
    }

    .profile-subtitle {
      font-size: 0.85rem;
      color: #94a3b8;
    }

    .bio-card {
      background: white;
      border-radius: 12px;
      padding: 3rem;
      color: var(--text-dark);
      border: 1px solid #E2E8F0;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
      height: 100%;
    }

    .bio-heading {
      font-size: 1.25rem;
      font-weight: 700;
      margin-bottom: 1rem;
      color: var(--text-dark);
      border-bottom: 2px solid #e2e8f0;
      padding-bottom: 0.5rem;
      display: inline-block;
    }

    .custom-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .custom-list li {
      margin-bottom: 0.75rem;
      display: flex;
      align-items: start;
      font-size: 0.95rem;
      color: var(--text-body);
    }

    .custom-list li i {
      color: var(--accent-teal);
      margin-right: 10px;
      margin-top: 4px;
      flex-shrink: 0;
    }

    .pub-box {
      background-color: var(--bg-light);
      border-left: 4px solid var(--accent-orange);
      padding: 1.5rem;
      border-radius: 0 8px 8px 0;
      margin-top: 2rem;
    }

    /* --- Map --- */
    .map-container iframe {
      width: 100%;
      height: 450px;
      border: 0;
      filter: grayscale(20%);
      border-radius: 12px;
    }

    /* --- Footer --- */
    .footer {
      background: #0F172A;
      /* Match Neutral Dark */
      padding: 4rem 0 2rem;
      color: #94A3B8;
    }

    .footer h3 {
      color: white;
      font-size: 1.1rem;
      margin-bottom: 1.5rem;
    }

    .footer a {
      color: #94A3B8;
      text-decoration: none;
      transition: color 0.3s;
    }

    .footer a:hover {
      color: var(--accent-teal);
    }

    .footer-icon {
      width: 25px;
      text-align: center;
      margin-right: 10px;
      display: inline-block;
      color: var(--accent-teal);
    }

    /* MOBILE FIXES */
    @media (max-width: 992px) {
      .service-icon-badge {
        top: 155px;
        right: 20px;
      }
    }

    @media (max-width: 768px) {
      .hero-title {
        font-size: 2.5rem;
      }

      .navbar-collapse {
        background-color: #FFFFFF;
        /* White mobile menu */
        padding: 1rem;
        border-radius: 8px;
        margin-top: 10px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        border-top: 2px solid var(--primary-blue);
      }

      .bio-card {
        padding: 2rem 1.5rem;
      }
    }