/*FONTS*/
@font-face{
    font-family: UltraCondensedSansSerif;
    src: url(fonts/UltraCondensedSansSerif.ttf);
}

/*ANIMACIONES*/
@keyframes BG-movement{
	to{
		background-position-x: -256px;
	}
}

@keyframes walkRight{
	0% {
		background-position: 256px 129px;
	}
	100%{
		background-position: 0px 129px;
	}
}

/*CONFIG-PÁGINA*/
body{
	min-height: 100vh;
    background-image: linear-gradient(0deg, #061a4e, #1b6070);
    background-repeat: no-repeat;
	font-size: 40px;
}

header{
	width: 100%;
	height: 256px;
	justify-content: space-between;
}

article img{
	border: 1px solid white;
	margin-top: 8%;
	width: 30%;
	height: 60%;
}

article div{
	margin-right: 20px;
}

button{
	font-size: 40px;
	background: none;
	color: white;
	border: none;
}

h1{
    font-family: UltraCondensedSansSerif;
    font-size: 50px;
}

h2{
    font-family: UltraCondensedSansSerif;
    font-size: 60px;
	text-align: center;
}

strong{
    background-image: linear-gradient(90deg, #041e61, #65c6db);
}

span{
    font-style: italic;
    text-decoration: underline;
}

.place{
	margin: 0;
	padding: 0px;
	width: 400px;
	height: 300px;
	
}

.character{
	margin: 0;
	padding: 0px;
	width: 250px;
	height: 250px;
}

/*FOOTER*/
footer{
    margin: 0;
	color: white;
    background-color: rgba(0,0,0,0.5);
	font-size: 30px;
    text-align:  center;
}

footer ul{
    list-style: none;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

footer ul li ul{
	display: block;
}

footer ul li a{
	color: white;
}

/*CONFIG-MENU*/
.menu{
	z-index: 1;
	background-color: rgba(0,0,0,0.8);
	right: 0.5rem;
	left: 0.5rem;
	padding: 0 2em;
	height: 110px;
	border-radius: 20px;
	color: white;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	position: fixed;
}

.horizontal__menu{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: row;
	gap: 1em;
	font-family: UltraCondensedSansSerif;
}

.vertical__menu{
	margin: 0;
	padding: 0;
	position: absolute;
	min-width: 250px;
	background: linear-gradient(rgb(231, 166, 97), rgb(232, 100, 5));
	border: 2px solid white;
	border-radius: 10px;
	display: none;
}

.listLink{
	color: white;
	text-decoration: none;
}

.visible{
	display: block;
	list-style: none;
}/*CLASE PARA JS*/

.horItem:hover, .verItem:hover{
	background: linear-gradient(90deg, rgb(63, 156, 159), rgb(6, 73, 151));
	border: 2px solid white;
	border-radius: 15px;
}

.menuButton{
	background: none;
	border: none;
	color: white;
	cursor: pointer;
}

.listButton{
	font-size: 20px;
}

.rotate{
	rotate: 180deg;
}/*CLASE PARA JS*/

.movileButton{
	display: none;
	/*opacity: 0;
	visibility: hidden;*/
}

/*ANIMATION-HEADER*/
.WalkImouto{
	background: url(../media/img/10042-SpriteSheet.png);
	position: absolute;
	width:64px;
  	height:64px;
	transform: translatey(160px);
	animation: walkRight 1s steps(4) infinite;
}

.BG{
	background: url(../media/img/BG.jpg) repeat-x;
	width: 100%;
	height: 256px;
	animation: BG-movement 40s linear infinite;
}

/*BODY-PROYECTOS*/
#ACMI{
	background-image: linear-gradient(0deg, #071948, #33c7e9);
}

#ACSR{
	background-image: linear-gradient(0deg, #844208, #deb448);
}

/*PÁGINA*/
#main{
	min-height: 400px;
	margin: 0px;
	padding: 0px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

#main article{
	background-color: rgba(0,0,0,0.5);
	color: white;
	margin: 4px;
	padding: 15px;
	border-radius: 20px;
	display: flex;
	flex-direction: row;
	flex-grow: 3;
	order: 2;
}

#main aside{
	background-color: rgba(0,0,0,0.5);
	color: white;
	margin: 4px;
	padding: 5px;
	border-radius: 20px;
	flex-grow: 1;
	order: 1;
}

/*ADAPTAVILIDADES*/
@media screen and (max-width: 1658px){
	.menu{
		right: 0.5rem;
		left: 0.5rem;
		height: 170px;
	}
	img{
		width: 40%;
		height: 40%;
		margin-top: 15%;
	}
}


@media screen and (max-width: 1185px){
	.menu{
		right: 0.5rem;
		left: 0.5rem;
		flex-direction: column;
		align-items: center;
		height: 256px;
		justify-content: center;
	}
	img{
		width: 20%;
		height:40%;
		margin-top: 15%;
	}
}

/*MÓVILES*/
@media screen and (max-width: 900px){
	.menu{
		height: 110px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}

	.horizontal__menu{
		display: none;
	}

	.Open{
		display: block;
	}

	.menu__visibility{
		display: flex;
		flex-direction: row;
		position: absolute;
		padding: 5px;
		right: 0.7rem;
		left: 0.7rem;
		top: 6.9rem;
		border-radius: 10px;
		flex-direction: row;
		align-items: center;
		background: rgba(0,0,0,0.8);
	}

	.visibility--OFF{
		display: none;
	}

	.visibility--ON{
		display: block;
	}

	img{
		display: none;
	}
}

@media screen and (max-width: 720px){
	.menu{
		height: 150px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}

	.horizontal__menu{
		display: none;
	}

	.Open{
		display: block;
	}

	.menu__visibility{
		display: flex;
		flex-direction: row;
		position: absolute;
		padding: 5px;
		right: 0.7rem;
		left: 0.7rem;
		top: 9.4rem;
		border-radius: 10px;
		flex-direction: row;
		align-items: center;
		background: rgba(0,0,0,0.8);
	}

	.visibility--OFF{
		display: none;
	}

	.visibility--ON{
		display: block;
	}

	img{
		display: none;
	}
}

@media screen and (max-width: 595px){
	.menu{
		height: 150px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}

	.horizontal__menu{
		display: none;
	}

	.Tittle{
		font-size: 40px;
	}

	.Open{
		display: block;
	}

	.menu__visibility{
		display: flex;
		flex-direction: column;
		position: absolute;
		padding: 5px;
		right: 0.7rem;
		left: 0.7rem;
		top: 9.4rem;
		border-radius: 10px;
		align-items: center;
		background: rgba(0,0,0,0.8);
	}

	.visibility--OFF{
		display: none;
	}

	.visibility--ON{
		display: block;
	}

	img{
		display: none;
	}
}

@media screen and (max-width: 385px){
	.menu{
		height: 150px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}

	.horizontal__menu{
		display: none;
	}

	.Tittle{
		font-size: 30px;
	}

	.Open{
		display: block;
	}

	.menu__visibility{
		display: flex;
		flex-direction: column;
		position: absolute;
		padding: 5px;
		right: 0.7rem;
		left: 0.7rem;
		top: 9.4rem;
		border-radius: 10px;
		align-items: center;
		background: rgba(0,0,0,0.8);
	}

	.visibility--OFF{
		display: none;
	}

	.visibility--ON{
		display: block;
	}

	img{
		display: none;
	}
}