/* =========================================================================
   Agonza Sports — Bloque Común (periodo transitorio)
   Usa las variables :root de css-header.css.
   ========================================================================= */

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

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

/* MÓDULOS */
.ag-bc-modulos { padding: 40px 24px 72px; }
.ag-bc-modulos__inner { max-width: var(--ag-maxw); margin: 0 auto; }
.ag-bc-modulos__head { text-align: center; max-width: 640px; margin: 0 auto 44px; }
.ag-bc-modulos__head .ag-badge { margin-left: auto; margin-right: auto; }
.ag-bc-modulos__text { font-size: 1rem; line-height: 1.6; color: rgba(8,40,31,.72); margin-top: 12px; }
.ag-bc-modulos__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
	gap: 20px;
}

.ag-bc-modulo {
	display: flex; align-items: flex-start; gap: 22px;
	background: #fff; border: 1px solid rgba(8,40,31,.06); border-radius: 18px; padding: 30px 30px;
	box-shadow: 0 10px 26px rgba(8,40,31,.05);
	transition: transform .25s var(--ag-ease), box-shadow .25s var(--ag-ease);
}
.ag-bc-modulo:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(8,40,31,.1); }
.ag-bc-modulo__num {
	flex: 0 0 auto;
	width: 48px; height: 48px; border-radius: 12px;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--ag-lime);
	font-family: var(--ag-font-head); font-weight: 800; font-size: 1.35rem;
	color: var(--ag-green-dark); line-height: 1;
}
.ag-bc-modulo__title {
	font-family: var(--ag-font-head); font-weight: 700;
	font-size: 1.25rem; margin: 0 0 6px; color: var(--ag-green-dark);
}
.ag-bc-modulo__desc { font-size: .92rem; line-height: 1.55; color: rgba(8,40,31,.72); margin: 0 0 10px; }
.ag-bc-modulo__hrs {
	display: inline-block; font-size: .8rem; font-weight: 600;
	color: var(--ag-green-dark); background: var(--ag-lime);
	padding: 5px 12px; border-radius: 999px;
}

/* INFO PRÁCTICA */
.ag-bc-info { padding: 40px 24px 80px; }
.ag-bc-info__inner { max-width: var(--ag-maxw); margin: 0 auto; }
.ag-bc-info__title { text-align: center; margin: 0 auto 40px; }
.ag-bc-info__title:empty { display: none; margin: 0; }
.ag-bc-info__grid {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 20px;
	background: var(--ag-green); border-radius: 22px; padding: 48px 32px;
}
.ag-bc-dato { text-align: center; color: #fff; }
.ag-bc-dato__valor {
	display: block; font-family: var(--ag-font-head); font-weight: 800;
	font-size: clamp(2rem, 4vw, 2.8rem); line-height: 1; color: var(--ag-lime);
}
.ag-bc-dato__eti { display: block; font-size: .88rem; opacity: .9; margin-top: 8px; }

/* FAQ (reutiliza estilos de faqpage-css.css) */
.ag-bc-faq { padding-top: 24px; }

/* RESPONSIVE */
@media (max-width: 700px) {
	.ag-bc-intro { padding: 44px 24px 16px; }
	.ag-bc-modulos__grid { grid-template-columns: 1fr; }
}
