/* fuentes de letra aplicadas */
@import url('https://fonts.googleapis.com/css2?family=Pacifico&display=swap');
@import url('https://fonts.cdnfonts.com/css/josefin-sans');

/* reglas aplicadas a todo el sitio, sin importar el dispositivo adaptado*/
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: 'Josefin Sans', sans-serif;
}

/* variables de color para más facilidad */
:root {
	--rosapalido: #F7DAD9;
	--malvasuave: #E2B7C3;
	--salmonclaro: #F9AFAE;

	--lilasuave: #C79BF2;
	--violetaclaro: #A884F3;
	--purpurasuave: #BC8DE5;

	--celestesuave: #B5EAEA;
	--turquesacalmante: #7AD7F0;
	--azulcielo: #AED9E0;

	--colorparatexto: #0077B6;
}

html, body {
	font-size: 120%;
	scroll-behavior: smooth;
	background: linear-gradient(to right, var(--rosapalido) 0%, var(--salmonclaro) 20%, var(--lilasuave) 40%, var(--purpurasuave) 60%, var(--celestesuave) 80%, var(--azulcielo) 100%) no-repeat;
	width: 100%;
	text-align: center;
	align-items: center;
	justify-content: center;
	overflow-x: hidden;
	min-width: 200px;
	min-height: 200px;
	color: var(--colorparatexto);
}

/* barra de scroll */
::-webkit-scrollbar { width: 15px; }

::-webkit-scrollbar-track {
	border-radius: 100vh;
	background: var(--azulcielo);
}

::-webkit-scrollbar-thumb { background: linear-gradient(var(--salmonclaro), var(--purpurasuave), var(--azulcielo));}

/* cabecera que incluye logo, texto SPON SPA y el menú responsivo */
.cabecera {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px;
	border: 2.5px solid var(--violetaclaro);
	border-radius: 50px;
	margin: auto;
	margin-bottom: 50px;
	max-width: 95%;
	text-align: center;
	min-width: 350px;
}

.cabecera h1, .cabecera h1 span { font-family: 'Pacifico'; }

.cabecera h1 { color: #000000; }

.cabecera h1 span {
	color: #ffffff;
	margin-left: 5px;
}

.cabecera .hamburger-menu #toggle {
	opacity: 0;
	display: none;
}

.cabecera .hamburger-menu .logo-menu {
	height: auto;
	margin-right: 1px;
	width: auto;
	transition: transform 1s ease;
}

.giro { animation: rotar 2s linear; }

	@keyframes rotar {
		from { transform: rotate(0deg); }
		to { transform: rotate(360deg); }
	}


/* main. lo que no es ni header ni footer */
.central {
	width: 95%;
	margin: 0 auto;
}

/* galería del inicio. se añadió el slider después */
.central .slider .galeriainicio {
	width: 90%;
	margin: 0 auto;
	border-radius: 30px;
	max-width: 900px;
	box-shadow: 2px 2px 2px 2px var(--salmonclaro);
}

.central .introduccion {
	display: grid;
	margin: 0 auto;
	margin-top: 50px;
	margin-bottom: 25px;
	max-width: 90%;
	text-align: center;
}

.central .introduccion h2 {
	margin: 25px;
}

/* presentación del equipo de trabajo de SPON SPA */
.central .avatares {
	display: flex;
	overflow-x: scroll;
	scroll-behavior: smooth;
	padding: 10px;
	overflow: hidden;
}

.central .avatares .trabajadores {
	flex: 0 0 auto;
	margin-right: 10px;
}

.central .avatares .trabajadores img {
	width: 200px;
	height: 200px;
	border-radius: 50%;
}

/* botón que aparece en la parte inferior del sitio cuando bajás. te lleva hasta arriba del todo*/
.arriba {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 999;
	border: none;
	outline: none;
	background: linear-gradient(to bottom left, var(--malvasuave) 25%, var(--lilasuave) 50%, var(--purpurasuave) 75%, var(--turquesacalmante) 100%);
	cursor: pointer;
	padding: 20px;
	border-radius: 100%;
	font-size: 25px;
	rotate: -90deg;
}

/* pie de página que incluye formulario, mapa, info de contacto y redes sociales */
.pie {
	background: var(--purpurasuave);
	border-top: 2px solid var(--malvasuave);
	padding: 20px;
	text-align: center;
}

