/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/*  
  ─── ÍNDICE ─────────────────────────────────────────────────────────────
  0. Variables generales
  1. Tipografías
  2. TÍTULOS
  3. TEXTOS
  4. BOTONES
  5. HEADER
  6. FOOTER
  7. DISTANCIAS
  8. SECCIONES
  9. RESPONSIVE
*/

/*─────────────────────────────────────────────────────────────────────────────
  0. VARIABLES GENERALES
─────────────────────────────────────────────────────────────────────────────*/
html, body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

:root {
	--color-negro-oscuro: #0a0a0a;
  --color-negro-claro: #343434;
  --color-gris: #747474;
  --color-gris-claro: #e6e6e6;
	--color-gris-blanco: #f2f2f2;
	--color-blanco: #ffffff;
  --color-rosa: #f179e7;
  --color-rosa-fondo: #f9d4f9;
  --fuente-bold: 'basier_squarebold', sans-serif;
  --fuente-regular: 'basier_squareregular', sans-serif;
  --fuente-medium: 'basier_squaremedium', sans-serif;
}

strong{
	font-family: var(--fuente-medium) !important;
	font-weight:500 !important;
}
a {
	color: var(--color-rosa) !important;
}
.mdi-textos-gris ul li {
  list-style-type: none !important; /* Desactiva la viñeta por defecto */
  font-size: 18px !important;
  color: #343434 !important;
  font-family: 'basier_squareregular' !important;
	display: flex !important;
	line-height: 1.6 !important;
	padding-bottom: 10px !important;
}
.mdi-textos-gris ul li::before {
  font-family: "Font Awesome 5 Free"; /* O "Font Awesome 5 Free", según tu versión */
	font-size: 12px !important;
  content: "\f111"; /* Código del icono */
  display: inline-block;
  margin-right: 12px;
  font-weight: 400 !important;
	margin-top: 5px !important;
}
.mdi-textos-gris ol li {
  font-size: 18px !important; 
  color: #343434 !important;
  font-family: 'basier_squareregular' !important;
	line-height: 1.6 !important;
}


ul {
  margin: 0 0 0 0 !important;
}

