/* Pagina Team — trattamento fotografico uniforme */
.dt-defs{position:absolute;width:0;height:0;overflow:hidden}

.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.member{background:#061a3a;padding:0 0 30px;display:flex;flex-direction:column;transition:background .3s}
.member:hover{background:#0a2757}

.portrait{position:relative;aspect-ratio:1/1;overflow:hidden;background:#04162f;border-bottom:1px solid var(--line)}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;
  /* trattamento identico per ogni foto: duotone di brand + micro contrasto */
  filter:url(#analytiko-duotone) contrast(1.18) brightness(.97);
  transition:filter .45s ease,transform .6s ease}
.member:hover .portrait img{filter:none;transform:scale(1.03)}
.portrait:after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(0deg,rgba(102,217,255,.07) 0 1px,transparent 1px 3px);
  mix-blend-mode:soft-light;opacity:.75}
/* vignettatura comune: uniforma sfondi fotografici diversi */
.portrait:not(.mark):before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 38%,transparent 42%,rgba(3,16,42,.55) 100%);
  transition:opacity .45s ease}
.member:hover .portrait:not(.mark):before{opacity:.35}

/* Segno grafico per le posizioni non ancora coperte: stessa geometria, nessuna foto finta */
.portrait.mark{display:grid;place-items:center;background:
  radial-gradient(circle at 50% 42%,rgba(47,125,244,.32),transparent 62%),
  repeating-linear-gradient(0deg,rgba(102,217,255,.06) 0 1px,transparent 1px 3px),
  linear-gradient(150deg,#04162f,#071f42)}
.portrait.mark span{font:400 26px DM Mono,monospace;letter-spacing:.16em;color:#7fd4ff;
  border:1px solid rgba(102,217,255,.32);border-radius:50%;width:104px;height:104px;display:grid;place-items:center}
.portrait.mark:before{content:"";position:absolute;width:64%;aspect-ratio:1;border:1px solid rgba(143,202,255,.16);border-radius:50%;transform:rotate(24deg) scaleY(.42)}

.member-body{padding:26px 26px 0;display:flex;flex-direction:column;gap:8px;flex:1}
.member .role{font:400 10px DM Mono,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}
.member h3{font-size:21px;font-weight:400;letter-spacing:-.02em;margin:0;color:#fff}
.member h3.vacant{color:#9fb8d4;font-weight:300}
.member p{font-size:13.5px;line-height:1.75;color:#a8c0da;margin:0}
.member .tag-open{align-self:flex-start;margin-top:12px;font:400 9px DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase;color:#b9eaff;border:1px solid rgba(102,217,255,.32);padding:7px 11px}
.member .member-link{margin-top:14px;font:500 10px DM Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);text-decoration:none}
.member .member-link:hover{color:#fff}


@media(max-width:980px){.team-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.team-grid{grid-template-columns:1fr}.portrait.mark span{width:88px;height:88px;font-size:22px}}
@media(prefers-reduced-motion:reduce){.portrait img{transition:none}.member:hover .portrait img{transform:none}}

.member h3{font-family:"Inter Tight",Inter,Arial,sans-serif;font-weight:500}
