/* Staff directory: equal cards with full, consistently framed portraits. */
.staff-page .page-hero{background:var(--brand-backdrop);border-bottom:0;padding-bottom:clamp(48px,5vw,72px)}
.staff-section{padding:0 var(--page-gutter) clamp(76px,7vw,112px);border-bottom:1px solid var(--line);background:#0b0c0d}
.staff-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:28px}
.staff-heading h2{min-width:0;font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.25;letter-spacing:-.035em;margin:0;overflow-wrap:anywhere}
.staff-heading p{min-width:0;max-width:380px;color:#aaa9a5;font-size:.85rem;line-height:1.6;margin:0;overflow-wrap:anywhere}
.staff-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:stretch}
.staff-person{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;min-width:0;padding:0;border:1px solid #292a2c;border-radius:3px;overflow:hidden;background:#111214;transition:border-color .2s ease}
.staff-avatar{display:block;grid-row:auto;width:100%;height:auto;aspect-ratio:1;object-fit:contain;object-position:center;border:0;border-radius:0;background:#08090a}
.staff-person>div{min-width:0;padding:24px 22px}
.staff-role{min-height:2.9em;margin:0 0 12px;color:#aaa9a5;font-size:.76rem;line-height:1.5;overflow-wrap:anywhere}
.staff-person h3{margin:0;color:#f4f2eb;font-size:clamp(1.5rem,2.3vw,2rem);font-weight:600;line-height:1.15;letter-spacing:-.045em;overflow-wrap:anywhere}
.staff-name-link{color:inherit;text-decoration:none;text-underline-offset:6px}
.staff-name-link:hover{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:#e62b3c}
.staff-person>.staff-contact{grid-column:1;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:0 22px 26px}
.staff-contact span{color:#858984;font-size:.6rem;font-weight:600;line-height:1.4;letter-spacing:.14em}
.staff-contact strong,.staff-contact a{max-width:100%;color:#e8e7df;font-size:.82rem;font-weight:400;line-height:1.6;overflow-wrap:anywhere}
.staff-contact a{text-decoration:none;text-underline-offset:5px}
.staff-contact a:hover{color:#fff;text-decoration:underline;text-decoration-color:#e62b3c}
.staff-person:hover,.staff-person:focus-within{border-color:#686b68}
.staff-discord{padding:clamp(64px,6vw,88px) var(--page-gutter);border-bottom:1px solid var(--line);background:#0e0f10}
.staff-discord .container{display:flex;justify-content:space-between;align-items:center;gap:40px}
.staff-discord .container>div{flex:1;min-width:0}
.staff-discord h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:500;letter-spacing:-.045em;line-height:1.2;margin:0 0 16px;overflow-wrap:anywhere}
.staff-discord p{max-width:610px;margin:0;color:#aaa9a5;font-size:1rem;line-height:1.75;overflow-wrap:anywhere}
.staff-discord .button{flex-shrink:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:1120px){.staff-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.staff-person>div{padding:26px}.staff-person>.staff-contact{padding:0 26px 28px}.staff-person h3{font-size:2rem}.staff-role{font-size:.82rem;min-height:2.8em}.staff-contact strong,.staff-contact a{font-size:.9rem}}
@media(max-width:700px){.staff-page .page-hero{padding-bottom:44px}.staff-section{padding:0 var(--page-gutter) 64px}.staff-heading{display:block;margin-bottom:24px}.staff-heading h2{font-size:1.35rem}.staff-heading p{margin-top:12px}.staff-list{gap:20px}.staff-person>div{padding:20px 18px}.staff-person>.staff-contact{padding:0 18px 23px}.staff-person h3{font-size:1.6rem}.staff-role{font-size:.72rem;min-height:3em}.staff-contact strong,.staff-contact a{font-size:.76rem}.staff-discord{padding:60px var(--page-gutter)}.staff-discord .container{align-items:flex-start;flex-direction:column;gap:28px}.staff-discord h2{font-size:2.1rem}}
@media(max-width:480px){.staff-list{grid-template-columns:1fr;gap:28px}.staff-person>div{padding:24px}.staff-person>.staff-contact{padding:0 24px 26px}.staff-person h3{font-size:2rem}.staff-role{min-height:0;font-size:.82rem}.staff-contact strong,.staff-contact a{font-size:.9rem}.staff-discord .button{width:100%}}
.staff-join{padding:clamp(68px,7vw,104px) var(--page-gutter);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 0% 0%,#2a0c13,transparent 65%),#0d0c0f}
.staff-join-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(36px,7vw,100px)}
.staff-join .page-label{color:#ee6975;margin-bottom:19px}
.staff-join-inner>div{min-width:0}
.staff-join h2{max-width:9ch;margin:0;font-size:clamp(2.5rem,4.7vw,4.5rem);line-height:1.04;letter-spacing:-.06em;font-weight:500;overflow-wrap:anywhere}
.staff-join-copy{padding-top:4px}
.staff-join-copy p{max-width:460px;margin:0 0 26px;color:#b0aab1;font-size:1rem;line-height:1.85;overflow-wrap:anywhere}
.staff-join-copy .button{max-width:100%;font-size:.8rem;overflow-wrap:anywhere}
.staff-join-copy>span{display:block;margin-top:14px;color:#8f8792;font-size:.7rem;line-height:1.7}
@media(max-width:700px){.staff-join{padding:54px var(--page-gutter)}.staff-join-inner{grid-template-columns:minmax(0,1fr);gap:27px}.staff-join h2{font-size:clamp(2.7rem,9vw,3.7rem)}.staff-join-copy{padding-top:0}.staff-join-copy p{font-size:.94rem;margin-bottom:24px}}
@media(max-width:480px){.staff-join-copy .button{width:100%}.staff-join-copy>span{text-align:center}}
@media(prefers-reduced-motion:reduce){.staff-person{transition:none}}
