/* =======================================
   HERO LINK (page-specific MEMBERS)
======================================= */

.hero-link{
  position:absolute;
  top:0;
  left:30%;
  width:40%;
  height:50%;
  cursor:pointer;
  z-index:5;
}

/* =======================================
   PAGINA MEMBRI
======================================= */

/* Griglia membri */
#members-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

/* Card singolo membro */
.member-card{
  border:1px solid var(--br);
  background:var(--card);
  border-radius:14px;
  overflow:hidden;
  text-align:center;
  box-shadow:0 4px 12px rgba(0,0,0,0.3);
}

.member-card img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  border-bottom:1px solid #222;
}

.member-card .card-txt{
  padding:16px;
}

.member-card .member-name{
  font-size:1.25rem;
  font-weight:700;
  margin:0 0 5px;
  color:var(--fg);
}

.member-card .member-role{
  font-size:0.95rem;
  color:var(--muted);
  margin:0;
}

/* =======================================
   RESPONSIVE
======================================= */

@media (max-width:980px){
  #members-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:640px){
  #members-grid{
    grid-template-columns:1fr;
    gap:20px;
  }
}
/* ======================================= SOLO pagina membri: box esterna a 800px 
.members-page .page-content{
  max-width: 800px;
}
======================================= */
.member-card--clickable { cursor: pointer; }
.member-profile-link{
  display:inline-block;
  margin-top:14px;
  font-weight:800;
  font-size:0.85rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
  padding:10px 16px;
  border-radius:8px;
  background: linear-gradient(180deg, #8b0000 0%, #5a0000 100%);
  color:#fff;
  border:1px solid #3a0000;
  transition: all .25s ease;
}

.member-profile-link:hover{
  background: linear-gradient(180deg, #b30000 0%, #7a0000 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(139,0,0,.4);
}