/* =====================================================================
   Single Membro — perfil do sócio/membro + seus conteúdos.
   ===================================================================== */
.single-membro { display: block; }

/* --- Cabeçalho do perfil (foto + dados) --- */
/* Padding-top considera a altura do site-header overlay (~80px) pra não sobrepor o menu. */
.single-membro .memb-hero { padding-block: clamp(7rem, 5rem + 4vw, 132px) clamp(2rem, 1.5rem + 2vw, 48px); }
.single-membro .memb-hero__grid {
	display: grid;
	grid-template-columns: minmax(280px, 420px) 1fr;
	gap: clamp(1.5rem, 1rem + 3vw, 56px);
	align-items: start;
}
/* Variante sem foto: 1 coluna centralizada, max-width pra leitura confortável. */
.single-membro .memb-hero--no-photo .memb-hero__grid {
	grid-template-columns: 1fr;
}
.single-membro .memb-hero--no-photo .memb-hero__body {
	max-width: 78ch;
}
.single-membro .memb-hero__photo { display: block; border-radius: 16px; overflow: hidden; background: #d6d6d0; }
.single-membro .memb-hero__photo img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; filter: grayscale(1) contrast(1.02); }

.single-membro .memb-hero__back {
	display: inline-flex; align-items: center; gap: 8px;
	font-size: 13.5px; font-weight: 500; color: var(--leto-gray);
	text-decoration: none; margin-bottom: clamp(1rem, .8rem + 1vw, 22px);
	transition: color .2s var(--ease);
}
.single-membro .memb-hero__back:hover { color: var(--leto-ink); }
.single-membro .memb-hero__back svg { width: 17px; height: 17px; }
.single-membro .memb-hero__name { margin: 0; font-size: clamp(1.8rem, 1.2rem + 2.2vw, 40px); font-weight: 500; line-height: 1.08; color: var(--leto-ink); }
.single-membro .memb-hero__role { margin: .7rem 0 0; font-size: clamp(15px, 14px + .3vw, 17px); color: var(--leto-green-deep, #6f7d44); font-weight: 500; }
.single-membro .memb-hero__bio { margin-top: clamp(1.25rem, 1rem + 1.5vw, 26px); font-size: 15.5px; line-height: 1.6; color: var(--leto-ink); max-width: 64ch; }
.single-membro .memb-hero__bio p { margin: 0 0 1em; }
.single-membro .memb-hero__bio p:last-child { margin-bottom: 0; }
.single-membro .memb-hero__edu { margin-top: 1.2rem; font-size: 13px; color: var(--leto-gray); max-width: 64ch; }
.single-membro .memb-hero__links { margin-top: clamp(1.25rem, 1rem + 1.5vw, 26px); }
.single-membro .memb-hero__icon {
	display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
	border: 1px solid rgba(45,45,45,.32); color: var(--leto-ink); text-decoration: none;
	transition: background .25s, color .25s, border-color .25s;
}
.single-membro .memb-hero__icon svg { width: 17px; height: 17px; }
.single-membro .memb-hero__icon:hover { background: var(--leto-ink); color: #fff; border-color: var(--leto-ink); }

/* --- Conteúdos do membro (cards) --- */
.single-membro .memb-conteudos { padding-block: clamp(1.5rem, 1rem + 2vw, 40px) clamp(2.5rem, 1.5rem + 3vw, 64px); border-top: 1px solid rgba(45,45,45,.10); }
.single-membro .ins-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(1.5rem, 1rem + 2vw, 32px);
	margin-top: clamp(1.25rem, 1rem + 1.5vw, 28px);
}
.single-membro .ins-card { display: flex; flex-direction: column; text-decoration: none; color: var(--leto-ink); }
.single-membro .ins-card__media { position: relative; display: block; aspect-ratio: 16 / 11; overflow: hidden; border-radius: 8px; background: #d6d6d0; }
.single-membro .ins-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ease); }
.single-membro .ins-card:hover .ins-card__media img { transform: scale(1.04); }
.single-membro .ins-card__tag {
	position: absolute; left: 14px; top: 14px;
	display: inline-flex; align-items: center; gap: 8px; height: 30px; padding-inline: 13px;
	border-radius: 8px; background: rgba(255,255,255,.82); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	color: var(--leto-ink); font-size: 12.5px; font-weight: 600;
}
.single-membro .ins-card__dot { width: 8px; height: 8px; border-radius: 50%; background: #9FB45E; flex: 0 0 auto; }
.single-membro .ins-card__title { margin: clamp(.8rem, .6rem + .8vw, 16px) 0 0; font-size: 18px; line-height: 1.2; font-weight: 500; }
.single-membro .ins-card:hover .ins-card__title { text-decoration: underline; text-underline-offset: 3px; }
.single-membro .ins-card__meta { margin-top: .5rem; font-size: 12.5px; font-weight: 500; color: var(--leto-gray); }

@media (max-width: 820px) {
	.single-membro .memb-hero__grid { grid-template-columns: 1fr; }
	.single-membro .memb-hero__photo { max-width: 360px; }
	.single-membro .ins-cards { grid-template-columns: 1fr; }
}
