/* Team redesign adapted to native WordPress records and existing member panel. */
/* 1 — Hero: compact two-column (text + team photo) */
.ot-hero{margin-top:80px;background:var(--fa-white);padding:64px 0 80px}
.ot-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 80px;align-items:center}
.ot-hero__title{margin:0;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:64px;line-height:1;letter-spacing:-.035em;color:var(--fa-ink);text-wrap:balance}
.ot-hero__sub{margin:24px 0 0;max-width:520px;font-family:var(--font-body);font-weight:500;font-size:18px;line-height:1.45;letter-spacing:-.01em;color:var(--fa-ink);text-wrap:pretty}
.ot-hero__jump{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.ot-jump{display:inline-flex;align-items:center;gap:10px;padding:15px 20px;border:0;background:var(--fa-ink);color:#fff;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:16px;line-height:1;cursor:pointer;transition:background .2s,color .2s}
.ot-jump:hover{background:var(--fa-purple)}
.ot-jump--ghost{background:transparent;color:var(--fa-ink);box-shadow:inset 0 0 0 1.5px var(--fa-ink)}
.ot-jump--ghost:hover{background:var(--fa-ink);color:#fff}
.ot-heroimg{margin:0;aspect-ratio:4/3;background:#F0F0F0;overflow:hidden}
.ot-heroimg img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* 2 — Directors (always first; order randomised per load) */
.otd{background:#050E1E;padding:80px 0;scroll-margin-top:80px}
.otd-head,.otm-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin-bottom:40px;flex-wrap:wrap}
.otd-title,.otm-title{margin:0;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:40px;line-height:1;letter-spacing:-.03em;color:#050E1E}
.otd-title{color:#fff}
.otd-note{margin:0;font-family:var(--font-body);font-weight:500;font-size:16px;line-height:1.4;color:#fff}
.otd-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.otd-card{position:relative;display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:32px;padding:24px;background:rgba(255,255,255,.06);color:#fff;transition:background .2s}
.otd-card:hover{background:rgba(255,255,255,.11)}
.otd-cover{position:absolute;inset:0;z-index:1}
.otd-photo{aspect-ratio:1/1;background:var(--hc);overflow:hidden}
.otd-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 15%;transform-origin:50% 0;transform:translate(var(--fa-portrait-x,0%),var(--fa-portrait-y,0%)) scale(var(--fa-portrait-zoom,1));transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.otd-card:hover .otd-photo img{transform:translate(var(--fa-portrait-x,0%),var(--fa-portrait-y,0%)) scale(calc(var(--fa-portrait-zoom,1) * 1.04))}
.otd-meta{display:flex;flex-direction:column;gap:10px;min-width:0;padding:4px 0}
.otd-eyebrow{font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:14px;line-height:1;color:#FCEB4E}
.otd-name{margin:0;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:36px;line-height:1.05;letter-spacing:-.03em;color:#fff;text-wrap:balance}
.otd-role{margin:0;font-family:var(--font-body);font-weight:500;font-size:16px;line-height:1.2;color:#fff}
.otd-actions{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.otd-meet{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:16px;line-height:1;color:#fff}
.otd-meet__btn{width:40px;height:40px;border-radius:100px;background:#50DDA4;color:#050E1E;display:inline-flex;align-items:center;justify-content:center;transition:transform .25s ease}
.otd-card:hover .otd-meet__btn{transform:translateX(4px)}
.otd-li{position:relative;z-index:2;display:inline-flex;width:24px;height:24px;color:#fff}
.otd-li:hover{color:#50DDA4}
.otd-li svg,.otm-li svg{display:block}

/* 3 — Team: sticky department filter (shared .ot-filter) + dense grid */
.otm-section{background:var(--fa-white);padding:0 0 96px;scroll-margin-top:80px}
.otm-bar{position:sticky;top:80px;z-index:20}
.ot-tag__n{margin-left:8px;font-family:var(--font-body);font-weight:500;font-size:14px}
.otm-head{padding-top:56px}
.otm-count{margin:10px 0 0;font-family:var(--font-body);font-weight:500;font-size:16px;line-height:1.3;color:#050E1E}
.otm-search{display:flex;align-items:center;gap:10px;width:300px;max-width:100%;border-bottom:1.5px solid #050E1E;padding:10px 0;color:#050E1E}
.otm-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:var(--font-body);font-weight:500;font-size:16px;color:#050E1E}
.otm-search input::placeholder{color:#050E1E;opacity:.6}
.otm-search button{border:0;background:transparent;padding:0;cursor:pointer;color:#050E1E;display:inline-flex}
.otm-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:48px 24px}
@keyframes otmIn{from{opacity:0;transform:translateY(12px)}}
.otm-card{position:relative;display:flex;flex-direction:column;min-width:0;animation:otmIn .45s cubic-bezier(.22,.61,.36,1) both;animation-delay:var(--d,0ms)}
.otm-cardlink{display:flex;flex-direction:column;gap:16px;text-decoration:none;color:inherit}
.otm-photo{position:relative;aspect-ratio:1/1;background:#f0f0f0;overflow:hidden;transition:background .2s ease}
.otm-card:hover .otm-photo{background:var(--hc)}
.otm-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 15%;transform-origin:50% 0;transform:translate(var(--fa-portrait-x,0%),var(--fa-portrait-y,0%)) scale(var(--fa-portrait-zoom,1));transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.otm-card:hover .otm-photo img{transform:translate(var(--fa-portrait-x,0%),var(--fa-portrait-y,0%)) scale(calc(var(--fa-portrait-zoom,1) * 1.04))}
.otm-meet{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:#fff;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:14px;line-height:1;color:#050E1E;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}
.otm-card:hover .otm-meet,.otm-cardlink:focus-visible .otm-meet{opacity:1;transform:none}
.otm-meta{display:flex;flex-direction:column;gap:6px;padding-right:32px}
.otm-name{margin:0;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:20px;line-height:1.15;letter-spacing:-.01em;color:#050E1E;text-wrap:balance}
.otm-role{margin:0;font-family:var(--font-body);font-weight:500;font-size:14px;line-height:1.25;color:#050E1E}
.otm-li{position:absolute;right:0;bottom:0;display:inline-flex;width:24px;height:24px;color:#050E1E}
.otm-li:hover{color:var(--fa-purple)}
.otm-empty{margin:0;padding:48px 0;font-family:var(--font-body);font-weight:500;font-size:18px;color:#050E1E}
.otm-empty button{border:0;background:none;padding:0;font:inherit;color:var(--fa-purple);text-decoration:underline;cursor:pointer}
@media (prefers-reduced-motion:reduce){.otm-card{animation:none}.otm-photo img,.otd-photo img,.otm-meet{transition:none}}

@media (max-width:1199px){
  .ot-hero__title{font-size:48px}
  .otd-title,.otm-title{font-size:32px}
  .otd-card{grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:24px}
  .otd-name{font-size:28px}
  .otm-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  /* Touch: card nearest viewport centre gets the hover visuals on scroll. */
  .otm-card.is-active .otm-photo{background:var(--hc)}
  .otm-card.is-active .otm-photo img{transform:translate(var(--fa-portrait-x,0%),var(--fa-portrait-y,0%)) scale(calc(var(--fa-portrait-zoom,1) * 1.04))}
}
@media (max-width:999px){.otd-grid{grid-template-columns:1fr}}
@media (max-width:899px){
  .ot-hero{padding:48px 0 56px}
  .ot-hero__grid{grid-template-columns:1fr}
  .ot-heroimg{aspect-ratio:16/9}
  .otm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .otd{padding:56px 0}
}
@media (max-width:599px){
  .ot-hero__title{font-size:36px}
  .ot-hero__sub{font-size:16px}
  .otd-title,.otm-title{font-size:28px}
  .otd-card{grid-template-columns:120px minmax(0,1fr);gap:16px;padding:16px}
  .otd-name{font-size:22px}
  .otd-role{font-size:14px}
  .otd-meet__label{display:none}
  .otm-head{padding-top:40px;margin-bottom:28px}
  .otm-search{width:100%}
  .otm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 16px}
  .otm-cardlink{gap:12px}
  .otm-name{font-size:16px}
  .otm-role{font-size:13px}
  .otm-section{padding-bottom:64px}
}

.ot-filter{flex:0 0 auto;background:var(--fa-ink);padding:0}
.ot-filter__row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.ot-tag{font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:18px;line-height:1;padding:20px;border:0;background:transparent;color:var(--fa-white);border-radius:100px;cursor:pointer;transition:background .15s ease,color .15s ease}
.ot-tag:hover{background:rgba(255,255,255,.12)}
.ot-tag.is-active{background:#FCEB4E;color:var(--fa-ink);border-radius:0}
.otm-category{display:none}
@media (max-width:1199px){
  .ot-filter__row{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
  .ot-filter__row::-webkit-scrollbar{display:none}
  .ot-tag{flex:0 0 auto;white-space:nowrap}
  .otm-bar .ot-filter__row{display:none}
  .otm-bar .otm-category{display:block;min-width:0;padding:10px 0}
  .otm-category__control{position:relative;display:block;background:#FCEB4E;color:var(--fa-ink)}
  .otm-category__control::after{content:"";position:absolute;right:18px;top:50%;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-70%) rotate(45deg);pointer-events:none}
  .otm-category__value{display:flex;align-items:center;box-sizing:border-box;min-height:72px;padding:12px 44px 12px 14px;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:16px;line-height:1.4;letter-spacing:0;overflow-wrap:anywhere;pointer-events:none}
  .otm-category select{position:absolute;inset:0;box-sizing:border-box;width:100%;height:100%;max-width:100%;min-width:0;margin:0;opacity:0;font-size:16px;cursor:pointer}
  .otm-category__control:focus-within{outline:2px solid var(--fa-white);outline-offset:3px}
}

/* Native markup and WordPress toolbar offsets. */
.ot-top{background:var(--fa-white)}
.ot-hero{margin-top:0;padding-top:calc(var(--header-height,80px) + 64px)}
.ot-hero__grid--text{grid-template-columns:minmax(0,1fr)}
.ot-hero__sub p{margin:0}
.ot-jump{text-decoration:none}
.ot-jump:hover{color:#fff}
.otm-card[hidden],.otm-empty[hidden],[data-team-controls][hidden]{display:none!important}
.otm-card{animation:none}
.otm-section,.otd{scroll-margin-top:calc(96px + var(--fa-admin-bar-offset,0px))}
.otm-bar{top:calc(80px + var(--fa-admin-bar-offset,0px))}
.otm-search:focus-within{outline:2px solid var(--fa-purple);outline-offset:5px}
.otm-cardlink:focus-visible,.otm-li:focus-visible,.ot-jump:focus-visible,.ot-tag:focus-visible{outline:3px solid var(--fa-purple);outline-offset:4px}
.otm-li-slot{position:static}
.otm-meet{pointer-events:none;z-index:1}
.otd-card{display:block}
.otd-card .otm-cardlink{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:32px;height:100%;color:#fff}
.otd-card .otm-photo{background:var(--hc)}
.otd-card .otm-meta{gap:12px;justify-content:center;padding-right:0;padding-bottom:36px}
.otd-card .otm-name{font-size:36px;line-height:1.05;color:#fff}
.otd-card .otm-role{font-size:16px;color:#fff}
.otd-card .otm-li{right:24px;bottom:24px;color:#fff}
.otd-card .otm-meet{opacity:1;transform:none;background:#50DDA4}
.otd-card:focus-within{background:rgba(255,255,255,.11)}
@media(min-width:600px) and (max-width:1199px){.otm-bar{top:calc(72px + var(--fa-admin-bar-offset,0px))}}
@media(max-width:1199px){.otd-card .otm-cardlink{grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:24px}.otd-card .otm-name{font-size:28px}}
@media(max-width:899px){.ot-hero{padding-top:calc(var(--header-height,80px) + 48px)}}
@media(max-width:599px){.otm-bar{top:calc(60px + var(--fa-admin-bar-offset,0px))}.otd-card .otm-cardlink{grid-template-columns:120px minmax(0,1fr);gap:16px}.otd-card .otm-name{font-size:22px}.otd-card .otm-role{font-size:14px}.otd-card .otm-li{right:16px;bottom:16px}.otd-card .otm-meet{font-size:12px;padding:7px 9px;left:8px;bottom:8px}.otm-cardlink .otm-meet{opacity:1;transform:none}}

/* Member details: centred, bounded dialog; current CMS content stays intact. */
.mp-scroll[hidden]{display:none!important}
.mp-scroll{position:fixed;inset:var(--fa-admin-bar-offset,0px) 0 0;z-index:100000;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
.mp-overlay{position:fixed;inset:var(--fa-admin-bar-offset,0px) 0 0;background:rgba(5,14,30,.8);opacity:0;pointer-events:none;transition:opacity 180ms ease}
.mp-overlay.is-open{opacity:1;pointer-events:auto}
.mp-panel{position:relative;z-index:1;width:calc(100% - 48px);max-width:1040px;margin:24px auto;padding:40px;background:#fff;box-sizing:border-box;opacity:0;transform:translateY(12px);transition:opacity 180ms ease,transform 180ms ease}
.mp-panel.is-open{opacity:1;transform:none}
.mp-bg{display:none}
.mp-content{position:relative;display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);column-gap:40px;row-gap:32px;align-items:start}
.mp-closewrap{position:sticky;top:16px;z-index:2;grid-column:1/-1;grid-row:1;align-self:start;display:flex;justify-content:flex-end;height:0;pointer-events:none}
.mp-close{width:44px;height:44px;border:0;border-radius:50%;background:#50DDA4;color:#050E1E;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;pointer-events:auto;box-shadow:0 0 0 6px #fff}
.mp-close svg{display:block}
.mp-scroll :is(button,a):focus-visible{outline:3px solid #5939F5;outline-offset:4px}
.mp-head{grid-column:1/-1;grid-row:1;display:flex;flex-direction:column;gap:10px;padding-right:64px;margin:0;min-width:0}
.mp-name{margin:0;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:clamp(28px,4vw,40px);line-height:1.1;letter-spacing:-.02em;color:#050E1E;overflow-wrap:anywhere}
.mp-role{margin:0;font-family:var(--font-body);font-weight:500;font-size:16px;line-height:1.4;color:#050E1E}
.mp-main{grid-column:1;grid-row:2;display:flex;flex-direction:column;align-items:stretch;gap:20px;min-width:0;margin:0}
.mp-photo{order:-1;width:100%;aspect-ratio:1/1;background:#f0f0f0;overflow:hidden}
.mp-photo[hidden]{display:none}
.mp-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 15%;transform-origin:50% 0;transform:translate(var(--fa-portrait-x,0%),var(--fa-portrait-y,0%)) scale(var(--fa-portrait-zoom,1))}
.mp-contact{display:flex;flex-direction:column;gap:12px;min-width:0}
.mp-contact [data-member-contact]{color:inherit;text-decoration:none;font:inherit}
.mp-contact [data-member-contact]:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:3px}
.mp-contact :is(span,[data-member-contact]){font-family:var(--font-body);font-weight:500;font-size:15px;line-height:1.45;color:#050E1E;overflow-wrap:anywhere}
.mp-li{display:inline-flex;width:28px;height:28px;color:#050E1E}
.mp-li[hidden],.mp-contact :is(span,[data-member-contact])[hidden]{display:none}
.mp-li svg{display:block;width:100%;height:100%}
.mp-bio{grid-column:2;grid-row:2;display:flex;flex-direction:column;gap:1em;min-width:0;margin:0;width:auto}
.mp-bio p{margin:0;font-family:var(--font-body);font-weight:400;font-size:16px;line-height:1.65;color:#050E1E;overflow-wrap:anywhere}
.mp-articles{grid-column:1/-1;display:flex;flex-direction:column;gap:24px;min-width:0;padding-top:24px;border-top:1px solid #dce0e5}
.mp-articles[hidden]{display:none}
.mp-articles__h{margin:0;font-family:var(--font-display);font-weight:var(--fw-halbfett);font-size:28px;line-height:1.15;letter-spacing:-.02em;color:#050E1E}
.mp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
body.mp-open{overflow:hidden}
html.mp-lock{overflow:hidden;scrollbar-gutter:stable}
.mp-scroll .bl-card{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.mp-scroll .bl-card__media{width:100%;aspect-ratio:2240/1260;overflow:hidden;background:var(--fa-purple)}
.mp-scroll .bl-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 300ms ease}
.mp-scroll .bl-card:hover .bl-card__media img{transform:scale(1.04)}
.mp-scroll .bl-card__body{display:flex;flex-direction:column;gap:12px;padding:20px 0 0}
.mp-scroll .bl-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.mp-scroll .bl-topic{display:inline-flex;align-items:center;background:var(--fa-pink);color:var(--fa-ink);padding:5px 11px;font:var(--fw-halbfett) 13px/1.2 var(--font-display);letter-spacing:-.01em}
.mp-scroll .bl-meta__date{font:var(--fw-kraftig) 13px/1.3 var(--font-body);color:rgba(5,14,30,.5)}
.mp-scroll .bl-card__title{margin:0;font:var(--fw-halbfett) 20px/1.25 var(--font-display);letter-spacing:-.02em;color:#050e1e;text-wrap:pretty}
.mp-scroll .bl-card__excerpt{margin:0;font:var(--fw-kraftig) 14px/1.5 var(--font-body);letter-spacing:-.01em;color:rgba(5,14,30,.72)}
.mp-scroll .bl-card:hover .fa-svc-learn__btn{background:var(--fa-ink);color:var(--fa-white)}

@media(max-width:767px){
 .mp-panel{width:calc(100% - 24px);margin:12px auto;padding:24px}
 .mp-content{grid-template-columns:minmax(0,1fr);gap:24px}
 .mp-main{grid-column:1;grid-row:2}
 .mp-photo{max-width:320px}
 .mp-bio{grid-column:1;grid-row:3}
 .mp-grid{grid-template-columns:minmax(0,1fr)}
 .mp-closewrap{top:12px}
 .mp-head{padding-right:56px}
 .mp-articles__h{font-size:24px}
}
@media(max-width:399px){.mp-panel{padding:20px}.mp-name{font-size:26px}}
@media(prefers-reduced-motion:reduce){.mp-panel,.mp-overlay{transition:none;transform:none}}
