* { margin: 0; padding: 0; box-sizing: border-box; }

html {
  /* This prevents the "Scrollbar Shift" */
  scrollbar-gutter: stable;
}

body {
  background: #000;
  color: white;
  font-family: 'Arial', sans-serif;
  
  /* REMOVE 'overflow: hidden' and 'height: 100vh' from here. 
     We will handle that specifically for the Home page only. */
  min-height: 100vh;
  position: relative;
  overflow-x: hidden; /* Prevents horizontal scroll only */
}

/* --- HEADER (Unified for ALL pages) --- */
header {
  position: fixed;
  top: 0; left: 0; right: 0;
  /* EXACT padding for all pages to prevent jumping */
  padding: 30px 60px; 
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1000; /* Increased Z-index to stay on top */
  backdrop-filter: blur(10px); /* Increased blur for better look */
  background: rgba(0, 0, 0, 0.4);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* Subtle line */
}

.logo {
  font-size: 28px;
  font-weight: 900;
  letter-spacing: -1px;
}
.logo span { color: #1165d4; }

nav a {
  color: white;
  text-decoration: none;
  margin: 0 20px;
  font-weight: 600;
  font-size: 16px;
  transition: 0.3s;
}
nav a:hover, nav a.active { color: #1165d4; text-shadow: 0 0 20px #1165d4; }

/* --- HOME PAGE SPECIFIC FIX --- */
/* Add class="home-page" to the <body> tag of your index.html 
   to keep the satellite animation working perfectly there. */
body.home-page {
    overflow: hidden;
    height: 100vh;
}

/* --- MOBILE RESPONSIVE --- */
@media (max-width: 768px) {
  header { padding: 20px 30px; }
  nav a { margin: 0 10px; font-size: 14px; }
}
  
    .hero {
      height: 100vh;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      gap: 30px;
    }

    h1 {
      font-size: 9vw;
      font-weight: 900;
      letter-spacing: -0.4vw;
      text-transform: uppercase;
      white-space: nowrap;
      color: #f4bd09;
      text-shadow: 0 0 90px rgba(251, 226, 3, 1);
      
      background-image: url('satellite.png');
      background-size: 400px 400px;
      background-position: center;
      background-repeat: no-repeat;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: rgba(237, 234, 224, 0.24);
      animation: reflect 18s linear infinite;
    }


@keyframes reflect {
  0%  { background-position: 30px 210px; opacity: 0.3; text-shadow: 0 0 90px rgba(251, 226, 3, 0.4); } 
 8%  { background-position: 30px 100px; opacity: 0.6; text-shadow: 0 0 90px rgba(251, 226, 3, 0.6); } 
 16%  { background-position: 80px 0px; opacity: 0.8; text-shadow: 0 0 90px rgba(251, 226, 3, 0.8);} 
 24%  { background-position: 150px -150px; opacity: 1; text-shadow: 0 0 90px rgba(251, 226, 3, 1);} 
 32%  { background-position: 250px -300px; opacity: 0.9; text-shadow: 0 0 90px rgba(251, 226, 3, 0.9); } 
 40%  { background-position: 300px -450px; opacity: 0.8; text-shadow: 0 0 90px rgba(251, 226, 3, 0.8);} 
 48%  { background-position: 820px -400px; opacity: 0.7; text-shadow: 0 0 90px rgba(251, 226, 3, 0.7);} 
 56%  { background-position: 800px -300px; opacity: 0.8; text-shadow: 0 0 90px rgba(251, 226, 3, 0.8);} 
 64%  { background-position: 770px -100px; opacity: 1; text-shadow: 0 0 90px rgba(251, 226, 3, 1);} 
  72%  { background-position: 670px 100px; opacity: 1; text-shadow: 0 0 90px rgba(251, 226, 3, 1);}
  80%  { background-position: 570px 200px; opacity: 0.5; text-shadow: 0 0 90px rgba(251, 226, 3, 0.9); }  
88%  { background-position: 500px 300px; opacity: 0; text-shadow: 0 0 90px rgba(251, 226, 3, 0.5);} 
98%  { background-position: 400px 200px; opacity: 0.2; text-shadow: 0 0 90px rgba(251, 226, 3, 0.3); } 
100%  { background-position: 30px 210px; opacity: 0.3; text-shadow: 0 0 90px rgba(251, 226, 3, 0.4);} 

 

}
    .tagline {
      font-size: 24px;
      opacity: 0.9;
      letter-spacing: 1px;
    }

    .cta {
      padding: 18px 50px;
      border: 2px solid #1165d4;
      color: #1165d4;
      background: transparent;
      border-radius: 50px;
      font-weight: bold;
      text-decoration: none;
      transition: 0.4s;
    }
    .cta:hover {
      background: #1165d4;
      color: black;
      box-shadow: 0 0 40px #1165d4;
    }

 
    .satellite {
      position: fixed;
      top: 50%;
      left: 50%;
      width: 240px;
      height: 240px;
      object-fit: contain;
      filter: drop-shadow(0 0 60px #c8c9c5);
      pointer-events: none;
      z-index: 2;
      animation: orbit 18s linear infinite;
    }

    @keyframes orbit {
      0%   { transform: translate(-50%, -50%) rotate(0deg) translateX(-330px) rotate(0deg); }
      100% { transform: translate(-50%, -50%) rotate(360deg) translateX(-330px) rotate(-360deg); }
    }


    footer {
      position: relative;
      bottom: 0; left: 0; right: 0;
      padding: 20px;
      text-align: center;
      font-size: 14px;
      opacity: 0.7;
      z-index: 100;
      background: rgba(0, 0, 0, 0.6);
      backdrop-filter: blur(10px);
    }

    @media (max-width: 768px) {
      header { padding: 20px 30px; flex-direction: column; gap: 15px; }
      nav a { margin: 0 12px; font-size: 14px; }
      h1 { font-size: 11vw; }
      .satellite { width: 160px; height: 160px; }
      @keyframes orbit {
        0%   { transform: translate(-50%, -50%) rotate(0deg) translateX(200px); }
        100% { transform: translate(-50%, -50%) rotate(360deg) translateX(200px); }
      }
      .tagline { font-size: 18px; }
    }


    .jobs-container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 40px;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
      gap: 30px;
      margin-top: 60px;
    }
    .job-card {
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(52, 102, 228, 0.2);
      border-radius: 16px;
      padding: 30px;
      backdrop-filter: blur(10px);
      transition: all 0.4s ease;
    }
    .job-card:hover {
      transform: translateY(-12px);
      border-color: #1165d4;
      box-shadow: 0 20px 40px rgba(49, 120, 202, 0.15);
    }
    .job-title {
      font-size: 24px;
      font-weight: 900;
      color: #1165d4;
      margin-bottom: 12px;
    }
    .job-location {
      color: #aaa;
      font-size: 14px;
      margin-bottom: 20px;
    }
    .job-desc {
      line-height: 1.8;
      margin-bottom: 20px;
      opacity: 0.9;
    }
    .apply-btn {
      background: transparent;
      color: #1165d4;
      border: 2px solid #1165d4;
      padding: 12px 32px;
      border-radius: 50px;
      font-weight: bold;
      cursor: pointer;
      transition: 0.4s;
    }
    .apply-btn:hover {
      background: #1165d4;
      color: #000;
    }
    @media (max-width: 768px) {
      .jobs-container { grid-template-columns: 1fr; padding: 0 20px; }
    }

    .logo img{
         position: absolute;
         height:50px;
         top:27px;
         z-index: 10;
         left: 255px;
    }
    