/* styles.css */

/* Estilos generales */
body, html {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: 'DM Sans', sans-serif;
    background-color: white;
	letter-spacing: -0.4px;
}


h1, h2, h3{
	font-size:16px;
	font-weight: 400;
	text-align: center;
	padding:0px;
	margin:16px;
	color:black;
}

h1:hover{
	color:silver;
	transition: 0.2s ease;
}

a{
	padding:0;
	margin:0;
	text-decoration: none;
	color: black;
}

a:visited{
	color:black;
}

.link:hover{
	color:silver;
	transition: 0.2s ease;
}

.fecha{
	font-size:14px;
}

.header {
    display: flex;
    align-items: center; /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
    width: 100vw;
    padding: 0;
    text-align: center;
	position: fixed;
	top: 0;
	z-index:999;
}

.title {
    display: inline-block;
    padding: 0;
    text-align: center;
    cursor: pointer;
}


.footer {
    display: flex;
    position: fixed;
    top: calc(25vh + 54px);
    width: 100vw;
    flex-direction: column; /* Apila elementos verticalmente */
    justify-content: center;
    align-items: center; /* Centra horizontalmente */
    text-align: center;
}


.gallery {
    display: flex;
    overflow-x: auto;
    width: 100vw;
	cursor: pointer;
	background-color:black;
	position:fixed;
	top: 54px;
	z-index:0;
}

img{
	height:25vh;
	width: auto;
}

.gallery-item {
    flex: 0 0 auto;
	position: relative;
    display: flex;
	
}

.gallery-item img:hover{
	filter: grayscale(1);
	opacity: 50%;
	transition: 0.3s;
}


.overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    padding: 0px;
	margin:0;
    opacity: 0; /* Oculto inicialmente */
    transition: opacity 0.3s ease; /* Transición suave */
    text-align: center;
    font-size: 16px;
	white-space: normal; /* Permite que el texto salte de línea */
    word-wrap: break-word; /* Asegura que las palabras largas también se ajusten */
    width: 90%; /* Limita el ancho del texto al 90% del contenedor */
    overflow-wrap: break-word; /* Asegura que las palabras se ajusten al contenedor */
}




.gallery-item img:hover,
.gallery-item:hover img {
    filter: grayscale(1);
    opacity: 50%;
    transition: 0.3s;
}

.gallery-item:hover .overlay {
    opacity: 1; /* Hace que la superposición sea visible */
    /* Puedes añadir más estilos aquí si necesitas */
}

.overlay:hover{
	color:silver;
	transition: 0.2s ease;
}

.extra-content {
    display: flex;
    margin: 0 auto;
    width: 50vw;
    text-align: center;
    align-items: center;
    justify-content: center;
    opacity: 0;
    display: none; /* Hidden initially */
    transition: opacity 1s ease; /* Smooth opacity transition */
    margin-top: calc(25vh + 70px);
    z-index: 1000; /* Asegura que esté siempre en la parte superior */
    position: relative; /* Agrega contexto de posición */
}



/* When .show is added, it will fade in with opacity */
.extra-content.show {
    opacity: 1;
}


.extra-content img, .extra-content video {
    width: 100%;
    height: auto;
    margin: 0px;
	display: flex;
}


.spotify{
	display: flex;
	margin: 0 auto;
	width: 25vw;
	height: 50vh;
}


.video-container {
    position: relative;
    padding-bottom: 56.25%; /* Altura proporcional para una relación de aspecto de 16:9 */
    height: 0;
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    background: white; /* Fondo negro para dar un buen aspecto mientras carga */
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



::selection{
	background:silver;
}


::-webkit-scrollbar {
  width: 0px;
  height:0px;
}


::-webkit-scrollbar-track {
  background: #ffffff; 
}
 

::-webkit-scrollbar-thumb {
  background: silver; 
}


::-webkit-scrollbar-thumb:hover {
  background: #e1e1e1; 
}

.scroll-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(255, 255, 255, 0.8); /* White with opacity */
    opacity: 0; /* Start fully transparent */
    z-index: 999; /* Positioned just below z-index 1000 elements (extra-content) */
    pointer-events: none; /* Allows scrolling without interruption */
}




@media (max-width: 768px) and (orientation: portrait) {
    .sidebar {
        display: none;
    }
	
	.extra-content {
		width: 100vw;
	}
	
	.spotify{
		display: flex;
		margin: 0 auto;
		width: 90vw;
		height: 75vh;
	}
}
