/* =========================================================================
   Agonza Sports — Contacto
   Usa las variables :root de header.css.
   ========================================================================= */

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

/* Hero centrado (el texto va centrado en esta página) */
.ag-cont-hero{margin-bottom:2rem !important;}
.ag-cont-hero__inner { text-align: center; margin: 0 auto; }
.ag-cont-hero .ag-jpa-hero__title { margin-left: auto; margin-right: auto; }
.ag-cont-hero .ag-jpa-hero__text { max-width: 52ch; margin-left: auto; margin-right: auto; }
.ag-cont-hero__inner .ag-btn { margin-top: 8px; }

.ag-contacto__inner{margin:2rem auto !important;}
.ag-contacto{padding:0 !important;}

/* =========================================================================
   DÓNDE ESTAMOS  (tarjeta verde + mapa)
   ========================================================================= */
.ag-donde { padding: 24px 24px 80px; }
/* El contenedor apila las sedes; cada sede es la pareja tarjeta + mapa.
   Con una sola sede el resultado es idéntico al de antes. */
.ag-donde__inner {
	max-width: var(--ag-maxw); margin: 0 auto;
	display: flex; flex-direction: column; gap: 24px;
}
.ag-donde__sede {
	display: grid; grid-template-columns: 1fr 1fr; align-items: stretch;
}
.ag-donde__card {
	background: var(--ag-green); color: #fff;
	border-radius: 22px; padding: 44px;
	display: flex; flex-direction: column;
}
.ag-donde__badge {
	display: inline-flex; align-items: center; gap: 8px; align-self: flex-start;
	font-size: .8rem; font-weight: 600; color: #fff;
	background: rgba(255,255,255,.14); padding: 8px 16px; border-radius: 999px;
	margin-bottom: 18px;
}
.ag-donde__badge-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ag-lime); }
.ag-donde__title { font-family: var(--ag-font-head); font-weight: 800; font-size: clamp(1.8rem, 3vw, 2.4rem); line-height: 1.05; margin: 0 0 14px; }
.ag-donde__subtitle { font-size: .95rem; opacity: .85; margin: 0 0 28px; }
/* Descripción propia de cada sede: qué se hace aquí. Va pegada al título,
   con el mismo tono que la entradilla pero con un filete que la ancla a
   la tarjeta y la distingue del texto que encabeza la sección. */
.ag-donde__sede-desc {
	font-size: .95rem;
	line-height: 1.6;
	opacity: .85;
	margin: 0 0 28px;
	padding-left: 14px;
	border-left: 2px solid var(--ag-lime, #cef17b);
}

.ag-donde__row { display: flex; gap: 16px; margin-bottom: 24px; }
.ag-donde__icon {
	flex: 0 0 auto;
	width: 48px; height: 48px; border-radius: 50%;
	background: #fff; color: var(--ag-green);
	display: inline-flex; align-items: center; justify-content: center;
}
.ag-donde__row-label { display: block; font-weight: 700; font-size: 1rem; margin-bottom: 4px; }
.ag-donde__row-text { font-size: .92rem; line-height: 1.5; opacity: .9; }
.ag-donde__row-link {
	color: inherit;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, .45);
	text-underline-offset: 3px;
	transition: text-decoration-color .2s var(--ag-ease);
}
.ag-donde__row-link:hover { text-decoration-color: var(--ag-lime); }

.ag-donde__transporte { margin-bottom: 22px; }
.ag-donde__block-label { display: block; font-weight: 700; font-size: 1rem; margin-bottom: 8px; }
.ag-donde__block-text { font-size: .92rem; line-height: 1.6; opacity: .9; }
.ag-donde__block-text p { margin: 0 0 4px; }
.ag-donde__block-text strong { font-weight: 700; }

/* Separador antes del horario, empujado abajo */
.ag-donde__horario {
	margin-top: auto; padding-top: 22px;
	border-top: 1px solid rgba(255,255,255,.2);
}

.ag-donde__map { border-radius: 22px; overflow: hidden; min-height: 420px; }
.ag-donde__map iframe { width: 100%; height: 100%; min-height: 420px; border: 0; display: block; }

@media (max-width: 880px) {
	.ag-donde__sede { grid-template-columns: 1fr; }
	.ag-donde__card { padding: 32px; }
}
@media (max-width: 560px) {
	.ag-donde__card { padding: 24px; }
	.ag-donde__row { flex-direction: column; gap: 8px; }
}