html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
}

:root{
    font-family: 'Roboto', sans-serif;
}

.float-wa{
    position:fixed;
    width:60px;
    height:60px;
    bottom:40px;
    right:40px;
    background-color:#25d366;
    color:#FFF;
    border-radius:50px;
    text-align:center;
    font-size:30px;
    z-index:100;
}




/* NAVBAR */

.menu__responsive{
    display: none;
}

.header{
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 100%;
    background-color: black;
}

.header__img{
    width: 20%;
    margin-top: 0.5%;
    margin-bottom: 0.5%;
    padding-left: 1%;
}

.header__img img{
    width: 50%;
}

.header__nav{
    padding: 1%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 60%;
    font-size: 1.3em;
}

.header__nav a{
    color: white;
    text-decoration: none;
}

.header__nav a:hover{
    color: #BD2820;
}

.header__div{
    width: 20%;
    text-align: right;
    padding: 1%;
}

.header a{
    text-decoration: none;
    color: white;
    font: 300 1em 'Roboto', sans-serif;
}

.nav__button{
    font: 300 1.5em 'Roboto', sans-serif;
    background-color:#BD2820;
    color: white;
    padding: 0.5em 2em 0.5em 2em;
    border: none;
    border-radius: 10px;
}

.nav__button:hover{
    background-color: #941F19;
}

.banner__movil{
    display: none;
}



/* PÁGINA DE INICIO */

            /* BANNER */

.banner{
    display: flex;
    width: 100%;
    background-color: #ead9b3;
}

.banner__rrss{
    width: 10%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 50px;
    padding: 100px 50px 150px;
    margin-top: 100px;
}

.banner__text{
    width: 30%;
    margin-top: 10%;
    margin-left: 5%;
}

.banner__text h1{
    color: #002D5B;
    font: 3em 'Playfair Display', serif;
    width: 100%;
}

.banner__text p{
    width: 100%;
    font: 100 1.5em 'Roboto', sans-serif;
    margin-top: 30px;
}

.banner__text button{
    font: 100 1.5em 'Roboto', sans-serif;
    background-color:#BD2820;
    color: white;
    padding: 0.5em 2em 0.5em 2em;
    border: none;
    border-radius: 10px;
    margin-top: 50px;
}

.banner__text button:hover{
    background-color: #941F19;
}

.banner__text a{
    text-decoration: none;
    color: white;
}

.banner__text a:hover{
    color: black;
}

.banner__img{
    width: 80%;
}

.banner__img img{
    height: 100%;
}



            /* SOBRE NOSOTROS */

.aboutme{
    font-size: 0.7em;
    margin-bottom: 100px;
}

.aboutme__up{
    text-align: center;
}

.aboutme__up h2{
    color: #002D5B;
    font: 4.8em 'Playfair Display', serif;
}

.aboutme__up p{
    font: 100 1.5em 'Roboto', sans-serif;
    margin-top: 20px;    
    margin-bottom: 30px;
}

.aboutme hr{
    width: 10%;
    border: #C72722 1px solid;
}

.aboutme__down{
    margin-top: 20px;
    margin-left: 40px;
    font: 100 1.5em 'Roboto', sans-serif;
}

