/* Kaizen — Career (scoped, design reference) */
.ka-career-scope,
.ka-career-scope *,
.ka-career-scope *::before,
.ka-career-scope *::after {
  box-sizing: border-box;
}

.ka-career-scope {
  --kz-teal: #07675a;
  --kz-blue: #2c45dd;
  --kz-green: #2fd897;
  width: 100%;
  max-width: none;
}

.ka-career-scope .kz-green {
  color: var(--kz-green);
}

.ka-career-scope .kz-page {
  max-width: none;
  width: 100%;
  margin: 0;
  background: var(--kz-teal);
  display: flex;
  flex-direction: column;
}

.ka-career-scope .kz-cover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ka-career-scope .kz-car-hero {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr));
  min-height: calc(100vh - 112px);
  background: #2c45dd;
  overflow: hidden;
}

.ka-career-scope .kz-car-hero__media {
  position: relative;
  min-height: 520px;
  overflow: hidden;
  background: #04072a;
}

.ka-career-scope .kz-car-hero__copy {
  padding: clamp(40px, 5vw, 80px) clamp(24px, 4.4vw, 80px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 26px;
  min-width: 0;
  overflow: hidden;
}

.ka-career-scope .kz-car-hero__title {
  margin: 0;
  font: 700 clamp(40px, 4.8vw, 80px) / 1.02 Poppins, sans-serif;
  letter-spacing: -0.035em;
  color: #fff;
  text-wrap: balance;
}

.ka-career-scope .kz-car-p {
  margin: 0;
  font: 400 17px / 1.7 Poppins, sans-serif;
  text-wrap: pretty;
  max-width: 580px;
}

.ka-career-scope .kz-car-p--white {
  color: #fff;
}

.ka-career-scope .kz-car-p--mist {
  color: #e4eaff;
}

.ka-career-scope .kz-why {
  background: #2c45dd;
  padding: 64px clamp(16px, 3vw, 48px);
  display: flex;
  flex-direction: column;
  gap: 36px;
}

.ka-career-scope .kz-why__title {
  margin: 0;
  padding: 0 clamp(0px, 1.5vw, 16px);
  font: 700 clamp(40px, 4.6vw, 68px) / 1 Poppins, sans-serif;
  letter-spacing: -0.025em;
  color: #fff;
}

.ka-career-scope .kz-why__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 16px;
}

.ka-career-scope .kz-why-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 48px;
  min-height: 340px;
  padding: 32px 30px;
  border-radius: 28px;
  transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.4s ease, background 0.4s ease;
}

.ka-career-scope .kz-why-card--aqua {
  background: #12b49c;
}

.ka-career-scope .kz-why-card--aqua:hover {
  background: #2fd897;
  transform: translateY(-8px);
}

.ka-career-scope .kz-why-card--blue {
  background: #2338c4;
}

.ka-career-scope .kz-why-card--blue:hover {
  background: #3b55e8;
  transform: translateY(-8px);
}

.ka-career-scope .kz-why-card__icon {
  height: 72px;
  display: flex;
  align-items: center;
}

.ka-career-scope .kz-why-card__text {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.ka-career-scope .kz-why-card__title {
  margin: 0;
  font: 700 clamp(24px, 2vw, 30px) / 1.1 Poppins, sans-serif;
  letter-spacing: -0.02em;
  color: #fff;
}

.ka-career-scope .kz-why-card__desc {
  margin: 0;
  font: 400 16px / 1.65 Poppins, sans-serif;
  color: #fff;
  text-wrap: pretty;
}

.ka-career-scope .kz-learn {
  background: #07675a;
  padding: 64px clamp(16px, 3vw, 48px);
}

.ka-career-scope .kz-learn__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr));
  gap: 16px;
  align-items: stretch;
}

.ka-career-scope .kz-learn__photos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(240px, 1fr));
  gap: 16px;
}

.ka-career-scope .kz-learn__photo {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  background: #04072a;
}

.ka-career-scope .kz-learn__photo--tall {
  grid-row: span 2;
}

.ka-career-scope .kz-learn__panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
  padding: clamp(28px, 4vw, 56px);
  border-radius: 32px;
  background: #12b49c;
  overflow: hidden;
}

.ka-career-scope .kz-learn__svg {
  max-width: 460px;
  display: block;
  overflow: visible;
}

.ka-career-scope .kz-learn__title {
  margin: 0;
  font: 700 clamp(36px, 4vw, 60px) / 1.02 Poppins, sans-serif;
  letter-spacing: -0.025em;
  color: #fff;
  text-wrap: balance;
}

.ka-career-scope .kz-learn__p {
  margin: 0;
  font: 400 18px / 1.7 Poppins, sans-serif;
  color: #fff;
  text-wrap: pretty;
}

.ka-career-scope .kz-marquee {
  background: #2fd897;
  overflow: hidden;
  padding: 22px 0;
  border-top: 2px solid #04332d;
  border-bottom: 2px solid #04332d;
}

