/* Versión 1.0.0 */ 
/* emocion */
.emocion {
	width: 100%;
	margin-top: var(--prisma-header-height);
}
.emocion-tocar-el-piano .fondo-emocion {
	background-image: url('../assets/img/teclas_nuevas_azul_y_negro.jpg');
	background-size: cover;
	background-position: center;
}
.contenedor-tocar-el-piano {
	text-align: center;
	margin: auto;
	margin-top: 10vw;
}
.emocion-tocar-el-piano .tocar-el-piano {
	position: relative; /* para poder usar z-index */
	z-index: 3; /* para que esté sobre el área azul traslúcida pero con toda la intensidad en las letras */
	    padding-bottom: 19vw;
}
..emocion-tocar-el-piano .tocar-el-piano .logo-mg {
	margin: auto;
	text-align: center;
	width: 8%;
	padding-top: 8%;
	margin-bottom: 0;
}
..emocion-tocar-el-piano .tocar-el-piano .logo-mgimg {
	width: 100%;
}
.emocion-tocar-el-piano .tocar-el-piano p {
	padding-left: 0vw;
	padding-right: 0vw;
	text-align: center;
	margin: auto;
    padding-top: 0vw;
	font-size: var(--prisma-font-size-grande);
}
.emocion h1 {
  font-size: var(--prisma-font-size-muy-grande);
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 1.5rem;
  color: var(--prisma-blanco);
  padding-left: 21vw;
  padding-right: 21vw; 
}

.mg-text {
  font-size: 4rem;
  font-weight: bold;
  color: #D4B88C;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.hero h1 {
  font-size: 3vw;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 1.5rem;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  white-space: nowrap;
}
/**********************************************************************************************************************
* Sección: bloques-info (desktop)
**********************************************************************************************************************/
.bloques-info {
	padding: 6rem 2rem;
	background-color: var(--prisma-azul);
}
.grid-bloques-info {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
  max-width: 1200px;
  margin: 0 auto;
}

.bloque-info {
  text-align: center;
  color: white;
}

.icono-bloque {
  margin-bottom: 2rem;
}

.icono-bloque img {
  width: 4vw;
  height: 4vw;
}
.bloque-info h3 {
	font-size: var(--prisma-font-size-bastante-grande);
	font-weight: normal;
	line-height: 1.4;
	color: white;
	margin: 0;
}

/* Sección del método */
.metodo-section {
  background-color: var(--prisma-azul);;
  padding: 0;
  color: white;
}

