/* Azul #151e2b */
body{
    padding-top: 90px;
    font-family: 'Montserrat', sans-serif;
    color:#555;
    font-size: 14px;
    scroll-behavior: smooth;
}
h1,h2,h3,h4,h5,h6,strong{
    font-weight: 700;
}
a{
    color: #151e2b;
    transition: color .3s ease-out;
    text-decoration: none;  
}
a:hover, a.nav-link:hover{
    color:#edc11c;    
    text-decoration: none;
}
.lang {
  position: absolute;
  top: 34px;
  right: 0;
  color: #fff;
  padding: 4px !important;
}
.lang>img{
  width: 50px;
}
.navbar-nav{
  margin-right:70px;
}
.nav-item{
    padding: 0 16px;
    text-align: center;
}
#top-bar{
  background: #edc11c;
  height: 32px;
  width: 100%;
  line-height: 32px;
}
#phone-bar{
  line-height: 32px;
  width: 100%;
  position: fixed;
  background: #fff;
  bottom: 0;
  text-align: center;  
  z-index: 3;
  box-shadow: 0 -4px 8px #151e2b8a;
}
#main-nav{
    color: #fff;
    background: #151e2b;
}
a.nav-link{
    color: #fff;
    padding: 3em 0;
}
.navbar{
    padding:0;
}
.navbar-brand{
    padding: 0;
}
.navbar-brand>img{
    height: 100px;
}
#header-container{
    box-shadow: 0 0 4px 4px #0003;
}
#hero-overlay {
    position: absolute;
    top: 0;
    background: #0005;
    z-index: 2;
    height: 100vh;
    width: 100%;
}
.hero-image{
    height: 100vh;
    width: 100%;
    background-position: 50% 50%;
}
.hero-text{
    z-index: 1;
    color: #fff;
}
#main-hero::after{
    display: block;
    background: #0009;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 640px;
    content: '';
}
.centered{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
#servicios-container{
    margin: 30px auto;
}
.servicio {
    overflow: hidden;
    cursor: pointer;
    position: relative;
    font-size: .8em;
    height: 260px;
    background-size: cover;
    background-position: 50% 50%;
}
.servicio>div {
    width: 100%;
    position: absolute;
    bottom: 0px;    
    color: #fff;
    padding: 6px 15px 0;      
}
.servicio h3{
    font-size: 18px;
}

.servicio ul{
    margin: 0;
    padding: 0 15px;
}
.servicio-detail{
    overflow: hidden;
    height:400px;
    background-size: cover;
    padding: 0;
}
.servicio-detail>div {
    background: #151e2b91;
    color: #fff;
    position: absolute;
    width: 100%;
    height: 400px;
    justify-content: center;
    display: flex;
    flex-direction: column;
    padding: 48px;
    transition: all .3s ease-out;
    top: 200px
}
.servicio-detail:hover>div{
    top:10px;
}
.fondo-gris{
    background-attachment: fixed;    
}
.fondo-gris>div{
  background: #fffa;
}
.bloque-servicio {
    background: #fff;
    border-radius: .5em;
    box-shadow: 0 0 4px 2px #0002;
    padding: .5em 1em;
    margin-bottom: 30px;
    color: #151e2b;
    font-size: .9em;
    transition:background .3s ease-out;
}
.bloque-servicio>h3{
    font-size: 1.1em;
    font-weight: 600;
    transition:all .3s ease-out;
}
.bloque-servicio .icono> i {
    background: #151e2b;
    color: #fff;
    border-radius: 50%;
    padding: 4px;
    margin: .5em 0;
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition:all .3s ease-out;
}
.bloque-servicio:hover{
    background: #151e2b;
    color:#fff;
}
.bloque-servicio:hover>h3{
    color:#fff;
}
.bloque-servicio:hover .icono i{
    background: #fff;
    color: #151e2b;
}
button:focus {
  outline: none;
}
.btn-primary{
    background: #edc11c;
    color:#151e2b;
    border: #11305c solid 1px;
}
.btn-primary:hover{
    background: #9f6523;
    color:#fff;
}
.rayita{
    background: #151e2b;
    width: 100px;
    height: 5px;
    display: inline-block;
}
.blanco{
    color: #fff;
}
.dorado{
    color:#edc11c;
}
.fondo-blanco{
    background: #fff;
}
.fondo-azul{
    background: #151e2b url(/images/bg-2.png) repeat;
}
footer{
    background: #252525;
    color:#fff;
    padding: 48px 0;
    font-size: 13px;
}
footer a, #colophon a{
    color: #fff;
}
#colophon {
    background: #151515;
    color: #fff;
}
div.hash {
    position: relative;
    bottom: 100px;
}
.table td{
    border: 0;
}
/**/
.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.preloader {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: url(/images/torres_logol.svg) center calc(50% - 100px) no-repeat #151e2b;/*#10e5ea;*/
	background-size:300px;
	display:flex;
	justify-content:center;
	align-items:center;
}
/*Spinner*/
.lds-roller {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
  margin-top: 100px;
}
.lds-roller div {
  animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  transform-origin: 32px 32px;
}
.lds-roller div:after {
  content: " ";
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #edc11c;
  margin: -3px 0 0 -3px;
}
.lds-roller div:nth-child(1) {
  animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
  top: 50px;
  left: 50px;
}
.lds-roller div:nth-child(2) {
  animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
  top: 54px;
  left: 45px;
}
.lds-roller div:nth-child(3) {
  animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
  top: 57px;
  left: 39px;
}
.lds-roller div:nth-child(4) {
  animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
  top: 58px;
  left: 32px;
}
.lds-roller div:nth-child(5) {
  animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
  top: 57px;
  left: 25px;
}
.lds-roller div:nth-child(6) {
  animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
  top: 54px;
  left: 19px;
}
.lds-roller div:nth-child(7) {
  animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
  top: 50px;
  left: 14px;
}
.lds-roller div:nth-child(8) {
  animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
  top: 45px;
  left: 10px;
}
@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
  /* ScrollReveal */
  [class^="sr-"], [class*=" sr-"]{
    visibility: hidden;    
  }

  /* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { 
  
 }

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 
  
 }

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
  #navbarNav {
    flex-direction: column;
  }
  #navbarNav a {
    padding: 15px;
  }
  a.nav-link{ 
    padding:0;
  }
  #top-bar{    
    height: 32px;
    line-height: 32px;
  }
  .navbar-brand>img{
    height: 150px;
  }
  #hero-overlay {
    position: absolute;
    top: 0;
    background: #0005;
    z-index: 2;
    height: 640px;
    width: 100%;
  }
  .hero-image{
    height: 640px;
    width: 100%;
  }
  div.hash {    
    bottom: 180px;
  }
 }

/* // Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 
  
 }