/* Staffora: theme colours first; built-in colours are final fallbacks. */
.staffora,.sf-page{--sf-accent:var(--wp--preset--color--primary,var(--wp--preset--color--accent,var(--wp--preset--color--accent-1,var(--ast-global-color-0,var(--global-palette1,var(--theme-palette-color-1,#176b65))))));--sf-label:var(--sf-link,var(--sf-accent));--sf-ink:inherit;--sf-surface:var(--wp--preset--color--base,var(--wp--preset--color--background,#fff));--sf-muted:color-mix(in srgb,currentColor 68%,var(--sf-surface));--sf-soft:color-mix(in srgb,var(--sf-accent) 4%,var(--sf-surface));--sf-border:color-mix(in srgb,currentColor 13%,var(--sf-surface));font-family:inherit;line-height:1.55;box-sizing:border-box}.staffora{color:var(--sf-ink);width:100%;text-align:start}.staffora *{box-sizing:border-box}.sf-page{width:min(1280px,calc(100% - 64px));max-width:1280px!important;margin:36px auto 60px;padding:0;float:none!important;flex:0 0 100%;grid-column:1/-1}.sf-page-title,.staffora .sf-heading{font-family:inherit;color:inherit;font-size:clamp(1.7rem,3vw,2.4rem);font-weight:650;line-height:1.2;margin:0 0 26px;letter-spacing:-.025em}.sf-page-content>.sf-directory{margin-block:0}.sf-page-content>.wp-block-shortcode{width:100%;max-width:none}.staffora a{color:var(--sf-link,var(--sf-accent));text-decoration:none;box-shadow:none}.staffora a:hover{text-decoration:underline;text-underline-offset:3px}.staffora :is(a,button,input,select):focus-visible{outline:2px solid var(--sf-accent);outline-offset:4px}.sf-icon{width:18px;height:18px;min-width:18px;flex:none;vertical-align:middle;display:inline-block}.sf-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:16px 18px;background:var(--sf-soft);border:1px solid var(--sf-border);border-radius:12px;margin-bottom:16px}.sf-filters>div{flex:1 1 160px;min-width:0}.sf-filters>div:first-child{flex:2 1 220px}.sf-filters label{display:block;font-size:.78rem;font-weight:600;margin-bottom:5px}.sf-filters :is(input,select){width:100%;min-height:42px;padding:8px 11px;background:var(--sf-surface);border:1px solid var(--sf-border);border-radius:6px;color:inherit;font:inherit;font-size:.88rem;margin:0;box-shadow:none}.sf-filters button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:42px;padding:8px 16px;border:1px solid var(--sf-accent);border-radius:6px;background:var(--sf-accent);color:var(--sf-on-accent,#fff);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;line-height:1.5}.sf-filters button:hover{filter:brightness(.93)}.sf-reset{display:inline-flex;gap:6px;align-items:center;padding:10px 0;font-size:.82rem}.sf-reset .sf-icon{width:15px;height:15px;min-width:15px}.sf-results{font-size:.8rem;color:var(--sf-muted);margin:0 0 18px}.sf-cards{gap:20px;display:grid}.sf-grid{grid-template-columns:repeat(var(--sf-columns,4),minmax(0,1fr))}.sf-card{position:relative;border:1px solid var(--sf-border);border-radius:14px;padding:22px 22px 0;background:var(--sf-surface);display:flex;flex-direction:column;min-width:0;text-align:start;box-shadow:0 3px 14px #00000004;transition:box-shadow .2s,border-color .2s,transform .2s}.sf-card:hover{border-color:color-mix(in srgb,var(--sf-accent) 40%,var(--sf-border));box-shadow:0 10px 24px #0000000a;transform:translateY(-2px)}.sf-card-top{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:18px}.sf-photo{flex-shrink:0}.sf-portrait{width:88px!important;height:88px!important;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:18px;display:block;margin:0!important;border:none;box-shadow:none}.sf-initials{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--sf-accent) 10%,var(--sf-surface));color:var(--sf-link,var(--sf-accent));text-transform:uppercase;font-size:1.6rem;font-weight:600;line-height:1}.staffora .sf-label{display:inline-block;max-width:100%;width:fit-content;background:color-mix(in srgb,var(--sf-label) 7%,var(--sf-surface));color:var(--sf-label);font-size:.7rem;line-height:1.5;font-weight:650;letter-spacing:.045em;text-transform:uppercase;border-radius:5px;padding:5px 8px;margin:0;overflow-wrap:anywhere}.sf-card-top .sf-label{max-width:calc(100% - 102px);text-align:end;background:transparent;padding:2px 0}.sf-card-body{display:flex;flex-direction:column;flex:1;min-width:0;width:100%}.staffora .sf-card h3{font-family:inherit;font-size:1.08rem;font-weight:650;line-height:1.35;margin:0 0 8px;color:inherit;overflow-wrap:anywhere;letter-spacing:-.015em}.sf-card h3 a{color:inherit}.staffora .sf-role{font-size:.875rem;line-height:1.55;color:var(--sf-muted);margin:0 0 20px;overflow-wrap:anywhere}.sf-profile-link{font-size:.8rem;font-weight:650;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;margin-top:auto;border-top:1px solid var(--sf-border);min-height:48px;width:100%}.sf-profile-link .sf-icon{border-radius:50%;background:var(--sf-soft);width:28px;height:28px;min-width:28px;padding:5px;transition:transform .2s}.sf-profile-link:hover .sf-icon{transform:translateX(3px)}.sf-excerpt{font-size:.88rem;color:var(--sf-muted);margin:0 0 16px}.sf-contact{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:.84rem;margin:0 0 14px;overflow-wrap:anywhere}.sf-contact a{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%}.sf-contact a span{min-width:0;overflow-wrap:anywhere}.sf-contact .sf-icon{width:16px;height:16px;min-width:16px}.sf-card .sf-contact{flex-direction:column;gap:8px}.sf-list{grid-template-columns:1fr}.sf-list .sf-card{flex-direction:row;gap:24px;padding:20px 24px}.sf-list .sf-card-top{flex:0 0 104px;flex-direction:column;margin:0;gap:10px}.sf-list .sf-portrait{width:104px!important;height:104px!important}.sf-list .sf-card-top .sf-label{max-width:100%;text-align:start;font-size:.7rem}.sf-list .sf-role{margin-bottom:10px}.sf-list .sf-profile-link{margin-top:4px;width:fit-content;border-top:0;gap:18px;padding:4px 0;min-height:32px}.sf-pagination{margin-top:26px}.sf-pagination ul{list-style:none!important;padding:0!important;margin:0;display:flex;flex-wrap:wrap;gap:7px}.sf-pagination .page-numbers :is(a,span){display:block;padding:7px 12px;border:1px solid var(--sf-border);border-radius:6px;font-size:.85rem}.sf-pagination .current{background:var(--sf-accent);border-color:var(--sf-accent);color:var(--sf-on-accent,#fff)}.sf-empty{padding:30px;border:1px dashed var(--sf-border);border-radius:12px;text-align:center}.sf-back{display:inline-flex;gap:8px;align-items:center;margin-bottom:20px;font-size:.8rem;font-weight:550}.sf-profile{max-width:1040px;margin-inline:auto}.sf-profile-hero{display:flex;gap:26px;align-items:center;padding:0 0 26px;border-bottom:1px solid var(--sf-border);margin-bottom:22px}.sf-profile-hero .sf-portrait{width:140px!important;height:140px!important;border-radius:22px}.sf-profile-hero .sf-initials{font-size:2.5rem}.sf-profile-summary{min-width:0;flex:1}.staffora .sf-profile-hero h1{font-family:inherit;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.18;margin:10px 0 7px;color:inherit;font-weight:650;letter-spacing:-.03em;overflow-wrap:anywhere}.sf-profile-hero .sf-role{font-size:1rem;margin-bottom:12px}.sf-profile-hero .sf-contact{margin:0;font-size:.84rem}.sf-facts{display:flex;flex-wrap:wrap;gap:18px 36px;margin:0 0 20px;padding:16px 20px;border-radius:10px;background:var(--sf-soft);border:1px solid var(--sf-border)}.sf-fact{display:flex;align-items:start;gap:10px;flex:1 1 250px;min-width:0}.sf-fact>.sf-icon{color:var(--sf-accent);margin-top:2px}.sf-fact>div{min-width:0}.sf-facts dt{font-size:.73rem;color:var(--sf-muted);font-weight:550}.sf-facts dd{font-size:.86rem;margin:3px 0 0;overflow-wrap:anywhere}.sf-social{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.sf-social a{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--sf-border);border-radius:7px;background:var(--sf-surface);font-size:.78rem;min-height:36px}.sf-social a:hover{background:var(--sf-soft);border-color:var(--sf-accent)}.sf-social .sf-icon{width:16px;height:16px;min-width:16px}.sf-bio{max-width:80ch;margin:0}.staffora .sf-bio h2{font-family:inherit;font-size:1.15rem;font-weight:650;line-height:1.4;margin:0 0 16px;color:inherit;display:flex;align-items:center;gap:12px}.sf-bio h2:before{content:"";width:3px;height:19px;border-radius:2px;background:var(--sf-accent)}.sf-prose{font-size:.98rem;line-height:1.75;overflow-wrap:anywhere}.sf-prose p{margin:0 0 1.1em}.sf-prose :is(h2,h3,h4){font-family:inherit;color:inherit;line-height:1.35;margin:1.4em 0 .6em}.sf-prose :is(img,video,iframe){max-width:100%}.sf-prose img{height:auto;border-radius:10px}.sf-prose table{display:block;max-width:100%;overflow:auto}.sf-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body.staffora-fullwidth :is(#primary,.content-area){width:100%!important;max-width:none!important;float:none!important;flex-basis:100%!important;grid-column:1/-1}body.staffora-fullwidth :is(.site-content,#content) :is(#secondary,.sidebar,.widget-area){display:none!important}body.staffora-fullwidth .site-content{display:block}body.staffora-fullwidth :is(.site-content,#content)>:is(.container,.content-container){max-width:none;width:100%}@media(min-width:781px) and (max-width:1100px){.sf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sf-grid.sf-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.sf-page{width:calc(100% - 40px);margin:28px auto 44px}.sf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-cards{gap:16px}.sf-card{padding:18px 18px 0}.sf-filters>div:first-child{flex-basis:100%}.sf-profile-hero{gap:20px}.sf-profile-hero .sf-portrait{width:120px!important;height:120px!important}.sf-profile-hero .sf-contact{gap:8px 16px}}@media(max-width:480px){.sf-page{width:calc(100% - 32px);margin-top:24px}.sf-grid{grid-template-columns:1fr}.sf-card-top .sf-label{max-width:calc(100% - 102px)}.sf-card-top{margin-bottom:16px}.sf-filters{padding:14px;gap:10px}.sf-filters>div{flex-basis:100%}.sf-filters button{flex:1}.sf-card .sf-role{margin-bottom:18px}.sf-profile-hero{align-items:start;flex-direction:column;gap:16px;padding-bottom:22px}.sf-profile-hero .sf-portrait{width:108px!important;height:108px!important;border-radius:18px}.sf-profile-hero h1{font-size:1.85rem}.sf-profile-hero .sf-contact{flex-direction:column;gap:9px}.sf-facts{padding:14px;gap:14px}.sf-list .sf-card{gap:16px;padding:18px}.sf-list .sf-card-top{flex-basis:72px}.sf-list .sf-portrait{width:72px!important;height:72px!important;border-radius:14px}.sf-list .sf-label{font-size:.66rem}.sf-social{gap:7px;margin-bottom:24px}}@media(prefers-reduced-motion:reduce){.sf-card,.sf-profile-link .sf-icon{transition:none}.sf-card:hover,.sf-profile-link:hover .sf-icon{transform:none}}
/* Centred staff cards, with the department subordinate to the name and role. */
.sf-card{text-align:center;padding-top:24px}.sf-card-top{justify-content:center;margin-bottom:16px}.sf-card .sf-portrait{width:100px!important;height:100px!important;border-radius:20px}.sf-card-body{align-items:center}.staffora .sf-card h3{font-size:1.1rem;margin-bottom:7px}.staffora .sf-card .sf-role{margin-bottom:8px}.staffora .sf-card .sf-label{font-size:.68rem;line-height:1.5;font-weight:550;letter-spacing:.035em;margin:0 0 18px;padding:0;background:none;color:var(--sf-muted);max-width:100%;text-align:center;text-transform:uppercase}.sf-card .sf-contact{align-items:center}.sf-card .sf-contact a{justify-content:center}.sf-card .sf-profile-link{justify-content:center;gap:10px}.sf-card .sf-excerpt{max-width:70ch;margin-inline:auto}.sf-list .sf-card{flex-direction:column;align-items:center;padding:22px 24px 0;gap:0}.sf-list .sf-card-top{flex:0 0 auto;align-items:center;margin-bottom:16px}.sf-list .sf-profile-link{width:100%;border-top:1px solid var(--sf-border);padding:13px 0;min-height:48px;margin-top:auto}.sf-list .sf-card .sf-label{font-size:.68rem}
/* Identity and professional details share one compact hero. */
.sf-profile-hero{display:block;padding:0 0 26px;margin-bottom:26px}.sf-profile-hero.sf-hero-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:28px;align-items:center}.sf-profile-identity{display:flex;align-items:center;gap:22px;min-width:0}.sf-profile-hero .sf-portrait{width:124px!important;height:124px!important;border-radius:20px}.staffora .sf-profile-hero h1{font-size:clamp(1.55rem,2.6vw,2.2rem);margin:0 0 9px;line-height:1.22;letter-spacing:-.025em}.sf-profile-hero .sf-role{font-size:.94rem;margin-bottom:8px}.sf-profile-summary>.sf-label{font-size:.67rem;line-height:1.5;background:none;padding:0;font-weight:550;letter-spacing:.035em;color:var(--sf-muted);margin:0 0 14px}.sf-profile-summary .sf-contact{font-size:.8rem;gap:8px 18px}.sf-profile-extra{border-inline-start:1px solid var(--sf-border);padding-inline-start:28px;display:flex;flex-direction:column;justify-content:center;gap:18px;align-self:stretch;min-width:0}.sf-profile-extra .sf-facts{display:grid;gap:14px;border:0;background:none;border-radius:0;padding:0;margin:0}.sf-profile-extra .sf-fact{flex:none;gap:9px}.sf-profile-extra .sf-facts dt{font-size:.73rem;font-weight:600}.sf-profile-extra .sf-facts dd{font-size:.82rem;line-height:1.6;margin-top:3px}.sf-extra-heading{font-size:.73rem;line-height:1.5;font-weight:600;color:var(--sf-muted);margin:0 0 8px}.sf-profile-extra .sf-social{margin:0;gap:7px}.sf-profile-extra .sf-social a{font-size:.74rem;padding:6px 9px;min-height:34px}.sf-profile-extra .sf-social .sf-icon{width:15px;height:15px;min-width:15px}@media(max-width:850px){.sf-profile-hero.sf-hero-split{grid-template-columns:minmax(0,1.2fr) minmax(230px,1fr);gap:22px}.sf-profile-identity{gap:16px;align-items:start}.sf-profile-hero .sf-portrait{width:100px!important;height:100px!important}.sf-profile-extra{padding-inline-start:22px}}@media(max-width:680px){.sf-profile-hero.sf-hero-split{grid-template-columns:1fr;gap:20px}.sf-profile-identity{align-items:center}.sf-profile-extra{border-inline-start:0;border-top:1px solid var(--sf-border);padding-inline-start:0;padding-top:20px;gap:16px}.sf-profile-extra .sf-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sf-profile-hero .sf-contact{flex-direction:column;gap:8px}.sf-profile-summary{width:100%}}@media(max-width:480px){.sf-profile-identity{align-items:start;gap:16px}.sf-profile-hero .sf-portrait{width:84px!important;height:84px!important;border-radius:16px}.staffora .sf-profile-hero h1{font-size:1.5rem}.sf-profile-hero .sf-role{font-size:.86rem}.sf-profile-summary>.sf-label{font-size:.64rem}.sf-profile-extra .sf-facts{grid-template-columns:1fr;gap:13px}.sf-profile-hero .sf-contact{font-size:.77rem}.sf-card .sf-portrait{width:96px!important;height:96px!important}}
