/* ============================================================
   Academia — Sistema tipográfico unificado (bloque 13)
   Armoniza los componentes de Tutor LMS del FRONT público con la
   identidad del sitio (hero y secciones en Poppins).
   Escala: título tarjeta 17/600 · precio 16/700 · meta 13.5/500
           título single clamp(24-32)/700 · botones 14.5/600.
   Alcanza también las tarjetas del escritorio (consistencia); no toca el admin.
   Paleta: navy #13303F, rojo #C40002/#E60203, gris #5C7180.
   ============================================================ */

:root {
	--acad-font: "Poppins", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	/* Tamaño ÚNICO del título principal de cada página. Cambiar aquí ajusta
	   TODOS los títulos del sitio a la vez (páginas, Tutor, BuddyPress, eventos). */
	--acad-title-size: clamp(20px, 2.1vw, 25px);
	--acad-title-weight: 700;
	/* Ancho ÚNICO del contenido de todo el sitio (igual al header/footer),
	   para que ninguna página se vea más ancha o más angosta que otra. */
	--acad-content-width: 1200px;
}

/* ---------- Contenedor estándar (todas las páginas) ----------
   El área de contenido del tema toma el mismo ancho máximo en TODAS las
   páginas (páginas normales, Tutor, BuddyPress) y se centra. Responsivo:
   ocupa el 100% con un margen lateral cómodo en móvil, y topa en 1200 en
   escritorio — alineado con el header y el footer. */
.site-main,
body main.site-main,
.hello-elementor .site-main {
	max-width: var(--acad-content-width) !important;
	margin-inline: auto;
}

/* Contenido "boxed" de Elementor: secciones clásicas y contenedores nuevos.
   (Las secciones a todo lo ancho —stretched/full width— NO se tocan.) */
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: var(--acad-content-width) !important;
}
.e-con-boxed {
	--container-max-width: var(--acad-content-width);
}

/* ---------- Página de membresía: distribución con un solo plan ----------
   Con una sola membresía, la tarjeta quedaba a la izquierda con medio ancho
   vacío. La centramos, la ensanchamos y repartimos los beneficios en 2
   columnas para aprovechar el espacio y bajar la altura. Responsivo. */
.tutor-membership-pricing-page .tutor-row {
	justify-content: center;
}
.tutor-membership-pricing-page .tutor-col-md-4 {
	flex: 0 0 auto;
	width: 100%;
	max-width: 760px;
}
.tutor-membership-pricing-page .tutor-pricing-features {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px 30px;
}
.tutor-membership-pricing-page .tutor-pricing-features > li {
	align-items: flex-start;
}
/* Encabezado del plan un poco más aireado dentro de la tarjeta ancha */
.tutor-membership-pricing-page .tutor-short-description {
	max-width: 560px;
	margin-inline: auto;
}
@media (max-width: 600px) {
	.tutor-membership-pricing-page .tutor-pricing-features {
		grid-template-columns: 1fr;
	}
}

/* ---------- Título de página unificado (todas las secciones) ----------
   Un solo estilo, discreto y en Poppins, para el título principal de CADA
   página: páginas normales (Membresías, Nosotros), single de Tutor, BuddyPress
   y el hero de eventos usan el mismo tamaño vía --acad-title-size. */
.page-header .entry-title,
.page-header h1.entry-title,
h1.entry-title,
.elementor-widget-theme-page-title .elementor-heading-title,
.acad-eventos-head .acad-titulo,
.tutor-course-details-title,
h1.tutor-course-details-title {
	font-family: var(--acad-font);
	font-size: var(--acad-title-size);
	font-weight: var(--acad-title-weight);
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: #13303f;
	margin: 0 0 12px;
	text-align: left; /* Mismo lugar en todas las páginas: sin títulos centrados. */
}

/* Respiración pareja del encabezado de página (no toca BuddyPress, que
   tiene su propio contenedor centrado en comunidad.css). */
body:not(.buddypress) .page-header {
	padding-top: 22px;
	padding-bottom: 6px;
}

/* Quitar los "eyebrow" / kickers que iban ARRIBA del título (p. ej.
   "AGENDA EN VIVO"): el título va solo, sin texto encima. */
.acad-eventos-head .acad-kicker {
	display: none;
}

/* ---------- Tarjetas de curso/evento (catálogo, home, próximos eventos) ---------- */

