/* Estilos responsivos */
@media (max-width: 768px) {
    header h1 {
        font-size: 1.5em;
        display: flex;
        align-items: center;
    }

    header h1 img {
        width: 40px;
        height: auto;
        margin-right: 10px;
    }

    .menu {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .menu a {
        padding: 10px;
        font-size: 1.2em;
    }

    #banner img {
        width: 100%;
        height: auto;
    }

    #contacto h2, .tel h3 {
        font-size: 1.5em;
        padding: 10px;
    }

    .contenedor {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .serv, .info {
        width: 90%;
        text-align: center;
        margin-bottom: 20px;
    }

    iframe {
        width: 100%;
        height: 300px;
    }

    .gallery img {
        width: 100%;
        height: auto;
    }

    form {
        width: 90%;
        margin: auto;
    }

    input, textarea {
        width: 100%;
    }
}