/* ==========================================================================
   CAREERS — interest cards, hiring philosophy, application form
   ========================================================================== */

.careers-hero{
  padding: 11rem clamp(1.25rem,4vw,3rem) 4rem;
  border-bottom: 1px solid var(--hairline);
}
.careers-hero h1{ font-size: clamp(2.4rem, 6.4vw, 5rem); max-width:18ch; }
.careers-hero p{ margin-top:1.6rem; max-width:52ch; color:var(--muted-2); font-size:1.05rem; line-height:1.7; }

/* ---- Areas of interest ---- */
.interest{ padding: 7rem clamp(1.25rem,4vw,3rem); border-bottom:1px solid var(--hairline); }
.interest-grid{
  display:grid; grid-template-columns: repeat(4, 1fr); gap:1px;
  background: var(--hairline); border:1px solid var(--hairline); margin-top:3rem;
}
.interest-card{
  background: var(--bg-card); padding: 1.9rem 1.6rem;
  transition: background 0.35s var(--ease), transform 0.35s var(--ease);
}
.interest-card:hover{ background: var(--bg-raised); transform: translateY(-3px); }
.interest-card__icon{ color:var(--gold); margin-bottom:1rem; }
.interest-card__icon svg, .interest-card__icon i{ width:22px; height:22px; }
.interest-card h4{ font-size:1.02rem; font-family:'Syne',sans-serif; font-weight:700; margin-bottom:0.6rem; }
.interest-card p{ font-size:0.82rem; color:var(--muted-2); line-height:1.55; }

@media (max-width: 960px){ .interest-grid{ grid-template-columns: repeat(3,1fr); } }
@media (max-width: 640px){ .interest-grid{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 460px){ .interest-grid{ grid-template-columns: 1fr; } }

/* ---- Hiring philosophy ---- */
.philosophy{ padding: 7rem clamp(1.25rem,4vw,3rem); border-bottom:1px solid var(--hairline); }
.philosophy__wrap{ display:grid; grid-template-columns: 1fr 1fr; gap:4rem; }
.philosophy__lede{ font-size:1.1rem; line-height:1.75; color:var(--muted-2); max-width:44ch; }
.philosophy__lede strong{ color:var(--ink); font-weight:500; }
.values{ display:flex; flex-wrap:wrap; gap:0.7rem; align-content:flex-start; }
.value-pill{
  font-family:'JetBrains Mono', monospace; font-size:0.76rem; letter-spacing:0.05em;
  padding: 0.65rem 1.1rem; border:1px solid var(--hairline); color:var(--muted-2);
  transition: border-color 0.3s var(--ease), color 0.3s var(--ease);
}
.value-pill:hover{ border-color:var(--gold); color:var(--gold); }

@media (max-width: 860px){ .philosophy__wrap{ grid-template-columns:1fr; gap:2.5rem; } }

/* ---- Future opportunities ---- */
.future{
  padding: 5rem clamp(1.25rem,4vw,3rem); border-bottom:1px solid var(--hairline);
  text-align:center;
}
.future p{ max-width:56ch; margin:1rem auto 0; color:var(--muted-2); font-size:1rem; line-height:1.75; }
.future h2{ font-size: clamp(1.8rem, 3.6vw, 2.6rem); }

/* ---- Application form ---- */
.apply{ padding: 7rem clamp(1.25rem,4vw,3rem) 8rem; }
.apply__wrap{ max-width: 780px; margin:0 auto; }
.field{ margin-bottom:1.8rem; }
.field label{
  display:block; font-family:'JetBrains Mono', monospace; font-size:0.72rem;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--muted-2); margin-bottom:0.7rem;
}
.field .hint{ display:block; font-family:'Inter',sans-serif; text-transform:none; letter-spacing:normal; font-size:0.78rem; color:var(--muted); margin-top:0.4rem; }
.field input[type="text"], .field input[type="email"], .field input[type="tel"], .field input[type="url"], .field select, .field textarea{
  width:100%; background:transparent; border:none; border-bottom:1px solid var(--hairline);
  color:var(--ink); font-family:'Inter',sans-serif; font-size:1rem; font-weight:300;
  padding: 0.8rem 0.2rem; transition: border-color 0.3s var(--ease);
}
.field select{ appearance:none; -webkit-appearance:none; cursor:pointer; }
.field select option{ background:#0E0E10; }
.field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--gold); }
.field textarea{ resize:vertical; min-height:110px; }
.field-row{ display:flex; gap:1.6rem; }
.field-row .field{ flex:1; }

.file-field{
  border:1px dashed var(--hairline); padding: 1.6rem; text-align:center; cursor:pointer;
  transition: border-color 0.3s var(--ease), background 0.3s var(--ease);
  position:relative;
}
.file-field:hover, .file-field.has-file{ border-color:var(--gold); background:rgba(226,183,85,0.04); }
.file-field input[type="file"]{
  position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%;
}
.file-field__label{ font-family:'JetBrains Mono', monospace; font-size:0.78rem; color:var(--muted-2); }
.file-field__name{ margin-top:0.5rem; font-size:0.78rem; color:var(--gold); font-family:'JetBrains Mono', monospace; }

.form-status{
  margin-top:1.2rem; font-family:'JetBrains Mono', monospace; font-size:0.8rem; color:var(--gold); display:none;
}
.form-status.is-visible{ display:block; }

@media (max-width: 640px){ .field-row{ flex-direction:column; gap:0; } }
