body {
    margin: 0;
    font-family: Roboto, sans-serif;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}

.fade-in {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1s ease-out, transform 1s ease-out;
}
.fade-in.show {
    opacity: 1;
    transform: translateY(0);
}



.header {
    width: 100%;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 2fr 6fr 1fr;
    align-items: center;
    justify-content: space-between;
    background-color: #fff;
    padding: 10px 20px;
    border-bottom: 1px solid #ccc;
}
.logo{
    grid-column: 1;
}
.logo img {
    max-height: 50px;
}
.menu{
    grid-column: 2;
    align-items: center;
}
.menu ul{
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
}
.menu ul li {
    margin: 0 25px;
}
.menu ul li a {
    text-decoration: none;
    color: #000;
    font-weight: bold;
}
.menu ul li a:hover {
    color: #006F64;
    text-decoration: underline;
}
.social {
    display: flex;    
    justify-content: flex-end;         
    align-items: center;      
    
    grid-column: 3;
}
.social img {
    max-height: 35px;
}
.iconos {
    margin-left: 20px;  /* Agrega un espacio entre los logos */
    width: 40px; 
    height: auto;       /* Mantiene la proporción del logo */
}



.banner{
    position: relative;
    height: 525px;
    overflow: hidden;
}
.banner img {
    width: 100%;
    height: 100%;
    object-fit: center;
}


.prolog{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.pieprolog{
    width: 940px;
    font-family: "merriweather";
    font-size: 18px;
    line-height: 2;
    padding: 50px 0;
    text-align: justify;
}



.tabla{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 70px;
}
.tabla table{
    width: 900px;
    text-align: center;
    border-collapse: separate;
    border-spacing: 30px 0;
}
table tr{
    align-items: center;
}
.title{
    font-weight: bold;
    padding: 15px 0;
}
.title1, .title2, .title3, .title4{
    padding-top: 25px;
    font-size: 18px;
}
.description1, .title1{
    background-color: #009DDC;
}
.description2, .title2{
    background-color: #f8f32b;
}
.description3, .title3{
    background-color: #ffa0bd;
}
.description4, .title4{
    background-color: #b9e94a;
}
.description1, .description2, .description3, .description4{
    padding: 10px 15px 25px 15px;
    font-family: merriweather;
    font-size: 15px;
    line-height: 1.5;
}
table tr img{
    width: 200px;
    height: 150px;
    margin-bottom: 15px;
}


.pregunta, .titulosgi{
    display: flex;
    justify-content: center;
    color: #006F64;
    font-family: "montserrat";
    margin-top: 30px;
    margin-bottom: 0;
}


.modo{
    width: 1000px;
    margin: 0 auto;/*centrado horizontal*/
    margin-bottom: 70px;
}
.grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 20px;
    width: 100%;
    margin-top: 30px;
}
.grid-item {
    position: relative;
    width: 100%;
    height: 300px;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    opacity: 0; /* Inicialmente oculto */
    transform: scale(0.7); /* Inicialmente más pequeño */
    transition: transform 0.6s ease-out, opacity 0.6s ease-out;
}
.grid-item.animate {
    opacity: 1;
    transform: scale(1); /* Vuelve a su tamaño normal */
}
.grid-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.overlay {
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%;
    height: 15%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    color: white;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}
.textoimg{
    color: white;
    font-size: 18px;
    font-family: 'merriweather';
    font-weight: bold;
    text-align: center;
    padding: 10px;
}



.sigcontainer {
    position: relative;
    overflow: hidden;
    width: 1000px;
    height: 400px;
    margin: 0 auto;
}
.slider-container{
   margin-top: 30px;
}
.slider-wrapper {
  display: flex;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 10px;
}
.slider-wrapper::-webkit-scrollbar {
  display: none; /* Ocultar scrollbar */
}
.slide-item {
  flex: 0 0 auto;
  width: 300px;
  margin-right: 20px;
  text-align: center;
}
.slide-item img {
  width: 300px;
  height: 200px;
  object-fit: cover;
  border-radius: 6px;
  display: block;
  margin: 0 auto;
}
.slide-item a {
  color: black;
  text-decoration: none;
  display: inline-block;
  margin-top: 10px;
}
.slider-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  padding: 10px;
  font-size: 20px;
  cursor: pointer;
  z-index: 1;
}
.arrow-left {
  left: 0;
}
.arrow-right {
  right: 0;
}


footer{
    background-image: url('/media/Media/footer.png');
    height: 450px;
}
.footerr{
    height: 380px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.pie img{
    padding-top: 30px;
    padding-left: 45px;
    width: 240px;
    height: 60px;
    grid-column: 1;
}
.pie h3{
    margin-top: 42px;
    margin-left: 45px;
    color: orange;
    grid-column: 1;
}
.pie p{
    color: white;
    margin-left: 45px;
    margin-top: 0;
    grid-column: 1;
}
.indice{
    padding: 25px;
    grid-column: 2;
    text-align: center;
}

.indice h3{
    color: orange;
}
.indice p{
    color: white;
    grid-column: 3;
}
.indice a{
    color: black;
    text-decoration: none;
}
.cont{
    grid-column: 3;
    padding: 25px;
    padding-left: 150px;
}
.cont h3{
    padding-top: 10px;
    color: orange;
}
.sec1{
    display: flex;
    align-items: center; /*Alinear verticalmente ícono y texto*/
    margin-bottom: 10px; /*Espacio entre filas*/
}
.img{
    width: 22px;
    height: auto;
    margin-right: 10px; /*Espacio entre ícono y texto*/
}
.sec1 p {
    color: white;
    margin: 0;
    font-size: 16px;
}
.sec2{
    display: flex;
    align-items: center; /*Alinear verticalmente ícono y texto*/
    margin-bottom: 10px; /*Espacio entre filas*/
}
.sec2 p{
    color: white;
    margin: 0;
    font-size: 16px;
}
.sec2 img{
    width: 20px;
    height: auto;
    margin-right: 10px;
}
.cierre{
    text-align: center;
    color: white;
}
.cierre p{
    font-weight: bold;
    margin: 0;
}

