/* Hero Section */


/* Careers CTA Section */
.careers-cta {
  padding: 100px 0;
  background: radial-gradient(circle at top left, #1f77e5, transparent 60%), linear-gradient(135deg, #041c3a, #063a7b);
  color: #ffffff;
}

/* Eyebrow */
.careers-eyebrow {
  display: inline-block;
  font-size: 0.8rem;
  letter-spacing: 1.5px;
  color: #ffffff;
  margin-bottom: 12px;
  font-weight: 600;
}

/* Title */
.careers-title {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.careers-title span {
  color: #ffffff;
}

/* Text */
.careers-text {
  font-size: 1rem;
  color: #cbd5f5;
  max-width: 520px;
  line-height: 1.7;
  margin-bottom: 30px;
}

/* Actions */
.careers-actions .btn-primary {
  padding: 12px 26px;
  border-radius: 8px;
  font-weight: 600;
}

.careers-link {
  color: #ffffff;
  text-decoration: none;
  font-weight: 500;
}

.careers-link i {
  margin-left: 6px;
  transition: transform 0.3s ease;
}

.careers-link:hover i {
  transform: translateX(4px);
}

/* Image */
.careers-image-wrapper {
  width: 360px;
  height: 420px;
  margin: 0 auto;
  clip-path: polygon(
    50% 0%,
    100% 25%,
    100% 75%,
    50% 100%,
    0% 75%,
    0% 25%
  );
  overflow: hidden;
  /* box-shadow: 0 30px 80px rgb(255 255 255); */
}

.careers-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Responsive */
@media (max-width: 768px) {
  .careers-title {
    font-size: 2.2rem;
  }

  .careers-image-wrapper {
    width: 280px;
    height: 340px;
  }
}



/* Interview Process */
.interview-process {
  /* padding: 100px 0; */
  padding-top: 100px;
  background-color: #ffffff;
}

/* Left content */

.process-div{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.process-label {
  display: inline-block;
  font-size: 0.8rem;
  letter-spacing: 1.5px;
  color: #000000;
  font-weight: 600;
  /* margin-bottom: 12px; */
}

.process-title {
  font-size: 2.8rem;
  font-weight: 700;
  color: #063a7b;
  margin-bottom: 20px;
}

.process-text {
  font-size: 1rem;
  color: #555;
  line-height: 1.7;
  max-width: 420px;
}

/* Steps */
.process-steps {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.process-step {
  display: flex;
  align-items: flex-start;
  background: hsl(213deg 91% 25% / 10%);
  /* border-radius: 14px; */
  padding: 25px;
  gap: 20px;
  /* justify-content: center; */
  /* align-items: center; */
  border: 1px solid #063a7b;
}

/* Step number */
.step-number {
  min-width: 42px;
  height: 42px;
  background: linear-gradient(135deg, #104c96, #1f77e5);
  color: #ffffff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1rem;
}

/* Content */
.step-content h5 {
  font-size: 1.05rem;
  font-weight: 600;
  margin-bottom: 6px;
  color: #222;
}

.step-content p {
  font-size: 0.9rem;
  color: #555;
  line-height: 1.6;
  margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
  .process-title {
    font-size: 2.1rem;
  }

  .process-text {
    max-width: 100%;
  }
}

/* Mission Section */
.mission-section {
            /* background-color: #F8F7F4; */ /* Matches the off-white/cream color */
            position: relative; /* Needed for positioning the gradient orb */
            overflow: hidden; /* Ensures the blur doesn't scroll sideways */
            padding: 100px 0;
            /* min-height: 60vh; */ /* Give it some vertical breathing room */
            display: flex;
            align-items: center;
        }

        /* 2. The Gradient Glow Orb */
        .gradient-orb {
            position: absolute;
            top: 50%;
            right: -10%; /* Positions it off-screen to the right */
            transform: translateY(-50%);
            width: 490px;
            height: 130px;
            background: #063a7b;
            filter: blur(110px); /* This creates the soft, diffuse look */
            z-index: 0; /* Puts it behind the text */
            pointer-events: none; /* Allows clicking through it */
        }

        /* 3. The "We're hiring!" Badge */
        .custom-badge {
            display: inline-block;
            border: 1.5px solid #111;
            border-radius: 50px;
            padding: 8px 20px;
            font-weight: 600;
            font-size: 0.9rem;
            color: #111;
            margin-bottom: 25px;
            background-color: transparent;
        }

        /* 4. Typography Tweaks */
        .mission-content {
            position: relative;
            z-index: 1; /* Ensures text sits ON TOP of the gradient */
        }

        h1.display-text {
            font-weight: 600; /* Bold but not too heavy */
            color: #0F1115; /* Dark charcoal */
            font-size: 3.5rem;
            letter-spacing: -1px; /* Tighter tracking like the image */
            margin-bottom: 25px;
        }

        p.lead-text {
            color: #333;
            font-size: 1.15rem;
            line-height: 1.6;
            max-width: 600px; /* Prevents text from stretching too wide */
        }

        /* Mobile Adjustment */
        @media (max-width: 768px) {
            h1.display-text {
                font-size: 2.5rem;
            }
            .gradient-orb {
                width: 300px;
                height: 300px;
                right: -50px;
            }
        }


        /* Vacancy Section */


        /* 2. Job Card Container */
        .job-card {
            border-bottom: 1px solid #dcdcdc; /* The thin divider line */
            padding: 40px 0;
            transition: opacity 0.3s;
        }
        
        /* Remove border from the last item if desired */
        .job-card:last-child {
            border-bottom: none;
        }

        /* 3. Typography */
        .job-title {
            font-size: 1.75rem;
            font-weight: 600;
            margin-bottom: 10px;
            color: #111;
        }

        .job-desc {
            font-size: 1.1rem;
            color: #444;
            margin-bottom: 20px;
            max-width: 80%; /* Keeps text line length comfortable */
        }

        /* 4. The Pill Tags */
        .job-tag {
            display: inline-flex;
            align-items: center;
            gap: 8px; /* Space between icon and text */
            border: 1.5px solid #111;
            border-radius: 50px;
            padding: 6px 16px;
            font-size: 0.85rem;
            font-weight: 600;
            margin-right: 10px;
            margin-bottom: 10px;
            background: transparent;
        }

        .job-tag svg {
            width: 16px;
            height: 16px;
        }

        /* 5. The 'Apply' Link */
        .apply-link {
            text-decoration: none;
            color: #111;
            font-size: 1.25rem;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            gap: 5px;
            transition: color 0.2s;
        }

        .apply-link svg {
            width: 20px;
            height: 20px;
            transition: transform 0.2s ease;
        }

        /* Hover Effect for Apply Link */
        .apply-link:hover {
            color: #333;
        }
        .apply-link:hover svg {
            transform: translate(3px, -3px); /* Moves arrow up-right */
        }

        /* Mobile Adjustments */
        @media (max-width: 768px) {
            .job-header {
                flex-direction: column;
            }
            .apply-link {
                margin-top: 15px;
                display: inline-block; /* Moves apply link below title on tiny screens */
            }
            .job-desc {
                max-width: 100%;
            }
        }