html,
body {
  width: 100%;
  height: 100%;
  background-color: #fff;
  font-family: 'Montserrat-Regular', 'Arial', 'sans-serif';
  font-size: 20px;
  color: rgb(25, 50, 87);
}

.container-fluid {
	margin: 0;
	padding: 0;	
}

.container-fluid .row {
	margin: 0;
	padding: 0;
}

a {  
  -webkit-transition: all .35s;
  -moz-transition: all .35s;
  transition: all .35s;
}

hr {
  max-width: 100px;
  margin: 50px auto 0;
  border-width: 1px;
  border-color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6 {	
  font-family: 'Montserrat-Regular', 'Arial', 'sans-serif';  
  letter-spacing: 1px;  
}

#mainNav {
  border-color: rgba(34, 34, 34, 0.05);
  background-color: white;
  -webkit-transition: all .35s;
  -moz-transition: all .35s;
  transition: all .35s;  
}

.navbar {
	background-color: transparent !important;
}

@media only screen and (max-width: 600px) {
	.navbar {
		background-color: rgba(256, 256, 256, 0.8) !important;
	}
	
	.navbar li a{
		text-align: right;
	}
}

.bg-white {
	background-color: #fff !important;
}

.bg-white-trans {
	background-color: rgba(256, 256, 256, 0.8) !important;
}

#mainNav .navbar-brand {
  color: rgb(25, 50, 87);
}

#mainNav .navbar-brand:hover, #mainNav .navbar-brand:focus {
  color: rgb(25, 50, 87);
}

#mainNav a img {
  height: 50px;
}

@media only screen and (max-width: 600px) {
	#mainNav .navbar-brand {
	  width: 80%;
	  padding-left: 10%;
	}	
	
	#mainNav  a img {
	  width: 100%;		
	  height: auto;
	  float:left;	  
	}	
	
	
}

#mainNav .navbar-toggler {
  font-size: 12px;
  padding: 8px 10px;
  color: rgb(25, 50, 87);
}

#mainNav .navbar-nav > li > a {
  font-family: 'Montserrat-Medium', 'Arial', 'sans-serif';
  font-size: 16px;  
  color: rgb(25, 50, 87);
  text-decoration: none !important;
}

#mainNav .navbar-nav > li > a {
  font-family: 'Montserrat-Medium', 'Arial', 'sans-serif';
  font-size: 16px;  
  color: rgb(25, 50, 87);
  text-decoration: none !important;
}

#mainNav .navbar-nav > li > a.active:hover {  
  font-family: 'Montserrat-Bold', 'Arial', 'sans-serif';
}

#mainNav .navbar-nav > li > a:focus {
  font-family: 'Montserrat-Bold', 'Arial', 'sans-serif';
}

#mainNav .navbar-nav > li > a:hover,
#mainNav .navbar-nav > li > a:focus:hover {
  font-family: 'Montserrat-Bold', 'Arial', 'sans-serif';
}

#mainNav .navbar-nav .dropdown-menu {
	min-width: 1rem !important;
}

#mainNav .navbar-nav .dropdown-item {
  background-color: transparent;
  color: rgb(25, 50, 87);
  font-family: 'Montserrat-Medium', 'Arial', 'sans-serif';
  font-size: 16px; 
  padding: 0.1rem 0.5rem !important;  
}

#mainNav .navbar-nav .dropdown-item:hover {  
  font-family: 'Montserrat-Bold', 'Arial', 'sans-serif';  
}

@media (min-width: 992px) {
 
}

/* Header */

header.masthead {
  position: relative;
  width: 100%;
  height: 100%;  
  padding-top: calc(8rem + 75px);
  
  color: #000;
  background: url("../img/banner_principal.jpg");  
  background-attachment: fixed;
  background-repeat: no-repeat;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  
  background-position-y: center;
  background-position-x: center;
  background-position: center center;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	header.masthead {		
		position: relative;
		width: 100%;
		height: 100%;  
		padding-top: calc(8rem + 75px);
		  
		color: #000;
		background: url("../img/banner_principal.jpg");
		background-repeat: no-repeat;
		  
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
		  
		background-position-y: center;
		background-position-x: center;
		background-position: center center;
	}
}

@media (min-width: 992px) {	
	header.masthead {
	}
}

@media (max-height: 600px) {    
    header.masthead {
      height: 600px !important;  	
	  padding-top: calc(100px + 75px);	  	  
    }
}

@media (min-height: 1024px) {    
    header.masthead {        	
	  padding-top: calc(16rem + 75px);	  	  
    }
}

/* Secciones */

