  /* =================================================================
          1. GLOBAL & LAYOUT
          ================================================================= */
       /* Smooth Scrolling */
       html {
           scroll-behavior: smooth;
           scroll-padding-top: 100px;
       }

       /* General Body Styles */
       body {
           padding-top: 80px;
           background-color: #f7f9fc;
           font-family: 'Segoe UI', sans-serif;
           color: #333;
       }

       /* Skip Link Styles */
       .visually-hidden-focusable:active,
       .visually-hidden-focusable:focus {
           position: static;
           width: auto;
           height: auto;
           margin: 0;
           overflow: visible;
           clip: auto;
           white-space: normal;
       }

       /* =================================================================
          2. NAVIGATION (NAVBAR & OFFCANVAS)
          ================================================================= */
       /* Main Navbar Styles */
       .navbar {
           backdrop-filter: blur(12px);
           background-color: rgba(255, 255, 255, 0.85);
           transition: all 0.3s ease-in-out;
           padding: 20px 0;
           border-bottom: none;
       }

       .navbar.scrolled {
           background-color: rgba(255, 255, 255, 0.95);
           box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
           padding: 10px 0;
       }

       .navbar-brand {
           font-weight: 750;
           font-size: 1.40rem;
           color: #274D76 !important;
           text-decoration: none;
       }

       .navbar-brand img {
           height: 40px;
           object-fit: contain;
       }

       /* Nav Links & Buttons Common Styles */
       .nav-link,
       .btn-rounded {
           font-weight: 500;
           transition: all 0.25s;
       }

       .nav-link {
           color: #333;
           margin: 0 10px;
           text-decoration: none;
       }

       .nav-link:hover,
       .nav-link:active,
       .nav-link:focus {
           color: #4661E6;
           transform: translateY(-2px);
           text-decoration: none;
       }

       .btn-rounded {
           border-radius: 50px;
           padding: 8px 22px;
           font-size: 1rem;
       }

       .btn-outline-primary.btn-rounded {
           color: #0d6efd;
           border-color: #0d6efd;
       }
       .btn-outline-primary.btn-rounded:hover {
           background-color: #0d6efd;
           color: #fff;
           box-shadow: 0 0 10px rgba(70, 97, 230, 0.4);
       }

       /* Navbar Toggler (Hamburger) Styles */
       .navbar-toggler {
           border: none !important;
           box-shadow: none !important;
           padding: 0.25rem 0.5rem;
       }

       .navbar-toggler-icon-custom {
           display: inline-block;
           width: 24px;
           height: 18px;
           position: relative;
           cursor: pointer;
           transition: transform 0.3s ease-in-out;
       }

       .navbar-toggler-icon-custom span {
           position: absolute;
           height: 3px;
           width: 100%;
           background: #333;
           left: 0;
           transition: 0.3s ease;
           border-radius: 2px;
       }

       .navbar-toggler-icon-custom span:nth-child(1) { top: 0; }
       .navbar-toggler-icon-custom span:nth-child(2) { top: 7px; }
       .navbar-toggler-icon-custom span:nth-child(3) { top: 14px; }

       .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon-custom span:nth-child(1) {
           top: 7px;
           transform: rotate(45deg);
       }
       .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon-custom span:nth-child(2) {
           opacity: 0;
       }
       .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon-custom span:nth-child(3) {
           top: 7px;
           transform: rotate(-45deg);
       }

       /* Offcanvas Menu Styles */
       .offcanvas-end {
           width: 260px;
           background-color: #fff;
           box-shadow: none;
       }

       .offcanvas a {
           font-weight: 500;
           padding: 10px 0;
           color: #333;
           text-decoration: none;
           display: block;
       }

       .offcanvas a:hover,
       .offcanvas a:active,
       .offcanvas a:focus {
           color: #4661E6;
           background-color: transparent;
           text-decoration: none;
       }

       /* =================================================================
          3. PAGE HEADER & BREADCRUMBS
          ================================================================= */
       .breadcrumb {
           background-color: transparent;
           margin-bottom: 0;
           padding: 1rem 0;
       }
       .breadcrumb-item a { color: #0d6efd; text-decoration: none; }
       .breadcrumb-item a:hover { color: #0a58ca; }
       .breadcrumb-item.active { color: #6c757d; }

       .page-header {
           background-color: #f7f9fc;
           padding: 2rem 0;
           border-bottom: none;
       }
       .page-header h1 {
           font-weight: 700;
           color: #1e293b;
           font-size: 2.5rem;
           margin-bottom: 0;
       }

       /* =================================================================
          4. SEARCH & CATEGORY GRID
          ================================================================= */
       .search-section {
           background-color: #fff;
           padding-top: 3rem;
           padding-bottom: 3rem;
       }

       .search-input-group {
           border: 2px solid #0d6efd;
           border-radius: 0.5rem;
           overflow: hidden;
           box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
       }
       .search-input-group .form-control {
           border: none;
           box-shadow: none;
           padding: 0.75rem 1.5rem;
           font-size: 1.1rem;
       }
       .search-input-group .input-group-text {
           background-color: #fff;
           border: none;
           color: #0d6efd;
           font-size: 1.2rem;
           padding-left: 1.5rem;
       }

       /* Category Grid Styles */
       .category-link {
           display: block;
           padding: 1rem;
           border-radius: 0.5rem;
           text-decoration: none;
           color: #343a40;
           background-color: #f8f9fa;
           border: 1px solid #e9ecef;
           font-weight: 500;
           transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s;
           font-size: 0.9rem;
           white-space: nowrap;
           overflow: hidden;
           text-overflow: ellipsis;
       }
       .category-link:hover {
           transform: translateY(-4px);
           box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
           background-color: #fff;
           color: #0d6efd;
           border-color: #0d6efd;
       }
       .category-link i {
           margin-right: 0.75rem;
           color: #0d6efd;
           width: 20px;
           text-align: center;
       }

       /* "Show More" Button Styles */
       #showMoreBtn {
           font-weight: 600;
           text-decoration: none;
           color: #0d6efd;
           border: 2px solid transparent;
           padding: 8px 16px;
           border-radius: 50px;
           transition: all 0.3s ease;
       }
       #showMoreBtn:hover { background-color: #e7f1ff; }
       #showMoreBtn:focus { box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);}
       #showMoreIcon {
           display: inline-block;
           transition: transform 0.3s ease;
           margin-left: 5px;
       }
       #showMoreBtn[aria-expanded="true"] #showMoreIcon {
           transform: rotate(180deg);
       }

       /* =================================================================
          5. IT & SOFTWARE RESUME LIST
          ================================================================= */
       #it-software-resumes {
           background-color: #f7f9fc;
       }
       .resume-list-wrapper {
           background-color: #fff;
           padding: 2.5rem;
           border-radius: 12px;
           box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
       }

       .resume-list {
           column-count: 4;
           column-gap: 2rem;
           padding-left: 0;
           list-style: none;
           margin-bottom: 0;
       }

       .resume-list li {
           break-inside: avoid; /* Prevents list items from breaking across columns */
       }

       .resume-list li a {
           display: block;
           padding: 0.35rem 0.5rem;
           color: #333;
           text-decoration: none;
           transition: color 0.2s, transform 0.2s, background-color 0.2s;
           border-radius: 6px;
           font-size: 0.95rem;
       }

       .resume-list li a:hover {
           color: #0d6efd;
           background-color: #f0f4ff;
           transform: translateX(5px);
       }

       /* Responsive adjustments for the columns */
       @media (max-width: 1200px) {
           .resume-list { column-count: 3; }
       }
       @media (max-width: 992px) {
           .resume-list { column-count: 2; }
       }
       @media (max-width: 576px) {
           .resume-list { column-count: 1; }
           .resume-list-wrapper { padding: 1.5rem; }
       }

       /* =================================================================
          6. FOOTER
          ================================================================= */
       .rs-footer {
           padding: 60px 0 30px 0;
           font-family: system-ui, sans-serif;
           background-color: #1A222F;
           color: #ffffff;
       }
       .rs-footer a {
           text-decoration: none;
           color: #adb5bd;
       }
       .rs-footer a:hover {
           color: #ffffff;
       }
       .rs-footer-bottom {
           border-top: 1px solid #495057;
           margin-top: 40px;
           padding-top: 20px;
           font-size: 14px;
           color: #ffffff;
       }
       .rs-footer-bottom a {
           color: #ffffff;
       }
       .social-icons a i {
           transition: color 0.2s ease;
       }
       .social-icons a:hover i {
           color: #0d6efd !important;
       }

       /* Accordion items for mobile footer */
       .accordion-item {
           background-color: #1A222F;
           border: none;
           margin-bottom: 5px;
           border-radius: 0.25rem;
           box-shadow: none !important;
       }
       .accordion-item:last-of-type { margin-bottom: 0; }
       .accordion-header { background-color: #1A222F; }
       .rs-accordion-button {
           position: relative;
           background-color: transparent !important;
           color: #ffffff !important;
           font-weight: 600;
           padding-left: 1.5rem;
           border: none !important;
           box-shadow: none !important;
           outline: none !important;
           transition: none !important;
           width: 100%;
           text-align: left;
       }
       .rs-accordion-button:hover,
       .rs-accordion-button:active,
       .rs-accordion-button:not(.collapsed) {
           background-color: transparent !important;
           color: #ffffff !important;
           border: none !important;
           box-shadow: none !important;
           outline: none !important;
       }
       .rs-accordion-button::after {
           content: "\f078";
           font-family: "Font Awesome 6 Free";
           font-weight: 900;
           position: absolute;
           right: 1rem;
           top: 50%;
           transform: translateY(-50%) rotate(0deg);
           transition: transform 0.3s ease;
           background-image: none;
           width: auto;
           height: auto;
       }
       .rs-accordion-button:not(.collapsed)::after {
           transform: translateY(-50%) rotate(-180deg);
           background-image: none;
       }
       .accordion-body {
           background-color: #1A222F;
           color: #adb5bd;
           padding-bottom: 0.5rem;
       }

       /* Responsive adjustments for footer */
       @media (min-width: 768px) { .rs-mobile-footer { display: none; } }
       @media (max-width: 767.98px) { .rs-desktop-footer { display: none; } }
       
       /* =================================================================
          7. UTILITIES (SCROLL-TO-TOP)
          ================================================================= */
       #scrollToTopBtn {
           position: fixed;
           bottom: 30px;
           right: 30px;
           z-index: 99;
           border: none;
           outline: none;
           background-color: rgba(13, 110, 253, 0.8);
           color: white;
           cursor: pointer;
           width: 45px;
           height: 45px;
           border-radius: 50%;
           font-size: 18px;
           box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
           transition: background-color 0.3s, opacity 0.3s, transform 0.3s;
           opacity: 0;
           display: flex;
           justify-content: center;
           align-items: center;
           transform: scale(0.8);
       }
       #scrollToTopBtn.show {
           opacity: 1;
           transform: scale(1);
           display: flex;
       }
       #scrollToTopBtn:hover {
           background-color: rgba(13, 110, 253, 1);
       }

       /* =================================================================
          8. ADDED: AUTO-SUGGESTION STYLES
          ================================================================= */
       #suggestionsWrapper {
           /* Position is handled by Bootstrap classes and inline style */
           max-height: 280px; /* Limit height and allow scrolling */
           overflow-y: auto;
           /* Uses Bootstrap's .list-group for base styling */
           box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
           border-top: none; /* Avoid double border with the input group */
           border-radius: 0 0 0.5rem 0.5rem;
       }
       /* Bootstrap's .list-group-item-action handles hover states */