:root {
  --fcm-navy: #002448;
  --fcm-blue: #075ecf;
  --fcm-gold: #f4c244;
  --fcm-light: #f3f6f9;
  --fcm-text: #1d2b38;
}

.careers-hero { background: linear-gradient(110deg, var(--fcm-navy) 0%, var(--fcm-navy) 54%, #e9edf1 54%); overflow: hidden; }
.careers-hero-container { min-height: 620px; display: grid; grid-template-columns: 56% 44%; align-items: stretch; padding-right: 0; }
.careers-hero-copy { color: #fff; padding: 95px 70px 90px 0; align-self: center; position: relative; z-index: 2; }
.eyebrow { margin: 0 0 16px; color: var(--fcm-gold); font-size: 16px; font-weight: 700; letter-spacing: 1.7px; text-transform: uppercase; }
.eyebrow.dark { color: var(--fcm-blue); }
.careers-hero h1 { color: #fff; font-size: 58px; line-height: 1.08; font-weight: 800; margin-bottom: 18px; }
.careers-hero h1 span { color: var(--fcm-gold); }
.careers-hero h2 { color: #fff; font-size: 26px; font-weight: 500; text-transform: uppercase; margin-bottom: 20px; }
.careers-hero-copy > p:not(.eyebrow) { max-width: 590px; font-size: 18px; line-height: 1.7; }
.careers-hero-image { background: url('../img/careers/fcm-team-member.png') center center/cover no-repeat; min-height: 620px; position: relative; }
.careers-hero-image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,36,72,.28),transparent 32%); }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:32px; }
.btn-careers-primary, .btn-careers-secondary { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:14px 24px; font-size:15px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; transition:.2s ease; }
.btn-careers-primary { background:var(--fcm-gold); color:var(--fcm-navy); border:2px solid var(--fcm-gold); }
.btn-careers-primary:hover { background:#fff; border-color:#fff; color:var(--fcm-navy); text-decoration:none; }
.btn-careers-secondary { background:transparent; color:#fff; border:2px solid #fff; }
.btn-careers-secondary:hover { background:#fff; color:var(--fcm-navy); text-decoration:none; }

.careers-values { padding:95px 0; background:#fff; }
.values-heading, .positions-heading, .process-heading { max-width:820px; margin:0 auto 55px; text-align:center; }
.values-heading h2, .positions-heading h2, .process-heading h2 { color:var(--fcm-navy); font-size:40px; font-weight:700; margin-bottom:18px; }
.values-heading > p:last-child, .positions-heading > p:last-child { font-size:18px; line-height:1.7; color:#51606d; }
.value-grid { margin-top:15px; }
.value-item { text-align:center; padding:30px 38px; border-right:1px solid #dce2e7; }
.value-item:last-child { border-right:0; }
.value-item i { color:var(--fcm-blue); font-size:42px; margin-bottom:22px; }
.value-item h3 { color:var(--fcm-navy); font-size:21px; line-height:1.35; font-weight:700; }
.value-item p { color:#596775; line-height:1.6; }

.positions-section { padding:95px 0; background:var(--fcm-navy); }
.positions-heading h2, .positions-heading > p:last-child { color:#fff; }
.position-grid > div { margin-bottom:28px; }
.position-card { height:100%; min-height:275px; padding:34px; background:#fff; border-top:5px solid var(--fcm-gold); display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 10px 28px rgba(0,0,0,.18); }
.position-card span { display:block; color:var(--fcm-blue); font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:1.1px; margin-bottom:9px; }
.position-card h3 { color:var(--fcm-navy); font-size:25px; font-weight:700; margin-bottom:15px; }
.position-card p { color:#53616d; line-height:1.65; }
.position-card a { color:var(--fcm-blue); font-weight:700; text-transform:uppercase; font-size:14px; }
.position-card a i { margin-left:8px; transition:transform .2s ease; }
.position-card a:hover { text-decoration:none; color:var(--fcm-navy); }
.position-card a:hover i { transform:translateX(4px); }
.general-card { background:#eef3f8; }

.career-process { padding:95px 0; background:#f5f7f9; }
.process-grid { counter-reset:steps; }
.process-step { text-align:center; padding:25px 38px; }
.process-step span { display:inline-flex; width:62px; height:62px; border-radius:50%; background:var(--fcm-blue); color:#fff; align-items:center; justify-content:center; font-size:25px; font-weight:800; margin-bottom:22px; box-shadow:0 0 0 8px rgba(7,94,207,.10); }
.process-step h3 { color:var(--fcm-navy); font-size:21px; font-weight:700; }
.process-step p { color:#586673; line-height:1.65; }

.career-cta { padding:70px 0; background:linear-gradient(100deg,#075ecf,#002448); color:#fff; }
.career-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:35px; }
.career-cta h2 { color:#fff; font-size:38px; font-weight:700; margin-bottom:10px; }
.career-cta p { margin:0; font-size:18px; }
.career-cta p a { color:#fff; font-weight:700; text-decoration:underline; }
.btn-careers-primary.light { flex:0 0 auto; min-width:175px; }

@media (max-width: 991px) {
  .careers-hero { background:var(--fcm-navy); }
  .careers-hero-container { display:flex; flex-direction:column; padding:0; }
  .careers-hero-copy { padding:70px 30px; order:2; }
  .careers-hero-image { order:1; min-height:450px; background-position:center 28%; }
  .careers-hero h1 { font-size:46px; }
  .value-item { border-right:0; border-bottom:1px solid #dce2e7; }
  .value-item:last-child { border-bottom:0; }
  .career-cta-inner { flex-direction:column; text-align:center; }
}

@media (max-width: 575px) {
  .careers-hero-image { min-height:330px; }
  .careers-hero-copy { padding:55px 22px 65px; }
  .careers-hero h1 { font-size:37px; }
  .careers-hero h2 { font-size:20px; }
  .hero-actions { flex-direction:column; }
  .btn-careers-primary, .btn-careers-secondary { width:100%; }
  .careers-values, .positions-section, .career-process { padding:70px 0; }
  .values-heading h2, .positions-heading h2, .process-heading h2, .career-cta h2 { font-size:31px; }
  .position-card { padding:28px 24px; }
}