.down{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.down__left{
    width: 40%;
}

.down__left h2{
    color: #002D5B;
    font: 3em 'Playfair Display', serif;
    width: 100%; 
}

.down__left p{
    margin-top: 50px;
}

.down__left a{
    text-decoration: none;
    color: white;
    font: 300 1em 'Roboto', sans-serif;
}

.down__center{
    width: 20%;
}

.down__center p{
    margin-top: 50px;
}

.down__right{
    width: 30%;
    margin-right: 50px;
}

.down__right--img{
    width: 80%;
    box-shadow: 20px -20px 0 #C72722, 20px 20px 0 rgb(199, 68, 68);
    border-radius: 20px;
}

.down__left button{
    font: 100 1em 'Roboto', sans-serif;
    background-color:#BD2820;
    color: white;
    padding: 0.5em 2em 0.5em 2em;
    border: none;
    border-radius: 10px;
    margin-top: 50px;
}

.down__left button:hover{
    background-color: #941F19;
}


            /* SERVICIOS */

.sectionservices{
    padding-top: 100px;
    padding-bottom: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: rgba(199, 39, 34, 0.1);
}

.sectionservices__header{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}

.sectionservices__header h2{
    color: #002D5B;
    font: 4.8em 'Playfair Display', serif;
    margin-bottom: 50px;
}

.sectionservices__header p{
    font: 100 1.5em 'Roboto', sans-serif;
}

.sectionservices__header hr{
    width: 10%;
    border: #C72722 1px solid;
    margin-top: 50px;
}

.sectionservices__body{
    margin-top: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    gap: 50px;
}

.body__box{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 20%;
    background-color: white;
    border-radius: 20px;
    padding: 50px;
    height: 150px;
}

.body__box h3{
    color: #002D5B;
    font: 2em 'Playfair Display', serif;
    text-align: center;
}

.body__box p{
    font: 100 1.5em 'Roboto', sans-serif;
    margin-bottom: 50px;
}

/* .bi-arrow-right-circle{
    width: 50px;
    color: grey;
}

.bi-arrow-right-circle:hover{
    color: #C72722;
} */

.body__box--img{
    width: 15%;
    color: grey;
}


        /* GALLERY */
.gallery{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 50px;
}

.card{
    width: 33%;
    line-height: 0;
    position: relative;
}

.caraA img{
    width: 100%;
}

.caraB{
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    background-color: #751714;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity 0.5s;
    flex-direction: column;
    text-align: center;
}

.caraB:hover{
    opacity: 1;
}

.caraB h3{
    color: white;
    font: 2em 'Playfair Display', serif;
}





            /* CONTACTO */

.contact{
    margin-top: 100px;
}

.contact__up{
    text-align: center;
}

.contact__up h3{
    margin-top: 50px;
    color: #002D5B;
    font: 3.5em 'Playfair Display', serif;
}

.contact__up p{
    font: 100 1.5em 'Roboto', sans-serif;
    margin-top: 1%;
}

.contact__up hr{
    width: 10%;
    border: #C72722 1px solid;
    margin-top: 50px;
}

.contact__down{
    margin-top: 50px;
    margin-bottom: 50px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.contact__down input{
    width: 30%;
    height: 45px;
}

.contact__down button{
    font: 300 1.5em 'Roboto', sans-serif;
    background-color:#BD2820;
    color: white;
    padding: 0.5em 2em 0.5em 2em;
    border: none;
    border-radius: 10px;
}

.contact__down button:hover{
    background-color: #9E1F1B;
}

.rrss{
    background-image: url("../img/Banner\ web.png");
    width: 100%;
}

.rrss__content{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.rrss h3{
    padding-top: 5%;
    color: #002D5B;
    font: 3em 'Playfair Display', serif;  
    text-align: center;
}

.rrss__icon{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding-bottom: 5%;
}




            /* FOOTER */

.footer{
    padding-top: 20px;
    height: 40px;
    background-color: black;
    text-align: center;
}

.footer p{
    color: white;
}






/* PÁGINA DE SERVICIOS */

.services{
    margin-bottom: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 0.7em;
}

.services__up{
    margin-top: 2em;
    text-align: center;
    width: 75%;
}

.services__up h2{
    color: #002D5B;
    font: 4.8em 'Playfair Display', serif;
}

.services__up p{
    font: 100 1.5em 'Roboto', sans-serif;
    margin-top: 20px;    
    margin-bottom: 30px;
}

.services hr{
    width: 10%;
    border: #C72722 1px solid;
}

.services__down{
    margin-top: 20px;
    margin-left: 40px;
    font: 100 1.5em 'Roboto', sans-serif;
}
.servicesdown{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}

.servicesdown__first{
    text-align: justify;
    width: 80%;
}

.servicesdown__first h2{
    color: #002D5B;
    font: 3em 'Playfair Display', serif;
    width: 100%; 
}

.servicesdown__first p{
    margin-top: 1em;
}

.servicesdown__first a{
    text-decoration: none;
    color: white;
    font: 300 1em 'Roboto', sans-serif;
}

.servicesdown__first--list{
    width: 95%;
    list-style: disc;
    margin-top: 1em;
}

.servicesdown__first--list li{
    margin-top: 0.5em; 
}

.servicesdown__first--inlist{
    list-style: circle;
}

.servicesdown__first button{
    font: 100 1em 'Roboto', sans-serif;
    background-color:#BD2820;
    color: white;
    padding: 0.5em 2em 0.5em 2em;
    border: none;
    border-radius: 10px;
    margin-top: 50px;
}

.servicesdown__first button:hover{
    background-color: #941F19;
}

.servicesdown__second{
    margin-top: 2em;
}

.servicesdown__second p{
    margin-top: 1em;
}





/* PÁGINA DE PROMOCIONES */





/* PÁGINA DE CONTACTO */

.banner__contacto{
    padding-top: 100px;
    padding-bottom: 50px;
    color: #002D5B;
    font: 3.5em 'Playfair Display', serif;
    text-align: center;
    background-color: rgba(44, 20, 117, 0.1);
}

.banner__contacto hr{
    width: 10%;
    border: #C72722 1px solid;
    margin-top: 50px;
}

.contactcard{
    width: 100%;
    margin-top: 50px;
    padding-top: 50px;
    padding-bottom: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 5%;
    background-color: rgba(199, 68, 68, 0.1);
    height: 50%;
}

.contactcard__div{
    text-align: center;
    background-color: white;
    border-radius: 10px;
    padding: 50px 20px 50px 20px;
    width: 15%;
    height: 5em;
}






/* VERSIÓN TABLET (Pantallas medianas de menos de 992px) */

@media (max-width: 991.98px){



    /* NAVBAR */
    .header{
        width: 100%;
    }

    .header__img{
        width: 40%;
        padding-left: 1%;
        padding-top: 1%;
    }

    .header__nav{
        width: 60%;
        font-size: 1em;
        gap: 1%;
        padding-right: 1%;
    }

    .header__div{
        display: none;
    }





    /* PÁGINA DE INICIO */

    .banner{
        display: none;
    }

    .banner__movil{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }

    .aboutme__down{
        margin: 0px;
    }

    .down{
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .down div{
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 80%;
    }

    .down__left h2{
        font-size: 2em;
        text-align: center;
    }

    .down__left p{
        text-align: justify;
    }

    .down__right img{
        display: none;
    }

    .services__header{
        align-items: center;
        width: 100%;
    }

    .services__header h2{
        font: 4em 'Playfair Display', serif;
        text-align: center;
    }

    .services__header p{
        text-align: justify;
        padding: 0% 15%;
    }

    .body__box h3{
        font-size: 1.6em;
    }

    .caraB{
        font-size: 0.7em;
    }






    /* PAGINA DE SERVICIOS */
    
    .services{
        margin-bottom: 5%;
    }

    .services__up{
        width: 90%;
    }

    .services__down{
        margin: 0;
    }

    .servicesdown__first h2{
        text-align: left;
        font-size: 2em;
        margin-top: 3%;
    }

    .servicesdown__first--list{
        padding-left: 5%;
    }

    .servicesdown__first--inlist{
        padding-left: 10%;
    }

    .servicesdown__second p{
        padding: 0% 5%;
    }






    /* PÁGINA DE CONTACTO */
    
    .banner__contacto{
        padding: 2% 0 2% 0;
    }

    .banner__contacto hr{
        margin-top: 2%;
        width: 40%;
    }

    .contactcard{
        margin-top: 0;
        padding-top: 0;
        flex-wrap: wrap;
    }

    .contactcard__div{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 30%;
        margin-top: 2%;
        height: 5vh;
    }

}






/* VERSIÓN MÓVIL (Pantallas pequeñas de menos de 768px) */

@media (max-width: 767.98px) {

    .header__img{
        display: none;
    }

    .header__nav{
        display: none;
    }

    .header__div{
        display: none;
    }

	.menu__responsive{
		display: flex;
		align-items: center;
		justify-content: space-between;
		position: fixed;
		z-index: 2;
		background-color: black;
		padding-top: 15%;
		box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
	}

	.abrir-menu, .cerrar-menu{
		border: 0;
		font-size: 2em;
		background-color: transparent;
		color: black;
	}

	.abrir-menu, .cerrar-menu{
		width: 60px;
		height: 60px;
	}

	.hamburguer__nav{
		opacity: 0;
		visibility: hidden;
		display: flex;
		flex-direction: column;
		align-items: start;
		gap: 1rem;
		width: 35%;
		position: absolute;
		top: 0;
		left: 0;
		height: 1800px;
		background-color: white;
		padding: 2rem;
		box-shadow: 0 0 0 100vmax rgba(0, 0, 0, .5);
	}

	.hamburguer__nav.visible{
        padding-top: 20%;
		opacity: 1;
		visibility: visible;
	}

	.hamburguer__nav--list{
		list-style-type: none;
		display: flex;
		flex-direction: column;
		gap: 1rem;
		align-items: start;
	}

	.nav--list-li a{
		text-decoration: none;
		color: black;
	}

	.menu__responsive--logo{
        padding: 2% 5% 0 0;
		width: 30%;
	}

	.menu__responsive--logo img{
		width: 100%;
	}



    /* PÁGINA DE INIVIO */


    .banner__movil img{
        margin-top: 15%;
    }

    .down__left p{
        margin-top: 5%;
    }

    .down__left button{
        margin-top: 5%;
    }

    .down__center p{
        margin-top: 5%;
    }

    .aboutme{
        margin-bottom: 5%;
    }

    .sectionservices{
        padding-top: 5%;
        padding-bottom: 3%;
        margin-bottom: 0;
    }
    .sectionservices__header h2{
        font-size: 2em;
        margin-bottom: 5%;
        text-align: center;
    }

    .sectionservices__header p{
        font-size: 1em;
        width: 90%;
        text-align: center;
    }

    .sectionservices__header hr{
        margin: 5%;
        width: 40%;
    }

    .sectionservices__body{
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 2%
    }

    .body__box{
        width: 50%;
        height: 50%;
        padding: 5%;
        margin-bottom: 2%;
    }

    .body__box h3{
        font-size: 1em;
    }

    .gallery{
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        width: 100%;
    }

    .card{
        width: 45%;
        margin: 1%;
        border-radius: 10px;
    }

    .caraA{
        border-radius: 10px;
    }

    .caraA img{
        border-radius: 10px;
    }

    .caraB{
        opacity: 80%;
        font-size: 0.3em;
        border-radius: 10px;
    }

    .contact{
        margin: 0;
    }

    .contact__up h3{
        margin-top: 5%;
        font-size: 2em;
    }

    .contact__up hr{
        margin-top: 4%;
        width: 40%;
    }

    .rrss__content h3{
        font-size: 2em;
    }


    /* PÁGINA DE SERVICIOS */

    .services{
        margin-top: 15%;
    }


    /* PÁGINA DE PROMOCIONES */

    


    /* PÁGINA DE CONTACTO */

    .banner__contacto{
        margin-top: 15%;
    }

}