:root{
    --color: #036635;
}
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
/*PORTADA*/
body.index{
  background-image: url(imagenes/para\ portada.jpg);
  background-size: 105%;
}
#titulo{
    color: white;
    display: flex;
    justify-content: center;
    position: relative;
    top: 190px;
    font-size: 130px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
#slogan{
    display: flex;
    justify-content: center;
    position: relative;
    top: 210px;
    font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
    font-style: oblique;
    font-size: large;
    color: white;
}
#menuindex{
    margin: 10px;
    height: 90px;
    transition: 0.3s;
    font-size: medium;
}
#menuindex ul{
    display: flex;
    justify-content: center;
    list-style: none;
    color: white;
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    position: relative;
    top: 230px;
}
#menuindex ul li{
    min-width: 0px;
}
#menuindex ul li a{
    text-decoration: none;
    color: white;
    padding: 5px 20px;
    display: block;
}
#menuindex ul li a:hover{
    color: #a49f9f;
}
#redes{
    margin: 5px;
    height: 90px;
    font-size: 1.0rem;
    transition: 0.3s;
}
#redes ul{
    display: flex;
    justify-content: center;
    list-style: none;
    position: relative;
    top: 180px;
    text-decoration: none;
}
#redes ul li a{
    text-decoration: none;
    color: black;
    background-color: white;
    display: block;
    margin: 4px;
    padding: 5px;
    height: 30px;
    text-align: center;
    align-content: center;
    border-radius: 60%;
    filter: contrast(0.6);
    transition: filter 0.4s ease, transform 0.3s ease;
}
#redes ul li a:hover{
    filter: none;
    transform: scale(1.03);  
}

/*ENCABEZADO 6PAGINAS*/
#contenedor header{
    position: fixed;
    width: 100%;
    top:0;
    background-color: rgb(244, 241, 237);
    z-index:100;
}
#contenedor #menu{
    position: fixed;
    width: 100%;
    top: 18%;
    background-color: rgb(244, 241, 237);
    z-index:100;
}
header{
    display: flex;
    justify-content: center;
    position: relative;
    font-size: 100px;
}
header a{
    list-style: none;
    display: flex;
    text-decoration: none;
    color: var(--color);
    
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
header a:hover{
    color: #a49f9f;
}
#menu{
    position: absolute;
    top: 20%;
    margin: 10px;
    height: 90px;
    transition: 0.3s;
    font-size: medium;
    background-color: white;
}
#menu ul{
    display: flex;
    justify-content: center;
    list-style: none;
    position: relative;
    top: 20px;
}
#menu ul li{
    min-width: 0px;
}
#menu ul li a{
    text-decoration: none;
    color: black;
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    padding: 5px 20px;
    display: block;
}
#menu ul li a:hover{
    color: #a49f9f;
}

/*PIE DE PAGINA*/
footer{
    font-size: 1.0rem;
    transition: 0.3s;
    margin-bottom: 300px;
    margin: 4% 23.6% 40% 23.6%;
    margin-top: 0.1px;
}
footer p{
    justify-content: left;
}
.redes ul{
    display: flex;
    justify-content: center;
    list-style: none;
    position: relative;
    top: 0;
    margin: 5% 8.1% 2% 8.1%;
    
}
.redes ul li a{
    text-decoration: none;
    color: white;
    background-color: black;
    display: block;
    margin: 1px;
    padding: 5px;
    height: 30px;
    text-align: center;
    align-content: center;
    border-radius: 50%;
    transition: all 0.3s ease; 
}
.redes ul li a:hover{
    background-color: #5c5c5c; 
    transform: translateY(2px) scale(0.95); 
    filter: brightness(1.1);
}

/*BLOG*/
body.blog{
  background-color: rgb(244, 241, 237);
  font-family: "Noto Sans", sans-serif;
}
.blogimg{
    display: block;
    text-align: center;
    margin-top: 220px;
}
#blogtitulo{
    display: flex;
    justify-content: space-between;
}
.blog1 h2{
    text-align: center;
    padding: 30px 0px 0px 615px; 
}
.blog1 img{
    width: 55px;
    height: 70px;
    border-radius: 55%;
    position: absolute;
    padding-top: 5px;
    right: 340px;
}
.blog1 h3{
    font-size: small;
    text-align: end;
    padding: 15px 310px 15px 0px;
}

