p{
    font-family: "Inter", sans-serif;
}
h1, h2, h3, h4{
    font-family: "Montserrat", sans-serif;
}
body{
    margin-top: 9rem;
}
.container{
    width:min(90%,1200px);
    margin:auto;
}
.dos{
    width:min(90%,1200px);
    margin:auto;
    padding-bottom: 2rem;
}
.wrappertop{
    position: fixed;
    top:0;
    left:0;
    right:0;
    z-index:9999;
}

.menu-toggle{
    display:none;
    background:none;
    border:none;
    font-size:2.6rem;
    cursor:pointer;
    color:#141319;
}

.navbarmio{

    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;

    height: 6rem;
    padding: 0 40px;
    background-color: #FAF8F8;
}

.logo{
    justify-self: start;
}

.logo img{
    height: clamp(15px, 6vw, 40px);
}

.nav-links{
    display: flex;
    gap: 40px;
    text-transform: uppercase;
    list-style: none;
    margin: 0;
    padding: 0;

    justify-self: center;
}

.nav-links a{
    text-decoration: none;
    color: black;
}
.nav-links a.active{
    font-weight: 800;
} 

li:hover{
    font-weight: 500;
}

.top-bar{
    background: white;
    border-bottom: 1px solid #ddd;
    height: 3rem;

    display: flex;
    justify-content: center;
}

.top-bar-content{
    width: min(95%, 1200px);
 
    
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1.5rem;
}

.social{
    display: flex;
    gap: .8rem;
}

.social a,
.contact-item{
    color: #777;
    text-decoration: none;
    font-size: 1.2rem;

    display: flex;
    align-items: center;
    gap: .4rem;

    transition: .2s;
}

.social a:hover,
.contact-item:hover{
    color: #000;
}
/*--------BREADCRUMB-----------*/
.breadcrumb{
    width: min(90%, 1200px);
    margin: 2rem auto;
    background-color: #FFF;
    display: flex;
    align-items: center;
    gap: .6rem;

    font-family: "Inter", sans-serif;
    font-size: 1.5rem;
}

.breadcrumb a{
    color: #777;
    text-decoration: none;
    transition: .2s;
}

.breadcrumb a:hover{
    color: #4A88D9;
}

.breadcrumb .separator{
    color: #bbb;
}

.breadcrumb .current{
    color: #141319;
    font-weight: 600;
}
/*-----overlat del header-----*/
.banner-servicios{
    position: relative;
    width: 100%;
    margin-bottom: 3rem;
}

.banner-servicios img{
    width: 100%;
    height: 28rem;          /* Ajusta la altura a tu gusto */
    object-fit: cover;
    display: block;
}
.overlay{
    position: absolute;
    inset: 0;

    display: flex;
    justify-content: center;
    align-items: center;

    /*background: rgba(0, 0, 0, .45);*/

    padding: 2rem;
}
.overlay h2{

    max-width: 950px;

    margin: 0;

    color: white;

    text-align: center;

    font-size: clamp(2rem, 3vw, 3rem);

    font-weight: 400;

    line-height: 1.4;

    text-transform: none; /* Evita que tome el uppercase global de los h2 */

}
/*BOTONES-------------------*/
.tabs-servicios{

    display:flex;
    justify-content:center;
    gap:2rem;

    margin:3rem 0;
}
.tab{
    border:none;
    background:#E4EDF9;

    color:#4A88D9;

    padding:1.2rem 4rem;

    font-size:1.8rem;
    font-weight:700;

    text-transform:uppercase;

    transition:.3s;
    cursor:pointer;
}
.tab.active{
    background:#4A88D9;
    color:white;
}
/*-----------mostrar y ocultar categorias------------*/
.categoria{
    display:none;

}
.categoria.visible{
    display:block;
}
/*-----------mTEXTO------------*/
.descripcion{
    text-align:center;

    font-size:2rem;

    max-width:900px;

    margin:0 auto 1rem;
}
.precio{
    text-align:center;

    color:#777;

    margin-bottom:4rem;
}
/*-------GALERIA*/
.grid-galeria{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:1rem;

}
.grid-galeria img{

    width:100%;

    aspect-ratio:3/4;

    object-fit:cover;

    display:block;

}
/*------responsive*/
@media(max-width:1000px){

    .grid-galeria{

        grid-template-columns:repeat(3,1fr);

    }

}

