/* =========================================================================
   Agonza Sports — Equipo docente
   Usa las variables :root de css-header.css.
   ========================================================================= */

.ag-equipo-page { font-family: var(--ag-font-body); color: var(--ag-green-dark); }

/* -------------------------------------------------------------------------
   INTRODUCCIÓN
   ---------------------------------------------------------------------- */
.ag-eq-intro { padding: 64px 24px 24px; }
.ag-eq-intro__inner { max-width: 760px; margin: 0 auto; text-align: center; }
.ag-eq-intro__text { font-size: 1.02rem; line-height: 1.7; color: rgba(8,40,31,.75); margin-top: 14px; }
.ag-eq-intro__text p { margin: 0 0 12px; }

/* -------------------------------------------------------------------------
   EQUIPO (cuadrícula de fichas)
   ---------------------------------------------------------------------- */
.ag-eq { padding: 40px 24px 72px; }
.ag-eq__inner { max-width: var(--ag-maxw); margin: 0 auto; }
.ag-eq__head { text-align: center; max-width: 640px; margin: 0 auto 44px; }
.ag-eq__badge {
	display: inline-flex; align-items: center; gap: 8px;
	font-size: .82rem; font-weight: 600; color: var(--ag-green-dark);
	background: var(--ag-lime); padding: 8px 16px; border-radius: 999px;
	margin-bottom: 14px;
}
.ag-eq__badge-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ag-green); }
.ag-eq__text { font-size: 1rem; line-height: 1.6; color: rgba(8,40,31,.72); margin-top: 12px; }

.ag-eq__grid {
	display: grid;
	/* Las pistas no se estiran (tope de 300px) y la rejilla se centra: con
	   uno o dos profesores las tarjetas mantienen su tamaño y quedan
	   centradas, en vez de dejar media fila vacía a la derecha. */
	grid-template-columns: repeat(auto-fit, minmax(240px, 300px));
	justify-content: center;
	gap: 24px;
}
.ag-eq-card {
	background: #fff; border-radius: 18px; overflow: hidden;
	box-shadow: 0 12px 30px rgba(8,40,31,.06);
	display: flex; flex-direction: column;
	text-decoration: none; color: inherit;
}
a.ag-eq-card,
a.ag-eq-card:hover,
a.ag-eq-card * { text-decoration: none !important; }
.ag-eq-card__media {
	aspect-ratio: 4 / 5; overflow: hidden; background: var(--ag-sand);
}
.ag-eq-card__media[data-empty="1"] {
	background: linear-gradient(135deg, var(--ag-sand), var(--ag-lime));
}
.ag-eq-card__media img {
	width: 100%; height: 100%; object-fit: cover; display: block;
	transition: transform .5s var(--ag-ease);
}
.ag-eq-card:hover .ag-eq-card__media img { transform: scale(1.05); }
.ag-eq-card__body { padding: 22px 24px 26px; }
.ag-eq-card__name {
	font-family: var(--ag-font-head); font-weight: 700;
	font-size: 1.25rem; line-height: 1.1; margin: 0 0 4px; color: var(--ag-green-dark);
}
.ag-eq-card__role {
	display: block; font-size: .85rem; font-weight: 600;
	color: var(--ag-green); margin-bottom: 12px;
}
.ag-eq-card__bio { font-size: .88rem; line-height: 1.55; color: rgba(8,40,31,.7); margin: 0; }

/* -------------------------------------------------------------------------
   COMPROMISO / CIFRAS
   ---------------------------------------------------------------------- */
