
@font-face {
    font-family: "panton-bold";
    src: url("../fonts/panton-bold.ttf") format("truetype");
}

@font-face {
    font-family: "panton-regular";
    src: url("../fonts/panton-regular.ttf") format("truetype");
}

:root {
  
    --fuenteHeading: 'PT Sans', sans-serif;
    --fuenteParrafos: 'Open Sans', sans-serif;

    --azul: rgb(33, 114, 161);
    --azul-oscuro: rgb(5, 31, 62);
    --naranja: #ff9300;
    --verde: rgb(0, 179, 65);
    --fondo-nav: rgb(3, 33, 83);
    --color-portafolio: #0af7b1;
    

}

@keyframes animate{
    0%{
        transform: translate(-50%,-50%) rotate(0deg);
    }
    100%{
        transform: translate(-50%,-50%) rotate(360deg);
    }
}
@keyframes waves {
    0%, 100%{
        clip-path: polygon(
            0% 47%,
            10% 48%,
            33% 54%,
            54% 60%,
            70% 61%,
            84% 59%,
            100% 52%,
            100% 100%,
            0% 100%
        );  
    }
    50%{
        clip-path: polygon(
            0% 60%,
            15% 65%,
            34% 66%,
            51% 62%,
            67% 50%,
            84% 45%,
            100% 46%,
            100% 100%,
            0% 100%
        );  
    }
}
@keyframes scroll_clientes{
    0%{
        transform: translateX(0);
    }

    50%{
        transform: translateX(calc(-240px * 14));
    }
    100%{
        transform: translateX(0);
    }
}

/***************** efectos de seleccion en editor*********************/
/*
.seleccionado{
    box-shadow: 2px 2px 5px 4px inset rgba(255, 0, 0, 0.368);
}

.editable:hover{
    box-shadow: 2px 2px 5px 4px inset rgba(154, 34, 132, 0.461);
    cursor: help;
}
/*************fin efectos de seleccion***********/

html {
    box-sizing: border-box;
    font-size: 62.5%; /* 1 rem = 10px */    
}
*, *:before, *:after {
    box-sizing: inherit;
}

body{
    margin:0;
    padding:0;
    font-size: 1.6rem;
    font-family: "panton-regular", sans-serif;
}
.body_no_scroll{
    overflow-y: hidden;
}

main{
    width:100%;
    position:relative;
    overflow-x: hidden ;
    margin-top: 8rem;
}

a{
    text-decoration: none;
}

li{
    list-style: none;
}

hr{
    margin-top: 0;
    width: 60%; 
    border-top: 1px solid rgba(128, 128, 128, 0.178);
}

.paused_animation{
    animation-play-state: paused;
}
@keyframes mover{
    0%{
        transform: translate(100%);
    }
}

/*  M   O   D   A   L  */
#dialog-servicio{
    margin-top: 1rem;
    width: 100%;
    max-width: 720px; 
    height: 100vh;
    background-color: rgba(0,0,0,0.2);
    border: none;
    padding: 0;
    /*transform: scale(0.5);*/
    opacity: 0;
    transition: all 1s ease;
    position: relative;
}
#dialog-servicio::backdrop{ background-color: rgba(0, 0, 0, 0.767);}
#dialog-servicio.show{
    transform: scale(1);
    opacity: 1;
}
.dialog__btn-cerrar{
    position: absolute; 
    top: 2px; 
    right: 8px; 
    border-radius: 30px;
    background-color:red;
    color: white;
    font-weight: bold;
    padding: 4px 12px;
    display:flex;
    justify-content: center;
    align-items: center;
    text-align:center;
    font-size: 3rem;
    cursor: pointer;
    z-index: 500;
}
.dialog__btn-cerrar-fixed{
    position: sticky;
    top: 5px;
    left: 99%; 

    border-radius: 30px;
    background-color:red;
    color: white;
    font-weight: bold;
    padding: 4px 12px;

    display: inline;
    text-align:center;
    font-size: 3rem;
    cursor: pointer;
    z-index: 2500;
}
@media(min-width: 768px){
    /*
    .dialog__btn-cerrar-fixed{
        right: 15%; 
    }
    */
}

.dialog__btn-cerrar:hover {
    padding:6px 14px;
    font-size: 3.2rem;
}
.dialog__btn-cerrar-fixed:hover {
    padding:6px 14px;
    font-size: 3.2rem;
}
.modal__servicio{
    position: relative;
    top: 44px;
    left: 0px;
    padding: 0.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 0.8rem;
    z-index: 1200;
}

.modal__servicio__img{
    width: 100%;
    object-fit: cover;

}
/*  FIN MODAL   */


/*DOBLE CAJAS ONDULACIONES*/

