.team-grid{--tcols:4;display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(16px,2vw,24px)}.team-card{display:flex;flex:0 1 calc((100% - (var(--tcols) - 1) * clamp(16px,2vw,24px))/ var(--tcols));flex-direction:column;align-items:flex-start;padding:clamp(26px,2.6vw,34px) clamp(22px,2.4vw,30px);border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--paper) 55%,#fff);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}.team-card:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 30px 60px -46px rgba(37,32,27,.4)}.team-card:focus-visible{outline:2px solid var(--terra);outline-offset:3px}.team-card:hover .team-more{gap:.7em;color:var(--terra)}.team-av{display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:84px;height:84px;margin-bottom:18px;overflow:hidden;border:1px solid var(--line);border-radius:50%;background:var(--paper-2);color:var(--gold-deep);font-family:var(--serif);font-size:1.7rem;letter-spacing:.01em}.team-av.photo{padding:0;background:var(--paper-3)}.team-av.photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.team-card:nth-child(3n+2) .team-av{color:var(--terra)}.team-card:nth-child(3n) .team-av{color:var(--ink-2)}.team-card .tn{display:block;font-family:var(--serif);font-size:1.32rem;line-height:1.18}.team-card .tr{display:block;margin-top:6px;color:var(--terra);font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.team-card .ts{margin:12px 0 0;color:var(--ink-2);font-size:.92rem}.team-more{display:inline-flex;align-items:center;gap:.45em;margin-top:18px;color:var(--ink-soft);font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;transition:color .25s,gap .25s}.team-modal{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vw,48px);visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s}.team-modal.open{visibility:visible;opacity:1;pointer-events:auto}.team-modal__backdrop{position:absolute;inset:0;background:rgba(37,32,27,.55);backdrop-filter:blur(3px)}.team-modal__card{position:relative;z-index:2;display:grid;grid-template-columns:240px 1fr;width:min(760px,100%);max-height:88vh;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:0 50px 100px -40px rgba(37,32,27,.6);transform:translateY(16px) scale(.98);transition:transform .35s cubic-bezier(.2,.7,.2,1)}.team-modal.open .team-modal__card{transform:none}.team-modal__media{background:var(--paper-3)}.team-modal__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-top-left-radius:10px;border-top-right-radius:10px}.team-modal__mono{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;color:var(--gold-deep);font-family:var(--serif);font-size:3.4rem}.team-modal__body{padding:clamp(28px,4vw,44px)}.team-modal__role{color:var(--terra);font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}.team-modal__name{margin:10px 0 18px;font-family:var(--serif);font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.06}.team-modal__bio{color:var(--ink-2);font-size:1.02rem;line-height:1.7}.team-modal__bio p{margin:0 0 1em}.team-modal__bio p:last-child{margin-bottom:0}.team-modal__close{position:absolute;top:14px;right:14px;z-index:3;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line-2);border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.1rem;line-height:1;transition:background .25s,color .25s,border-color .25s}.team-modal__close:hover{border-color:var(--ink);background:var(--ink);color:var(--on-dark)}@media (max-width:1100px){.team-grid{--tcols:3}}@media (max-width:820px){.team-grid{--tcols:2}}@media (max-width:600px){.team-modal__card{grid-template-columns:1fr}.team-modal__media{max-height:300px}.team-modal__media img{-o-object-position:50% 30%;object-position:50% 30%}}@media (max-width:480px){.team-grid{--tcols:1}}