.ct-team{--ct-columns:4;--ct-gap:18px;--ct-padding:32px;--ct-radius:48px;--ct-card-radius:20px;--ct-text:#171717;--ct-muted:#555;--ct-panel:#f7f7f7;--ct-tabs:#f7f7f7;--ct-active:#fff;--ct-avatar:#e5e8ea;--ct-figure:#a1aab1;--ct-label:#fff;--ct-accent:#222;width:100%;color:var(--ct-text);font-family:inherit}
.ct-team,.ct-team *{box-sizing:border-box}
.ct-team .ct-tab-wrap{display:flex;justify-content:center;margin-bottom:32px}
.ct-team .ct-tabs{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:6px;border-radius:40px;padding:8px;background:var(--ct-tabs);max-width:100%}
.ct-team .ct-tab{appearance:none;border:0;border-radius:30px;background:transparent;color:var(--ct-text);padding:13px 24px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:2px;text-transform:uppercase;cursor:pointer;white-space:normal;transition:background .2s,box-shadow .2s}
.ct-team .ct-tab:hover{background:var(--ct-active)}
.ct-team .ct-tab[aria-selected=true]{background:var(--ct-active);box-shadow:0 2px 2px #0002}
.ct-team :is(button,a,[tabindex]):focus-visible{outline:2px solid var(--ct-accent);outline-offset:4px}
.ct-team .ct-panel{background:var(--ct-panel);border-radius:var(--ct-radius);padding:var(--ct-padding)}
.ct-team .ct-panel[hidden]{display:none!important}
.ct-team .ct-heading{text-align:center;margin:0 0 26px;color:var(--ct-text);font-family:inherit;font-size:30px;font-weight:600;line-height:1.2;letter-spacing:-1px}
.ct-team .ct-grid{display:grid;grid-template-columns:repeat(var(--ct-columns),minmax(0,1fr));gap:var(--ct-gap)}
.ct-team .ct-card{position:relative;min-width:0;display:flex;flex-direction:column;border-radius:var(--ct-card-radius);background:var(--ct-avatar);border:1px solid #00000008;box-shadow:0 1px 2px #00000008}
.ct-team .ct-card-button{display:flex;flex-direction:column;position:relative;flex:1;appearance:none;background:transparent;border:0;border-radius:inherit;padding:0;width:100%;text-align:inherit;font:inherit;color:inherit;cursor:pointer}
.ct-team .ct-portrait{position:relative;display:flex;align-items:flex-end;justify-content:center;aspect-ratio:1/1.13;width:100%;overflow:hidden;border-radius:var(--ct-card-radius) var(--ct-card-radius) 0 0;background:linear-gradient(145deg,#ffffff55,transparent),var(--ct-avatar)}
.ct-team .ct-avatar{display:block;width:82%;height:92%;color:var(--ct-figure);transition:transform .35s ease;transform-origin:50% 100%}
.ct-team .ct-card:hover .ct-avatar{transform:scale(1.035)}
.ct-team .ct-photo{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center top;transition:transform .35s ease}
.ct-team .ct-card:hover .ct-photo{transform:scale(1.035)}
.ct-team .ct-initials{align-self:center;font-size:clamp(38px,5vw,80px);font-weight:500;letter-spacing:-.04em;color:var(--ct-figure)}
.ct-team .ct-label{position:relative;margin:-25px 8px 8px;z-index:1;padding:15px 9px 17px;background:var(--ct-label);border-radius:20px;min-height:94px;text-align:center;flex:1;width:calc(100% - 16px);box-shadow:0 1px 2px #00000008}
.ct-team .ct-name{font-family:inherit;font-size:17px;line-height:1.3;font-weight:600;color:var(--ct-text);margin:0;overflow-wrap:anywhere}
.ct-team .ct-role{font-family:inherit;font-size:13px;line-height:1.45;font-weight:400;color:var(--ct-muted);margin:6px 0 0;overflow-wrap:anywhere}
.ct-team .ct-dialog{color:var(--ct-text);background:var(--ct-active);border:0;border-radius:24px;padding:40px;width:min(560px,calc(100% - 32px));max-height:85dvh;overflow:auto;box-shadow:0 20px 80px #0003;word-break:normal;overflow-wrap:anywhere}
.ct-team .ct-dialog::backdrop{background:#0008;backdrop-filter:blur(4px)}
.ct-team .ct-dialog h2{font-family:inherit;font-weight:600;font-size:28px;line-height:1.2;margin:0 30px 10px 0;color:inherit}
.ct-team .ct-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:inherit;font-size:30px;line-height:1;padding:8px;cursor:pointer}
.ct-team .ct-dialog a{color:inherit;text-decoration:underline}
.ct-team .ct-bio{margin-top:24px;font-size:16px;line-height:1.6}
@media(max-width:1024px){.ct-team{--ct-columns:2}}
@media(max-width:767px){.ct-team{--ct-columns:1;--ct-padding:20px;--ct-radius:28px}.ct-team .ct-tabs{width:100%;border-radius:24px;gap:4px}.ct-team .ct-tab{flex:1;padding:12px 10px;font-size:10px;letter-spacing:1px}.ct-team .ct-heading{font-size:25px}.ct-team .ct-tab-wrap{margin-bottom:24px}.ct-team .ct-dialog{padding:32px 24px}}
@media(prefers-reduced-motion:reduce){.ct-team *{transition:none!important;animation:none!important}}