/*prueba*/
.olas__superior{
    position: absolute;
    top:0;
    left:0;
    width: 100%;

}
.olas__inferior{
    position: absolute;
    bottom:0;
    left:0;
    width: 100%;
}

.olas__superior .caja__olas{
    height: 50px; 
    overflow: hidden;
}
.olas__inferior .caja__olas{
    height: 50px; 
    overflow: hidden;
}

@media(min-width: 768px){
    .olas__superior .caja__olas{
        height: 80px; 
        overflow: hidden;
    }
    .olas__inferior .caja__olas{
        height: 80px; 
        overflow: hidden;
    }
}

/*FIN DOBLE CAJAS ONDULACIONES*/

.svg-ondulado{
    position:absolute;
    top: 0;
    left:0;
}

/*  H  E  A  D  E  R  */
header{
    position: fixed;
    top: 0px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 7rem;
    box-shadow: 1px 1px 1px 0px gray;
    font-size: 2rem;
    font-weight: bold;
    font-family: "panton-bold", sans-serif;
    z-index: 200;
    background-color: white;
}
.contenedor__logo{
    display:flex;
    justify-content: center;
    align-items: center;
    margin-left: 1rem;
}
#logo_empresa{
    width: 6rem;
    height: 6rem;
    padding: 0.2rem;
    /* border-radius: 18px; */

}
.nav-movil{
    display: flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;

}
#nav-movil__logo{
    background-color: transparent;
    stroke: var(--azul);
    stroke-width: 1.5;
    width: 5rem;
    height: 5rem;
    border: 1px solid var(--azul);
    border-radius: 33px;
    margin-right: 1rem;
    padding: 0.5rem;
}
#nav-movil__logo:hover{
    border: 1px solid var(--azul-oscuro);
    stroke: var(--azul-oscuro);
}

.nav-principal{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: end;

}

.menu{
    position: absolute;
    top: 5.2rem;
    right: 0px;
    width: 100%;
    max-height: 11rem;
    display: flex;
    flex-direction: column;
    align-items: start;
    background-color: rgb(9, 30, 42);
    opacity: 0;
    visibility: hidden;
    overflow: hidden;

    transition: all 0.8s;
    font-size: 1.5rem;

}
.menu--activo{  /*SOLO SE APLICA EN VERSION MOVIL*/
    opacity: 1;
    visibility: visible;
    padding-left: 0.3rem;
    color: white;
}

.menu a{
    color: var(--azul);
}
.menu__item{
    height: 7rem;
    color: white;
}
.menu__item:hover #svg_menu_galeria{
    stroke: white;
}
.menu__item:hover {
    background-color: rgb(69, 135, 176);
}

.menu__item:hover .menu__link{
    color: white;
}

@media(min-width: 670px){
    .servicios hr{ display:none;}
    .nav-movil{
        display: none;
    }

    .nav-principal{
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        margin-right: 1rem;
        padding: 0;
    }
    .menu{
        position: inherit;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        height: auto;
        opacity: 1;
        visibility: visible;
        overflow: hidden;
        background-color: white;
        font-size: 1.5rem;
        padding: 0;
    }
    .menu li{

        padding: 1rem 2rem;
    }
    .menu__link{
        display: flex;
        align-items: center;
        justify-content: center;
        height:100%;
    }
}
/* FIN   H  E  A  D  E  R  */



/* b A N N E R*/
.banner{
    position: relative;
    top: 7rem;
    left: 0;
    margin-bottom:3rem;
    padding: 0;
    width: 100%;
    height: auto;
}