.pie .ajustar {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.pie .ajustar .info-de-contacto { margin-top: 20px; }

.pie .ajustar .info-de-contacto ul li {
	list-style: none;
	margin-bottom: 20%;
}

.pie .ajustar .info-de-contacto .iconos {
	background-color: var(--azulcielo);
	border-radius: 60px;
	margin: 0 20px;
	display: flex;
	justify-content: center;
	position: inherit;
}

.pie .formulario input[type="text"], .pie .formulario input[type="email"], .pie .formulario input[type="submit"], .pie .formulario textarea {
	border: none;
	box-shadow: 2px 2px 2px 2px var(--malvasuave);
	width: 100%;
	margin-top: 10px;
}

.pie .formulario input[type="text"], .pie .formulario input[type="email"], .pie .formulario input[type="submit"] { height: 30px; }

.pie .formulario label {
	display: block;
	margin-top: 30px;
	margin-bottom: 10px;
}

input[type="checkbox"] {
	appearance: none;
	width: 20px;
	height: 20px;
	border: 2.5px solid var(--lilasuave); /* Borde */
	border-radius: 5px;
	background-color: var(--celestesuave);
	cursor: pointer;
	box-shadow: 1px 1px 1px 1px var(--malvasuave);
	margin-top: 30px;
}

input[type="checkbox"]:checked {
	background-color: #65a4dc; /* Color de fondo cuando está marcado */
}

.pie .formulario textarea {
	resize: none;
}

.pie .iframe-mapa {
	margin: 20px;
	border-radius: 5%;
	box-shadow: 2px 2px 2px 2px var(--azulcielo);
	width: 512px;
}

@media screen and (min-width: 1024px) {

	.cabecera { background-color: var(--purpurasuave); }

	.menu ul {
		display: flex;
		right: 0;
		top: 0;
		font-weight: bold;
		justify-content: center;
		align-items: center;
	}
	
	.menu ul li a {
		text-decoration: none;
		color: var(--turquesacalmante);
		box-shadow: 1px 1px 1px 1px var(--negromodoscuro);
		padding: 10px 15px;
		display: flex;
		align-items: center;
		width: auto;
		border-radius: 10px;
	}
	
	.menu li {
		margin-right: 10px;
		list-style: none;
	}

	.menu li:last-child { margin-right: 0; }

	.menu li a:hover { color: var(--salmonclaro); }

	.logo-menu {
		height: auto;
		margin-right: 1px;
		width: 200px;
		transition: transform 1s ease;
	}

	.giro { animation: rotar 2s linear; }

	@keyframes rotar {
		from { transform: rotate(0deg); }
		to { transform: rotate(360deg); }
	}

	.hamburger {
		display: block;
		margin-bottom: 5px;
		margin-top: 10px;
	}

	.pie .formulario input[type="text"], .pie .formulario input[type="email"], .pie .formulario input[type="submit"], .pie .formulario textarea {
		width: 100%;
	}

}


@media screen and (max-width: 1023px) {
	
	.cabecera {
		display: flex;
		align-items: center; 
		justify-content: space-between; 
		padding: 10px;
		background-color: var(--malvasuave);
	}

	.logo-arriba { flex: 0 0 auto; }

	.logo-arriba .logo-menu {
		max-width: 100%;
		height: 125px;
		margin: 0 auto;
	}
	
	.hamburger-menu {
		display: block;
		cursor: pointer;
	}

	.menu {
		list-style: none;
		display: none;
		height: 45%;
		background-color: var(--purpurasuave);
		border: 2px solid var(--vyn); 
		border-radius: 30px;
		position: absolute; 
		top: 100px; 
		right: 15px;
		padding: 5%; 
		z-index: 1;
		min-width: 125px;
		max-width: 125px;
	}

	.hamburger-menu span {
		display: block;
		width: 30px;
		height: 5px;
		background: var(--rosapalido);
		margin-bottom: 5px;
	}
	  
	#toggle:checked + .hamburger > span { transform: rotate(45deg); }
		  
	#toggle:checked + .hamburger > span::before {
		top: 0;
		transform: rotate(0deg);
	}
	  
	#toggle:checked + .hamburger > span::after {
		top: 0;
		transform: rotate(90deg);
	}

	#toggle:checked ~ .menu { display: inline-block; }
	  
	.menu ul {
		list-style: none;
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		padding: 20% 0;
	}
	  
	.menu ul li {
		margin-bottom: 30px;
		display: inline-block;
		margin-right: 15px;
	}
	  
	.menu ul li a {
		text-decoration: none;
		font-size: 17.5px;
		list-style-type: none;
		color: var(--turquesacalmante);
		font-weight: bold;
		z-index: 1;
		height: auto;
		border-radius: 100px;
	}
	
	.menu ul li a:hover { color: var(--salmonclaro); }

	.central .introduccion .p3 { opacity: 0; }

	.pie .formulario input[type="text"], .pie .formulario input[type="email"], .pie .formulario input[type="submit"], .pie .formulario textarea { max-width: 768px; }

	.pie .iframe-mapa {
		width: 95%;
		display: flex;
		margin: 0 auto;
		margin-top: 20px;

	}

}


@media screen and (max-width: 511px) {
	
	.central .introduccion .p2, .central .introduccion .p3 { opacity: 0; }

	.pie .formulario input[type="text"], .pie .formulario input[type="email"], .pie .formulario input[type="submit"], .pie .formulario textarea {
		width: 100%;
		max-width: 511px;
	}
	
}