.metodo-header {
  text-align: center;
  background-image: url('../assets/img/piano_fondo.jpg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100vw;
  max-width: 100%;
  margin-left: calc(-50vw + 50%);
  position: relative;
  height: 55.1vw;
  max-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.metodo-header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1;
}

.metodo-header h2 {
  color: var(--prisma-dorado);
  font-size: var(--prisma-font-size-muy-grande);
  font-weight: bold;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.3;
  position: relative;
  z-index: 2;
  background-color: rgba(10, 50, 85, 0.6);
  padding: 3vw 2vw;
}

.metodo-bloques {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  margin: 0 auto;
}

.metodo-bloque {
  background-size: cover;
  background-position: center;
  position: relative;
  min-height: 600px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  color: white;
}
.metodo-bloque-3 {
  background-size: cover;
  background-position: center;
  position: relative;
  min-height: 600px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  color: white;
}


.metodo-bloque:nth-child(1) {
  background-image: url('../assets/img/partitura_fondo.jpg');
}

.metodo-bloque:nth-child(2) {
  background-image: url('../assets/img/piano_teclas_fondo.jpg');
}

.metodo-bloque-3:nth-child(1) {
  background-image: url('../assets/img/piano_interior_fondo.jpg');
}

.metodo-bloque::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.metodo-bloque > * {
  position: relative;
  z-index: 2;
}

.numero {
  font-size: 8vw;
  color: #EFCB71;
  font-weight: bold;
  margin-bottom: 1vw;
  margin-left: 4vw;
}

.metodo-bloque h3 {
  color: #EFCB71;
  font-size: 1.8vw;
  margin-bottom: 1vw;
  font-weight: bold;
  margin-left: 4vw;
}

.metodo-bloque p {
  font-size: 1.2vw;
  line-height: 1.4;
  margin: 0;
  margin-left: 4vw;
}

.claves {
	width: 100%;
}
.claves .clave-1 {
	background-image: url('../assets/img/partitura_fondo.jpg');
}
.claves .clave-2 {
	background-image: url('../assets/img/piano_teclas_fondo.jpg');
}
.claves .clave-3 {
	background-image: url('../assets/img/piano_interior_fondo.jpg');
}
.caja-doble {
	display: inline-block;
	box-sizing: border-box;
	width: 50%;
	background-size: cover;
	background-position: center;
	aspect-ratio: 1;
	vertical-align: top;
}
.caja-doble h3 {
	margin-left: 4vw;
	color: var(--prisma-dorado);
    font-size: 2.4vw;
    margin-bottom: 1vw;
	font-weight: normal;
}
.caja-doble p {
  font-size: var(--prisma-bastante-grande);
  line-height: 1.4;
  margin: 0;
  margin-left: 4vw;
  color: white;
  padding-right: 20%;
}

.clave-numero {
  font-size: 10vw;
  color: var(--prisma-dorado);
  font-weight: bold;
  margin-bottom: 1vw;
  margin-left: 4vw;
  margin-top: 20vw;
}
.caja-simple {
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	background-size: cover;
	background-position: center;
	aspect-ratio: 2;
	vertical-align: top;
}
.caja-simple h3 {
	margin-left: 4vw;
	color: #EFCB71;
    font-size: 2.4vw;
    margin-bottom: 1vw;
	font-weight: normal;
}
.caja-simple p {
  position: relative;
  font-size: var(--prisma-font-size-bastante-grande);
  line-height: 1.4;
  margin: 0;
  margin-left: 4vw;
  color: white;
  padding-right: 20%;
}
.miguel-garcia {
	width: 100%;
}
.testimonios h2 {
	font-family: var(--prisma-font-family-principal);
	color: var(--prisma-negro);
	font-size: var(--prisma-font-size-muy-grande);
	padding-left: 20vw;
	padding-right: 20vw;
	margin-top: 1vw;
	font-weight: normal;
}
.miguel-garcia-metodo-prisma .fondo-miguel-garcia {
	background-image: url('../assets/img/miguel_tocando_piano_negro_y_azul.jpg');
	background-size: cover;
	background-position: center;
}
.contenedor-prisma {
	position: relative;
	width: 52%;
	margin-left: 38%;
	margin-top: 10%;
}
.miguel-garcia-metodo-prisma .metodo-prisma {
	position: relative; /* para poder usar z-index */
	z-index: 3; /* para que esté sobre el área azul traslúcida pero con toda la intensidad en las letras */
	padding-bottom: 2vw;
}
.miguel-garcia-metodo-prisma .metodo-prisma-background {
	position: absolute; /* para poder usar z-index */
	inset: 0;
	z-index: 2; /* Detrás de las letras */
	background-color: var(--prisma-azul);
	opacity: 0.8;
}
.miguel-garcia-metodo-prisma .metodo-prisma .logo-prisma {
	margin: auto;
	text-align: center;
	width: 8%;
	padding-top: 8%;
	
}
.miguel-garcia-metodo-prisma .metodo-prisma .logo-prisma img {
	width: 100%;
}
.miguel-garcia-metodo-prisma .metodo-prisma p {
	padding-left: 0vw;
	padding-right: 0vw;
	text-align: center;
	margin: auto;
	margin: auto;
    padding-top: 4vw;
    padding-left: 4vw;
    padding-right: 4vw;
}
/**********************************************************************************************************************
* Sección: piano-oblicuo (desktop)
**********************************************************************************************************************/
.piano-oblicuo {
	width: 100%;
	padding-top: 4vw;
}
.piano-oblicuo-vivir-el-piano .fondo-piano-oblicuo {
	background-image: url('../assets/img/piano_azul_inclinado.png');
	background-size: cover;
	background-position: center;
}
.contenedor-vivir-el-piano {
	text-align: center;
	margin: auto;
	margin-top: 12%;
}
.piano-oblicuo-vivir-el-piano .vivir-el-piano {
	position: relative; /* para poder usar z-index */
	z-index: 3; /* para que esté sobre el área azul traslúcida pero con toda la intensidad en las letras */
}
..piano-oblicuo-vivir-el-piano .vivir-el-piano .logo-mg {
	margin: auto;
	text-align: center;
	width: 8%;
	padding-top: 8%;
	margin-bottom: 0;
	
}
.piano-oblicuo-vivir-el-piano .vivir-el-piano .logo-mgimg {
	width: 100%;
}
.piano-oblicuo-vivir-el-piano .vivir-el-piano p {
	padding-left: 0vw;
	padding-right: 0vw;
	text-align: center;
	margin: auto;
    padding-top: 0vw;
}
.piano-oblicuo h1 {
	font-size: var(--prisma-font-size-muy-grande);
	font-weight: normal;
	line-height: 1.2;
	margin-bottom: 1.5rem;
	color: var(--prisma-blanco);
  	padding-left: 4vw;
	padding-right: 4vw;
}
/**********************************************************************************************************************
* Seccion: video-section (desktop)
**********************************************************************************************************************/
section.video-section {
	padding-top: 4vw;
}
section.video-section h2 {
	font-family: var(--prisma-font-family-principal);
	color: var(--prisma-negro);
	font-size: var(--prisma-font-size-muy-grande);
    text-align: center;
    padding-left: 15vw;
    padding-right: 15vw;
	margin-top: 2vw;
	font-weight: normal;

}
/**********************************************************************************************************************
* Medios de comunicación (desktop)
**********************************************************************************************************************/
section.medios-de-comunicacion {
	padding-top: 4vw;
}
section.medios-de-comunicacion h2 {
	font-family: var(--prisma-font-family-principal);
	color: var(--prisma-negro);
	font-size: var(--prisma-font-size-muy-grande);
    text-align: center;
    padding-left: 10vw;
    padding-right: 10vw;
	margin-top: 1vw;
	font-weight: normal;
}
.logos-container {
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 1vw;
   flex-wrap: wrap;
}
.logos-container a {
	width: 20%;
}
.logos-container img {
   max-width: 25vw;
   object-fit: contain;
   cursor: pointer;
   width: 100%;
}
/**********************************************************************************************************************
* Sección: modal formulario (desktop)
**********************************************************************************************************************/
.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.7);
  animation: fadeIn 0.3s;
}

