*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Quicksand', sans-serif;
}

body{
    overflow-x: hidden;
    min-height: 100vh;
}

:root{
    scroll-behavior: smooth;
    --blanco: #fff;
    --gris: #cecece;
    --negro: #333;
    --negroClaro: #4B4F58;
    --verdeClaro: #447c74;
    --verdeOscuro: #376559;
    --verdeMuyOscuro: #0a5544;
}

.h-400{
    height: 400px;
}

.w-40{
    width: 40%;
}

.w-60{
    width: 60%;
}

#btnSubir{
    position: fixed;
    right: 50px;
    bottom: 50px;
    width: 50px;
    height: 50px;
}

#btnSubir span{
    display: block;
    animation: btnSubir 2s linear infinite;
}

@keyframes btnSubir {
    0%{
        transform: translateY(-5px);
    }
    50%{
        transform: translateY(10px);
    }
    100%{
        transform: translateY(-5px);
    }
}

.bg-success{
    background-color: var(--verdeOscuro) !important;
}

.btn-success{
    background-color: var(--verdeClaro);
    text-shadow: 1px 1px 5px var(--negroClaro);
    border: none;
    box-shadow: 2px 2px 15px var(--verdeClaro);
}

.bg-secondary-light{
    background-color: #eee;
}

.text-shadow{
    text-shadow: 2px 2px 5px #aaa;
}

.text-shadow-dark{
    text-shadow: 2px 2px 5px #333;
}

.btn-success:hover{
    background-color: var(--verdeMuyOscuro);
}

.text-success{
    color: var(--verdeOscuro) !important;
}

.text-success-light{
    color: var(--verdeClaro) !important;
}

.text-lighter{
    color: #ccc;
}

.titulo-servicios{
    color: #879999;
}

.shadow-success{
    box-shadow: 5px 5px 20px var(--verdeClaro);
}

/* Scroll */

swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}
.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}
.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}
.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}
.swiper-scrollbar-cursor-drag{cursor:move}

#menuHeader{
    /*background-image: linear-gradient(120deg, #fff 50%, #145445 50%);*/
    background-color: transparent !important;
    position: absolute;
    top: 0;
    left: 0;
    padding-right: 90px;
}

.dropdown:hover>.dropdown-menu {
    display: block;
}

.dropdown>.dropdown-toggle:active {
    /*Without this, clicking will make it sticky*/
    pointer-events: none;
}

/* Seccion main */

main{
    width: 100vw;
    min-height: 100vh;
}

.min-w-30{
    min-width: 290px;
}

.obligatorio{
    color: #ff0000;
}

.separador{

    height: 350px;
}

.imagenEncabezado{
    width: 100%;
    height: 400px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}

.imagenEncabezado img{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    filter: brightness(20%);
    object-fit: cover;
    z-index: -1;
}

.imagenEncabezado h1{
    color: #fff;
    text-shadow: 1px 1px 10px var(--verdeOscuro);
}

.btnOutline{
    transition: all 400ms;
    position: relative;
}

.btnOutline::after{
    content: '';
    position: absolute;
    bottom: 0px;
    left: 0;
    display: block;
    height: 2px;
    width: 0;
    background-color: #fff;
    transition: width 400ms;
}

.btnOutline:hover:after{
    width: 100%;
}

.btnOutline:not(:hover):after{
    width: 0;
}

/* No seleccionable */

.no-seleccionable{
    -moz-user-select: none; 
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none; 
}

svg{
    fill: var(--verdeClaro);
}

.tituloFooter{
    color: var(--verdeMuyOscuro);
    font-family: 'felixti';
}

.font-felixti{
    font-family: 'felixti';
}

.z-index-10{
    z-index: 10;
}

.z-index-100{
    z-index: 100;
}

#iconoFooter{
    width: 230px;
    margin: 0 auto;
}

#footerCard{
    margin-top: 50px;
    padding-left: 100px;
    height: 500px;
    width: 100%;
    background-image: url("../img/footerCard.svg");
    background-repeat: no-repeat;
}

.vinculo{
    transition: all 300ms;
}

.textoFormateado{
    letter-spacing: 1.2px;
    line-height: 35px;
    text-align: justify;
}

.vinculo:hover{
    transform: translateY(-5px);
}

.vinculo:hover > a{
    color: var(--verdeMuyOscuro) !important;
    fill: var(--verdeMuyOscuro);
}

.vinculoVerServicios{
    transition: all 300ms;
}

.vinculoVerServicios:hover{
    transform: translateX(10px);
}

#contenedorBotonesFooterCard{
    margin-top: 20px;
}

@font-face {
    font-family: 'felixti';
    src: url('../css/fonts/FELIXTI.TTF');
}

@media screen and (max-width:992px) {

    #itemsNavBar{
        background-color: rgba(12,85,69,0.9);
        padding-left: 20px;
        padding-right: 20px;
    }

    #menuHeader{
        padding-right: 0;
    }

}

@media screen and (max-width:820px) {
    #footerCard{
        padding-left: 50px;
    }
}

@media screen and (max-width:1040px) {

    .w-60{
        width: 100%;
    }

    .w-40{
        width: 100%;
    }
}

@media screen and (max-width:490px) {
    #footerCard{
        padding-left: 10px;
    }

    #contenedorBotonesFooterCard{
        gap: 10px !important;
        margin: 10px auto;
    }
}

@media screen and (max-width:450px) {

    #iconoFooter{
        width: 90%;
    }

    #btnSubir{
        right: 20px;
        bottom: 20px;
    }
}