.ka-career-scope .kz-marquee__track {
  display: flex;
  width: max-content;
  animation: kzMarq 36s linear infinite;
}

.ka-career-scope .kz-marquee__item {
  display: flex;
  align-items: center;
  gap: 28px;
  padding-right: 28px;
  font: 700 clamp(22px, 2.4vw, 34px) / 1 Poppins, sans-serif;
  letter-spacing: -0.02em;
  color: #04332d;
  white-space: nowrap;
}

.ka-career-scope .kz-marquee__dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #2c45dd;
}

.ka-career-scope .kz-apply {
  background: #07675a;
  padding: 0 clamp(16px, 3vw, 48px) 64px;
}

.ka-career-scope .kz-apply__box {
  border-radius: 32px;
  background: #2c45dd;
  padding: clamp(36px, 5vw, 80px);
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.ka-career-scope .kz-apply__intro {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 980px;
}

.ka-career-scope .kz-apply__title {
  margin: 0;
  font: 700 clamp(36px, 4vw, 60px) / 1.02 Poppins, sans-serif;
  letter-spacing: -0.025em;
  color: #fff;
  text-wrap: balance;
}

.ka-career-scope .kz-apply__lead {
  margin: 0;
  font: 400 17px / 1.75 Poppins, sans-serif;
  color: #fff;
  text-wrap: pretty;
}

.ka-career-scope .kz-apply__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr));
  gap: 16px;
}

.ka-career-scope .kz-job {
  display: flex;
  flex-direction: column;
  gap: 28px;
  padding: clamp(16px, 1.6vw, 22px) clamp(16px, 1.6vw, 22px) clamp(28px, 3vw, 40px);
  border-radius: 28px;
  background: #2338c4;
}

.ka-career-scope .kz-job__media {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: 20px;
  overflow: hidden;
  background: #04072a;
}

.ka-career-scope .kz-job__body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 32px;
  flex: 1;
  padding: 0 clamp(12px, 1.4vw, 22px);
}

.ka-career-scope .kz-job__text {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.ka-career-scope .kz-job__title {
  margin: 0;
  font: 700 clamp(26px, 2.4vw, 36px) / 1.1 Poppins, sans-serif;
  letter-spacing: -0.02em;
  color: #fff;
}

.ka-career-scope .kz-job__desc {
  margin: 0;
  font: 400 16px / 1.7 Poppins, sans-serif;
  color: #e4eaff;
  text-wrap: pretty;
}

.ka-career-scope .kz-job__btn {
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 14px;
  height: 58px;
  padding: 0 8px 0 26px;
  border-radius: 999px;
  font: 700 16px / 1 Poppins, sans-serif;
  transition: background 0.2s ease, color 0.2s ease;
  text-decoration: none;
}

.ka-career-scope .kz-job__btn--green {
  background: #2fd897;
  color: #055248;
}

.ka-career-scope .kz-job__btn--outline {
  border: 2px solid #fff;
  color: #fff;
  background: transparent;
}

.ka-career-scope .kz-job__btn:hover {
  background: #fff;
  color: #2c45dd;
}

.ka-career-scope .kz-job__dot {
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ka-career-scope .kz-job__dot--deep {
  width: 42px;
  height: 42px;
  background: #055248;
  color: #fff;
}

.ka-career-scope .kz-job__dot--white {
  width: 40px;
  height: 40px;
  background: #fff;
  color: #2c45dd;
}

.ka-career-scope [data-reveal] {
  transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

@keyframes kzDraw {
  0% {
    stroke-dashoffset: 320;
  }
  55%,
  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes kzSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes kzSpinR {
  to {
    transform: rotate(-360deg);
  }
}

@keyframes kzBar {
  0%,
  8% {
    transform: scaleY(0.18);
  }
  45%,
  85% {
    transform: scaleY(1);
  }
  100% {
    transform: scaleY(0.18);
  }
}

@keyframes kzMer {
  0%,
  100% {
    transform: scaleX(0.08);
  }
  50% {
    transform: scaleX(1);
  }
}

@keyframes kzFloat {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

@keyframes kzMarq {
  to {
    transform: translateX(-50%);
  }
}

@keyframes kzClimb {
  0%,
  10% {
    transform: translate(70px, 196px);
  }
  22%,
  34% {
    transform: translate(165px, 146px);
  }
  46%,
  58% {
    transform: translate(260px, 96px);
  }
  70%,
  90% {
    transform: translate(355px, 46px);
  }
  100% {
    transform: translate(70px, 196px);
  }
}

@keyframes kzGlow {
  0%,
  60% {
    opacity: 0.15;
    transform: scale(0.7);
  }
  75%,
  90% {
    opacity: 1;
    transform: scale(1.15);
  }
  100% {
    opacity: 0.15;
    transform: scale(0.7);
  }
}

@keyframes kzRing {
  0% {
    stroke-dashoffset: 276;
  }
  70%,
  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes kzPop {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.25);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ka-career-scope * {
    animation: none !important;
    transition: none !important;
  }
}