/*banner sin las cajas del carrusel*/
.banner__carrusel{
    width: 100%;
    height: 35rem;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;


    background-color: whitesmoke;
    background-image: url("../img/fondos/fondo-2.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    /*background-attachment: fixed; /*deja fila la imagen de fondo*/
    transition: box-shadow 1.5s, transform;
}




.banner__carrusel img{ /*png de la empresa*/
    width: 60%;
    width: 40%;
    position: absolute;
    bottom: 70px;
    right: 5px;
    z-index: 2;
}
.banner__titulo{
    color: white;
    font-size: 1.5rem;
    background-color: rgba(0, 0, 0, 0.011);
    padding: 1rem;
    border-radius: 5px;
    font-family: "panton-bold", sans-serif;
    text-transform: uppercase;
    text-shadow: 2px 2px 2px rgb(0, 0, 0);
    z-index: 2;
    text-align: center;
}

.banner__olas{
    width: 100%;
    height: 100px;
    position: relative;
    top: -100px;
}

@media(min-width:768px){
    .banner__titulo{
        font-size: 3rem;
    }
    .banner__vidrio{
        height: 60rem;
    }
    .banner__carrusel{
        height:60rem;
    }
    .banner__carrusel img{
        width: 40%;
    }

}

/*FIN BANNER*/


/* S O M O S*/

/*presentacion*/
.somos{
    padding: 10px 100px;
    margin-bottom: 3rem;
}
.somos2{
    display: grid;
    grid-template-columns: 60% 40%;
    column-gap: 2rem;
    row-gap: 2rem;
    background-color: rgba(255, 255, 255, 0.927);
    /* box-shadow: 1px 1px 5px 0px black; */
    /* width: 80%; */
    width: 100%;
    padding: 3rem;
    margin: 0rem auto;
    margin-top: 3rem;
    margin-bottom: 0.2rem;
    /* border-top: 1px solid rgba(114, 111, 111, 0.726); */
}
.somos__img{
    background-image: url("../img/personal2.jpg");
    background-size: cover;
    background-position-x: right;
    background-position-y: bottom;
}
#img_somos1{display: none;}
#img_somos2{display: block;}


/*          valores              */

.somos__valores{
    display:flex;
    justify-content: space-around;
    column-gap: 2rem;
    color:rgb(59, 118, 193);
    font-weight: bolder;
    font-family: sans-serif;
    background-color: var(--azul);
    border-radius: 8px;
    padding: 3rem;
}
@media(max-width:900px){
    .somos__valores{
        width: 100%;
        margin:0;
        padding: 1rem 0rem;
        margin-bottom: 2rem;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1.5rem;
    }

    .somos__valor{
        align-self: center;
        justify-self: center;
        text-align: center;
    }
    .somos__valor:nth-child(1){

        
        grid-column: span 2;

    }
    .somos__valor:nth-child(2){}
    .somos__valor:nth-child(3){}
    .somos__valor:nth-child(4){margin-right: 30%;}
    .somos__valor:nth-child(5){margin-left: 30%;}
}
.somos__valor{
    position: relative;
    width: 100%;
    height: 2rem;
}
.somos__valor span{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    text-transform: uppercase;
    color: var(--azul);
    text-shadow: 1px 1px 1px rgba(150, 147, 165, 0.975);
    font-weight: bold;
    color: rgb(22, 89, 162); 
    font-size: 13px;
    color: white;
}

.somos__presentacion h1{
    color: rgb(61, 97, 143);
    text-shadow: rgb(68, 210, 213) 1px 1px; 
    text-transform: uppercase; 
    padding-top: 2px; 
    text-align: center;
    background-color: rgb(250, 250, 250);
}
.somos__presentacion p{
    color: var(--azul);
    text-align: justify;
}

@media(max-width:600px){
    .somos{
        display: flex;
        flex-direction: column;
        align-items: center;
        /* width: 94%; */
        width: 100%;
        padding:0;
    }
    .somos__presentacion h1,p{padding: 1rem;}
    #img_somos1{display: block;}
    #img_somos2{display: none;}
    .somos__img{
        width: 100%;
        height: 21rem;
    }



}

/*trayectoria*/
.trayectoria{
    color: rgb(98, 15, 49);
    color: white;
    font-weight: bold;
    font-family: "panton-bold", sans-serif;
    padding: 3rem 2rem ;
    padding-bottom: 0.2rem;

    background-image: linear-gradient(to top, rgb(115, 169, 196), rgb(12, 28, 65));
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
}
.trayectoria__titulo{
    text-align: center;
    text-transform: uppercase;
    margin: 0;
    padding: 0;
}
.trayectoria__titulo h2{
    font-size: 2rem;
}
@media(min-width:768px){
    .trayectoria__titulo h2{
        font-size: 3rem;
    }
}
.somos__estadisticas{
    margin-top: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap : 1rem;
}

.somos__estadistica{
    justify-self: center;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    padding: 1rem 0.3rem;
    background-color:aliceblue;
    background-color:rgba(255, 240, 242, 0.133);

    font-size: 1rem;
    width: 10.5rem;
    border-radius:12%;
    opacity: 0;
    visibility:hidden;
    transition: all 0.8s;

    position: relative;
    height: 10rem;
}

.somos__estadistica:hover{
    transform: skewX(-3deg);
}

.somos__estadistica:nth-child(1){justify-self: left;}
.somos__estadistica:nth-child(2){justify-self: right;}

.somos__estadistica:nth-child(3){
    grid-column: span 2;
    justify-self: center;
}

.estadistica__lineas{
    position: absolute;
    inset:0;
    background-color: rgb(79, 81, 96);
    overflow: hidden;
    border-radius: 20px;
}
.estadistica__lineas::before{
    content:'';
    position: absolute;
    top: 50%;
    left:50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%,-50%);
    background-image: linear-gradient(transparent,white,white,white,transparent);
    animation: animate 4s linear infinite;

}
.estadistica__lineas::after{
    content: '';
    position:absolute;
    inset: 3px;
    background-color: rgb(59, 52, 60);
    background-color:#040925;

    border-radius: 20px;
}
.estadistica__contenido{
    position:absolute;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

}
.somos__estadistica .icono{
    margin: 0 auto;
    width: 4rem;
    height: 4rem;
    stroke: white;
}

