.bhqt-grid{display:grid;grid-template-columns:repeat(var(--bhqt-cols),minmax(0,1fr));gap:var(--bhqt-gap);width:100%}
.bhqt-card{text-align:center;min-width:0}.bhqt-open{display:block;width:100%;border:0;padding:0;background:transparent;cursor:pointer;color:inherit}
.bhqt-image{display:block;aspect-ratio:3/4;overflow:hidden;border-radius:10px;background:#f0f1f2}
.bhqt-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.bhqt-open:hover img{transform:scale(1.035)}.bhqt-open:focus-visible{outline:3px solid #2475a5;outline-offset:4px;border-radius:10px}
.bhqt-placeholder{display:block;width:100%;height:100%;background:#e7e9eb}
.bhqt-name{font-size:1.15rem;line-height:1.3;margin:14px 0 3px;font-weight:650}
.bhqt-role{font-size:.94rem;color:#60656a;line-height:1.45;margin:0}
.bhqt-dialog{border:0;border-radius:12px;box-shadow:0 16px 60px #0004;padding:28px;max-width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;color:#222}
.bhqt-dialog::backdrop{background:#0009}.bhqt-dialog-inner{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:25px;align-items:start}
.bhqt-dialog-photo{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:10px}
.bhqt-dialog h2{margin:0 30px 6px 0;font-size:1.7rem}.bhqt-dialog-role{color:#666;margin:0 0 18px}
.bhqt-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:32px;line-height:1;cursor:pointer;color:#333}
.bhqt-bio>*:first-child{margin-top:0}
@media(max-width:900px){.bhqt-grid{grid-template-columns:repeat(min(3,var(--bhqt-cols)),minmax(0,1fr))}}
@media(max-width:600px){.bhqt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.bhqt-dialog-inner{grid-template-columns:1fr}.bhqt-dialog-photo{max-width:180px}.bhqt-dialog{padding:20px}}
@media(max-width:380px){.bhqt-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.bhqt-image img{transition:none}}

/* Centered modal with gentle open/close transitions. */
dialog.bhqt-dialog{position:fixed!important;inset:0!important;margin:auto!important;box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-height:min(85dvh,850px);opacity:0;transform:translateY(12px) scale(.985);transition:opacity .28s ease,transform .28s ease,display .28s allow-discrete,overlay .28s allow-discrete}
dialog.bhqt-dialog[open]:not(.bhqt-closing){opacity:1;transform:translateY(0) scale(1)}
@starting-style{dialog.bhqt-dialog[open]:not(.bhqt-closing){opacity:0;transform:translateY(12px) scale(.985)}}
dialog.bhqt-dialog::backdrop{background:rgba(0,0,0,0);transition:background .28s ease,display .28s allow-discrete,overlay .28s allow-discrete}
dialog.bhqt-dialog[open]:not(.bhqt-closing)::backdrop{background:rgba(0,0,0,.58)}
@starting-style{dialog.bhqt-dialog[open]:not(.bhqt-closing)::backdrop{background:rgba(0,0,0,0)}}
.bhqt-nav{display:flex;justify-content:space-between;gap:16px;clear:both;margin-top:24px;border-top:1px solid #e5e5e5;padding-top:16px}
.bhqt-nav button{border:1px solid #d0d0d0;border-radius:6px;background:#fff;color:#222;padding:9px 14px;cursor:pointer;font:inherit}
.bhqt-nav button:hover{background:#f3f3f3}.bhqt-nav button:focus-visible{outline:3px solid #2475a5;outline-offset:2px}
@media(prefers-reduced-motion:reduce){dialog.bhqt-dialog,dialog.bhqt-dialog::backdrop{transition:none!important;transform:none!important}}

/* Keep all biography pop-up content left aligned regardless of theme styles. */
.bhqt-dialog, .bhqt-dialog-inner, .bhqt-dialog-copy, .bhqt-dialog-copy h2, .bhqt-dialog-role, .bhqt-bio, .bhqt-bio p, .bhqt-bio li { text-align:left !important; }
