.careers-body { padding: 100px 72px 120px; max-width: 1440px; margin: 0 auto; }
.careers-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; align-items: center; margin-bottom: 100px; }
.careers-img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }

/* Why Join */
.why-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 2px; margin-bottom: 100px; }
.why-card { background: var(--navy-mid); padding: 44px 40px; border-top: 2px solid transparent; transition: border-color .3s; }
.why-card:hover { border-top-color: var(--gold); }
.why-icon { font-size: 32px; margin-bottom: 18px; display: block; }
.why-title { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 400; color: var(--white); margin-bottom: 12px; }
.why-desc { font-size: 14px; line-height: 1.855; color: rgba(212,207,199,.85); font-weight: 300; }

/* Open Positions */
.positions-section { margin-bottom: 80px; }
.position-item {
  background: var(--navy-mid); padding: 36px 44px;
  display: flex; align-items: center; justify-content: space-between; gap: 40px;
  border-left: 3px solid transparent; margin-bottom: 3px;
  transition: border-color .3s, background .3s;
}
.position-item:hover { border-left-color: var(--gold); background: rgba(26,52,96,.5); }
.position-info {}
.position-title { font-family: 'Cormorant Garamond', serif; font-size: 24px; font-weight: 400; color: var(--white); margin-bottom: 8px; }
.position-meta { display: flex; gap: 20px; flex-wrap: wrap; }
.position-tag { font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: rgba(212,207,199,.78); }
.position-tag span { color: var(--gold); margin-right: 4px; }
.position-desc { font-size: 13px; line-height: 1.75; color: rgba(212,207,199,.6); font-weight: 300; margin-top: 12px; max-width: 680px; }

/* Speculative application */
.speculative-box {
  background: var(--navy-mid); padding: 64px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 80px;
  align-items: center;
}
.spec-form { display: flex; flex-direction: column; gap: 16px; }
.form-group { display: flex; flex-direction: column; gap: 8px; }
.form-label { font-size: 10px; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); }
.form-input, .form-select, .form-textarea {
  background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.08);
  color: var(--white); padding: 14px 18px;
  font-family: 'Outfit', sans-serif; font-size: 14px;
  outline: none; transition: border-color .3s; width: 100%;
}
.form-input:focus, .form-select:focus, .form-textarea:focus { border-color: rgba(201,168,76,.55); }
.form-input::placeholder, .form-textarea::placeholder { color: rgba(255,255,255,.2); }
.form-textarea { resize: vertical; min-height: 120px; }
.form-select option { background: var(--navy-mid); }
.file-upload { padding: 14px 18px; background: rgba(255,255,255,.03); border: 1px dashed rgba(201,168,76,.25); color: rgba(212,207,199,.80); font-size: 13px; cursor: pointer; transition: border-color .3s; }
.file-upload:hover { border-color: var(--gold); }

@media(max-width:900px){
  .careers-body{padding:60px 24px 80px;}
  .careers-intro{grid-template-columns:1fr;gap:40px;margin-bottom:60px;}
  .why-grid{grid-template-columns:1fr;}
  .position-item{flex-direction:column;align-items:flex-start;padding:28px 24px;}
  .speculative-box{grid-template-columns:1fr;padding:36px 24px;gap:40px;}
}