.estadistica__hr{
    width:90%;
}

@media(min-width:550px){
    .somos__estadisticas{
        margin-top: 2rem;
        padding: 3rem 1.5rem;
        display: flex;
        justify-content: space-around;
        column-gap: 1rem;  
    }
    .somos__estadistica{
        font-size: 1rem;
        width: 11rem;
        padding: 1rem 0.3rem;
        height: 10rem;

    }
}

@media(min-width:866px){
    .trayectoria{

    }
    .trayectoria__titulo{

    }
    .somos__estadisticas{
        margin-top: 2rem;
        padding: 3rem 2.5rem;
        display: flex;
        justify-content: space-around;
        column-gap: 2rem;  
    }
    
    .somos__estadistica{
        font-size: 1.6rem;
        padding: 3rem 1rem;
        min-width: 20rem;
        height: 18rem;
    }
    

}



/*nuestros clientes*/
.section__clientes{
    position: relative;
    width: 90%;
    margin: auto;
    height: 200px;
    place-items: center;
    margin-bottom: 3rem;
}
.section__clientes h2{
    text-align: center;
    text-shadow: 1px 1px 3px rgba(113, 224, 241, 0.64),-1px -1px 3px rgba(113, 224, 241, 0.64);
    text-transform: uppercase;
    margin: 0;
    color: var(--azul);
    font-weight: bold;
}
.clientes__carrusel{
    padding-left: 600px; /*Espacio al inicio*/
    display: flex;
    width: calc(600px + 260px * 11); /*3840px con 35s*/
    gap: 20px;
    animation: scroll_clientes 35s linear infinite;
}
.caja__imagen{
    height: 150px;
    width: 240px;
    display: flex;
    align-items: center;
    perspective: 100px; 
}
.caja__imagen img{
    width: 100%;
    transition: transform 1s;
    padding: 10px;

}

.caja__imagen img:hover{
    transform: translateZ(10px);
}
/* fin clientes */


