/* Versión 1.0.1 */ 
body, html {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  width: 100%;
  font-family: 'Playfair Display', serif;
  background-color: #ffffff;
  color: #111;
}

h1, h2 {
  text-align: center;
  color: var(--prisma-dorado-oscuro);
  font-size: var(--prisma-font-size-muy-grande);
  margin-top: 6vw;	
}
.logo {
  width: 25vw;
  margin: 8vw auto 0vw;
}

.logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Hero */
.hero {
  background-image: url('../assets/img/manos_miguel_azul_naranja.jpg');
  background-size: cover;
  background-position: center;
  display: inline-block;
  color: var(--prisma-blanco);
  text-align: center;
  height: 56.25vw;
  width: 100vw;
  max-width: 100%;
  margin: 0;
  padding: 0;
  
}
.hero-contenido {
    width: 56VW;
    margin: 0 auto;
    font-size: var(--prisma-font-size-grane);
}
.hero-contenido p {
	padding-right: 10vw;
	padding-left: 10vw;
	line-height: 1.4;
}

/* Bloques */
.bloques {
  padding: 3vw 2vw;
}
.grid-bloques {
  display: inline-block;
  margin-top: 3em;
  margin-left: 3vw;
  margin-right: 3vw;    
}
.bloque {
  box-sizing: border-box;
  display: inline-block;
  background-color: var(--prisma-azul-oscuro);
  color: var(--prisma-blanco);
  text-align: center;
  padding-top: 4vw;
  padding-left: 2vw;
  padding-right: 2vw;
  position: relative;
  width: 27vw;
  vertical-align: top;
  height: 27vw;
  overflow-y: hidden;
}
.bloque.izquierda {
	margin-left: 0vw;
	margin-right: 0vw;
}
.bloque.centro {
	margin-left: 2vw;
	margin-right: 2vw;
}
.bloque.derecha {
	margin-left: 0vw;
	margin-right: 0vw;
}
.bloque h3 {
  color: var(--prisma-dorado);
  font-family: 'Times New Roman', serif;
  font-size: var(--prisma-font-size-muy-grande);
  margin-bottom: 1rem;
}

.bloque p {
  font-family: Arial, sans-serif;
  font-size: var(--prisma-font-size-grande);
  line-height: 1.2;
  margin: 0 auto;
}

.bloque#secretos::before,
.bloque#necesidades::before,
.bloque#claves::before {
  content: '';
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 60px;
  height: 60px;
  display: block;
  margin: 0 auto 1rem auto;
}

.bloque#secretos::before {
  background-image: url('../assets/img/icono_piano_y_corchea.png');
}

.bloque#necesidades::before {
  background-image: url('../assets/img/icono_hombre_y_piano.png');
}

.bloque#claves::before {
  background-image: url('../assets/img/icono_dos_corcheas_y_corazon.png');
}

/* Video */
.video-section {
	background-color: var(--prisma-azul);
	padding-top: 1vw;
	padding-bottom: 1vw;
}
section.testimonios {
	margin-top: 0vw;
	padding-top: 0vw;
}
.testimonios h2 {
	margin-top: 6vw;
	margin-bottom: 6vw;
}
.testimonio-autor p {
	color: var(--prisma-blanco);
}
/* Presentación */
.presentacion {
  background-image: url('../assets/img/miguel_tocando_piano_negro_y_azul.jpg');
  background-size: cover;
  background-position: center;
  position: relative;
  width: 100%;
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 4vw;
  margin: 0;
  box-sizing: border-box;
  overflow: hidden;
}

.presentacion::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.presentacion-contenido {
  position: relative;
  z-index: 2;
  width: 50%;
  max-width: 600px;
  margin-right: 0;
}

.presentacion-texto {
  background-color: rgba(10, 50, 85, 0.9);
  padding: 3vw;
  color: white;
  text-align: center;
}

.logo-prisma {
  width: 60px;
  margin: 0 auto 2vw;
}

.logo-prisma img {
  width: 100%;
}

.presentacion-texto h2 {
  color: #D4B88C;
  font-size: 1.5rem;
  margin-bottom: 2vw;
  line-height: 1.4;
}

