* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: Arial, sans-serif;
}

body {
background: #f9f9f9;
color: #333;
}

/* HEADER */
header {
background: #fff;
padding: 15px 20px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
display: flex;
justify-content: space-between;
align-items: center;
}

    .logo {
      font-size: 1.5rem;
      font-weight: bold;
    }

    .logo span {
      color: #2a4d8f;
    }

    nav {
      display: flex;
      gap: 20px;
    }

    nav a {
      text-decoration: none;
      color: #333;
      font-weight: 500;
    }

    .hamburger {
      display: none;
      font-size: 24px;
      cursor: pointer;
    }

    @media (max-width: 768px) {
      .hamburger { display: block; }
      nav {
        position: absolute;
        top: 60px;
        left: 0;
        width: 100%;
        background-color: #fff;
        flex-direction: column;
        gap: 10px;
        display: none;
        padding: 15px;
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
      }
      nav.active { display: flex; }
    }

    /* CONTAINER */
    .jobs-container {
      max-width: 1100px;
      margin: 40px auto;
      padding: 20px;
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    }

    h1 {
      text-align: center;
      font-size: 28px;
      margin-bottom: 25px;
    }

    /* SEARCH BAR */
    .search-bar {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 20px;
      justify-content: center;
    }

    .search-bar input, .search-bar select {
      padding: 10px 14px;
      font-size: 15px;
      border: 1px solid #ddd;
      border-radius: 6px;
      outline: none;
    }

    .search-bar input:focus {
      border-color: #0077ff;
    }

    /* TABLE */
    table {
      width: 100%;
      border-collapse: collapse;
      font-size: 15px;
    }

    thead {
      background: #2a4d8f;
      color: #fff;
    }

    th, td {
      padding: 14px 12px;
      border: 1px solid #ddd;
      text-align: left;
    }

    th {
      font-weight: 600;
    }

    tr:nth-child(even) {
      background: #f7f9fc;
    }

    tr:hover {
      background: #eef5ff;
    }

    .job-link {
      color: #2a4d8f;
      text-decoration: none;
      font-weight: 500;
    }

    .job-link:hover {
      text-decoration: underline;
      color: #1e3a8a;
    }


      /* RESPONSIVE TABLE */
.table-container {
  width: 100%;
  overflow-x: auto;              /* ✅ enables left-right swipe */
  -webkit-overflow-scrolling: touch; /* ✅ smooth iOS scroll */
}

.jobs-container table {
  min-width: 600px;  /* ✅ keeps full table structure on phone */
}

.jobs-container th, 
.jobs-container td {
  white-space: nowrap; /* ✅ prevents text from breaking */
}

    /* ===== Footer Styles ===== */
    .site-footer {
      background: #0f172a;
      color: #ffffff;
      padding: 50px 20px 20px;
    }

    .footer-container {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
      gap: 30px;
      max-width: 1200px;
      margin: auto;
    }

    .footer-column h3 {
      margin-bottom: 15px;
      font-size: 18px;
      color: #ffcb05;
    }

    .footer-column p,
    .footer-column ul {
      font-size: 14px;
      line-height: 1.6;
    }

    .footer-column ul {
      list-style: none;
      padding: 0;
    }

    .footer-column ul li {
      margin-bottom: 8px;
    }

    .footer-column ul li a {
      color: #fff;
      text-decoration: none;
      transition: color 0.3s;
    }

    .footer-column ul li a:hover {
      color: #ffcb05;
    }

    .social-links a {
      margin-right: 10px;
      display: inline-block;
    }

    .social-links img {
      width: 24px;
      height: 24px;
      filter: brightness(0) invert(1);
      transition: transform 0.3s;
    }

    .social-links a:hover img {
      transform: scale(1.2);
    }

    .footer-bottom {
      text-align: center;
      margin-top: 30px;
      font-size: 13px;
      border-top: 1px solid rgba(255, 255, 255, 0.2);
      padding-top: 15px;
    }