/*reseñas*/
.somos__resenas{
    width: 100%;
    margin-bottom: 5rem;
    background-image: linear-gradient(to top, rgb(115, 169, 196), rgb(12, 28, 65));
    color:black;
    padding: 0.5rem 2rem;
    transition: background-color 0.8s;
    position:relative;


    display:flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.resenas__titulo{
    text-transform: uppercase;
    /*line-height: 0;*/
    margin-bottom: 15px;
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.resenas__titulo h2{
    font-size: 2rem;
    text-align: center;
    margin-bottom: 0.3rem;
}
.somos__resena{
    position: relative;
    padding: 1rem 1rem;
    box-shadow: 1px 1px 5px 1px #000000;
    border-radius: 3%;
    width: 80%;
    height: 21rem;
    text-align: center;
    font-size: 1.2rem;
    background-color: rgb(255, 255, 255);
}
.somos__resena::after{
    content:'';
    position: absolute;
    top: 0;
    left:0;
    width: 100%;
    height: 100%;
    background-color:rgba(3, 23, 23, 0);
}

.somos__resena div{
    width:100%;
    height: 100%;
    position: absolute;
    left:0;
    top:0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    row-gap: 1rem;
    font-size: 1.2rem;
    border-radius: 5px;
}
.resena__cara{
    opacity:1;
    transition: opacity 0.6s ease-in-out;
    background-color: #040925;

}
.resena__parrafo{
    opacity:0;
    padding: 3rem;
    background-color: #040915;
    transition: opacity 0.6s ease-in-out;
    color: rgb(226, 229, 233);
}
.somos__resena:hover .resena__parrafo{
    opacity:1;
}
.somos__resena:hover .resena__cara{
    opacity:0;
}

.somos__resena svg{
    width: 5rem;
    height: 5rem;
    /*stroke: rgb(132, 190, 176);*/
    stroke: white;
}
.resena__nombre{
    font-size: 1.8rem;
    font-weight: bold;
    color:rgb(255, 255, 255);
}

.resena__cargo{
    color:rgb(255, 255, 255);
}

@media(min-width:768px){
    .somos__resenas{
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-auto-flow: dense;
        column-gap: 2rem;
        row-gap: 0rem;
        align-items: stretch;
        padding: 4rem 5rem 5rem 8rem;
    }
    .resenas__titulo{
        grid-column: span 3;
        justify-self: center;
    }
    .resenas__titulo h2{
        font-size: 3rem;
    }
    .somos__resena{
        font-size: 1.6rem;
        width: auto;
        height: 19rem;
    }
    .resena__nombre{
        font-size: 2rem;
    }

    .somos__resena svg{
        width: 7rem;
        height: 7rem;
    }

    .resena__parrafo{
        font-size: 1.2rem;
    }

}
/*FIN SOMOS*/



/* S E R V I C I O S*/
.servicios{
    width: 100%;
    margin-top: 0;
    margin-bottom: 5rem;
    padding: 0rem;
    display: grid;
    grid-template-columns:  1fr 1fr;
}

.servicios__titulo{
    background-image: linear-gradient(to top, rgb(115, 169, 196), rgb(12, 28, 65));
    padding: 1.5rem 3rem;
    border-radius: 8px;
    margin-bottom: 1.6rem;
}
.servicios__titulo h2{
    color: white;
    font-weight: bold;
    line-height: 1;
    margin: 0;
    font-size: 2rem;
    text-transform: uppercase;
}

@media(min-width: 768px){
    .servicios__titulo{
        padding: 2rem 5rem;
    }

    .servicios__titulo h2{
        font-size: 3rem;
    }
}

.servicios__nodo{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 1rem 0.5rem;
    padding: 1rem 0;
  
    width: 90%;
    height: 18rem;
    font-size: 1.1rem;

    border-radius: 8px;
    
    -webkit-box-shadow: 0px 0px 5px 0px #1109403d;
    -moz-box-shadow: 0px 0px 5px 0px #1109403d;
    box-shadow: 0px 0px 5px 0px #1109403d;
}


/*
.servicios__nodo:nth-child(1){
    grid-column: span 2;
    width: 100%;
    height: 16rem;
}
.servicios__nodo:nth-child(1) h3{
    margin-bottom: 0;
    line-height: 1;
}
*/
.servicios__nodo-titulo{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin:0 auto;
    width: 90%;
}

.servicios__nodo-titulo p{
    text-align: center;
    font-size: 1.2rem;
}
/*efecto olas*/


/*
.servicios__nodo:nth-last-child(1){ //para el ultimo nodo
    grid-column: span 2;  
    justify-self: center; 
    width: 50%;
}
*/

@media(min-width: 350px){

}

.nodo__titulo, .nodo__parrafo{
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    backface-visibility: hidden; /*oculte al que este girado*/
    transition: 1.2s;
    border-radius: 8px;



}
.nodo__titulo{
    /* background-color: rgb(4, 9, 37); */
    background-color: rgb(69, 135, 176);

    /* color: rgb(89, 201, 179); */
    color: white;
    transform: perspective(500px) rotateY(0deg);
}

.nodo__parrafo{
    background-color: rgb(69, 135, 176);
    color: white;
    transform: perspective(500px) rotateY(180deg);
}

.nodo__parrafo p{
    margin-bottom: 0;
}

.nodo__boton{
    border: 0;
    background-color: white;
    border-radius: 8px; 
    display:flex;
    color: var(--azul);
    font-size: 12px;
    font-weight: bold;
    padding: 4px;
    cursor: pointer;
    transition:0.3s;
    box-shadow: 1px 1px 1px 0px gray, -1px -1px 1px #cec8c8;
    text-transform: uppercase;
}
.nodo__boton span{
    background-color: #00000002;
    padding: 4px 8px;
    border-radius: 6px;
    transition: 0.3s; 

}
.nodo__boton:hover span{
    background-color: transparent;
}
.nodo__boton:hover{
    transform: scale(0.9);
    background-image: linear-gradient(150deg,
    rgb(253, 253, 253),
    rgb(202, 203, 202),
    rgb(203, 201, 207));
}

.servicios__nodo:hover .nodo__titulo{
    transform: perspective(500px) rotateY(180deg);
}
.servicios__nodo:hover .nodo__parrafo{
    transform: perspective(500px) rotateY(360deg);
}

.servicios__nodo .nodo__icono-servicio{
    /*
    width: 15rem;
    height: 15rem;
    */
    width: 25%;
    height: 40%;
    stroke: white;

}
.nodo__img{
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    z-index: -1;
    /*content: url(../img/fondo_azul_claro2.jpeg);*/
    background-image: url(../img/fondo_azul_claro2.jpeg);
    border-radius: 8px;

}
/*
.servicios__nodo:hover{
    transform: skewX(-0.5deg);
}
*/
@media(min-width:768px){
    .servicios{
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-auto-flow: dense;
    }
    .servicios__nodo-titulo{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 60%;
    }
    
    .servicios__nodo-titulo p{
        font-size: 1.6rem;
    }
    .servicios__nodo{
        justify-self: center;
        height: 21rem;
        font-size: 1.6rem;
    }
    .servicios__nodo .nodo__titulo{
        padding: 1rem;
    }
    .servicios__nodo .nodo__parrafo{
        padding: 0.5rem 2rem;
    }

    /* El ultimo servicio
    .servicios__nodo:nth-last-child(1){ 
        grid-column: 2/3;  
        width: 90%;
    }
    */
    .nodo__boton{
        font-size: 18px;
        letter-spacing: 1px;
        margin-top:2rem;

    }
}
/*FIN SERVICIOS*/


/* fixed whatasapp*/
.fixed__whatsapp{
    position: fixed; top:88%; right:10px; z-index:20;
    border-radius: 20%;
    padding: 6px 8px;
    box-shadow: 3px 2px 5px 0px silver, -3px -2px 5px silver;   
}
.fixed__whatsapp:hover .fixed__whatsapp-logo{
    width: 48px;
    height: 48px;
}
.fixed__whatsapp a{
    display:flex; 
    flex-direction:column; 
    align-items: center;
    justify-content: end;
    gap: 0;
    font-size: 1rem;
    color:rgb(39, 190, 70);
}
.fixed__whatsapp-logo{
    width: 40px;
    height: 40px;
    stroke:rgb(39, 190, 70);
    transition:  0.3s ease-in-out;
    border-radius: 50%;
}

.fixed__portafolio{
    position: fixed; top:72%; right:10px; z-index:20;
    border-radius: 20%;
    box-shadow: 3px 2px 5px 0px silver, -3px -2px 5px silver;   
    font-size: 12px; 
}

.fixed__portafolio a{
    padding: 3px 8px;
    color: var(--color-portafolio);
    display: flex;
    flex-direction:column; 
    align-items:center; 
    font-size: 8px;
}

@media(min-width:768px){
    .fixed__portafolio{
        border-radius: 10%;

    }
    .fixed__portafolio a{
        font-size: 10px;
        
    }
}

.fixed__portafolio:hover .fixed__portafolio-logo{
    width: 48px;
    height: 48px;
}

.fixed__portafolio-logo{
    width: 40px;
    height: 40px;
    stroke: var(--color-portafolio);
    transition:  0.3s ease-in-out;
}
   
/*          C O N T A C T E N O S           */

.contactenos{
    position: relative;
    color: rgb(226, 243, 239);
    background-image: linear-gradient(to top, rgb(115, 169, 196), rgb(12, 28, 65));
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0;
}

.contactenos__bloque-titulo{
    display: flex;
    flex-direction:column;
    gap:0;
    justify-content: center;
    align-items: center;
    font-size: 2.5rem;
    font-weight: bold;
    color: rgb(255, 255, 255);
    text-transform: capitalize;
    padding: 2rem;

}
.contactenos__bloque-titulo h2{
    font-size: 2rem;
    text-transform: uppercase;
}


@media(min-width: 768px){
    .contactenos__bloque-titulo h2{
        font-size: 3rem;
    }
    .contactenos__bloque-titulo h2{
        margin: 0;
    }
}
.contactenos__logo{
    /* stroke: rgb(132, 190, 176); */
    stroke: white;
}
.contactenos__logo-titulo{
    color: white;
}
.contactenos__item{
    color: white;
}
.contactenos__item svg{
    stroke: white;
}
.contactenos__bloque-medios{
    padding: 2rem 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;

}

.caja__medio{
    position: relative;
    padding: 3px;
    overflow: hidden;
    background-color:rgb(26, 7, 9);
    background-color: rgb(79, 81, 96);
    border-radius: 5px;
    width: 95%;
    height: 17rem;
}

.medio{
    position: relative;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content:center;
    align-items: center;
    padding: 1rem;
    background-color: rgb(4, 9, 37);
    border-radius: 5px;
    width: 100%;
    height: 100%;
}

.medio__lineas::before{
    content:'';
    position: absolute;
    top: 50%;
    left:50%;
    width: 100%;
    height: 100%;
    /*background-image: linear-gradient(transparent,cyan,cyan,cyan,transparent);*/
    background-image: linear-gradient(transparent,white,white,white,transparent);
    animation: animate 4s linear infinite;
}


.medio__titulo{
    font-size: 2rem;
    font-weight: bold;
    color: white;

    margin-bottom: 1rem;
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;

    padding: 0.5rem 4rem;
    text-transform: uppercase;
}



/*Agenda*/
.contactenos__agendar{
    position:relative; margin: 0rem auto; width: 98%; 
    padding: 5rem 0 0 0;
    align-items: center; 
    display:flex; 
    flex-direction: column;
    background: #ffffff;
    margin-bottom: 1rem;
      /* fallback for old browsers */
    /* background-image: linear-gradient(to bottom, white, rgb(119, 168, 192), rgb(12, 28, 65),rgb(47, 51, 60)); */
}
.agendar__caja-izq{
    /*perspective: 500px; */
    width: 80%; 
    display: flex; 
    flex-direction:column; 
    align-items: center; 
    justify-content: center;
    text-align: center;
    color: var(--azul);
}
.agendar__caja-izq h4{
    font-size: 2rem;
    margin: 5px;
}
.agendar__caja-der{
    width: 80%; 
    padding: 0.5rem 0 0.5rem 0; 
    display: flex; 
    align-items: center; 
    justify-content: center;
}
.agendar__caja-img{
    width: 80%; 
    height: auto;

}

@media(min-width: 768px){
    .agendar__caja-der{
        width: 50%; 
    }
}
.btn__agendar{
    color:rgb(209, 230, 235);
    font-weight: bold;
    /* border-radius: 15px;  */
    border-radius: 8px;
    /* padding:2rem 3rem; */
    padding: 1rem 2rem;
    font-size: 2rem; cursor: pointer;
    border: 0px dashed rgb(78, 168, 198); 
    background-image: linear-gradient(to top, rgb(95, 203, 211), rgb(87, 102, 178));
    
    opacity: 1;
    transition: all 1s;
}
.btn__agendar:hover{
    color: white;
    font-weight: bold;
    opacity: 2;
    transform: translateZ(40px);
    text-shadow: 2px 2px 8px cyan;
    
}
.contactenos__calendario h3{ margin: 0;}


@media(min-width: 400px){
    .contactenos__bloque-medios{
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 1rem;
    }

    .caja__medio{
        width: 80%;
        justify-self: center;
        box-shadow: 0px 1px 2px 0px #000000;

    }
    .caja__medio:nth-child(3){
        grid-column: span 2;
        width: 30rem;

    }

}

@media(min-width:820px){
    
    .contactenos__bloque-titulo{
        display: flex;
        flex-direction:column;
        gap:0;
        justify-content: center;
        align-items: center;
        font-weight: bold;
        text-transform: capitalize;
        padding: 2rem;
        margin-top: 0;
    }

    .contactenos__bloque-medios{
        display:flex;
        flex-direction: row;
        justify-content: space-around;
        align-items: center;
        padding: 3rem 4rem;
        padding-bottom: 5rem;
        /*
        background-image: linear-gradient(to top,  white 0%, rgb(20, 18, 57) 8%);
        */
    }
    .caja__medio{
        color: white;
        display: flex;
        flex-direction: column;
        justify-content:center;
        align-items: center;
        padding: 3px;
        border-radius: 5px;
    
        width: 310px;
        height: 17rem;
    }
    .caja__medio:nth-child(3){
        width: 310px;
    }

    .medio__titulo{
        font-size: 2rem;
        font-weight: bold;
        color: var(--azul);

        margin-bottom: 1rem;
        display: flex;
        flex-direction:column;
        justify-content: center;
        align-items: center;
        /*border-radius: 50%;*/
        padding: 0.5rem 4rem;
        text-transform: uppercase;
    }
}




#dialog-calendary{
    width: 90%;
    height: 100vh;
    overflow-y: hidden;
    opacity: 0;
    transform: scale(0.5);

    transition: 1s ease all;
}
.contactenos__calendario{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: white;
    width: 100%;
    overflow-y: hidden;

}
#dialog-calendary.show{
    transform: scale(1);
    opacity: 1;   
}
#iframe_calendario{
    width:100%;
    height: 90vh;
}