.presentacion-texto p {
  margin-bottom: 2vw;
  line-height: 1.6;
}

.footer {
  background-color: #0a3255;
  padding: 4vw;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 120px;
}

.footer img {
  max-width: 200px;
}

/* Media queries para dispositivos móviles */


/* Estilos para el modal */
.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) {
/**********************************************************************************************************************
* Superposición de prisma_base.css
**********************************************************************************************************************/	
:root {
    --prisma-font-size-grande: 4.5vw;
}
/**********************************************************************************************************************
* 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: hero (móviles)
**********************************************************************************************************************/  
.boton-enviar {
    padding: 10px 20px;
  }
.hero {
	height: 80vh;
	background-image: url('../assets/img/manos_miguel_azul_naranja.webp');
}
.hero-contenido {
	width: 95vw;
	font-size: var(--prisma-font-size-grande);
}
.logo {
	width: 50vw;
	margin-top: 12vw;
}
h1 {
	margin-top: 1.5em;
	letter-spacing: 0.2vw;
}
.hero-contenido p {
    padding-right: 5vw;
    padding-left: 5vw;
}
/**********************************************************************************************************************
* Sección: bloques (móviles)
**********************************************************************************************************************/    
.bloques {
	padding-top: 0vw;
	padding-left: 0vw;
	padding-right: 0vw;
	padding-bottom: 2vw;
}
.bloques h2 {
	padding-top: 14vw;
	padding-bottom: 14vw;
}
.grid-bloques {
	box-sizing: border-box;
	margin: 0vw;
	width: 100vw;
	padding-left: 2vw;
	padding-right: 2vw;
}
.bloque {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 2vw;
	height: 84vw;
	padding-top: 14vw;
	padding-left: 14vw;
	padding-right: 14vw;
}
.bloque.izquierda {
}
.bloque.centro {
	margin-left: 0vw;
	margin-right: 0vw;
}
.bloque.derecha {
}
/**********************************************************************************************************************
* Sección: bloques (móviles)
**********************************************************************************************************************/    
.video-section h2 {
	padding-left: 14vw;
	padding-right: 14vw;
	color: var(--prisma-blanco);
}
.video-nav-arrow {
	background-color: var(--prisma-azul);
	color: var(--prisma-blanco);
}
 
  .presentacion-contenido {
    width: 90%;
    margin: 0 auto;
  }
  

  
  .video-info .testimonio-autor h3 {
    font-size: 22px;
    margin-bottom: 8px;
  }
  
  .video-info .testimonio-autor p {
    font-size: 18px;
    margin-top: 0;
  }
  
  .play-button {
    width: 80px;
    height: 80px;
  }
  
  .play-icon {
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 32px solid white;
    margin-left: 8px;
  }
  
  /* Estilos para la sección de testimonios en móviles */
  .grid-testimonios {
    display: flex;
    flex-direction: column; /* Cambiar a columna para mostrar uno debajo del otro */
    gap: 0; /* Sin espacio entre testimonios ya que solo se mostrará uno */
  }
  
  .testimonio {
    width: 90%; /* Ancho del testimonio en móviles */
    margin: 0 auto; /* Centrar */
    padding: 4vw; /* Más padding para mejor legibilidad */
  }
  
  /* Ocultar todos los testimonios excepto el primero */
  .testimonio:not(:first-child) {
    display: none;
  }
  
  .testimonio-imagen {
    width: 100px; /* Imagen más pequeña pero visible */
    height: 100px;
  }
  
  .testimonio-texto {
    font-size: 18px; /* Aumentado de 16px a 18px para mejor legibilidad */
    line-height: 1.6; /* Aumentado el interlineado para mejor legibilidad */
    margin-bottom: 3vw; /* Más espacio después del texto */
  }
  
  .testimonio-autor h3 {
    font-size: 22px; /* Aumentado de 20px a 22px */
  }
  
  .testimonio-autor p {
    font-size: 18px; /* Aumentado de 16px a 18px */
  }
  
.nav-arrow {
	font-size: 16vw; /* Flechas de navegación más grandes */
}
}