/**
 * ISEP — carga al final de la cola de estilos (prioridad 999 en functions.php).
 * Gana a: Bootstrap 5 CDN, style.css, plugins (CF7, block-library, etc.).
 */

/* -------------------------------------------------------------------------- */
/* Enlaces: Bootstrap 5 Reboot subraya <a> por defecto; isep.es no lo hace así */
/* -------------------------------------------------------------------------- */
#page a,
#page a:link,
#page a:visited,
footer#colophon a,
footer#colophon a:link,
footer#colophon a:visited {
	text-decoration: none !important;
}

#page a:hover,
#page a:focus,
footer#colophon a:hover,
footer#colophon a:focus {
	text-decoration: none !important;
}

/* -------------------------------------------------------------------------- */
/* Carrusel: indicadores = círculos (anular barras 30×3 px de BS5 en botones) */
/* -------------------------------------------------------------------------- */
#carousel-home-top .carousel-indicators,
#carousel-openday-top .carousel-indicators,
#carousel-reviews .carousel-indicators {
	position: absolute !important;
	left: 50% !important;
	right: auto !important;
	transform: translateX(-50%) !important;
	width: 60% !important;
	max-width: 100% !important;
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 0 !important;
	flex-wrap: wrap !important;
	list-style: none !important;
	z-index: 20 !important;
}

/* Botón nativo: reset completo para que border-radius sea circular */
#carousel-home-top .carousel-indicators button,
#carousel-openday-top .carousel-indicators button {
	-webkit-appearance: none !important;
	appearance: none !important;
	box-sizing: content-box !important;
	display: inline-block !important;
	flex: 0 0 auto !important;
	width: 10px !important;
	min-width: 10px !important;
	max-width: 10px !important;
	height: 10px !important;
	min-height: 10px !important;
	max-height: 10px !important;
	padding: 0 !important;
	margin: 2px 5px !important;
	line-height: 0 !important;
	font-size: 0 !important;
	overflow: hidden !important;
	text-indent: -9999px !important;
	cursor: pointer !important;
	vertical-align: middle !important;
	border-style: solid !important;
	border-width: 1px !important;
	border-color: #fff !important;
	border-radius: 50% !important;
	background-color: transparent !important;
	background-image: none !important;
	opacity: 0.55 !important;
	box-shadow: none !important;
	transition: opacity 0.2s ease, background-color 0.2s ease, transform 0.2s ease !important;
}

#carousel-home-top .carousel-indicators button.active,
#carousel-openday-top .carousel-indicators button.active {
	width: 12px !important;
	min-width: 12px !important;
	max-width: 12px !important;
	height: 12px !important;
	min-height: 12px !important;
	max-height: 12px !important;
	margin: 0 5px !important;
	background-color: #fff !important;
	border-color: #fff !important;
	opacity: 1 !important;
}

/* Testimonios: puntos grises (fondo claro) */
#carousel-reviews .carousel-indicators button {
	-webkit-appearance: none !important;
	appearance: none !important;
	box-sizing: content-box !important;
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	min-height: 14px !important;
	max-width: 14px !important;
	max-height: 14px !important;
	padding: 0 !important;
	margin: 0 5px !important;
	line-height: 0 !important;
	font-size: 0 !important;
	border: 3px solid #fff !important;
	border-radius: 50% !important;
	background-color: #d8d8d8 !important;
	background-image: none !important;
	opacity: 1 !important;
	box-shadow: none !important;
}

#carousel-reviews .carousel-indicators button.active {
	background-color: #183861 !important;
	border-color: #d8d8d8 !important;
}

/* -------------------------------------------------------------------------- */
/* Flechas: posición absoluta explícita por ID (mitad vertical del carrusel)   */
/* -------------------------------------------------------------------------- */
#carousel-home-top.carousel,
#carousel-openday-top.carousel {
	position: relative !important;
}

#carousel-home-top .carousel-control-prev,
#carousel-home-top .carousel-control-next,
#carousel-openday-top .carousel-control-prev,
#carousel-openday-top .carousel-control-next {
	position: absolute !important;
	top: 0 !important;
	bottom: 0 !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
	width: 15% !important;
	max-width: 120px !important;
	min-width: 48px !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	z-index: 12 !important;
}

#carousel-home-top .carousel-control-prev,
#carousel-openday-top .carousel-control-prev {
	left: 0 !important;
	right: auto !important;
}