.tutor-card .tutor-course-name,
.tutor-card .tutor-course-name a {
	font-family: var(--acad-font);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.45;
	color: #13303f;
	text-decoration: none;
}

.tutor-card .tutor-course-name a:hover {
	color: #c40002;
	text-decoration: none;
}

/* Nada de subrayados dentro de tarjetas ni en la sección de eventos */
.tutor-card a,
.acad-eventos a {
	text-decoration: none;
}

/* Meta (inscritos) y rating: discretos */
.tutor-card .tutor-meta,
.tutor-card .tutor-ratings .tutor-ratings-count,
.tutor-card .tutor-ratings-average {
	font-family: var(--acad-font);
	font-size: 13.5px;
	font-weight: 500;
	color: #5c7180;
}

.tutor-card .tutor-ratings .tutor-icon-star-line,
.tutor-card .tutor-ratings .tutor-icon-star-bold {
	font-size: 15px;
}

/* Precio */
.tutor-card .tutor-course-price,
.tutor-card .tutor-course-price span {
	font-family: var(--acad-font);
	font-size: 16px;
	font-weight: 700;
	color: #13303f;
}

.tutor-card .tutor-course-price del,
.tutor-card .tutor-course-price del span {
	font-size: 13.5px;
	font-weight: 500;
	color: #8a969f;
}

/* Botones dentro de tarjetas (Agregar / Comprar ahora / Continuar) */
.tutor-card .tutor-btn {
	font-family: var(--acad-font);
	font-size: 14.5px;
	font-weight: 600;
	letter-spacing: 0.1px;
}

/* ---------- Archivo /cursos/: buscador, ordenador y sidebar de filtros ---------- */

.tutor-course-filter,
.tutor-course-filter .tutor-form-control,
.tutor-course-archive-filters-wrap .tutor-form-control,
.tutor-course-archive-filters-wrap label,
.tutor-course-archive-filters-wrap input::placeholder {
	font-family: var(--acad-font);
	font-size: 14.5px;
}

.tutor-course-archive-filters-wrap .tutor-fs-5,
.tutor-course-archive-filters-wrap h3,
.tutor-course-archive-filters-wrap h5 {
	font-family: var(--acad-font);
	font-size: 16px;
	font-weight: 600;
	color: #13303f;
}

/* ---------- Página del curso (single) ---------- */

.tutor-course-details-title,
h1.tutor-course-details-title {
	font-family: var(--acad-font);
	font-size: var(--acad-title-size);
	font-weight: var(--acad-title-weight);
	line-height: 1.25;
	color: #13303f;
}

/* Encabezados de secciones del single (Acerca de, Beneficios, Temario, FAQs…) */
.tutor-course-details-page h2,
.tutor-course-details-page h3,
.tutor-course-details-page .tutor-fs-5,
.tutor-course-details-page .tutor-fs-6.tutor-fw-bold,
.tutor-course-details-page .tutor-card-title,
.tutor-course-details-page .tutor-segment-title {
	font-family: var(--acad-font);
	color: #13303f;
}

.tutor-course-details-page .tutor-segment-title,
.tutor-course-details-page h3 {
	font-size: 19px;
	font-weight: 600;
}

/* Meta del single (categorías, autor, fecha) */
.tutor-course-details-page .tutor-meta {
	font-family: var(--acad-font);
	font-size: 14px;
	color: #5c7180;
}

.tutor-course-details-page .tutor-meta a {
	color: #5092b4;
	text-decoration: none;
	font-weight: 500;
}

.tutor-course-details-page .tutor-meta a:hover {
	color: #c40002;
}

/* Sidebar de compra del single (precio, botones, lista de detalles) */
.tutor-course-sidebar-card,
.tutor-course-sidebar-card .tutor-btn,
.tutor-single-course-sidebar-more span {
	font-family: var(--acad-font);
}

/* ---------- Listado de cursos: paginación y estado vacío ---------- */

.tutor-pagination,
.tutor-pagination .page-numbers,
.tutor-empty-state-title,
.tutor-empty-state-subtitle {
	font-family: var(--acad-font);
}

/* ---------- Afinado del grid: respiración pareja entre tarjetas ---------- */

.tutor-course-list.tutor-grid {
	gap: 28px;
}

@media (max-width: 767px) {
	.tutor-card .tutor-course-name,
	.tutor-card .tutor-course-name a {
		font-size: 16px;
	}

	.tutor-course-details-title,
	h1.tutor-course-details-title {
		font-size: 22px;
	}
}
