.careers-page {
  background: #f6f8fa;
  color: #172c3b;
}

.careers-page main > .hero-banner:not(.d-none) {
  min-height: 0;
  background: #18070a;
  line-height: 0;
}

.careers-page .hero-img {
  width: 100%;
  height: auto;
  min-height: 0;
  object-fit: contain;
  object-position: center;
  display: block;
}

.careers-page .banner-overlay {
  background: linear-gradient(90deg, rgba(38,4,8,.95) 0%, rgba(91,9,15,.74) 40%, rgba(11,29,41,.16) 72%, rgba(11,29,41,.05) 100%);
}

.careers-page main > section:nth-of-type(3) {
  background: #fff;
  padding-top: 5rem;
  padding-bottom: 4rem;
}

/* The live Careers banner is the third section; keep it identical to Products. */
.careers-page main > section.hero-banner:not(.d-none) {
  padding-top: 0;
  padding-bottom: 0;
}

.careers-page main > section:nth-of-type(3) .section-title {
  letter-spacing: -.035em;
}

.careers-page main > section:nth-of-type(4) {
  padding-top: 1rem;
  padding-bottom: 5rem;
  background: linear-gradient(180deg, #fff 0%, #f4f7f9 100%);
}

.careers-page .job-card {
  position: relative;
  padding: 2rem;
  border: 1px solid #dce3e7;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 32px rgba(17,39,53,.07);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.careers-page .job-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #7a1216, #c79a2b);
}

.careers-page .job-card:hover {
  transform: translateY(-5px);
  border-color: rgba(122,18,22,.28);
  box-shadow: 0 18px 45px rgba(17,39,53,.13);
}

.career-role-heading {
  display: flex;
  align-items: center;
  gap: .9rem;
  margin-bottom: 1.15rem;
}

.career-role-heading h3 {
  color: #172c3b;
  font-weight: 700;
}

.career-role-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 12px;
  background: #f8eeee;
  color: #8f1117;
  font-size: 1.25rem;
}

.careers-page .job-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-bottom: 1.15rem;
}

.careers-page .job-meta span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .38rem .65rem;
  border-radius: 999px;
  background: #f2f5f7;
  color: #566873;
  font-size: .72rem;
  font-weight: 600;
}

.careers-page .job-meta i { color: #8f1117; }
.careers-page .job-card p { color: #5e6e78; line-height: 1.7; }
.careers-page .job-card .btn { border-radius: 8px; font-weight: 700; padding: .55rem .9rem; }

.careers-page main > .bg-light-section {
  background: #edf2f5;
}

.careers-page main > .bg-light-section .section-title {
  /* text-align: center !important; */
  margin-bottom: 2rem;
}

.careers-page main > .bg-light-section .fact-box {
  min-height: 150px;
  padding: 1.5rem;
  border: 1px solid #dae2e7;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(17,39,53,.06);
  flex-direction: column;
  text-align: center;
}

.careers-page main > .bg-light-section .icon-circle {
  width: 54px;
  height: 54px;
  margin-bottom: .75rem;
  /* background: #7a1216; */
  color: #fff;
}

.careers-page .career-cta {
  display: block !important;
  background: linear-gradient(120deg, #3b090d 0%, #7a1216 100%);
}

.careers-page .career-cta .btn {
  border-radius: 8px;
  padding: .8rem 1.15rem;
  font-weight: 700;
}

@media (max-width: 991.98px) {
  .careers-page main > .hero-banner:not(.d-none),
  .careers-page .hero-img { min-height: 0; }
  .careers-page .hero-img { object-position: 60% center; }
  .careers-page .banner-overlay { background: linear-gradient(90deg, rgba(38,4,8,.94), rgba(76,8,13,.7)); }
}

@media (max-width: 575.98px) {
  .careers-page main > .hero-banner:not(.d-none),
  .careers-page .hero-img { min-height: 0; }
  .careers-page .job-card { padding: 1.35rem; }
  .career-role-icon { width: 42px; height: 42px; flex-basis: 42px; }
  .careers-page .job-meta { gap: .4rem; }
  .careers-page main > .bg-light-section .fact-box { min-height: 130px; }
}

@media (prefers-reduced-motion: reduce) {
  .careers-page .job-card { transition: none; }
}
