/* Team popup: the current demo's typography, materials and layout, scoped to this dialog. */
.site-header nav [data-team-open]{cursor:pointer}
.site-header nav [data-team-open]:hover{color:var(--action)}
@font-face{font-family:"Team Geist";src:url('/assets/geist-400.ttf') format('truetype');font-weight:300 400;font-display:swap}
@font-face{font-family:"Team Geist";src:url('/assets/geist-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:"Team Bricolage";src:url('/assets/bricolage-500.ttf') format('truetype');font-weight:500;font-display:swap}
html.team-open{overflow:hidden}
.team-modal{--team-cave:#17110e;--team-cave-2:#211813;--team-rule:#2c2119;--team-bone:#f3e9df;--team-dim:#b9aa9c;--team-copper:#d27f45;position:fixed;inset:0;z-index:100;align-items:center;justify-content:center;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;padding:20px;border:0;background:transparent;color:var(--team-bone);font:300 17px/1.55 "Team Geist",system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}
.team-modal[open]{display:flex}
.team-modal::backdrop{background:rgba(10,7,5,.72);backdrop-filter:blur(8px)}
.team-modal,.team-modal *{box-sizing:border-box}
.team-modal .team-box{width:min(1040px,100%);max-height:min(92vh,calc(100dvh - 40px));overflow:auto;background:var(--team-cave);border:1px solid var(--team-rule);border-radius:20px;padding:clamp(22px,4vw,34px);position:relative;animation:team-arrival .35s cubic-bezier(.2,.9,.3,1.1);scrollbar-color:var(--team-copper) var(--team-cave-2)}
@keyframes team-arrival{from{opacity:0;transform:translateY(16px) scale(.98)}}
.team-modal h3{font:500 clamp(22px,2.2vw,30px)/1.1 "Team Bricolage",system-ui,sans-serif;letter-spacing:-.015em;font-variation-settings:"opsz" 48;margin:0 0 6px}
.team-modal p{margin:0}
.team-modal .sub{font-size:14.5px;color:var(--team-dim);margin-bottom:22px}
.team-modal .x{position:absolute;top:14px;right:14px;width:36px;height:36px;padding:0;border-radius:50%;border:1px solid var(--team-rule);background:var(--team-cave-2);color:var(--team-dim);font:400 18px "Team Geist",system-ui,sans-serif;cursor:pointer;display:grid;place-items:center}
.team-modal .x:hover{color:var(--team-bone)}
.team-modal :focus-visible{outline:2px solid var(--team-copper);outline-offset:3px}
.team-modal .people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.5vw,28px);margin-top:8px}
.team-modal .person{min-width:0}
.team-modal .person .photo{aspect-ratio:1;border-radius:16px;background:var(--team-cave-2);border:1px solid var(--team-rule);display:grid;place-items:center;overflow:hidden;position:relative}
.team-modal .person .photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.team-modal .person .photo .team-nikhil-photo{object-position:50% 12%}
.team-modal .person h3{font-size:22px;margin-top:14px}
.team-modal .person .role{font-size:13px;color:var(--team-copper);margin-top:4px;font-weight:500}
.team-modal .person p{font-size:14px;color:var(--team-dim);line-height:1.5;margin-top:8px}
.team-modal::selection,.team-modal ::selection{color:var(--team-cave);background:var(--team-copper)}
@media(max-width:760px){.team-modal .people{grid-template-columns:1fr}.team-modal .person{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:start}.team-modal .person h3{margin-top:0}.team-modal #team-h{padding-right:28px}}
@media(prefers-reduced-motion:reduce){.team-modal .team-box{animation:none}}
