/*Estilos generales*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Segoe UI, Arial, sans-serif;
  scroll-behavior: smooth;
  
}

body {
	background: white;
}

/* Header */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 85px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 2rem;
  background-color: #F0F0FC;
  color: rgb(0, 0, 0);
  z-index: 1000;
  backdrop-filter: blur(8px);
}

header img {
  width: 75px;
  height: 75px;
  border-radius: 6px;
}

nav {
  background: none;
}

nav ul {
  list-style: none;
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
  background: none;
}

nav a {
  text-decoration: none;
  color: rgb(0, 0, 0);
  font-weight: 500;
  transition: color 0.3s;
  background: none;
}

nav a:hover {
  color: #14048b;
}

/* Sections */
section {
  min-height: auto;
  max-height: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 1rem;
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s ease, transform 0.8s ease;
  background-attachment: fixed; 
  background-position: center;
  background-size: cover;
  scroll-margin-top: 85px;
}

.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Estilos de secciones */
#insp-section { background-image: url(rayuela.png);}
#mvv-section { background: #1700af;}
/*#mvv-section { background: #1131D6; color: black; border: 1px solid #061240; }*/
#servicios-section { background-image: url(mvv-background.png);}
#qs-section { background: #FAFAFA; color: black; border: 0px solid black; box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);}
#confian-section { background-image: url(confian-background.png);}
/*#confian-section { background: #FAFAFA; color: black; border: 0px solid black; box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);}*/
#contact-section { background: #333046; /*color: black; border: 0px solid black; box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5)*/;}

h2 {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}

p {
  max-width: 600px;
  font-size: 1.2rem;
  line-height: 1.6;
  background-color: #1131D6;
}

/* Estilo Inspiracion */
.insp-section {
  width: 100%;
  min-height: 300px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  
}

.inspiracion {
  position: relative;
  width: 100%;
  height: 150px;
  padding: 10px;
  margin-top: 150px;
  /*background-color: rgb(253, 253, 253, 0.5);
  border-radius: 5px;
  border: 1px solid #0f0101;*/
  display: flex;
  justify-content: center;
  align-items: flex-end;   
}

.inspiracion p {
  position: absolute;
  color: #ffffff; 
  text-shadow:  -2px -2px 0 #200079, /* Sombra superior izquierda */
                 2px -2px 0 #200079, /* Sombra superior derecha */
                -2px  2px 0 #200079, /* Sombra inferior izquierda */
                 2px  2px 0 #200079; ;
  font-size: 2.5em;
  font-family: Segoe UI, Arial, sans-serif;
  line-height: 1;
  margin: 15px;
  text-align: center;
}


/* Estilos mvv */
.mvv h2 {
	background: none;
	color: white;
}
	
.mvv p {
	background: none;
	min-width: auto;
	max-width: auto;
	color: white;
  text-align: justify;
}
	
/* Estilo Servicios */
.servicios-section h2, p, img {
	background: none;
}

.servicios {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  width: 70%;
  margin-top: 2rem;
  background: none;
  /*box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
  border-radius: 1rem;*/
  padding: 1.5rem;
}

.servicios .datos, .hr, .optimizacion {
  background: #FAFAFA;
  border-radius: 1rem;
  padding: 1.5rem;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.35);
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: transform 0.3s ease;
}

.servicios h4 {
    margin-bottom: 25px;
    font-weight: 850;
}

.servicios h6 {
  margin-top: 15px;
  
}

.servicios p {
    margin-top: 15px;
    font-weight: 400;
    font-size: medium;
}

/* Cards QS */
.quienes-somos div, h2, h3, p {
	background-color: #FAFAFA;
}
	
.team-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    width: 75%;
    margin-top: 1rem;
	  padding: 1.5rem;
}

.card {
    background: #FAFAFA;
    border-radius: 1rem;
    padding: 1.5rem;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.3s ease;
}

.card:hover {
    transform: translateY(-5px);
}