/*FIN CONTACTENOS*/




/*            GALERIA               */

#svg_menu_galeria{
    stroke: var(--azul);
}

.container-titulo{
    width: 100%;
    display: flex;
    align-items: center;
    position:relative;
    top: 8rem;
}

.galeria__titulo{
    margin: 0 auto;
    background-image: linear-gradient(to top, rgb(115, 169, 196), rgb(12, 28, 65));
    text-align: center;
    padding: 1.5rem 3rem;
    border-radius: 8px;
}
.galeria__titulo h1{
    color: white;
    font-weight: bold;
    line-height: 1;
    margin: 0;
    font-size: 3rem;
    text-transform: uppercase;
    text-shadow: -1px 1px 1px var(--azul);

}
.main-galeria{
    margin-top: 2rem;
}
/*
.galeria__titulo{
    position:relative;
    left:0; 
    top: 8rem;
    text-align: center;
    font-size: 1.5rem; 
    margin-bottom: 3rem;

}
.galeria__titulo h1{
    padding: 0;
    margin: 0;
    color: var(--azul);
    text-shadow: -1px 1px 1px var(--azul);
}
*/


.galeria__section{
    margin-top: 3rem;
}
.galeria__cinta::-webkit-scrollbar {
    width: auto;               /* width of the entire scrollbar */
    height: 24px;
    box-shadow: 2px 2px outset black;

  }
