*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
#body{
    font-family: sans-serif;
    color: #fff;
   
}
/**PAGINA PRINCIPAL**/
.fondo-chocolate {
    background-image: url(img/chocolate-background-k7l479l228ylrhyt.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 100vh;
    padding-top: 170px;
    width: 60%;
    margin: 0 auto;
    text-align: center;
    color: white;

}

.inicio h1{
    margin: 0 auto;
    font-size: 55px;
    padding: 20px;
}
.inicio p{
    font-size: 20px;
}

nav{
    margin:20px;
    height: 30px;
}

nav ul{
    display: flex;
    flex-direction:row;
    justify-content: center;
    list-style: none;
    gap: 30px;
}

nav ul li a{
    color: white;
    transition: color 0.3s ease, opacity 0.3s ease;
    text-decoration: none;
}
nav li a:hover{
    color: grey;
    transform: scale(1.05);
}

footer{
    text-align: center;
    font-size: 30px;
}
footer a{
    color: white;
    transition: color 0.3s ease, opacity 0.3s ease
}
footer a:hover{
    color: gray;
    opacity: 0.6;
}

body.contenedor {
    background-color: #4d371e;
    color: #a18151;
}


.encabezado{
    background-color: #c0a377;
    /*posicionamiento fijo*/
    position: fixed;
    top:0;
    left:0;
    width:100%;
    z-index:1000;  
    text-align: center;
}
.contenido-general main {
    margin-top: 60px;
    padding-top: 20px;
}
.come-chocolate img{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 500px;
    width: 50%;
    margin: 0 auto;
}
.autor img{
    height: 50px;
    border-radius: 50%;
}
.autor{
    font-size: 14px;
    text-align: end;
}
.formato-principal h1{
    font-size: 20px;
}
.amigo-chocolate{
    display: flex;
    flex-direction: row;
}
.amigo-chocolate p{
    margin-left: 18px;
}
.amigo-chocolate img{
    width: 100px;
}
.formato-principal h1{
    text-align: center;
}
footer p{
    font-size: 20px;
    text-align: start;
    margin-bottom: 30px;
}




/*NOSOTROS*/
.gridcontainer{
    display: grid;
    grid-template-areas: 
                "sup  sup  sup"
                "izq  izq  der"
                "img  img  der"
                "inf  inf  inf";
gap: 10px;
grid-template-columns: 1fr 2fr 1fr;
}
.headergrid{
    grid-area: sup;
    color: #d9b37a;
    background-color: #5b3a1e;
    text-align: center;
    font-size: 19px;
    padding: 20px;
}
.suptgrid{
    grid-area: izq;
    margin-top: 20px;
    color: #d9b37a
}

.articlegrid{
    grid-area: izq ;
    color: #d9b37a;
    margin-top: 65px;
    margin-bottom: auto;
    padding: 10px;
    border-width: thin;
    border-top-style: dashed;
    border-bottom-style: dashed;
}
.asidegrid{
    grid-area: img;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}
.asideimg img{
    margin-top: 50px;
    height: 60%;
    box-shadow: 2px 2px 2px #c29148;
}
.imgcampo{
    grid-area: der;

}
.imgcampo img{
    grid-area: der;
    width: 100%;
    height: 100%;
    
}
.footergrid{
    grid-area: inf;
    color: #d9b37a;
    background-color: #5b3a1e;
    text-align: center;
    font-size: 19px;
    padding: 20px;
}

/*GALERIA*/

.galeria-fotos{
    display: grid;
    grid-template-columns: repeat(3, 3fr); /* 3 imágenes por fila */
    gap: 10px; /* Espacio entre imágenes */
    justify-items: center; /* Centra cada imagen dentro de su celda */
    margin: 20px auto;
}

.galeria-foto img {
    width: 270px;
    height: 250px;
    object-fit: cover;
    border-radius: 5px;
    box-shadow: 10px 9px 4px rgba(0,0,0,0.3);
    filter: grayscale(60%) brightness(90%);
    transition: all 0.3s ease-in-out;
}
.galeria-foto p{
    text-align: center;
}
.galeria-foto img:hover {
    filter: grayscale(0%) brightness(100%); 
    transform: scale(1.03); 
    box-shadow: 15px 14px 8px rgba(0,0,0,0.5); 
}




/*VIDEOS*/

.videos {
    padding-top: 20px;
}
.formato-videos h2{
    text-align: center;
    margin-top: 20px;
    padding: 20px;
}
.video-responsive iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}
.video-responsive {
    max-width: 850px; 
    width: 100%;
    margin: 0 auto 20px auto; 
    position: relative;
    padding-bottom: 56.25%; 
    height: 0;
}
.pievideo{
    margin-top: 600px;
}





/*CONTACTOS*/

.tablayformulario{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 120px; 
    flex-wrap: wrap; 
    margin-top: 40px;
}

.tablas {
    color: #f5d6a1;            
    padding: 25px 35px;
    width: 600px;              
}

/* Títulos de secciones */
.tablas h1 {
    text-align: center;
    color: #d9b37a;
    font-size: 22px;
    margin-top: 10px;
    margin-bottom: 15px;
}

/* Tablas internas */
.tablas table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

/* Celdas */
.tablas th, 
.tablas td {
    border: 2px solid #a8814a;
    padding: 10px 15px;
    vertical-align: top;
}

.tablas th {
    text-align: left;
    background-color: #5b3a1e;
    color: #f5d6a1;
    width: 30%; /* mismo ancho para todas las celdas de la primera columna */
}

/* Imagen */
#manochocolate img {
    display: block;
    margin: 25px auto 10px auto;
    padding: 6px;
    background-color: #fff;
    width: 320px;
    border: 4px solid #c29148;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

#googlemaps{
    margin-top: 30px;
    margin-left: 25%;
    width: 50%;
    height: 800px;
    border:#a18151 solid 5px ;
}


.formulario.uno {
    padding: 25px 35px;                            /* Espaciado interno */
    width: 420px;                                  
    font-family: "Segoe UI", Arial, sans-serif;
}

/* Título del formulario */
.formulario.uno h1 {
    text-align: center;
    font-size: 20px;
    color: #d9b37a;
    margin-bottom: 20px;
}

/* Etiquetas */
.formulario.uno label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
    color: #d9b37a;
}

/* Campos de texto */
.formulario.uno input:not([type="submit"]) {
    width: 100%;
    padding: 8px 10px;
    border-radius: 5px;
    margin-bottom: 15px;
    box-sizing: border-box;
}

/* Campo mensaje (más grande visualmente) */
.formulario.uno textarea {
    width: 100%;
    height: 120px; /* Altura suficiente para ver varias líneas */
    padding: 10px 12px;
    border: 1px solid #b88a5a;
    border-radius: 6px;
    background-color: #fff;  /* Fondo claro */
    color: #000;             /* Texto negro visible */
    font-size: 14px;
    line-height: 1.5;        /* Mejor legibilidad */
    box-sizing: border-box;
    resize: vertical;        /* Permite agrandarlo manualmente */
}

/* Botón */
.formulario.uno input[type="submit"] {
    width: 100%;
    background: linear-gradient(to bottom, #6b4e3d, #3e2b1c);
    color: #fff;
    font-weight: bold;
    padding: 10px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 15px;
}

/* Efecto hover */
.formulario.uno input[type="submit"]:hover {
    background: linear-gradient(to bottom, #8c6248, #5b3a27);
}