.dir-hero{padding:140px 0 56px;position:relative;overflow:hidden}.dir-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(240,140,74,.04) 1px,transparent 0) 0 0 /100% 60px,linear-gradient(90deg,rgba(240,140,74,.04) 1px,transparent 0) 0 0 /60px 100%;-webkit-mask-image:radial-gradient(circle at 70% 30%,#000 30%,transparent 80%);mask-image:radial-gradient(circle at 70% 30%,#000 30%,transparent 80%);pointer-events:none}.dir-hero__inner{position:relative;z-index:1;width:100%}.dir-hero__title{font-size:clamp(40px,6vw,88px);line-height:.9;margin-top:24px}.dir-hero__sub{font-size:clamp(16px,1.4vw,20px);max-width:680px;color:var(--abc-white);font-weight:300;line-height:1.5;margin:28px 0 0}.dir-hero__sub b{color:var(--abc-orange);font-weight:500}.dir-toolbar{gap:16px;align-items:center;justify-content:space-between;border-top:1px solid var(--abc-orange);border-bottom:1px solid var(--abc-border);padding:20px 0;margin-top:8px}.dir-chips,.dir-toolbar{display:flex;flex-wrap:wrap}.dir-chips{gap:8px}.dir-chip{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--abc-grey-mid);background:transparent;border:1px solid var(--abc-border);border-radius:999px;padding:8px 14px;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.dir-chip:hover{color:var(--abc-white);border-color:var(--abc-grey-mid)}.dir-chip.is-active{color:#000;background:var(--abc-orange);border-color:var(--abc-orange)}.dir-chip .n{opacity:.6;margin-left:6px}.dir-search{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--abc-white);background:var(--abc-black-2);border:1px solid var(--abc-border);border-radius:999px;padding:11px 18px;min-width:240px;flex:1 1;max-width:320px}.dir-search::placeholder{color:var(--abc-grey-dim);text-transform:uppercase;letter-spacing:.18em;font-size:10px}.dir-search:focus{outline:none;border-color:var(--abc-orange)}.dir-count{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--abc-grey-mid);margin:28px 0 0}.dir-count b{color:var(--abc-orange);font-weight:500}.dir-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-top:24px}.dir-card{background:var(--abc-black-2);border-radius:6px;overflow:hidden;padding:0 0 22px;display:flex;flex-direction:column;transition:background var(--dur-norm) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.dir-card:hover{background:var(--abc-black-3);transform:translateY(-3px)}.dir-card__photo{width:100%;aspect-ratio:1/1;background:var(--abc-black);overflow:hidden;position:relative;border-bottom:1px solid var(--abc-orange);margin-bottom:16px}.dir-card__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease-out)}.dir-card:hover .dir-card__photo img{transform:scale(1.04)}.dir-card__tag{position:absolute;top:12px;left:12px;font-family:var(--font-mono);font-size:8px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:#000;background:var(--abc-orange);padding:3px 8px;border-radius:999px}.dir-card__name{font-family:var(--font-display);font-size:clamp(20px,1.7vw,26px);line-height:.95;letter-spacing:-.01em;text-transform:uppercase;margin:0;padding:0 18px;color:var(--abc-white)}.dir-card__role{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--abc-orange);padding:6px 18px 0;line-height:1.4}.dir-card__co,.dir-empty{color:var(--abc-grey-mid)}.dir-empty{font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;padding:56px 0;text-align:center}.join{padding:120px 0;border-top:1px solid var(--abc-border);background:var(--abc-black-2)}.join__head{font-size:clamp(48px,7vw,120px)}.join__sub{font-size:clamp(16px,1.4vw,20px);max-width:60ch;color:var(--abc-grey-light);font-weight:300;line-height:1.55;margin:24px 0 0}@media (max-width:1100px){.dir-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.dir-grid{grid-template-columns:repeat(2,1fr)}.dir-toolbar{flex-direction:column;align-items:stretch}.dir-search{max-width:none}}