.galeria__cinta::-webkit-scrollbar-track {
    background: rgba(117, 202, 245, 0.23);         /* color of the tracking area */

  }
.galeria__cinta::-webkit-scrollbar-thumb {
    background-image:linear-gradient(rgba(255, 255, 255, 0.898),white, rgba(255, 255, 255, 0.898),  rgba(255, 255, 255, 0.969),white);  /* color of the scroll thumb */
    border-radius: 8px;       /* roundness of the scroll thumb */
    border: 4px solid rgba(117, 202, 245, 0.23);
    box-shadow: -1px -1px 0px inset rgba(159, 159, 159, 0.765);
}

/*img modal*/
.div__img{
    margin: 0 auto;
    padding: 2rem;
    width:100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.577);
    display:flex;
    align-items: center;
    justify-content: center;
}
#dialog-img{
    margin: 0 auto;
    width:90%;
    border: 1px solid white;
}



.galeria__carrusel{

    padding: 1rem 0;
}

.galeria__cinta{
    position: relative;
    margin: 3rem 0; 
    display: flex; 
    gap:1rem; 
    align-items:center; 
    height: auto; 
    width:99%;
    padding: 2rem 1.5rem; 
    overflow-x:auto; 
    background-color: white;
    perspective: 400px;


}
.galeria__cinta h3{
    margin: 0;
    position: absolute;
    top: 0px;
    left: 10px; 
    color: var(--azul);
    text-transform: uppercase;
    
}
.img-modal{
    height: 200px;
    width:auto;
}