.blog1 p{
    text-align: justify;
    padding: 0.1% 22%;
}
.blog2{
    height: 100px;
    text-align: justify;
    margin: 5px;
    display: flex;
    justify-content: space-between;
}
.blog2 p{
    padding: 1% 22% 0% 38%;
}
.blog2 img{
    position: absolute;
    left: 22%;
    margin-top: 1%;
    width: 197px;
}
.blog3{
    text-align: justify;
    margin: 200px;
    margin-top: 13%;
    padding: 0% 9%;
}

#blogtitulo2{
    display: flex;
    justify-content: space-between;
}
.blog4 h2{
    text-align: center;
    padding: 0px 0px 0px 655px;
    font-size: x-large;
    position: absolute;
    top: 200%;
}
.blog4 img{
    width: 55px;
    height: 70px;
    border-radius: 55%;
    margin: 0;
    position: absolute;
    top: 195%;
    right: 340px;
}
.blog4 h3{
    font-size: small;
    text-align: end;
    position: absolute;
    top: 205%;
    right: 310px;
}
.blog4 p{
    text-align: justify;
    padding: 0.1% 22%;
    position: absolute;
    top: 210%;
}

.blog5{
    height: 100px;
    text-align: justify;
    margin: 5px;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 218%;
}
.blog5 p{
    padding: 2.9% 45% 0% 22%;
}
.blog5 img{
    position: absolute;
    left: 58%;
    margin-top: 2.5%;
    width: 300px;
}
.blog6{
    text-align: justify;
    margin: 200px;
    padding: 1% 9%;
    position: absolute;
    top: 225%;
}
#pie{
    font-size: 1.0rem;
    transition: 0.3s;
    margin-bottom: 300px;
    margin: 30% 22% 40% 22%;
}
#pie p{
    justify-content: left;
    padding: 0;
}
.blogredes ul{
    display: flex;
    justify-content: center;
    list-style: none;
    position: relative;
    top: 0;
    margin: 5% 8.1% 15% 8.1%;
    
}
.blogredes ul li a{
    text-decoration: none;
    color: white;
    background-color: black;
    display: block;
    margin: 1px;
    padding: 5px;
    height: 30px;
    text-align: center;
    align-content: center;
    border-radius: 50%;
    transition: all 0.3s ease; 
}
.blogredes ul li a:hover{
    background-color: #5c5c5c; 
    transform: translateY(2px) scale(0.95); 
    filter: brightness(1.1);
}

/*GALERIA*/
body.galeria{
    background-color: rgb(244, 241, 237);
    font-family: "Noto Sans", sans-serif;
}
#fotos{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    text-align: center;
    margin: 14% 22.1% 2% 22.1%;
    padding: 15px;
}
#fotos img{
    width: 300px;
    height: auto;
    max-width: 250px;
    filter: grayscale(0.7);
    transition: filter 0.4s ease, transform 0.3s ease;
    box-shadow: 0 4px 10px grey;
    
}
#fotos img:hover{
    filter: none;
    transform: scale(1.03); 
}
#fotos p{
    margin: 5px 0 30px 20px;

}
.foto1 img{
    width: 350px;
    margin: 15px;
}
.foto2 img{
    width: 250px;
    margin: 15px;
}
.foto3 img{
    width: 245px;
    margin: 15px;
}
.foto4 img{
    width: 250px;
    margin: 15px;
}
.foto5 img{
    width: 250px;
    margin: 15px;
}
.foto6 img{
    width: 250px;
    margin: 15px;
}


/*VIDEOS*/
body.videos{
    background-color: rgb(244, 241, 237);
    font-family: "Noto Sans", sans-serif;
}
#content{
    display: block;
    text-align: center;
    justify-content: center;
    margin: 15.3% 22.1% 2% 22.1%;
    
    align-items: center;
}
#texto1 h2{
    
    margin-bottom: 4%;
    text-align: center;
}
#texto1 p{
    
    text-align: justify;
    margin-bottom: 2%;
}
#texto2 p{
    text-align: justify;
    
    margin-bottom: 2%;
}
#texto3 p{
    text-align: justify;
    
    margin-bottom: 2%;
    
}
#video-responsivo1{
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* relación 16:9 → ajusta si tu video tiene otra */
    height: 0;
    margin-bottom: 2%;
    
    overflow: hidden;
}
#video-responsivo1 iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