section {  
  padding: 0;
}
section>.fluid-container {  
  padding: 0;
}

section .section-heading {
  padding: 75px 0 25px 0;
}

section .section-heading h2 {
    text-align: center;
	font-size: 42px;
    font-family: 'Montserrat-Black', 'Arial', 'sans-serif';
	text-transform: uppercase;
}

section .section-heading h4 {
    text-align: center;
	font-size: 32px;
    font-family: 'Montserrat-Light', 'Arial', 'sans-serif'; 
	text-transform: uppercase;
}

@media (min-width: 992px) {	
	section .section-heading h2 {
	}
	
	section .section-heading h4 {
	}    
}

/* Nosotros */

section.aboutus .fluid-container {
  position: relative;
  width: 100%;    
  margin-bottom: 0;  
  color: #fff;
  background: url("../img/fondo_nosotros.jpg");   
  background-attachment: fixed;
  background-repeat: no-repeat;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  
  background-position-x: center;
  background-position-y: bottom;
  background-position: bottom center;

  -webkit-transition: all 250ms linear;
  -moz-transition: all 250ms linear;
  -ms-transition: all 250ms linear;
  -o-transition: all 250ms linear;
  transition: all 250ms linear;
  
  padding-bottom: 75px;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	section.aboutus .fluid-container {
		position: relative;
		width: 100%;
		height: 100%;		
		background: url("../img/fondo_nosotros.jpg");  
		background-position-x: right;
		background-position: right;
		background-repeat: no-repeat;
  
	    -webkit-background-size: cover;
	    -moz-background-size: cover;
	    -o-background-size: cover;
	    background-size: cover;
	}
}

section.aboutus p {
    font-size: 20px;
    font-family: 'Montserrat-Regular', 'Arial', 'sans-serif'; 
	text-align: center;	
}

section.aboutus .item-service {
    border: 1px solid rgb(25, 50, 87);
	border-radius: 20%;
	margin: 0 25px;
	padding: 10px;
	cursor: pointer;
	background: rgb(239, 239, 238);
}

section.aboutus .item-service.active,
section.aboutus .item-service:hover{
    border: 1px solid #D9D8D6;
	background-color: #D9D8D6;
}

section.aboutus .item-service img {    
	margin: 0 0 20px 0;
}

section.aboutus .item-service h2 {
    font-family: 'Montserrat-Regular', 'Arial', 'sans-serif'; 
	font-size: 15px;
	letter-spacing: 0;
}

section.aboutus .item-service h4 {
    font-family: 'Montserrat-ExtraBold', 'Arial', 'sans-serif'; 
	font-size: 10px;
	letter-spacing: 0;	
}

@media only screen and (max-width: 600px) {
	section.aboutus .item-service img {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	
	section.aboutus .item-service {		
		margin: 0;
		padding: 0;
	}
	
	section.aboutus .item-service h2 {
		font-family: 'Montserrat-Regular', 'Arial', 'sans-serif'; 
		font-size: 13px;
		letter-spacing: 0;
	}

section.aboutus .item-service h4 {
		font-family: 'Montserrat-ExtraBold', 'Arial', 'sans-serif'; 
		font-size: 8px;
		letter-spacing: 0;	
	}
}

section.aboutus .logo-aboutus {
	position:inherit; 
	width:100%; 
	float:right; 
}

@media (min-width: 992px) {	
	section.aboutus .logo-aboutus {		 
		margin-top: -20%;
	}  
}


section.aboutus .container-filosofia {
	background-color: #193358;
}

section.aboutus  .container-filosofia .banner-filosofia {
  position: relative;
  width: 100%;
  min-height: 550px;
  margin-bottom: 0;  
  color: #fff;
  background: url("../img/banner_filosofia.jpg");   
  /*background-attachment: fixed;*/
  background-repeat: no-repeat;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  
  background-position-x: center;
  background-position-y: center;
  background-position: center center;

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

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	section.aboutus .container-filosofia .banner-filosofia {
		position: relative;
		background-repeat: no-repeat;		
		width: 100%;
		
		background: url("../img/banner_filosofia.jpg");  
		
		background-position-x: center;
		background-position-y: center;
		background-position: center center;		
  
	    -webkit-background-size: cover;
	    -moz-background-size: cover;
	    -o-background-size: cover;
	    background-size: cover;
	}
}

/* Services */

section.services {
  position: relative;
  width: 100%;
  padding: 75px 0;
  
  background: url("../img/trama_servicios.png");   
  background-attachment: fixed;
  background-repeat: repeat;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  
  background-position-x: center;
  background-position-y: center;
  background-position: center center;

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

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	section.services {
		position: relative;
		width: 100%;
		
		background: url("../img/trama_servicios.png");
		background-repeat: repeat;
		
		background-position-x: center;
		background-position-y: center;
		background-position: center center;
  
	    -webkit-background-size: cover;
	    -moz-background-size: cover;
	    -o-background-size: cover;
	    background-size: cover;
	}
}

section.services .panel-service {
  position: relative;
  width: 100%;  
  min-height: 700px;  
  
  background-attachment: relative;  

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

section.services #panel-service-maritimo {
	background: url("../img/services/bg-maritimo.jpg");
	background-repeat: no-repeat;
	
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;

	background-position-x: center;
	background-position-y: center;
	background-position: center center;
	
	
}

section.services #panel-service-aereo {
	background: url("../img/services/bg-aereo.jpg");
	background-attachment: relative;
	background-repeat: no-repeat;

	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;

	background-position-x: center;
	background-position-y: center;
	background-position: center center;	
}