#carousel-home-top .carousel-control-next,
#carousel-openday-top .carousel-control-next {
	right: 0 !important;
	left: auto !important;
}

#carousel-openday-top .carousel-control-prev img,
#carousel-openday-top .carousel-control-next img {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	margin: 0 !important;
	display: block !important;
	max-width: 100% !important;
	height: auto !important;
}

#carousel-home-top .carousel-control-prev-icon,
#carousel-home-top .carousel-control-next-icon {
	flex-shrink: 0 !important;
}

/* -------------------------------------------------------------------------- */
/* Especificidad máxima (Contact Form 7, WP, etc. suelen usar button { … !important }) */
/* -------------------------------------------------------------------------- */
div#carousel-home-top.carousel div.carousel-indicators>button[type="button"],
div#carousel-openday-top.carousel div.carousel-indicators>button[type="button"] {
	border-radius: 50% !important;
	width: 10px !important;
	height: 10px !important;
	min-width: 10px !important;
	min-height: 10px !important;
	max-width: 10px !important;
	max-height: 10px !important;
	padding: 0 !important;
	line-height: 0 !important;
	font-size: 0 !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

div#carousel-home-top.carousel div.carousel-indicators>button[type="button"].active,
div#carousel-openday-top.carousel div.carousel-indicators>button[type="button"].active {
	width: 12px !important;
	height: 12px !important;
	min-width: 12px !important;
	min-height: 12px !important;
	max-width: 12px !important;
	max-height: 12px !important;
}

div#carousel-reviews.carousel div.carousel-indicators>button[type="button"] {
	border-radius: 50% !important;
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	min-height: 14px !important;
	max-width: 14px !important;
	max-height: 14px !important;
}

div#carousel-home-top.carousel>a.carousel-control-prev,
div#carousel-home-top.carousel>a.carousel-control-next,
div#carousel-openday-top.carousel>a.carousel-control-prev,
div#carousel-openday-top.carousel>a.carousel-control-next {
	top: 0 !important;
	bottom: 0 !important;
	align-items: center !important;
	justify-content: center !important;
}

/* -------------------------------------------------------------------------- */
/* Cabecera: franja azul superior (como isep.es). Carga al final para ganar a */
/* .myHeader { background: #fff } y a reglas de plugins.                     */
/* -------------------------------------------------------------------------- */
@media (min-width: 768px) {
	#page .myHeader>.sticky-header.isep-topbar-blue {
		background-color: #163264 !important;
		color: #ffffff !important;
	}

	#page .myHeader .isep-topbar-blue .fa-phone {
		color: #ffffff !important;
	}
}

/* -------------------------------------------------------------------------- */
/* Hero taxonomías (ej. /cursos/cursos-neurociencias/): migas centradas como   */
/* isep.es. BS5 .row es flex y empuja el .container a la izquierda.          */
/* -------------------------------------------------------------------------- */
.imagen-principal #breadcrumbs .row {
	justify-content: center;
	--bs-gutter-x: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100%;
}

.imagen-principal #breadcrumbs .row>.container {
	margin-left: auto !important;
	margin-right: auto !important;
}

.imagen-principal #breadcrumbs ul.breadcrumb {
	justify-content: center !important;
	margin-bottom: 0 !important;
}

.imagen-principal #breadcrumbs .breadcrumb>li+li::before,
.imagen-principal #breadcrumbs .breadcrumb>li+li:before {
	padding-left: 0.4rem;
	padding-right: 0.4rem;
}

/* -------------------------------------------------------------------------- */

ul,
ol {
	padding-left: 20px;
	margin-left: 0;
}

/* Vídeos responsive */
.wp-block-embed,
.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.wp-block-embed iframe,
.video-container iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.caja-direccion-centro {
	padding: 6px !important;
	margin-top: 80px;
	color: #fff;

	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-direction: column;
}

body {
	overflow-x: hidden;
}

.vc_tta-panels-container ul {
	margin-left: 0;
}

del {
	text-decoration: line-through;
}

.vc_tta-panel-body table tr {
	border-bottom: 1px solid #dee2e6;
}

#tesinas_slide {
	display: flex;
	flex-wrap: wrap;
	position: relative;
}

#tesinas_slide>div {
	width: 25%;
	flex: 0 0 25%;
}

