:root {
    --primary-color: #0d3e67;
    --primary-color-secundary: #082744;
    --nav-height: 71px;
    --nav-color:#fff;
}

.navbar {
    background-color: var(--primary-color);
    /*height: var(--nav-height);*/
    font-size: 17px;
}

.navbar-nav  {
    background-color: var(--primary-color);
}

.navbar-light .navbar-toggler {
    border-color: #fff;
    color: #fff;
}

h2{
    color:var(--primary-color);
    font-family: 'Jost-Medium';
    font-size: 40px;
}

h3{
    color:#fff;
    font-family: 'Jost-Medium';
    font-size: 40px;
    text-transform: uppercase;
}

.nav-link{
    color:var(--nav-color) !important;
    font-family: 'Jost-Medium';
}

.nav-link:hover{
    color: rgba(255, 255, 255, .40) !important;
    font-family: 'Jost-Medium';
}

.mision div div:nth-child(1n){
    padding-left:0px;
    padding-right:0px;
}

.mision div div:nth-child(2n){
    background: linear-gradient(90deg, var(--primary-color), var(--primary-color-secundary));
    padding-left:0px;
    color: #fff;
    padding: 50px;
}

.experience p{
    color:var(--primary-color) !important;
    font-family: 'Jost-Regular';
    font-size: 23px;    
}

.experience p b{
    color:var(--primary-color) !important;
    font-family: 'Jost-SemiBold';
    font-size: 23px;    
}

.aboutus p{
    font-family: 'Jost-Regular';
    font-size: 23px;    
}

header.masthead {
    position: relative;
    width: 100%;
    height: calc(100% - 95px); 
    background-color: var(--primary-color);
    background-image: url("../image/02_Mapa_Banner.png"); /* fallback */
    background-image: url("../image/02_Mapa_Banner.png"), linear-gradient(90deg, var(--primary-color), var(--primary-color-secundary)); /* W3C */ 
    margin-top: var(--nav-height);
    /* background-attachment: fixed; */
    background-repeat: no-repeat;
    
    background-size: contain;
    background-position-x: center;

    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    
    -webkit-transition: all 250ms linear;
    -moz-transition: all 250ms linear;
    -ms-transition: all 250ms linear;
    -o-transition: all 250ms linear;
    transition: all 250ms linear;
}

header.masthead h2 {
    font-size: 91px;
}

header.masthead p {
    font-family: 'Jost-Regular';
    font-size: 25px;    
}

.visible {
    opacity: 1;
    transition: all 1s ease-out;
}

.hidden {
    transition: all 1s ease-out;
    opacity: 0;  
}
  
/* Extra small devices (phones, 576px and down) */
@media only screen and (max-width: 576px) {
    header.masthead {
        position: relative;
        width: 100%;
        height: calc(100% - 95px);
        background-color: var(--primary-color);
        background-image: url("../image/02_Mapa_Banner.png"); /* fallback */
        background-image: url("../image/02_Mapa_Banner.png"), linear-gradient(90deg, var(--primary-color), var(--primary-color-secundary)); /* W3C */ 
        background-position-x: right;
        background-position: right;
        background-repeat: no-repeat;

        -webkit-background-size: contain;
        -moz-background-size: contain;
        -o-background-size: contain;
        background-size: contain;
    }

    header.masthead h2 {
        font-size: 45px;
    }

    header.masthead p {
        font-size: 18px;
    }    

    .cs-style-1 figure:hover figcaption,
    .cs-style-1 figure.cs-hover figcaption {
        opacity: 0 !important;
    }     
}



/* Company */
.grid grid-col {
	display: inline-block;
	text-align: left;
	position: relative;    
}

.grid figure {	
	position: relative;
}

.grid figure img {
	max-width: 100%;
	display: block;
	position: relative;
    margin-left: auto;
    margin-right: auto;
}

.grid figcaption {
	position: absolute;
	top: 0;
	left: 0;
	padding: 10px;
	background: #cccccc;
	color: var(--primary-color);
}

.grid figcaption h3 {
	margin: 0;
	padding: 0;
	color: #fff;
}

.cs-style-1 figcaption {
	padding: 10% 5%;
    height: 160%;
	width: 100%;
	opacity: 0;
	text-align: center;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
	-moz-transition: -moz-transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s;
}