.modal-contenido {
	background-color: var(--prisma-blanco);
	margin: 10% auto;
	padding: 0;
	width: 45vw;
	position: relative;
	animation: slideIn 0.4s;
}
.cerrar-modal {
	z-index: 1000;
	position: absolute;
	top: -0.5vw;
	right: 1vw;
	color: var(--prisma-azul);
	font-size: 3vw;
	font-weight: bold;
	cursor: pointer;
	transition: color 0.3s;
}

.cerrar-modal:hover {
  color: #FF6600;
}

/* Animaciones para el modal */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes slideIn {
  from { transform: translateY(-50px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
/**********************************************************************************************************************
***********************************************************************************************************************
*
* DISPOSITIVOS MÓVILES
*
***********************************************************************************************************************
**********************************************************************************************************************/
@media (max-width: 768px) {

.emocion h1 {
  padding-left: 10vw;
  padding-right: 10vw; 
}
/**********************************************************************************************************************
* Sección: modal formulario (móviles)
**********************************************************************************************************************/
.modal-contenido {
	box-sizing: border-box;
	width: 90vw;
    margin: 20vw auto;
    padding: 0vw;
}  
.cerrar-modal {
	z-index: 1000;
	top: 0vw;
	right: 4vw;
	font-size: 10vw;
	font-weight: bold;
}
/**********************************************************************************************************************
* Sección: bloques-info (mobile)
**********************************************************************************************************************/
.icono-bloque img {
   width: 10vw;
   height: 10vw;
}
.bloques-info {
	padding-left: 3vw;
	padding-right: 3vw;
	padding-top: 6vw;
	padding-bottom: 18vw;
	background-color: var(--prisma-azul-oscuro);
}
.bloque-info {
	background-color: var(--prisma-azul);
	padding-top: 26vw;
	padding-bottom: 26vw;
}
.boton-descubre {
	margin-top: 10vw;
}
/**********************************************************************************************************************
* Método (mobile)
**********************************************************************************************************************/
.metodo-header {
  text-align: center;
  background-image: url('../assets/img/piano_fondo.jpg');
  background-size: 295%;
  background-repeat: no-repeat;
  background-position: center;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  position: relative;
  height: 164vw;
  display: flex;
  align-items: center;
  justify-content: center;
}

.metodo-header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1;
}
.metodo-header h2 {
	font-size: var(--prisma-font-size-muy-grande);
	padding-right: 6vw;
	padding-left: 6vw;
	line-height: 1.2;
	padding-top: 16vw;
    padding-bottom: 16vw;
	backdrop-filter: blur(1vw);
	-webkit-backdrop-filter: blur(1vw); 
}
/**********************************************************************************************************************
* Section: claves (mobile)
**********************************************************************************************************************/
.caja-doble {
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	background-size: cover;
	background-position: center;
	aspect-ratio: 0.66;
	vertical-align: top;
}
.caja-doble h3 {
	margin-left: 4vw;
	color: var(--prisma-dorado);
    font-size: var(--prisma-font-size-muy-grande);
    margin-bottom: 1vw;
	margin-top: 0vw;
	font-weight: normal;
}
.caja-doble p {
  font-size: var(--prisma-font-size-bastante-grande);
  line-height: 1.4;
  margin: 0;
  margin-left: 4vw;
  color: white;
  padding-right: 20%;
}

.clave-numero {
  font-size: 40vw;
  color: var(--prisma-dorado);
  font-weight: bold;
  margin-bottom: 0vw;
  margin-left: 4vw;
  margin-top: 70vw;
}
.caja-simple {
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	background-size: cover;
	background-position: center;
	aspect-ratio: 0.66;
	vertical-align: top;
}
.caja-simple h3 {
	margin-left: 4vw;
	color: var(--prisma-dorado);
    font-size: var(--prisma-font-size-muy-grande);
    margin-bottom: 1vw;
	font-weight: normal;
	margin-top: 0vw;
}
.caja-simple p {
  position: relative;
  font-size: var(--prisma-font-size-bastante-grande);
  line-height: 1.4;
  margin: 0;
  margin-left: 4vw;
  color: white;
  padding-right: 20%;
}

/**********************************************************************************************************************
* Section: miguel-garcia (mobile)
**********************************************************************************************************************/  
.miguel-garcia-metodo-prisma .fondo-miguel-garcia {
	background-image: url('../assets/img/miguel_tocando_piano_negro_y_azul.jpg');
	background-size: 360%;
	background-position: 18%;
}
.contenedor-prisma {
	position: relative;
	width: 94vw;
	margin-left: 3vw;
	margin-top: 24vw;
}
.miguel-garcia-metodo-prisma .metodo-prisma {
	position: relative; /* para poder usar z-index */
	z-index: 3; /* para que esté sobre el área azul traslúcida pero con toda la intensidad en las letras */
	padding-top: 14vw;
	padding-bottom: 14vw;
}
.miguel-garcia-metodo-prisma .metodo-prisma-background {
	position: absolute; /* para poder usar z-index */
	inset: 0;
	z-index: 2; /* Detrás de las letras */
	background-color: var(--prisma-azul);
	opacity: 0.8;
}
.miguel-garcia-metodo-prisma .metodo-prisma .logo-prisma {
	margin: auto;
	text-align: center;
	width: 12vw;
	padding-top: 0;
	
}
.miguel-garcia-metodo-prisma .metodo-prisma .logo-prisma img {
	width: 100%;
}
.miguel-garcia-metodo-prisma .metodo-prisma p {
	text-align: center;
	margin: auto;
    padding-top: 4vw;
    padding-left: 4vw;
    padding-right: 4vw;
	padding-bottom: 4vw;
} 
/**********************************************************************************************************************
* Section: video (mobile)
**********************************************************************************************************************/ 
section.video-section {
	padding-top: 14vw;
}
section.video-section h2 {
	font-family: var(--prisma-font-family-principal);
	color: var(--prisma-negro);
	font-size: var(--prisma-font-size-muy-grande);
    text-align: center;
    padding-left: 8vw;
    padding-right: 8vw;
	margin-top: 0vw;
	font-weight: normal;
}
/**********************************************************************************************************************
* Medios de comunicación (mobile)
**********************************************************************************************************************/
section.medios-de-comunicacion {
	padding-top: 4vw;
}
section.medios-de-comunicacion h2 {
	font-family: var(--prisma-font-family-principal);
	color: var(--prisma-negro);
	font-size: var(--prisma-font-size-muy-grande);
    text-align: center;
    padding-left: 10vw;
    padding-right: 10vw;
	margin-top: 1vw;
	font-weight: normal;
}
.logos-container {
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 1vw;
   flex-wrap: wrap;
}
.logos-container a {
	width: 33%;
}
.logos-container img {
   max-width: 30vw;
   object-fit: contain;
   cursor: pointer;
   width: 100%;
}
/**********************************************************************************************************************
* Sección: piano-oblicuo (desktop)
**********************************************************************************************************************/
.piano-oblicuo {
	width: 100%;
	padding-top: 4vw;
}
.piano-oblicuo-vivir-el-piano .fondo-piano-oblicuo {
	background-image: url('../assets/img/piano_azul_inclinado.png');
	background-size: cover;
	background-position: center;
}
.contenedor-vivir-el-piano {
	text-align: center;
	margin: auto;
	margin-top: 30vw;
}
.piano-oblicuo-vivir-el-piano .vivir-el-piano {
	position: relative; /* para poder usar z-index */
	z-index: 3; /* para que esté sobre el área azul traslúcida pero con toda la intensidad en las letras */
}
..piano-oblicuo-vivir-el-piano .vivir-el-piano .logo-mg {
	margin: auto;
	text-align: center;
	width: 8%;
	padding-top: 8%;
	margin-bottom: 0;
	
}
.piano-oblicuo-vivir-el-piano .vivir-el-piano .logo-mgimg {
	width: 100%;
}
.piano-oblicuo-vivir-el-piano .vivir-el-piano p {
	padding-left: 0vw;
	padding-right: 0vw;
	text-align: center;
	margin: auto;
    padding-top: 0vw;
}
.piano-oblicuo h1 {
  margin-bottom: 1.5rem;
}
.piano-oblicuo .contenedor-botones {
	margin-top: 10vw;
}
/**********************************************************************************************************************
* Otros (mobile)
**********************************************************************************************************************/ 
 .metodo-bloques {
    grid-template-columns: 1fr;
    gap: 2vw;
  }
  
  .metodo-bloque {
    min-height: 300px;
    padding: 6vw;
  }
  
  .numero {
    font-size: 48px;
  }
  
  .metodo-bloque h3 {
    font-size: 22px;
  }
  
  .metodo-bloque p {
    font-size: 18px;
  }
  .nav {
    flex-direction: column;
    gap: 1rem;
  }
  
  .nav-menu {
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .hero {
    margin-top: 120px;
    height: 80vh;
  }
  
  .hero-contenido {
    width: 90%;
  }
  
  .hero h1 {
    font-size: 2rem;
  }
  
  .mg-text {
    font-size: 2.5rem;
  }
  
  .hero-subtitle {
    font-size: 1.2rem;
  }
  
  .grid-bloques-info {
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  
  .quote-text {
    font-size: 1.8rem;
  }
  
  .testimonios-carousel {
    flex-direction: column;
    gap: 2rem;
  }
  
  .carousel-arrow {
    display: none;
  }
  
  .testimonios-grid {
    flex-direction: column;
    align-items: center;
  }
  
  .metodo-contenido h2 {
    font-size: 1.8rem;
  }
} /* Fin dispositivos móviles */
