@charset "utf-8";
/* CSS Document */

.sec-por{          /* portada */
	width:100%; height: 100vh; /*min-height: 200px;*/ overflow: hidden; z-index: 300; background-color: rgb(0,0,0);
	}

.btns-img{
	position:absolute; bottom: 30px; left: calc(50% - 15px); width: 70px; font-size: 40px; z-index: 500;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
}
.btn{
	background-color: rgb(255,255,255); width: 20px; height: 5px; z-index: 600; cursor:pointer;
	
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px; 
}
/*--------------- Portada ---------------*/
.por-100 {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 301;
}

.por-pnls {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 302;
}

.por-pnl {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  transform: scale(1.2);
  transition: opacity 0.5s ease, transform 0.5s ease;
  z-index: 303;
  text-align: center;
	
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;

	-moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
}

.por-pnl.active {
  opacity: 1;
  pointer-events: auto;
  animation: zoomFadeIn 2s ease-out forwards; /* ← más lento y con fade */

}

@keyframes zoomFadeIn {
    0% {
    transform: scale(1.2);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }

}

@keyframes zoomFadeIn {
  0% {
    transform: scale(1.2);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.por-img{
	width: 100%; min-height: 100%;
}
.por-img img{

	width: 100%; min-height: 100%; z-index: 5001; 
	webkit-filter: brightness(40%) saturate(120%) contrast(120%);
    filter: brightness(40%) saturate(120%);
	
	transition: transform 10s ease;
	transform: scale(1.3);
    }
.por-txt{
	position: absolute; bottom: 0%; left: 10%; height: 100%; width: 600px; max-width: 80%; min-height: 300px; z-index: 5002;
	
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	
	-moz-box-align: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: flex-start;
	
	/* Retardo en la animacion del texto */

}

/* Retardo en la animacion del texto */
/* Animación base */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Estado inicial */
.txt-ttl,
.txt-descrip,
.txt-btn {
  opacity: 0;
  transform: translateY(20px);
}

/* Activación escalonada solo cuando el panel está activo */
.por-pnl.active .txt-ttl {
  animation: fadeInUp 0.5s ease-out 1s forwards;
}

.por-pnl.active .txt-descrip {
  animation: fadeInUp 0.5s ease-out 2s forwards;
}

.por-pnl.active .txt-btn {
  animation: fadeInUp 0.5s ease-out 3s forwards;
}

.txt-ttl{
	font-size: 20px; color: grey; letter-spacing: 5px; margin-bottom: 10px; text-align: left; font-weight: bold;
	text-shadow: 2px 2px rgba(0,0,0,0.2);
}
.txt-descrip{
	font-size: 50px; color: rgb(255,255,255); text-align: left; margin-bottom: 10px; font-style: italic; font-weight: bold;
}
.txt-btn{
	 width: 200px; height: 50px; line-height: 50px; text-align: center; border:none; color: rgb(255,255,255); background-color: rgb(24,70,157); cursor: pointer; max-width: 100%;
	
	-webkit-border-radius:25px;
	-moz-border-radius:25px;
	border-radius:25px;
	
	-webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}
.txt-btn:hover{
	color: rgb(24,70,157); background-color: rgb(255,255,255);
	-webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.3);
	box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.3);
}



@media all and (max-width: 1000px) {
	.por-img{
		height: 100%; width: auto;
		
	}

	.por-img img{
		height: 100%; width: auto;
		object-fit: contain
	}
}