@media(max-width:700px){

    .grid-galeria{

        grid-template-columns:repeat(2,1fr);

    }

    .tabs-servicios{

        flex-wrap:wrap;

    }

}
.btn-cotizar{
    display: block;
    text-transform: uppercase;
    width: fit-content;
    padding: 1rem 5rem;
    margin: 2rem auto 0;
    background: #FF6F59;
    color: white;
    text-decoration: none;
    border-radius: 0px;
    font-weight: 600;
}
.btn-cotizar:hover{
    background-color: #d74d38;
    text-decoration: none;
    color: #FFF;
}
/*--------------FOOTER----------------*/
.footer{
    background: #2B2B2B;
    color: white;
    padding: 5rem 0;
}
.footer-content{
    width:min(90%,1200px);

    margin:auto;

    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem;

    align-items: start;
}
.footer-links h3{
    font-size: 2rem;
    margin-bottom: 2rem;
}

.footer-links ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li{
    margin-bottom: .8rem;
}

.footer-links a{
    color: white;
    text-decoration: none;
    transition: .2s;
}

.footer-links a:hover{
    color: #4A88D9;
}
/* */
.footer-contact{
    text-align: right;
}

.footer-contact h3{
    font-size: 2rem;
    margin-bottom: 2rem;
}

.footer-contact p{
    margin-bottom: 1rem;
    line-height: 1.6;
}

.footer-contact a{
    color: white;
    text-decoration: none;
}

.footer-contact a:hover{
    color: #4A88D9;
}
@media (max-width: 768px){

    .footer-content{
        grid-template-columns: 1fr;
        text-align: center;
    }

    .footer-contact{
        text-align: center;
    }

}
/*----------------------------------------*/
/*--------------WSP FLOTANTE-----------------*/
.whatsapp-float{
    position: fixed;
    bottom: 30px;
    right: 30px;

    width: 64px;
    height: 64px;

    display: flex;
    justify-content: center;
    align-items: center;

    background: #25D366;
    color: white;

    border-radius: 50%;
    text-decoration: none;

    font-size: 34px;

    box-shadow: 0 8px 25px rgba(0,0,0,.25);

    z-index: 9999;

    transition: .25s ease;
}

.whatsapp-float:hover{
    background: #20ba5a;
    color: white;
    transform: scale(1.08);
    text-decoration: none;
}
.whatsapp-float{
    animation: pulse 2.5s infinite;
}

@keyframes pulse{

    0%{
        box-shadow: 0 0 0 0 rgba(37,211,102,.5);
    }

    70%{
        box-shadow: 0 0 0 16px rgba(37,211,102,0);
    }

    100%{
        box-shadow: 0 0 0 0 rgba(37,211,102,0);
    }

}
.whatsapp-float{
    overflow: visible;
}

.whatsapp-float span{

    position: absolute;
    right: 78px;

    white-space: nowrap;

    background: white;
    color: #141319;

    padding: .8rem 1.2rem;

    border-radius: 30px;

    font-family: "Inter", sans-serif;
    font-size: 1.4rem;

    opacity: 0;
    transform: translateX(10px);

    transition: .25s;

    pointer-events: none;

    box-shadow: 0 5px 18px rgba(0,0,0,.15);
}

.whatsapp-float:hover span{
    opacity: 1;
    transform: translateX(0);
}
/*-----------------------------------------------------*/
@media (max-width:768px){

    .navbarmio{

        display:flex;
        justify-content:space-between;
        align-items:center;

        position:relative;

        padding:0 20px;

    }

    .menu-toggle{
        display:block;
    }

    .nav-links{

        position:absolute;

        top:100%;
        left:0;
        width:100%;

        display:flex;
        flex-direction:column;

        background:#FAF8F8;

        gap:0;

        max-height:0;
        overflow:hidden;

        transition:.3s;

        box-shadow:0 8px 20px rgba(0,0,0,.08);

    }

    .nav-links li{
        width:100%;
    }

    .nav-links a{

        display:block;

        padding:18px 25px;

    }

    .nav-links.open{
        max-height:400px;
    }

}