section.services #panel-service-terrestre {
	background: url("../img/services/bg-terrestre.jpg");
	background-attachment: relative;
	background-repeat: no-repeat;

	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;

	background-position-x: center;
	background-position-y: center;
	background-position: center center;
}

section.services #panel-service-aduanero {
	background: url("../img/services/bg-aduanero.jpg");
	background-attachment: relative;
	background-repeat: no-repeat;

	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;

	background-position-x: center;
	background-position-y: center;
	background-position: center center;
}

section.services .panel-info {
	min-height: 700px;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	section.services .panel-service {
		background-attachment: relative;
		background-repeat: no-repeat;

		-webkit-background-size: auto 400px !important;
		-moz-background-size: auto 400px !important;
		-o-background-size: auto 400px  !important;
		background-size: auto 400px !important;

		background-position-x: top !important;
		background-position-y: center;
		background-position: top center !important;
	}
	
	section.services #panel-service-terrestre {	
		background-position-x: left !important;
		background-position-y: top !important;
		background-position: top left !important;
	}
}

section.services .panel-info {
	background: rgba(217, 216, 214, 0.8);   
	background-position-x: center;
	background-position: center;
	background-repeat: repeat;
  
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	
}

section.services .panel-info h2 {
	font-size: 30px;
	font-family: 'Montserrat-Light', 'Arial', 'sans-serif'; 
}

section.services .panel-info h4 {
	font-size: 20px;
	font-family: 'Montserrat-ExtraBold', 'Arial', 'sans-serif'; 
}

section.services .panel-info li {
	margin-bottom: 4px;
}

section.services .icon-service {
	opacity: 0.5;
	cursor: pointer;
}	

section.services .icon-service.active {
	opacity: 1;	
}

section.services .icon-service img {
	width: 100%;
}

section.services .icon-service span {
	font-size: 14px;
	text-align: center;
}

@media only screen and (max-width: 600px) {
	section.services .panel-icons {
		min-height: 400px;
	}
	
	section.services .icon-service img {
		width: 100%;
	}

	section.services .icon-service span {
		font-size: 13px;
		text-align: center;
	}
}

section.services li>span {
	font-size: 18px;
}

section.services .fa-check {
	padding-top: 8px;
}

.masthead-separator {
	position: relative;
	width: 100%;
	height: 650px;
	
	background: url("../img/banner_final.jpg");   
	background-attachment: fixed;
	background-repeat: no-repeat;
	
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	
	background-position-x: center;
	background-position-y: center;
	background-position: center center;
  
	-webkit-transition: all 250ms linear;
	-moz-transition: all 250ms linear;
	-ms-transition: all 250ms linear;
	-o-transition: all 250ms linear;
	transition: all 250ms linear;
  }

