/* /jobs/professions — the cross-country professions directory.
   Rides on family.css (hero, eyebrow, buttons, notes, final CTA) and adds only the
   directory itself: a role per row, with a chip per country we cover it in.
   A role showing one chip is a role we recruit into in one country — the page says
   so once, at the top, rather than printing "not yet" a dozen times. */
.dir{margin-top:clamp(30px,3.6vw,46px);max-width:940px}
.dfam{padding-top:clamp(30px,3.4vw,44px);margin-top:clamp(26px,3vw,38px);border-top:2px solid var(--rule-tint)}
.dfam:first-child{margin-top:0}
.dfhead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 24px}
.dfhead h3{font-size:var(--t-h3);flex:1 1 auto;min-width:0}
.dfcount{flex:none;font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.02em;color:var(--muted);white-space:nowrap}
@media(max-width:600px){.dfcount{white-space:normal;flex:1 1 100%}}
.dfsub{margin-top:8px;font-size:var(--t-meta);color:var(--muted);max-width:62ch}
.rrow{display:grid;grid-template-columns:1fr auto;gap:10px 28px;align-items:start;padding:clamp(17px,1.9vw,22px) 0}
/* rules go BETWEEN rows only — .dfam already draws above the first one, and inverting
   it this way survives markup changes (:first-of-type matched .dfhead, not .rrow). */
.rrow+.rrow{border-top:1px solid var(--rule-tint)}
.dfsub+.rrow{margin-top:clamp(14px,1.6vw,20px)}
.rname{font-family:var(--display);font-weight:600;font-size:17px;color:var(--teal)}
.rdesc{grid-column:1;font-size:var(--t-meta);color:var(--muted);max-width:56ch}
.cchips{display:flex;flex-wrap:wrap;gap:8px;justify-self:end}
.cchip{display:inline-flex;align-items:center;font-family:var(--display);font-weight:600;font-size:13.5px;white-space:nowrap;padding:7px 15px;border-radius:999px;border:1px solid;background:#fff;transition:background .15s ease,color .15s ease,border-color .15s ease}
.cchip.nz{color:#2F5E49;border-color:rgba(47,94,73,.7)}
.cchip.nz:hover{background:#2F5E49;border-color:#2F5E49;color:#fff}
.cchip.au{color:#B32C62;border-color:rgba(163,68,56,.7)}
.cchip.au:hover{background:#B32C62;border-color:#B32C62;color:#fff}
/* modality / sub-specialty routes that share one registration with the row above */
.rsub{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:7px 9px;margin-top:2px}
.rsub .mk{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-right:2px}
.rsub a{white-space:nowrap;font-family:var(--display);font-weight:600;font-size:12.5px;color:var(--fern-text);padding:4px 11px;border:1px solid var(--rule-tint);border-radius:999px;transition:background .15s ease,color .15s ease,border-color .15s ease}
.rsub a:hover{background:var(--teal);border-color:var(--teal);color:#fff}
@media (max-width:760px){.dfcount{flex-basis:100%}}
@media (max-width:620px){
  .rrow{grid-template-columns:1fr}
  .cchips{justify-self:start;margin-top:4px}
}

/* Search, country filter and status key (14 Oct 2026) */
.pf-find{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px;max-width:820px}
.pf-find input{flex:1 1 320px;min-width:0;min-height:52px;padding:12px 16px;border:1.5px solid #C9DED3;border-radius:12px;font:inherit;font-size:16.5px;background:#fff;color:#1E2B26}
.pf-find input:focus{outline:none;border-color:#02615D;box-shadow:0 0 0 3px rgba(166,200,74,.35)}
.pf-ctry{display:flex;gap:6px;flex-wrap:wrap}
.pf-ctry button{min-height:44px;padding:8px 16px;border-radius:999px;border:1.5px solid #C9DED3;background:#fff;color:#02615D;font-family:'Work Sans',sans-serif;font-weight:600;font-size:14.5px;cursor:pointer}
.pf-ctry button[aria-pressed="true"]{background:#02615D;border-color:#02615D;color:#fff}
.pf-ctry button:focus-visible{outline:3px solid #02615D;outline-offset:2px}
.pf-key{margin-top:14px;font-size:13.5px;line-height:1.9;color:#555;max-width:820px}
.pf-k{display:inline-block;font-family:'Work Sans',sans-serif;font-weight:700;font-size:12px;letter-spacing:.04em;padding:2px 10px;border-radius:999px;margin:0 6px 0 10px}
.pf-k:first-child{margin-left:0}
.pf-k.rec{background:#02615D;color:#fff}.pf-k.gde{background:#E6F1ED;color:#02615D}.pf-k.soon{background:#F4EEDF;color:#6B5420}
.rrow[hidden],.dfam[hidden]{display:none!important}
.pf-empty{margin:18px 0 0;font-size:16px;color:#333}
.pf-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.pf-three a{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border-radius:14px;background:#fff;border:1px solid #D6E4DD;text-decoration:none;color:inherit}
.pf-three a:hover{border-color:#02615D}
.pf-three b{font-family:'Work Sans',sans-serif;font-size:17px;color:#02615D}
.pf-three span{font-size:14.5px;line-height:1.55;color:#555}
@media(max-width:760px){.pf-three{grid-template-columns:1fr}}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fhero .pf-key{color:rgba(255,255,255,.82);font-size:14.5px;line-height:1.6}
.fhero .pf-key b{color:#fff}.fhero .pf-key a{color:#C6E084;font-weight:600}
.fhero .pf-ctry button{background:transparent;border-color:rgba(255,255,255,.45);color:#fff}
.fhero .pf-ctry button[aria-pressed="true"]{background:#A6C84A;border-color:#A6C84A;color:#01312F}
.fhero .pf-ctry button:focus-visible{outline-color:#A6C84A}
.fhero .pf-find input:focus{border-color:#A6C84A}
.pf-list{padding-top:clamp(20px,3vw,40px)!important}.pf-list .dir{margin-top:0!important}