#video-responsivo2{
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* relación 16:9 → ajusta si tu video tiene otra */
    height: 0;
    margin-bottom: 2%;
    
    overflow: hidden;
}
#video-responsivo2 iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/*NOSOTROS*/
body.nosotros{
  background-color: rgb(244, 241, 237);
  margin-top: 230px;
  font-family: "Noto Sans", sans-serif;
}
.gridnosotros{
    display: grid;
    grid-template-areas: 
    "a a a "
    "b b c"
    "d d c"
    "f f f";
    width: 60%;

    grid-template-columns: 3fr 3fr 2fr;
    max-width: 1200px;
    margin: 200px auto;   
}
.gridnosotros img{
    width: 300px;
    height: auto;
    align-content: center;
    text-align: center;
}
#nosotros2 h3{
    padding-top: 30px;
    padding-bottom: 20px;
    color: var(--color)
}
#nosotros1{
    
    grid-area: a;
    background-color: var(--color);
    color: white;
    text-align: center;
    padding: 20px;
}
#nosotros2{
    
    grid-area: b;
}
#nosotros2 p{
    padding: 10px 20px 10px 0;
    text-align: justify;
}
#nosotros3{
    grid-area: c;
}
#nosotros3 img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 20px 0 ;
}
#nosotros4{
    grid-area: d;
    display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  
}
#nosotros4 img{
    width: 48%;
    box-shadow: 0 4px 10px grey;
}

#nosotros6{
    
    grid-area: f;
    background-color: var(--color);
    color: white;
    text-align: center;
    padding: 20px;
}

/*CONTACTO*/
body.contacto{
  background-color: rgb(244, 241, 237);
  margin-top: 240px;
  font-family: "Noto Sans", sans-serif;
}
.gridcontacto{
    border-radius: 6px;
    display: grid;
    grid-template-areas: 
    "a b"
    "a b"
    "c c";
    width: 60%;
    max-width: 1200px;
    margin: 200px auto; 
    grid-template-columns: 5fr 5fr;
    grid-template-rows: 2fr 2fr 4fr;
  min-height: 800px;
  background: linear-gradient(#036635, #1E3A31);
    color: rgb(244, 241, 237);
}
#tabla{
    grid-area: a;
    padding: 35px 30px;
    
}
table{
    border-collapse: collapse;
    margin-bottom: 5px;
    border: 1px solid white;
    margin: 15px;
}
.ttitle{
    background-color: white;
    color: #1E3A31;
    font-size: large;
    font-weight: 90%;
}
td,th{
    padding: 10px;
    vertical-align: top;
    font-size: small;
    text-align: center;
}
#formulario{
    grid-area: b;
    padding: 0 20px;
    padding: 43px 50px;
    font-size: small;
}
#formulario h3{
    text-align: center;
    font-size: large;
}
input{
  width: 100%;
  padding: 8px;
  margin: 5px 0;
  border-radius: 6px;
}
#boton input{
    background-color: black;
    color: white;
    font-weight: 90%;
    filter: contrast(0.6);
    transition: filter 0.4s ease, transform 0.3s ease;
}
#boton input:hover{
    filter: none;
    transform: scale(1.03);  
}
textarea{
    width: 100%;
    padding: 8px;
    margin: 5px 0;
    border: 1px solid rgb(199, 194, 194);
    border-radius: 6px;
}
#contactoimg{
    display: flex;
    justify-content: center; 
    align-items: center;
    width: 100%;
    margin-bottom: 15px;
}
#contactoimg img{
  width: 80%;
  box-shadow: 0 1px 2px rgb(44, 44, 44);
  border-radius: 6px;
}
#mapa{
    grid-area: c;
    border: 2px solid #1E3A31;
    margin: 30px 95px 50px 95px;
    
}