.card img {
    width: 175px;
    height: 175px;
    border-radius: 25%;
    object-fit: cover;
    margin-bottom: 1rem;
    border: 3px solid #ddd;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.card:hover img {
    transform: scale(1.1);
    filter: grayscale(0%) contrast(110%);
}

.card h3 {
    font-size: 1.4rem;
    margin-bottom: 0.3rem;
}
.card h4 {
    font-size: 1rem;
    color: #444;
}

.card p {
    font-size: 1.1rem;
    color: #444;
}

.card a {
	text-decoration: none;
	display: inline-block;
	padding: 10px;
	margin-top: 10px;
	color: white;
	border: 1px solid #2fb4cc;
	border-radius: 4px;
	transition: all 400ms ease;
	background-color: black;
}

.card a:hover {
	background-color: #2fb4cc;
  color: #fff;
} 
	
/*Estilos confian*/
.confian {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    width: 70%;
    margin-top: 2rem;
	  padding: 1.5rem;
    
}
.confian-section h2 {
    background: none;
}

.confian a {
  background-color: #45c2b3;
}

.confian img {
    width: 150px;
    height: 150px;
    margin: 15px;
    border-radius: 10px;
    background: none;
	  object-fit: cover;
}

/* Contacto */
.contact-section div, h2, form, label, img, a {
	background: none;
}

.contact-section h2 {
  color: whitesmoke;
}

.contacto label, p {
  background: none;
}
	
.contacto{
	display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
  width: 70%;
  /*margin-top: 1rem;
	padding: 0.5rem;*/
}
	
/*.seguinos {
	flex-basis: 20%;
}*/
	
.seguinos p{
	/*margin-bottom: 15px;*/
	text-align: center;
  color: whitesmoke;
}
		
/*.formulario {
	flex-basis: 50%;		
}*/

.formulario label {
	color: whitesmoke;
}
	
.redes {
	/*flex-basis: 20%;*/
  display: flex;
	background: none;
  flex-direction: column;
}

.redes p {
	color: whitesmoke;
}
	
.redes img {
	width: 100px;
	height: 100px;
	background: none;
}
	
.contactenos_form {
	display: flex;
  justify-content: center;
  flex-direction: column;
	/*margin: 3px auto;*/
	align-items: center;
	text-align: center;
	max-width: 475px;
}

.contactenos_form form {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
	
.contactenos_form label, input, textarea {
	margin-bottom: 10px;
	border-radius: 6px;
	align-content: center;
	font-family: "Segoe UI", Arial, sans-serif;
}
	
.contactenos_form input {
	width: 100%;
	max-width: 2000px;
	height: 45px;
	color: gray;
	font-style: italic;
	border: 1px solid #2fb4cc;
	text-align: center;
  padding: 0.5rem;
  box-sizing: border-box;
  border-radius: 6px;
  margin-bottom: 1rem;
}

.contactenos_form textarea {
  height: 100px;
	width: 100%;
  resize: vertical;
	color: gray;
	font-style: italic;
	text-align: center;
}
	
.contactenos_form button {
	background-color: black;
	color: white;
	width: 115px;
	height: 65px;
	border: 1px solid #2fb4cc;
	border-radius: 6px;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 1rem;
}
	
.contactenos_form button:hover {
	background-color: white;
	color: black;
	width: 115px;
	height: 65px;
	border: 1px solid #2fb4cc;
	border-radius: 6px;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 1.15rem;
}
	

/* Estilos footer*/
.footer {
  background-color: #333046;
  justify-content: center;
  text-align: center;
  align-items: center;
  width: 100%;
  border: #F0F0FC 1px solid;
}

.footer p {
  text-align: center;
  font-size: small;
  font-weight: 400;
  color: #fff;
}

/* Estilo Boton whatsapp */
.whatsapp-float {
    position: fixed; 
    width: 40px;
    height: 40px;
    bottom: 40px; 
    right: 40px; 
    background-color: none; 
    color: #fff;
    border-radius: 50px; 
    text-align: center;
    font-size: 30px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.45);
    z-index: 100; 
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
}

.whatsapp-float:hover {
    background-color: #45c2b3;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.65);
    width: 55px;
    height: 55px;
}