.ag-eq-compromiso { padding: 24px 24px 80px; }
.ag-eq-compromiso__inner {
	max-width: var(--ag-maxw); margin: 0 auto;
	background: var(--ag-green); border-radius: 24px;
	padding: 56px 48px;
	display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center;
}
.ag-eq-compromiso__title {
	font-family: var(--ag-font-head); font-weight: 800;
	font-size: clamp(1.7rem, 3vw, 2.4rem); line-height: 1.05;
	color: #fff; margin: 0 0 16px;
}
.ag-eq-compromiso__text { font-size: .98rem; line-height: 1.7; color: rgba(255,255,255,.9); }
.ag-eq-compromiso__text p { margin: 0 0 12px; }
.ag-eq-compromiso__cifras {
	display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px;
}
.ag-eq-cifra { text-align: center; }
.ag-eq-cifra__num {
	display: block; font-family: var(--ag-font-head); font-weight: 800;
	font-size: clamp(2.2rem, 4vw, 3rem); line-height: 1; color: var(--ag-lime);
}
.ag-eq-cifra__eti { display: block; font-size: .85rem; color: rgba(255,255,255,.85); margin-top: 8px; }

/* -------------------------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------------------- */
@media (max-width: 880px) {
	.ag-eq-compromiso__inner { grid-template-columns: 1fr; gap: 32px; padding: 40px 32px; }
}
@media (max-width: 600px) {
	.ag-eq-intro { padding: 44px 24px 16px; }
	.ag-eq__grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); justify-content: stretch; gap: 16px; }
	.ag-eq-compromiso__cifras { gap: 20px; }
}

/* =========================================================================
   DETALLE DE PROFESOR/A (single-profesorado.php)
   ========================================================================= */
.ag-profesor { font-family: var(--ag-font-body); color: var(--ag-green-dark); padding: 48px 24px 80px; }
.ag-profesor__inner { max-width: var(--ag-maxw); margin: 0 auto; }

.ag-profesor__back {
	display: inline-flex; align-items: center; gap: 10px;
	margin-bottom: 32px;
	font-weight: 600; font-size: .92rem; color: var(--ag-green-dark); text-decoration: none;
}
.ag-profesor__back-icon {
	width: 40px; height: 40px; border-radius: 50%;
	background: #fff; border: 1px solid rgba(8,40,31,.15); color: var(--ag-green-dark);
	display: inline-flex; align-items: center; justify-content: center;
	transition: background .2s var(--ag-ease), color .2s var(--ag-ease);
}
.ag-profesor__back:hover .ag-profesor__back-icon { background: var(--ag-green); color: #fff; border-color: var(--ag-green); }

.ag-profesor__grid {
	display: grid; grid-template-columns: .8fr 1.2fr; gap: 48px; align-items: start;
}
.ag-profesor__media {
	border-radius: 22px; overflow: hidden; aspect-ratio: 4 / 5; background: var(--ag-sand);
	position: sticky; top: calc(var(--ag-header-h, 84px) + 24px);
}
.ag-profesor__media[data-empty="1"] { background: linear-gradient(135deg, var(--ag-sand), var(--ag-lime)); }
.ag-profesor__media img { width: 100%; height: 100%; object-fit: cover; display: block; }

.ag-profesor__badge {
	display: inline-flex; align-items: center; gap: 8px;
	font-size: .82rem; font-weight: 600; color: var(--ag-green-dark);
	background: var(--ag-lime); padding: 8px 16px; border-radius: 999px;
	margin-bottom: 16px;
}
.ag-profesor__badge-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ag-green); }
.ag-profesor__name {
	font-family: var(--ag-font-head); font-weight: 800;
	font-size: clamp(2rem, 4vw, 3rem); line-height: 1.02; margin: 0 0 6px; color: var(--ag-green-dark);
}
.ag-profesor__role { display: block; font-size: 1.05rem; font-weight: 600; color: var(--ag-green); margin-bottom: 20px; }
.ag-profesor__tags { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.ag-profesor__tag {
	font-size: .85rem; font-weight: 600; color: var(--ag-green-dark);
	background: var(--ag-sand); padding: 7px 14px; border-radius: 999px;
}
.ag-profesor__bio { font-size: 1rem; line-height: 1.75; color: rgba(8,40,31,.82); }
.ag-profesor__bio p { margin: 0 0 14px; }
.ag-profesor__bio strong { color: var(--ag-green-dark); }

@media (max-width: 880px) {
	.ag-profesor__grid { grid-template-columns: 1fr; gap: 28px; }
	.ag-profesor__media { position: static; max-width: 380px; }
}