.galeria__cinta img{
    transition: transform 1s;
}
.galeria__cinta img:hover{
    border: 1px solid rgba(21, 170, 196, 0.44);
    cursor: pointer;
    transform: translateZ(8px);
}
@media(min-width: 768px){
    #dialog-img{
        width: 95%;
    }
}
/*   FIN GALERIA    */




/* F O O T E R */
footer{
    background-image: linear-gradient(to top, rgb(115, 169, 196), rgb(12, 28, 65));
    /* background-image: url("../img/noche5.jfif"); */
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding-top: 8rem;
    overflow-x: hidden;
    position: relative;
}
.olas__superior-footer{
    transform: translateY(60%);

}

.olas__superior-footer .caja__olas-footer{
    height: 80px; 
    overflow: hidden;
}
@media(min-width: 768px){
    .olas__superior-footer{
        transform: translateY(65%);
    }

    .olas__superior-footer .caja__olas-footer{
        height: 140px; 
        overflow: hidden;
    }
}

.footer__caja{
    color: white;
    font-weight: 400;
    font-family: "panton-bold", sans-serif;
    display: flex;
    flex-direction:column;
    justify-content: space-around;
    align-items: center;
    gap: 2rem;

    width: 100%;
    height: auto;

}
.footer__resena{
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    font-size: 1.2rem;


}
.footer__resena__div{
    border-radius: 4px;
    height: auto;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 2px 10px;
}
.footer__logo_empresa{
    width: 80px;
    height: 80px;
    border-radius: 5px;
    padding: 3px;
    background-color: white;
    box-shadow: 1px 1px rgb(52, 53, 72), -1px -1px rgb(78, 77, 77);
}

.footer__resena__div span{
    flex-grow: 1;
    padding-left: 10px;
}



.footer__redes{
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
footer .div__redes{
    display:flex;
    justify-content: space-evenly;

}
footer .redes__logo{ /*caja del svg*/
    padding: 0.2rem;
    /* border: 3px solid #00d9fb; */
    border: 3px solid white;
    border-radius: 20%;
    transition: transform 0.8s;
    width: 35px;
    height: 35px;


}
footer .redes__logo:hover{ /*caja del svg*/
    border: 3px solid #21cbff;
    transform: skewX(-8deg);

}
footer .redes__logo:hover .footer__svg{ 
    stroke: #21cbff;
}

footer .footer__svg{
    background-color: transparent;
    /* stroke: #00d9fb; */
    stroke: white;
    stroke-width: 1.5;
    /* width: 5rem;
    height: 5rem; */
    width: 2.5rem;
    height: 2.5rem;
}

.footer__pie{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 1.2rem;
}

footer h3{
    line-height: 0.2;
}
@media(min-width:400px){
    .footer__resena{
        width: 80%;
        justify-self: center;

    }

    .footer__logo_empresa{
        width: 60px;
        height: 60px;
    }
}

@media(min-width:680px){
    .footer__caja{
        display: grid;
        grid-template-columns: 1fr 1fr;

    }
    .footer__caja hr{
        display: none;
    }

    .footer__resena{
        width: 70%;
        justify-self: center;

    }

    .footer__logo_empresa{
        width: 60px;
        height: 60px;
    }

    .footer__redes{
        justify-content: center;
        text-align: center;
    }
    footer .div__redes{
        display:flex;
        justify-content: center;

    }
    footer .redes__logo{
        margin-right: 15px;
    }
    .footer__pie{
        grid-column: 1/3;
        justify-self: center;
        border-top: 1px solid white;
        padding-top: 1rem;
        width :60%;
    }



}





