/* landing.css — Additional styles for landing page */

.animate-slideup {
  animation: slideUp .7s ease-out both;
}

@keyframes slideUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Job cards on member page */
.job-card {
  background: white;
  border: 1px solid var(--gray-100);
  border-radius: 16px;
  padding: 1.25rem;
  transition: all .2s;
}

.job-card:hover {
  box-shadow: var(--shadow-lg);
  border-color: var(--primary-100);
  transform: translateY(-3px);
}

.company-logo {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--primary-50), var(--primary-100));
  color: var(--primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: .875rem;
  flex-shrink: 0;
}

.job-title {
  font-size: .9375rem;
  font-weight: 700;
  color: var(--gray-900);
  margin-bottom: .1875rem;
}

.job-company {
  font-size: .8125rem;
  color: var(--gray-400);
}

.job-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .375rem;
}

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Profile card for member dashboard */
.profile-card {
  background: linear-gradient(135deg, #1E40AF 0%, #1E3A8A 50%, #0F172A 100%);
  border-radius: 16px;
  padding: 1.75rem;
  color: white;
  box-shadow: var(--shadow-lg);
}

.profile-avatar {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: rgba(255,255,255,.2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
  font-weight: 800;
  border: 3px solid rgba(255,255,255,.3);
}

/* Steps timeline */
.step-circle {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.125rem;
  flex-shrink: 0;
}

/* Progress bar */
.progress-bar-wrap {
  height: 4px;
  background: var(--gray-100);
  border-radius: 99px;
  overflow: hidden;
  min-width: 60px;
}

.progress-bar-fill {
  height: 100%;
  border-radius: 99px;
  background: var(--secondary);
  transition: width .6s ease;
}

/* Copy button feedback */
.btn[data-copy]:after {
  content: '';
}
.btn[data-copy].copied:after {
  content: ' ✓';
  color: var(--secondary);
}

/* Mobile responsive tweaks for job cards */
@media (max-width: 575px) {
  .job-card {
    padding: 1rem;
  }
  .company-logo {
    width: 40px;
    height: 40px;
    font-size: .75rem;
  }
  .stats-grid {
    grid-template-columns: 1fr 1fr;
  }
}
