.staff-main { width:min(1080px,calc(100% - 2rem)); margin:0 auto; padding:4rem 0 6rem; }
.staff-intro { max-width:760px; margin-bottom:2.5rem; }
.staff-intro h1 { font-size:clamp(2.4rem,6vw,4.5rem); max-width:18ch; line-height:1.05; margin:.8rem 0 1.3rem; }
.staff-main p, .staff-main li { line-height:1.7; color:var(--muted); }
.staff-main h2 { font-size:clamp(1.5rem,3vw,2.2rem); letter-spacing:-.025em; }
.staff-main h3 { font-size:1.2rem; }
.staff-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:2rem 0; }
.staff-card { padding:1.6rem; border:1px solid var(--line); border-radius:var(--radius); background:linear-gradient(145deg,rgb(255 255 255 / 5%),rgb(255 255 255 / 1%)); min-width:0; }
.staff-card p { font-size:.95rem; }
.staff-card > :first-child { margin-top:0; }
.staff-card a:not(.button), .staff-main p a, .staff-main li a { color:var(--cyan); text-underline-offset:.2em; }
.staff-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin:1.5rem 0; }
.staff-form { max-width:780px; margin:2rem auto 0; }
.staff-form h2 { margin-top:0; }
.staff-form small { color:var(--muted); font-weight:400; line-height:1.5; }
.staff-form .attestation span { color:var(--muted); line-height:1.6; }
.staff-message { padding:1rem 1.25rem; border:1px solid rgb(99 231 255 / 40%); background:rgb(18 94 116 / 15%); border-radius:.7rem; overflow-wrap:anywhere; }
.staff-message.error { border-color:#ff6e81; }
.staff-main [hidden] { display:none !important; }
.staff-guide { display:grid; gap:1.5rem; }
.staff-guide ol { padding-left:1.4rem; }
.staff-guide li { margin:.7rem 0; }
.staff-guide strong, .staff-intro strong { color:var(--text); }
.staff-label { color:var(--pink) !important; text-transform:uppercase; letter-spacing:.1em; font-size:.7rem !important; font-weight:800; }
.staff-deadline { padding:1rem; border-left:3px solid var(--pink); background:rgb(125 18 63 / 14%); }
.staff-list { display:grid; gap:1.25rem; margin-top:1.5rem; }
.staff-detail { display:grid; grid-template-columns:10rem 1fr; gap:.5rem 1rem; font-size:.95rem; }
.staff-detail dt { color:var(--muted); }
.staff-detail dd { margin:0; color:var(--text); overflow-wrap:anywhere; }
.staff-preline { white-space:pre-wrap; overflow-wrap:anywhere; }
.staff-review { margin-top:1.5rem; padding-top:1rem; border-top:1px solid var(--line); }
.staff-review .staff-actions button { width:auto; }
.staff-review button.deny { background:rgb(255 74 95 / 12%); border-color:#ff6e81; }
.staff-status { display:inline-block; color:var(--cyan); padding:.3rem .7rem; border:1px solid rgb(99 231 255 / 30%); border-radius:1rem; font-size:.8rem; text-transform:capitalize; }
.staff-footer { border-top:1px solid var(--line); padding:2rem 1rem; text-align:center; font-size:.85rem; color:var(--muted); }
.staff-footer a { color:var(--cyan); }
.policy-main { max-width:900px; }
.policy-main > .staff-card { margin-top:1.5rem; }
.policy-main > a { color:var(--cyan); }
.interview-choices { display:grid; gap:.6rem; }
.interview-choices .attestation { padding:.5rem; border:1px solid var(--line); border-radius:.5rem; }
.staff-main input[type=checkbox] { min-height:initial; width:1.2rem; height:1.2rem; flex-shrink:0; }
.staff-main button { min-height:44px; }
.staff-main input, .staff-main select, .staff-main textarea { min-height:44px; }
.staff-main :focus-visible { outline:2px solid var(--cyan); outline-offset:4px; }
.staff-main noscript { display:block; padding:1rem; border:1px solid var(--pink); }
@media (max-width:68rem) {
  .site-header .nav-cta { display:none; }
  .site-header .menu-toggle { display:block; margin-left:auto; }
  .site-header .desktop-nav { position:absolute; top:4.7rem; right:1rem; z-index:20; min-width:15rem; padding:.7rem; display:none; flex-direction:column; gap:0; border:1px solid var(--line); border-radius:1rem; background:rgb(11 6 16 / 96%); box-shadow:0 1.5rem 4rem rgb(0 0 0 / 55%); }
  .site-header .desktop-nav.is-open { display:flex; }
  .site-header .desktop-nav a { padding:.8rem; }
}
@media (max-width:52rem) { .staff-grid { grid-template-columns:1fr; } .staff-main { padding-top:2.5rem; } }
@media (max-width:36rem) { .staff-detail { grid-template-columns:1fr; } .staff-detail dd { margin-bottom:.8rem; } .staff-actions { flex-direction:column; } .staff-card { padding:1.25rem; } }