.masthead-separator-es {
  position: relative;
  width: 100%;
  height: 650px;
  
  background: url("../img/banner_final.jpg");   
  background-attachment: fixed;
  background-repeat: no-repeat;
  
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  
  background-position-x: center;
  background-position-y: center;
  background-position: center center;

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

.masthead-separator-en {
	position: relative;
	width: 100%;
	height: 650px;
	
	background: url("../img/banner_final_en.jpg");   
	background-attachment: fixed;
	background-repeat: no-repeat;
	
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	
	background-position-x: center;
	background-position-y: center;
	background-position: center center;
  
	-webkit-transition: all 250ms linear;
	-moz-transition: all 250ms linear;
	-ms-transition: all 250ms linear;
	-o-transition: all 250ms linear;
	transition: all 250ms linear;
  }


/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	.masthead-separator {
		position: relative;
		width: 100%;
		height: 200px !important;
		
		background: url("../img/banner_final.jpg");  
		background-position-x: center;
		background-position: center;
		background-repeat: no-repeat;
  
	    -webkit-background-size: 100% auto;
	    -moz-background-size: 100% auto;
	    -o-background-size: 100% auto;
	    background-size: 100% auto;
	}	
	.masthead-separator-es {
		position: relative;
		width: 100%;
		height: 200px !important;
		
		background: url("../img/banner_final.jpg");  
		background-position-x: center;
		background-position: center;
		background-repeat: no-repeat;
  
	    -webkit-background-size: 100% auto;
	    -moz-background-size: 100% auto;
	    -o-background-size: 100% auto;
	    background-size: 100% auto;
	}
	.masthead-separator-en {
		position: relative;
		width: 100%;
		height: 200px !important;
		
		background: url("../img/banner_final_en.jpg");  
		background-position-x: center;
		background-position: center;
		background-repeat: no-repeat;
  
	    -webkit-background-size: 100% auto;
	    -moz-background-size: 100% auto;
	    -o-background-size: 100% auto;
	    background-size: 100% auto;
	}	
}

/* Contacto */
section.contact .container {
    padding-bottom: 50px;
}

section.contact .section-heading img {
    height: 80%;
	float: right;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	section.contact .section-heading img {
		width: 100%;
		height: auto !important;
		float: right;
	}
}

section.contact label {
    font-size: 16px;
    font-family: 'Montserrat-Regular', 'Arial', 'sans-serif';  
	width: 100%;
	text-decoration: none !important;
}

section.contact a, 
section.contact a:hover, 
section.contact a:active, 
section.contact a:visited, 
section.contact a:focus {
    color: #fff !important;
	text-decoration: none !important;
}

section.contact i {
	font-size: 16px;	
	border: 1px solid #fff;
	border-radius: 5px;
}


section.contact .col-message label {
	font-size: 16px;
	width: 100%;
	padding: 5px;
}

section.contact input[type=text],
section.contact textarea {
    font-size: 16px;
    font-family: 'Montserrat-Regular', 'Arial', 'sans-serif';
	width: 100%;
	border: none;
	float: left;
	padding: 5px;
}

section.contact .btn {
    font-size: 12px;
    font-family: 'Montserrat-Bold', 'Arial', 'sans-serif'; 
	padding: 10px 20px;
	margin: 30px 0;
	border: 1px solid #fff;
}

section.contact .btn:hover {
    background-color: #fff !important;
	color: rgb(231, 63, 98) !important; 
}

section.contact #map {
    width: 100%;
	height: 400px;
}

@media only screen and (max-width: 600px) {
	section.contact label.text-right {
		text-align: left !important;
	}
}

/* Footer */

footer {
	padding: 0;
	margin: 0;
	font-size: 12px;
    font-family: 'Montserrat-Bold', 'Arial', 'sans-serif'; 
}

footer .container {
	padding-top: 25px;
	padding-bottom: 25px;
}

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

footer a span {	
	margin: 0 5px;
	padding: 5px 10px;
	font-size: 18px;
	border-radius: 10px;
}

/* Modal */

.modal input[type=button] {
    font-size: 12px;
    font-family: 'Montserrat-Regular', 'Arial', 'sans-serif'; 
	padding: 20px 40px;	
}

.modal .col-message label {
	font-size: 16px;
}

.modal input[type=text],
.modal textarea {
    font-size: 12px;
    font-family: 'Montserrat-Regular', 'Arial', 'sans-serif';
	width: 100%;
	border-radius: 2px;
	border: 1px solid rgb(85, 85, 85);
	line-height: 22px;
	padding: 5px;
}

/* Otros */

.bg-primary {
  background: rgb(25, 50, 87) !important;
}

.bg-hover-primary:hover,
.bg-hover-primary:focus {
  background: rgb(25, 50, 87) !important;
}

.bg-secondary {
	background: rgb(231, 63, 98) !important;
}

.bg-hover-secondary:hover,
.bg-hover-secondary:focus {
   background: rgb(231, 63, 98) !important;
}

.bg-gray {
  background: rgb(239, 239, 238) !important;
}

.bg-darkgray {
  background: rgb(85, 85, 85) !important;
}

.text-primary {
  color: rgb(25, 50, 87) !important;
}

.text-secondary {
  color: rgb(231, 63, 98) !important;
}

.text-gray {
  color: rgb(239, 239, 238) !important;
}

.text-darkgray {
  color: rgb(85, 85, 85) !important;
}

.text-white {
  color: #fff !important;
}

.no-gutter > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}

.btn {
  border-radius: 300px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.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);
    }
}