@media (max-width: 576px) {
	#tesinas_slide>div {
		width: 50%;
		flex: 0 0 50%;
	}
}

.mostrartesinas {
	height: 340px;
	width: 100% !important;
	left: 0 !important;
}

div#tesinas_slide>div h5 {
	padding: 50px 62px 0px 50px;
	color: #f8f7f7;
	word-wrap: normal;
	font-size: 24px;
	line-height: 28px;
	font-family: 'Source Serif Pro', serif !important;
}


.term-psicologia-clinica #title_slider_3 {
	padding-left: 60px;
}

.term-psicologia-clinica #title_slider_1 {
	padding-left: 60px;
}

.term-educacion #title_slider_1 {
	padding-left: 60px;
}

.term-neuropsicologia #title_slider_1 {
	padding-left: 60px;
}

body:not(.page-id-19183) #curso .wpb_wrapper ul {
	margin-left: -20px;
}

.page-id-103 .vc_tta-panel-body h4 {
	font-size: 20px;
}

.page-id-33525 blockquote h2 {
	font-size: 30px;
	margin-left: -25px;
}

.page-id-33525 blockquote {
	border-left: 4px solid #ccc;
	padding-left: 10px;
}

.btn-primary {
	color: #fff;
	background-color: #337ab7;
	border-color: #2e6da4;
}

#colophon .navigation-footer #footer-menu.menu {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	padding: 0;
	width: 100%;
}

@media (max-width: 992px) {
	#colophon .navigation-footer #footer-menu.menu {
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
	}
}

#colophon .navigation-footer #footer-menu.menu li a {
	white-space: nowrap;
}

#colophon .navigation-footer nav {
	width: 100%;
}

#colophon>.navigation-footer.container {
	padding-left: 200px !important;
	padding-right: 200px !important;
	box-sizing: border-box;
}

.footer-3 {
	min-height: 102px !important;
	display: block !important;
}



div#carousel-reviews.carousel div.carousel-indicators>button[type="button"] {
	border-radius: 50% !important;
	width: 10px !important;
	height: 10px !important;
	min-width: 10px !important;
	min-height: 10px !important;
	max-width: 10px !important;
	max-height: 10px !important;
}

.row {
	--bs-gutter-x: 0px;
}

.myHeader {
	margin-left: 0;
	margin-right: 0;
}

.page-child.parent-pageid-10 {
	margin-left: -12px;
	margin-right: -12px;
}


/* Links solo subrayados al hover */
a {
	text-decoration: none !important;
}

#page a:hover,
#page a:focus,
footer#colophon a:hover,
footer#colophon a:focus {
	text-decoration: underline !important;
}

/* Comentar con Javi */

.new_master_franja_icon_right:has(.wmt) {
	display: flex;
	align-items: center;
	vertical-align: center;
	width: 100%;
	height: 100%;
	margin-top: 5px;
}

.new_master_franja_icon_right p {
	margin: 0;
}

.breadcrumb li+li:before {
	content: ">";
	margin: 0 5px;
	display: inline-block;
}

.header-toptop .logo {
	display: flex;
	align-items: center;
	flex-direction: row;
}

.header-toptop .logo a {
	display: flex;
	align-items: center;
	flex-direction: row;
	white-space: nowrap;
}

.header-toptop .logo img {
	width: auto !important;
	height: 78px !important;
	max-width: none !important;
}

.header-toptop .logo p {
	white-space: nowrap;
	font-size: 17px;
}

#masthead2 {
	margin-left: -12px !important;
	margin-right: -12px !important;
	width: calc(100% + 24px) !important;
}

.page-id-29405 .wp-block-pullquote blockquote {
	border-left: 4px solid #ccc;
	padding-left: 15px;
}

.sticky-header {
	margin-left: -12px;
	width: calc(100% + 24px);
}

#curso {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.container-fluid>.row>.imagen-principal {
	margin-left: -12px;
	margin-right: -12px;
	width: calc(100% + 24px);
	max-width: none;
}

.col-12.col-sm-8,
.col-12.col-sm-4 {
	padding-left: 15px;
	padding-right: 15px;
}

.col-sm-8,
.col-sm-4 {
	padding-left: 15px;
	padding-right: 15px;
}

.page-id-19183 .wpb_wrapper ul {
	margin-left: 20px !important;
	padding-left: 0 !important;
}

.term-neurociencias #title_slider_1 {
	padding-left: 60px;
}