.cs-style-1 figure:hover figcaption,
.cs-style-1 figure.cs-hover figcaption {
	opacity: 1;
	-webkit-transform: translate(0px, 0px);
	-moz-transform: translate(0px, 0px);
	-ms-transform: translate(0px, 0px);
	transform: translate(0px, 0px);
}

.cs-style-1 figcaption h3 {
	font-size: 24px;
}

.cs-style-1 figcaption h4 {
	font-size: 20px;
}

.cs-style-1 figcaption p {
    font-size: 14px;
	display: block;
    text-align: justify;
    font-family: 'Jost-Regular';
}

.cs-style-1 figcaption a {
	margin-top: 30px;
}

section {
    padding-top: 75px;
}

/* Contacto */

section.contact {
	margin-bottom: 75px;
}

section.contact i {
    font-size: 16px;
    border: 1px solid var(--primary-color) !important;
    border-radius: 5px;    
}

section.contact label {
    font-size: 20px;
    font-family: 'Jost-Regular' !important;
	width: 100%;
    color:var(--primary-color) !important;    
}

section.contact h4 {
    color:var(--primary-color);
    font-family: 'Jost-Regular';
    font-size: 23px;    
}

section.contact input[type=text],
section.contact textarea {
    font-size: 20px;
    font-family: 'Jost-Regular';
	width: 100%;
	border-radius: 2px;
	border: 1px solid rgb(85, 85, 85);
	line-height: 22px;
	padding: 5px;
    color:var(--primary-color) !important;
}

section.contact input[type=button] {
    font-size: 15px;
    font-family: 'Jost-Regular';
	padding: 10px 40px;	
    background: linear-gradient(90deg, rgba(13,29,49,1) 0%, rgba(29,58,94,1) 70%) !important;
    float: right;
    border-radius: 50px;
}

/* Footer */
footer {
	padding: 0;
	margin: 0;
	background: rgb(13,29,49);
	background: -moz-linear-gradient(90deg, rgba(13,29,49,1) 0%, rgba(29,58,94,1) 70%);
	background: -webkit-linear-gradient(90deg, rgba(13,29,49,1) 0%, rgba(29,58,94,1) 70%);
	background: linear-gradient(90deg, rgba(13,29,49,1) 0%, rgba(29,58,94,1) 70%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0d1d31",endColorstr="#1d3a5e",GradientType=1);
}

footer .container {
	padding: 40px 0;
}

footer .foooter-brand {
	float:left;
	padding: 0px 25px;
}

footer a span {
	float: left;
	margin: 20px 8px;
	font-size: 18px;
}

.kl-text-right{
    text-align: right !important;
}

.mr-20{
    margin-right: 20px;
}

#modalCompanies H5{
    color:var(--primary-color);
    font-family: 'Jost-Medium';
    font-size: 35px; 
}

#modalCompanies p{
    color:var(--primary-color) !important;
    font-family: 'Jost-Regular';
    font-size: 20px;   
}

#btnModalViewMore{
    font-size: 15px;
    font-family: 'Jost-Regular';
    padding: 10px 40px;
    background: linear-gradient(90deg, rgba(13, 29, 49, 1) 0%, rgba(29, 58, 94, 1) 70%) !important;
    float: right;
    border-radius: 50px;
    border-color: #fff;
}

.customBanner{
    display: flex; 
    align-items: center; 
    justify-content: center;
}

.float{
	position:fixed;
	width:60px;
	height:60px;
	bottom:40px;
	right:40px;
	background-color:#25d366;
	color:#FFF;
	border-radius:50px;
	text-align:center;
  font-size:30px;
	box-shadow: 2px 2px 3px #999;
  z-index:100;
}

.my-float{
	margin-top:16px;
}

.bounce {
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0%,
    25%,
    50%,
    75%,
    100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-20px);
    }
    60% {
        transform: translateY(-12px);
    }
}

@media only screen and (max-width:960px) {
    .kl-footer-image-mb
    {
        max-width: 40px !important;
    }
    
    .kl-footer-logo-mb
    {
        max-width: 150px !important;
        margin-top:3px
    }

    .mr-20{
        margin-right: 1px;
    } 
    
}

@media only screen and (min-width: 200px) and (max-width: 380px) {
    .customBanner{
        align-items:self-start; 
    }   
    header.masthead h2 {
        font-size: 38px;
    }     
    header.masthead p {
        font-size: 15px;
    }

    .kl-footer-logo-mb
    {
        max-width: 100px !important;
        margin-top:3px
    }    

    .kl-footer-image-mb
    {
        max-width: 30px !important;
    }
        
}