.career-post .shell,
.careers-hub .shell { width: 100%; max-width: 1320px; margin-inline: auto; }
.career-post .role-hero { padding-top: 104px; padding-bottom: 72px; }
.career-post .role-hero h1 { font-family: var(--serif); font-size: clamp(48px, 7vw, 92px); font-weight: 400; line-height: .98; max-width: 15ch; margin: 14px 0 24px; }
.career-post .role-hero h1 em,
.career-post .role-section h2 em { color: var(--accent); font-style: italic; }
.career-post .role-hero .lede { font-size: 20px; max-width: 72ch; color: var(--ink-2); }
.career-post .role-meta,
.career-post .role-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.career-post .role-section h2 { font-family: var(--serif); font-size: clamp(36px, 5vw, 58px); font-weight: 400; line-height: 1; max-width: 19ch; margin: 12px 0 24px; }
.career-post .role-section > .lede { font-size: 18px; max-width: 72ch; color: var(--ink-soft); }
.career-post .role-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--rule); border-left: 1px solid var(--rule); margin-top: 34px; }
.career-post .role-card { padding: 28px; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.career-post .role-card .tag { font: 11px var(--mono); text-transform: uppercase; letter-spacing: .1em; color: var(--accent); }
.career-post .role-card h3 { font-family: var(--serif); font-size: 29px; font-weight: 400; line-height: 1.05; margin: 10px 0; }
.career-post .role-card p,
.career-post .role-card li { color: var(--ink-2); }
.career-post .role-card ul { padding-left: 20px; margin-bottom: 0; }
.career-post .role-card li { margin-bottom: 10px; }
.career-post .role-band { padding-block: 72px; background: var(--slate); color: var(--slate-fg); }
.career-post .role-band h2 { font-family: var(--serif); font-size: clamp(36px, 5vw, 58px); font-weight: 400; line-height: 1; max-width: 19ch; margin: 12px 0 22px; }
.career-post .role-band h2 em { color: #8bc7ff; font-style: italic; }
.career-post .role-band p { max-width: 78ch; color: #dbe4ef; }
.career-post .role-band a { color: #8bc7ff; }
.career-post .role-terms { border-left: 4px solid var(--accent); padding-left: 22px; }
.career-post .role-footer { border-top: 1px solid var(--rule); padding-block: 34px; font-size: 14px; }
.career-post .role-footer .legal-note { color: var(--ink-soft); font-size: 12px; line-height: 1.55; margin: 10px 0 0; max-width: 72ch; }
.career-post .role-footer nav { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 10px; }
.careers-hub .hub-hero { padding-top: 104px; padding-bottom: 64px; }
.careers-hub .hub-hero h1 { font-family: var(--serif); font-size: clamp(52px, 8vw, 104px); font-weight: 400; line-height: .94; margin: 14px 0 26px; }
.careers-hub .hub-hero h1 em,
.careers-hub .hub-section h2 em { color: var(--accent); font-style: italic; }
.careers-hub .hub-hero .lede { max-width: 76ch; font-size: 20px; color: var(--ink-2); }
.careers-hub .hub-section h2 { font-family: var(--serif); font-size: clamp(36px, 5vw, 60px); font-weight: 400; line-height: 1; margin: 12px 0 24px; }
.careers-hub .hub-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 34px; }
.careers-hub .cr-featured { border: 1px solid var(--rule); border-left: 4px solid var(--accent); padding: 28px; display: flex; flex-direction: column; background: var(--paper); }
.careers-hub .cr-featured h3 { font-family: var(--serif); font-size: 30px; font-weight: 400; line-height: 1.05; margin: 10px 0; }
.careers-hub .cr-featured p { color: var(--ink-2); flex: 1; }
.careers-hub .cr-featured .tag { font: 11px var(--mono); color: var(--accent); text-transform: uppercase; letter-spacing: .1em; }
.careers-hub .cr-featured .specs { display: flex; flex-wrap: wrap; gap: 7px; margin: 12px 0 20px; }
.careers-hub .hub-band { background: var(--slate); color: var(--slate-fg); padding-block: 72px; }
.careers-hub .hub-band p { color: #dbe4ef; max-width: 78ch; }
.careers-hub .hub-band .btn { border-color: #8bc7ff; color: #fff; }
.careers-hub .role-footer { border-top: 1px solid var(--rule); padding-block: 34px; font-size: 14px; }
.careers-hub .role-footer .legal-note { color: var(--ink-soft); font-size: 12px; line-height: 1.55; margin: 10px 0 0; max-width: 72ch; }
.careers-hub .role-footer nav { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 12px; }
@media (max-width: 760px) {
  .career-post .role-grid { grid-template-columns: 1fr; }
  .career-post .role-hero { padding-top: 72px; }
  .career-post .role-actions .btn { width: 100%; justify-content: center; min-height: 46px; }
  .careers-hub .hub-grid { grid-template-columns: 1fr; }
  .careers-hub .hub-hero { padding-top: 72px; }
}