/*─────────────────────────────────────────────────────────────────────────────
  1. TIPOGRAFÍAS
─────────────────────────────────────────────────────────────────────────────*/
@font-face {
  font-family: 'basier_squarebold';
  src: url('fonts/basiersquare-bold-webfont.eot');
  src: url('fonts/basiersquare-bold-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-bold-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-bold-webfont.woff') format('woff'),
       url('fonts/basiersquare-bold-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squarebold_italic';
  src: url('fonts/basiersquare-bolditalic-webfont.eot');
  src: url('fonts/basiersquare-bolditalic-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-bolditalic-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-bolditalic-webfont.woff') format('woff'),
       url('fonts/basiersquare-bolditalic-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squaremedium';
  src: url('fonts/basiersquare-medium-webfont.eot');
  src: url('fonts/basiersquare-medium-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-medium-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-medium-webfont.woff') format('woff'),
       url('fonts/basiersquare-medium-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squaremedium_italic';
  src: url('fonts/basiersquare-mediumitalic-webfont.eot');
  src: url('fonts/basiersquare-mediumitalic-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-mediumitalic-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-mediumitalic-webfont.woff') format('woff'),
       url('fonts/basiersquare-mediumitalic-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squareregular';
  src: url('fonts/basiersquare-regular-webfont.eot');
  src: url('fonts/basiersquare-regular-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-regular-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-regular-webfont.woff') format('woff'),
       url('fonts/basiersquare-regular-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squareregular_italic';
  src: url('fonts/basiersquare-regularitalic-webfont.eot');
  src: url('fonts/basiersquare-regularitalic-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-regularitalic-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-regularitalic-webfont.woff') format('woff'),
       url('fonts/basiersquare-regularitalic-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squaresemibold';
  src: url('fonts/basiersquare-semibold-webfont.eot');
  src: url('fonts/basiersquare-semibold-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-semibold-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-semibold-webfont.woff') format('woff'),
       url('fonts/basiersquare-semibold-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'basier_squaresemibold_italic';
  src: url('fonts/basiersquare-semibolditalic-webfont.eot');
  src: url('fonts/basiersquare-semibolditalic-webfont.eot?#iefix') format('embedded-opentype'),
       url('fonts/basiersquare-semibolditalic-webfont.woff2') format('woff2'),
       url('fonts/basiersquare-semibolditalic-webfont.woff') format('woff'),
       url('fonts/basiersquare-semibolditalic-webfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}


/*─────────────────────────────────────────────────────────────────────────────
  2. TÍTULOS
─────────────────────────────────────────────────────────────────────────────*/

.mdi-h1 h1{
  font-family: var(--fuente-bold) !important;
  font-size: 60px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}
.eme-h1 h1{
  font-family: var(--fuente-bold) !important;
  font-size: 30px !important;
  line-height: 36px !important;
  font-weight: 700 !important;
}

.mdi-h2 h2{
  font-family: var(--fuente-bold) !important;
  font-size: 39px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: var(--color-negro-claro) !important;
}
.mdi-h2-oscuro h2{
  font-family: var(--fuente-bold) !important;
  font-size: 39px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: var(--color-negro-claro) !important;
}
.mdi-h2-titulaciones h2{
  font-family: var(--fuente-bold) !important;
  font-size: 31px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: var(--color-negro-claro) !important;
}
.mdi-h2-separador h2{
	padding-bottom: 15px !important;
	border-bottom: 2px solid var(--color-gris-claro) !important;
}
.mdi-h2-tarjetas h2{
  font-size: 25px !important;
  font-style: normal !important;
  font-family: var(--fuente-bold) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 700 !important;
	line-height: 30px !important;
	min-height: 90px !important;
}
.mdi-h2-matricula h2{
  font-size: 25px !important;
  font-style: normal !important;
  font-family: var(--fuente-bold) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 700 !important;
	line-height: 30px !important;
}
.eme-h2 h2{
  font-family: var(--fuente-regular) !important;
  font-size: 26px !important;
  line-height: 42px !important;
  font-weight: 500 !important;
}
.mdi-h3 h3{
  font-size: 25px !important;
  font-style: normal !important;
  font-family: var(--fuente-bold) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 700 !important;
}

.mdi-h3-regular h3{
  font-size: 25px !important;
  font-style: normal !important;
  font-family: var(--fuente-regular) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 400 !important;
}
.mdi-h3-regular-gris h3{
  font-size: 18px !important;
  font-style: normal !important;
  font-family: var(--fuente-regular) !important;
  color: var(--color-gris) !important;
  font-weight: 600 !important;
}
.mdi-h3-rosa h3{
  font-size: 38px !important;
  font-style: normal !important;
  font-family: var(--fuente-bold) !important;
  color: var(--color-rosa) !important;
  font-weight: 700 !important;
}
.eme-h3 a{
  font-family: var(--fuente-bold) !important;
  font-size: 18px !important;
  line-height: 22px !important;
  font-weight: 500 !important;
	color: var(--color-negro-claro) !important;
}
.eme-h3 a:hover{
  color: #ff4800 !important; 
}



/*─────────────────────────────────────────────────────────────────────────────
  3. TEXTOS
─────────────────────────────────────────────────────────────────────────────*/

.mdi-textos p{
  font-family: var(--fuente-regular) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-negro-oscuro) !important;
}
.mdi-textos-gris p{
  font-family: var(--fuente-regular) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
}
.elementor-icon-list-text {
  font-family: var(--fuente-regular) !important;
  font-size: 18px !important;
	line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
}
.listado-iconos-contacto span.elementor-icon-list-text {
  font-family: var(--fuente-regular) !important;
  font-size: 18px !important;
	line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-gris) !important;
}
.mdi-textos-20 p {
	font-family: var(--fuente-regular) !important;
  font-size: 20px !important;
  line-height: 32px !important;
  font-weight: 700 !important;
  color: var(--color-negro-claro) !important;
}
.mdi-textos-20 a {
	font-family: var(--fuente-regular) !important;
  font-size: 20px !important;
  line-height: 32px !important;
  font-weight: 700 !important;
  color: var(--color-negro-claro) !important;
}
.mdi-textos-19 p{
	font-family: var(--fuente-bold) !important;
  font-size: 19px !important;
  line-height: 30px !important;
  font-weight: 400 !important;
  color: #535353 !important;
}
.mdi-textos-16 p{
	font-family: var(--fuente-regular) !important;
  font-size: 16px !important;
  line-height: 26px !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
}

/*─────────────────────────────────────────────────────────────────────────────
  4. BOTONES
─────────────────────────────────────────────────────────────────────────────*/


.mdi-boton-rosa p{
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  color: var(--color-blanco) !important;
  padding: 20px 30px 20px 30px !important;
  border-radius: 8px !important;
  -moz-border-radius: 8px !important;
  -webkit-border-radius: 8px !important;
  background: var(--color-rosa);
}

.mdi-boton-rosa a{
  color: var(--color-blanco) !important;
}

.mdi-boton-formulario button.elementor-button {
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
	padding: 0 !important;
	display: flex !important;
	justify-content: start !important;
}

.elementor-widget-form .elementor-button[type="submit"] {
  background-color: var(--color-blanco) !important;
}

.elementor-widget-button .elementor-button{
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
	padding: 20px 30px 20px 30px !important;
  border-radius: 30px !important;
  -moz-border-radius: 30px !important;
  -webkit-border-radius: 30px !important;
  background: var(--color-gris-claro) !important;
}

.elementor-button-icon .e-font-icon-svg {
  fill: var(--color-negro-claro) !important;
}

.mdi-boton-linea p{
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  padding: 20px 30px 20px 30px !important;
  border-radius: 15px !important;
  border: 2px solid var(--color-negro-claro) !important;
  color: var(--color-negro-claro) !important;
}
.mdi-boton-linea a{
  color: var(--color-negro-claro) !important;
}

.mdi-boton-linea-redondo p{
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  padding: 20px 30px 20px 30px !important;
  border-radius: 30px !important;
  -moz-border-radius: 30px !important;
  -webkit-border-radius: 30px !important;
  border: 1px solid var(--color-negro-claro) !important;
  color: var(--color-negro-claro) !important;
}
.mdi-boton-linea-redondo a{
  color: var(--color-negro-claro) !important;
}

/*─────────────────────────────────────────────────────────────────────────────
  5. HEADER
─────────────────────────────────────────────────────────────────────────────*/
.mdi-header{
	height: 120px !important
}
.mdi-header  .elementor-widget-nav-menu .elementor-nav-menu .elementor-item{
  font-family: var(--fuente-medium) !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
}

.elementor-nav-menu--main .elementor-item.elementor-item-active {
	color: var(--color-rosa) !important;
}

.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover{
	color: var(--color-rosa) !important;
}

.elementor-nav-menu--dropdown a {
  padding-left: 18px !important;
  padding-right: 42px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown{
	padding: 12px 0px !important;
}
.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-sub-item {
  font-family: var(--fuente-regular) !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
}
.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-sub-item:hover{
	color: var(--color-rosa) !important;
}
/* 1) Contenedor del logo (igual que antes) */
.mdi-logo {
  position: relative;
  display: inline-block;
  width: 450px !important;            
  height: 50px  !important;
  transition: width 0.5s ease-in-out;
  overflow: hidden;
  box-sizing: border-box;             /* por si acaso */
}

/* 2) Imagen original */
.mdi-logo img {
  display: block;
  width: 100%;
  height: 100%;
  transition: opacity 0.1s ;
}

/* 3) Pseudo-elemento con el logo “sticky” */
.mdi-logo::after {
  content: "";                         /* vacía */
  position: absolute;
  top: 0; 
	right: 0;
  width: 250px;
	height: 100%;
  background-image: url('https://mdi2.webs.upv.es/wp-content/uploads/2025/04/MDI-hor1-N-scaled.png');
  background-size: contain;            /* ajústalo dentro del contenedor */
  background-repeat: no-repeat;
  background-position: right center;
	pointer-events: none;
  opacity: 0;
  transition: opacity 0.1s;
}

/* 4) Estados sticky */
.elementor-sticky--effects .mdi-logo {
  width: 250px !important;
	height: 50px  !important;
}
.elementor-sticky--effects .mdi-logo img {
  opacity: 0;
}
.elementor-sticky--effects .mdi-logo::after {
  opacity: 1;
}
.elementor-sticky--effects {
  height: 80px !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
}

/*─────────────────────────────────────────────────────────────────────────────
  6. FOOTER
─────────────────────────────────────────────────────────────────────────────*/
.mdi-fondo-rosa-intenso{
  background-color: var(--color-rosa)!important;
  padding: 20px 50px 40px 50px !important;
}

/*─────────────────────────────────────────────────────────────────────────────
  7. DISTANCIAS (MARGINS, PADDINGS, ETC.)
─────────────────────────────────────────────────────────────────────────────*/

.mdi-padding {
  padding: 50px !important;
}
.mdi-padding-general {
	padding: 50px !important;
}
.mdi-padding-general-lateral {
	padding: 0 50px !important;
}
.mdi-padding-lateral{
  padding: 0 50px !important;
}
.mdi-padding-30{
	padding: 30px !important;
}
/*─────────────────────────────────────────────────────────────────────────────
  8. SECCIONES
─────────────────────────────────────────────────────────────────────────────*/
/* FONDOS Y SEPARADORES */
.mdi-fondo-rosa{
	background-color: var(--color-rosa-fondo) !important;
}
.mdi-fondo-gris{
  background-color: var(--color-gris-claro) !important;
}
.mdi-fondo-gris-claro{
  background-color: var(--color-gris-blanco) !important;
}

/*GRID ICONOS INICIAL*/
.mdi-grid-iconos{
  box-shadow:  0 -6px 24px rgba(0, 0, 0, 0.10) !important;
  -webkit-box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.10) !important;
}

.mdi-grid-iconos{
  grid-template-rows: min-content !important;
}

/* quinto elemento: ocupa filas 2 y 3, columnas 1 y 2 */
.mdi-grid-iconos > *:nth-child(5) {
  grid-column: 1 / span 4 !important;
  grid-row: 2 / span 2 !important;
}
.mdi-grid-item{
  padding: 50px 40px !important;
}
.elementor-widget-icon-box .elementor-icon-box-title a {
  font-size: 30px !important;
  font-family: var(--fuente-bold) !important;
  font-weight: 600 !important;
  color: var(--color-negro-claro) !important;
}
.elementor-widget-icon-box .elementor-icon-box-description {
  font-size: 18px !important;
  color: var(--color-gris) !important;
  font-weight: 400 !important;
  font-family: var(--fuente-regular) !important;
}

/*GRID NUESTRAS TITULACIONES*/
.mdi-titulacion{
  padding: 45px !important;
  background-color: rgb(233, 233, 233) !important;
  border-radius: 3px !important;
  min-height: 540px !important;
}
.mdi-h4-titulaciones h4{
  font-size: 18px !important;
  color: var(--color-gris) !important;
  font-weight: 400 !important;
  font-family: var(--fuente-regular) !important;
  padding: 14px 0px !important;
  border-bottom: 1px solid #e6e6e6!important;
}
/*TARJETAS TITULACIONES MATRICULA*/
.tarjeta-bordes {
	padding: 30px 45px 30px 45px !important;
	border: 2px solid var(--color-gris-claro) !important;
	height: 610px !important;
}



/*GRID ENTRADAS*/
.mdi-entrada{
  background-color: var(--color-gris-blanco)!important;
  border-radius: 3px !important;
}
.mdi-entrada-contenido{
  padding: 0px 35px 40px 35px!important;
}
.mdi-descripcion{
  font-size: 18px !important;
  color: var(--color-negro) !important;
  font-weight: 400 !important;
  font-family: var(--fuente-regular) !important;
  margin-bottom: 0 !important;
}
a.mdi-descripcion{
  color: var(--color-negro) !important;
  background-color: var(--color-gris-blanco)!important;
}
.mdi-entrada-fecha p{
  font-size: 12px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  color: var(--color-gris) !important;
  font-family: var(--fuente-regular) !important;
  letter-spacing: 1px !important;
}
.mdi-entrada-categoria a{
  font-size: 12px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  font-family: var(--fuente-regular) !important;
  letter-spacing: 1px !important;
}
.mdi-entrada-h1 h1{
  font-size: 48px !important;
  font-weight: 700 !important;
  font-family: var(--fuente-bold) !important;
  margin-bottom: 16px !important;
  letter-spacing: .5px !important;
}
.mdi-entrada-categorias p{
  font-size:13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  color: #959595  !important;
  font-family: var(--fuente-regular) !important;
  letter-spacing: 1px !important;
}
.mdi-entrada-categorias a{
  font-size:13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  color: #959595 !important;
  font-family: var(--fuente-regular) !important;
  letter-spacing: 1px !important;
}



/*ACORDEON*/
.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
  height: 15px !important;
  width: 15px !important;
}
.mdi-titulos-acordeon .elementor-toggle-title  {
	font-size: 20px !important;
  font-style: normal !important;
  font-family: var(--fuente-regular) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 600 !important;
}
/*STEPS MATRICULA*/
.elementor-price-list-header {
	flex-direction: row-reverse !important;
	justify-content: start !important;
	gap: 20px !important;
	margin: 0 !important;
}
.elementor-price-list-price{
	font-size: 45px !important;
	font-family: var(--fuente-regular) !important;
	color: var(--color-rosa) !important;
	width: 25px !important;
	align-content: left !important;
}
.elementor-price-list-title {
	font-size: 20px !important;
	font-family: var(--fuente-bold) !important;
	color: var(--color-negro-claro) !important;
	margin: 0 !important;
}
.elementor-price-list-description {
	font-size: 20px !important;
	font-family: var(--fuente-regular) !important;
	color: var(--color-negro-claro) !important;
	padding-left: 45px !important;
	line-height: 1.6 !important;
}

/* PREGUNTAS FRECUENTES */
.mdi-acordeon-preguntas .elementor-tab-title {
	display: flex !important;
}
.mdi-acordeon-preguntas .elementor-toggle-icon.elementor-toggle-icon-left{
	width: 5% !important;
}
.mdi-acordeon-preguntas .elementor-toggle-title  {
	font-size: 20px !important;
  font-style: normal !important;
  font-family: var(--fuente-bold) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 400 !important;
	padding-top: 3px !important;
	width: 95% !important;
}
.mdi-acordeon-preguntas p  {
	padding-left: 55px !important;
}

/* FORMULARIO */
.elementor-field-label{
	font-family: var(--fuente-regular) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
}

/* GRID EME MAGAZINE */
.numeros-revista-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  column-gap: 90px;
	row-gap: 60px;
	min-width: 900px !important;
}
.numeros-revista-item a {
  display: block;
	text-align: center !important;
	font-family: var(--fuente-bold) !important;
  text-decoration: none;
  color: var(--color-negro-claro) !important;
}
.numeros-revista-item img {
  width: 230px;
  height: auto;
  display: block;
	padding-bottom: 25px !important;
}
.numeros-revista-item h3 {
  font-size: 17px;
	margin-bottom: 8px !important;
}

.numeros-revista-item p {
  margin: 0;
  font-size: 16px;
	font-family: var(--fuente-regular) !important;
  color: var(--color-gris) !important;
}

/* Responsive: de 1 a 2 columnas en pantallas <768px */
@media (max-width: 768px) {
  .numeros-revista-grid {
    grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
  }
}


/*MENU MOBILES*/
@media(min-width:768px){.mobile-only{display:none}}
.hamburger  {
  position:fixed;
  top:25px;
  right:25px;
  z-index:1001;
  background:none;
  border:none;
  cursor:pointer;
}
.hamburger {
  padding: 0px !important;
  background-color: #fff!important
}
.hamburger .line  {
  display:block;
  width:22px;
  height:2px;
  background:#000;
  margin:5px auto;
  transition:.3s;
  transform-origin:center;
}
.hamburger.active .line1  {
  transform:translateY(7px) rotate(45deg)
}
.hamburger.active .line2  {
  opacity:0
}
.hamburger.active .line3  {
  transform:translateY(-7px) rotate(-45deg)
}
.overlay  {
  position:fixed;
  inset:0;
  background:#fff;
  display:none;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  padding:65px 25px;
  z-index:1000;
}
.overlay.active  {
  display:flex
}
.overlay ul  {
  list-style:none;
  padding:0;
  margin:0;
  width:100%
}
.overlay li  {
  margin:16px 0;
  opacity:0;
  transform:translateX(-10px)
}
.overlay a  {
  font-size: 18px;
  text-transform: uppercase;
  font-family: var(--fuente-medium);
  font-weight: 400;
  letter-spacing: .5px;
  color:#0a0a0a !important;
  text-decoration:none
}
.overlay a.active  {
  color:#f179e7 !important;
}
.back-btn  {
  position:absolute;
  top:17px;
  left:25px;
  font-size:28px;
  color:#0a0a0a;
  display:none;
  cursor:pointer;
}
.back-btn.active  {
  display:block
}
.animate li  {
  animation:fadeIn .3s ease forwards
}
@keyframes fadeIn  {
  to  {
    opacity:1;
    transform:translateX(0)
  }
}

/*DOCENTES*/
/* Contenedor general */
.materias-container {
  display: flex;
  flex-direction: column;
	gap: 50px;
}

/* Cada ítem */
.materia-item {
  display: flex;
  align-items: flex-end !important;
}

/* Imagen */
.materia-image {
  flex: 0 0 30%;
}
.materia-image img {
  width: 100% !important;
  height: auto !important;
  display: block;
}

/* Contenido */
.materia-content {
	display: flex !important;
	flex-direction: column !important;
	padding-left: 50px !important;
	gap: 15px !important;
}

/* Iconos sociales */
.materia-social {
  display: flex;
  gap: 20px;
}
.materia-social a {
  font-size: 24px;
  color: #333;
}


/* Texto */
.materia-name {
  font-size: 25px !important;
  font-style: normal !important;
  font-family: var(--fuente-bold) !important;
  color: var(--color-negro-claro) !important;
  font-weight: 700 !important;
	margin: 0 !important;
}
.materia-asignatura {
  font-family: var(--fuente-regular) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
		margin: -12px 0 0 0 !important;
}
.materia-web {
  font-family: var(--fuente-regular) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
	font-weight: 600 !important;
  color: var(--color-negro-claro) !important;	
		margin: 0 !important;
}
.materia-web a {
  text-decoration: underline;
}
.materia-biografia p{
  font-family: var(--fuente-regular) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  color: var(--color-negro-claro) !important;
	margin: 0 !important;
}



/*─────────────────────────────────────────────────────────────────────────────
  9. RESPONSIVE
─────────────────────────────────────────────────────────────────────────────*/


/* Para dispositivos móviles */
@media only screen and (max-width: 600px) {
  .mdi-grid-iconos{
    display: block !important;
  }
  .mdi-grid-item{
    display: flex !important;
    flex-direction: row !important;
	  padding: 25px 30px !important;
  }
	.mdi-grid-item .elementor-icon svg {
		margin-top: 7px !important;
	}
  .elementor-widget-icon-box .elementor-icon-box-title a {
    font-size: 25px !important;
  }
  .elementor-icon-box-wrapper {
    display: flex !important;
    gap: 20px !important;
  }
  .elementor-icon-box-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .mdi-padding-general-lateral {
    padding: 0 25px !important;
  }
  .mdi-padding-general {
    padding: 0 25px !important;
  }
  .mdi-padding {
    padding: 25px !important;
  }
    .mdi-h2-oscuro h2{
    font-size: 31px !important;
  }
  .mdi-h1 h1{
    font-size: 40px !important;
  }
  .mdi-h2-titulaciones h2{
    font-size: 28px !important;
  }
  .mdi-h2 h2{
    font-size: 35px !important;
  }
  .mdi-h3 h3{
    font-size: 22px !important;
  }
  .mdi-titulos-acordeon .elementor-toggle-title  {
    display: flex !important;
    padding-top: 3px !important;
    line-height: 22px !important;
  }
  .mdi-titulos-acordeon p  {
    padding-left: 34px !important;
  }
  .mdi-acordeon-preguntas .elementor-toggle-title  {
    font-size: 18px !important;
    padding-top: 0px !important;
    line-height: 22px !important;
  }
  .mdi-acordeon-preguntas p  {
    padding-left: 38px !important;
  }
  .numeros-revista-grid {
    grid-template-columns: repeat(1,1fr);
    min-width: 100% !important;
  }
  .numeros-revista-item a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .numeros-revista-item img {
    width: 90%;
  }
  .tarjeta-bordes {
    padding: 25px 25px  !important;
    height: auto !important;
  }
	.mdi-header{
	  height: 75px !important
  }
	.mdi-logo {
    width: 250px !important; 
    height: 27px !important;          
    transition: none !important;
  }
  .elementor-sticky--effects .mdi-logo {
    width: 250px !important;
    height: 27px  !important;
  }
  .elementor-sticky--effects .mdi-logo img {
    opacity: 1 !important;
    transition: none !important;
  }
  .elementor-sticky--effects .mdi-logo::after {
    opacity: 0 !important;
    transition: none !important;
  }
  .mdi-fondo-rosa-intenso{
    background-color: var(--color-rosa)!important;
    padding: 20px 25px 40px 25px !important;
  }
  .mdi-titulacion{
    padding: 30px !important;
    min-height: 430px !important;
  }
.mdi-entrada-contenido{
	padding: 0 30px 30px 30px !important;
}
  .mdi-entrada-h1 h1{
    font-size: 40px !important;
  }
.materias-container {
  display: flex;
  flex-direction: column;
	gap: 90px;
}
.materia-item {
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 15px !important;
}
.materia-image {
	width: 100% !important;
}
.materia-content {
	padding-left: 0px !important;
}
}

/* Para dispositivos medianos (tabletas, etc.) */
@media only screen and (min-width: 601px) and (max-width: 1200px) {
.elementor-widget-icon-box .elementor-icon-box-title a {
	font-size: 28px !important;
}
.mdi-grid-item{
	padding: 30px 30px !important;
}
.mdi-grid-item .elementor-icon svg {
	margin-top: 5px !important;
}
.mdi-padding {
  padding: 35px !important;
}
.mdi-padding-general {
	padding: 30px !important;
}
.mdi-padding-general-lateral {
	padding: 0 30px !important;
}
.mdi-padding-lateral{
  padding: 0 30px !important;
}
.mdi-padding-30{
	padding: 30px !important;
}
.mdi-titulacion{
  padding: 30px !important;
  min-height: 450px !important;
}
.mdi-entrada-contenido{
	padding: 0 30px 30px 30px !important;
}
.mdi-acordeon-preguntas .elementor-toggle-title  {
    padding-top: 2px !important;
}
.mdi-acordeon-preguntas p  {
	padding-left: 45px !important;
}
.tarjeta-bordes {
	padding: 35px 30px  !important;
	height: 650px !important;
}
.mdi-h2-tarjetas h2 {
	font-size: 22px !important;
}
}

/* Para ipad vertical */
@media only screen and (min-width: 601px) and (max-width: 1024px) {
  .mdi-grid-iconos > *:nth-child(5) {
  grid-column: 1 / span 1 !important;
  grid-row: 5 / span 1 !important;
}
.mdi-titulacion{
  min-height: auto !important;
}
.mdi-acordeon-preguntas p  {
	padding-left: 50px !important;
}
.numeros-revista-grid {
	column-gap: 30px !important;
	row-gap: 60px;
	justify-items: center !important;
	min-width: auto !important;
}
.tarjeta-bordes {
	height: auto !important;
}
.mdi-h2-tarjetas h2 {
	min-height: auto !important;
}
}


/* Para dispositivos grandes(más grande que le mac de 13 pulagadas) */
@media only screen and (min-width: 1441px) {
  /* Agrega aquí los estilos específicos para dispositivos grandes */
}

/* Para pantallas muy grandes */
@media only screen and (min-width: 2400px) {
    /* Agrega aquí los estilos específicos para dispositivos grandes */
}