body {
  font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, Arial, sans-serif;
}
.navbar-default {
  background-color: #FFF;
  border-color: #E7E7E7;
  font-size: 1.3em;
}
.navbar {
  border: 0px solid #fff;
}
.navbar .navbar-nav {
  display: inline-block;
  float: none;
}
.navbar .navbar-nav a {
  top: 20px;
  padding-top: 0;
  padding-bottom: 0;
}
.navbar .navbar-collapse {
  text-align: center;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:focus,
.navbar-default .navbar-nav > .active > a:hover {
  background-color: inherit;
  color: #86755d;
  font-weight: bold;
}
#contenido {
  padding-top: 165px;
}
#servicios {
  padding-top: 50px;
  padding-bottom: 30px;
  background-color: #f5f4ef;
}
#servicios .container {
  max-width: 970px;
}
#servicios .container .service-box {
  margin: 30px auto 0px;
  max-width: 350px;
  min-height: 250px;
}
#servicios .svg {
  width: 57px;
  height: 57px;
  fill: #86755D;
}
#servicios ul {
  margin: 30px auto 0px;
  text-align: left;
  list-style-type: none;
  padding: 0;
}
#servicios ul li {
  border: 1px solid #ccc;
  margin-bottom: 15px;
}
#servicios ul li:last-child {
  margin-bottom: 0px;
}
#servicios ul li a.titulo {
  width: 100%;
  display: block;
  padding: 10px;
  text-decoration: none;
  color: #000;
}
#servicios ul li a.titulo .svg {
  margin-right: 10px;
  padding-top: 3px;
  width: 1.15em;
  height: 1.15em;
  float: right;
}
#servicios ul li .descripcion {
  display: none;
  padding: 15px;
}
#servicios .separador {
  padding-top: 25px;
}
#servicios hr {
  -moz-border-bottom-colors: none;
  -moz-border-image: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  border-color: #bfb5a8 -moz-use-text-color #bfb5a8;
  border-style: thin dotted none ;
  border-width: 1px 0;
}
#enlaces {
  padding-top: 30px;
  padding-bottom: 30px;
}
#enlaces .container {
  max-width: 970px;
}
#enlaces .container .service-box {
  margin: 60px auto 0px;
  max-width: 350px;
}
#enlaces .container .service-box img {
  width: 300px;
  padding-bottom: 35px;
}
#contacto {
  background-color: #727271;
  color: #fff;
  padding-top: 30px;
  padding-bottom: 30px;
}
#contacto .container {
  text-align: center;
}
#contacto .boton {
  display: block;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 8px;
  width: 80%;
  max-width: 200px;
  background: #fff;
  /* fallback color for old browsers */
  background: rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  letter-spacing: 1px;
  transition: all 0.3s ease-out;
  border: 1px solid #fff;
}
#contacto .boton:hover,
#contacto .boton:focus,
#contacto .boton:active {
  font-weight: bold;
  background: #fff;
  color: #000;
  transition: all 0.5s ease-in;
}
#pie {
  background-color: #2b2a29;
  /*#5b5b5b;*/
  padding-top: 12px;
  text-align: right;
}
#pie nav {
  margin-right: 30px;
}
#pie nav a {
  margin-right: 15px;
  text-decoration: none;
  /*        filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
             filter: gray;
             filter: contrast(0);
             */
}
#pie .svg {
  width: 23px;
  height: 23px;
  fill: #D9DADA;
}
#pie .svg.instagram {
  fill: #727272;
}
#pie .svg.youtube {
  fill: #a66564;
}
#pie .svg.sketchfab {
  fill: #598b9c;
}
#pie .svg.facebook {
  fill: #6a6a6a;
}
#pie .svg:hover.instagram {
  fill: #86755D;
}
#pie .svg:hover.youtube {
  fill: #E32A27;
}
#pie .svg:hover.sketchfab {
  fill: #1CAAD9;
}
#pie .svg:hover.facebook {
  fill: #3B5998;
}
.svg {
  display: inline-block;
}
svg {
  width: 100%;
  pointer-events: none;
}
#error404 .svg {
  fill: #86755D;
}
#error404 a {
  color: #86755D;
  text-decoration: none;
}
#error404 a:hover {
  color: #bf7f24;
  fill: #bf7f24;
}
.link {
  color: #86755d;
  font-weight: bold;
}
.link:hover {
  text-decoration: none;
  color: #86755d;
  text-shadow: 0px 0px 1.4em #86755d;
}
#logoGran {
  text-align: center;
}
#logoGran .svg {
  padding-top: 10px;
  width: 120px;
  height: 110px;
}
#logoMini {
  text-align: center;
  padding-right: 25px;
}
#logoMini .svg {
  padding-top: 8px;
  width: 42px;
  height: 40px;
}
#formulario {
  text-align: center;
  margin-top: 50px;
  margin-bottom: 25px;
}
#formulario .container {
  width: 65%;
}
#formulario .nombre,
#formulario .correo {
  width: 48%;
  display: inline-block;
  float: right;
}
#formulario .nombre {
  float: left !important;
}
#formulario .captcha {
  width: 3em;
  display: inline-block;
}
#formulario .form-control {
  background-color: #eeeeee;
  color: #646262;
  border-radius: 0px;
  border: medium none !important;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.075) inset, 0px 0px 0px rgba(102, 175, 233, 0.6);
  box-sizing: border-box;
}
#formulario .form-control:focus {
  outline: 0px none;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.075) inset, 0px 0px 0px rgba(102, 175, 233, 0.6);
}
#direccion {
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #f5f4ef;
  text-align: center;
}
#direccion li {
  list-style-type: none;
  text-align: left;
  width: 210px;
  white-space: nowrap;
}
#direccion .col1,
#direccion .col2 {
  display: inline-block;
  padding-top: 15px;
}
#direccion .col1 {
  margin-right: 4%;
  margin-left: 8%;
}
.map {
  margin-top: 100px;
  width: 100%;
  height: 320px;
  margin: 0;
}
#proyectos,
#trabajos {
  padding-top: 30px;
  padding-bottom: 30px;
}
#proyectos .container,
#trabajos .container {
  width: 100%;
  padding: 0;
}
.ficha_thumb {
  float: left;
  overflow: hidden;
  text-align: center;
  position: relative;
  height: 200px;
  width: 20%;
  margin: 0;
}
.ficha_thumb a {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
  margin: 0px;
  text-decoration: none;
  font-size: 1.6em;
}
.ficha_thumb a img {
  position: relative;
  display: block;
  height: 100%;
  width: 100%;
  max-width: inherit;
  min-height: 100%;
  min-width: 100%;
}
.ficha_thumb a .back {
  width: 100%;
  height: 100%;
  display: block;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  color: #222;
  font-size: 0.8em;
  opacity: 0;
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  -ms-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.ficha_thumb a .back:hover {
  opacity: 1;
}
.ficha_thumb a .back .svg {
  padding-top: 85px;
  width: 24px;
  height: 24px;
  fill: #86755D;
  background-color: rgba(255, 255, 255, 0);
}
.ficha_thumb a .back .texto span {
  display: block;
}
#ficha h3 {
  font-size: 1.3em;
  text-decoration: underline;
}
#ficha p {
  padding-top: 15px;
}
/* Animaciones*/
#aguja {
  transform-origin: 750px 750px;
}
#rotorizq {
  transform-origin: 275px 1280px;
}
#rotorder {
  transform-origin: 1225px 1280px;
}
.rotor {
  animation: rotor 0.13s cubic-bezier(0, 0.33, 0.82, 0.63) infinite;
}
@keyframes rotor {
  50% {
    fill: #424241;
  }
  100% {
    fill: #86755D;
    transform: rotateY(180deg);
  }
}
.parar {
  fill: #86755D;
  transform: rotateY(0deg);
}
.girar {
  animation: spin 2s cubic-bezier(0, 0.63, 0.92, 0.33) infinite;
}
@keyframes spin {
  0% {
    transform: rotate(0);
  }
  10% {
    transform: rotate(100deg);
  }
  15% {
    transform: rotate(260deg);
  }
  20% {
    transform: rotate(160deg);
  }
  40% {
    transform: rotate(360deg);
  }
  50% {
    transform: rotate(120deg);
  }
  60% {
    transform: rotate(30deg);
  }
  70% {
    transform: rotate(30deg);
  }
  80% {
    transform: rotate(30deg);
  }
  90% {
    transform: rotate(360deg);
  }
  100% {
    transform: rotate(450);
  }
}
#globo {
  transform-origin: 1175px 995px;
}
.globo {
  animation: globo 3s linear infinite;
}
@keyframes globo {
  18% {
    fill: #432;
    transform: scale(0.965);
  }
  50% {
    fill: #424241;
    transform: scale(1.005);
  }
  85% {
    fill: #543;
    transform: scale(0.985);
  }
  100% {
    fill: #86755D;
    transform: scale(1);
  }
}
.fadeMapA {
  animation: colora 3s cubic-bezier(0, 0.63, 0.92, 0.33) infinite;
}
@keyframes colora {
  0% {
    fill: #424241;
  }
  50% {
    fill: #86755D;
  }
  75% {
    fill: #86755D;
  }
}
.fadeMapB {
  animation: colorb 3s cubic-bezier(0, 0.63, 0.92, 0.33) infinite;
}
@keyframes colorb {
  0% {
    fill: #86755D;
  }
  50% {
    fill: #424241;
  }
  75% {
    fill: #86755D;
  }
}
.fadeMapC {
  animation: colorc 3s cubic-bezier(0, 0.63, 0.92, 0.33) infinite;
}
@keyframes colorc {
  0% {
    fill: #86755D;
  }
  50% {
    fill: #86755D;
  }
  75% {
    fill: #424241;
  }
}
/*
PROYECTOS


#portfoliolist .portfolio {
    float:left;
    overflow:hidden;
}

.portfolio-wrapper {
    overflow:hidden;
    position: relative !important;
    background: #666;
    cursor:pointer;
}

.portfolio img {
    max-width:100%;
    position: relative;
}

.portfolio .label {
    position: absolute;
    width: 100%;
    height:40px;
    bottom:-40px;
}

.portfolio .label-bg {
    background: #e95a44;
    width: 100%;
    height:100%;
    position: absolute;
    top:0;
    left:0;
}

.portfolio .label-text {
    color:#fff;
    position: relative;
    z-index:500;
    padding:5px 8px;
}

.portfolio .text-category {
    display:block;
    font-size:9px;
}


*/
/*
cambiar numº de columnas en proyectos segun ancho
*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
  #proyectos .ficha_thumb {
    width: 33.33% !important;
  }
}
@media only screen and (max-width: 767px) {
  #proyectos .ficha_thumb {
    width: 100% !important;
  }
}
@media only screen and (min-width: 480px) and (max-width: 767px) {
  #proyectos .ficha_thumb {
    width: 50% !important;
  }
}
.leaflet-label {
  /*   background: rgb(235, 235, 235);
    background: rgba(235, 235, 235, 0.85);
    background-clip: padding-box;
    border-color: #ddd;
    border-color: rgb(235, 235, 235);
    border-color: rgba(235, 235, 235, 0.85);
    border-radius: 4px;
    border-style: solid;
    border-width: 4px;
*/
  font-family: "Arial Black", "Arial Bold", Gadget, sans-serif;
  color: #e51a4b;
  text-shadow: -1px -1px 0 #ffffff, 1px -1px 0 #ffffff, -1px 1px 0 #ffffff, 1px 1px 0 #ffffff;
  display: block;
  /*  font: 12px/20px "Helvetica Neue", Arial, Helvetica, sans-serif;
    font-weight: bold;*/
  font-size: 1.25em;
  padding: 1px 6px;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  pointer-events: none;
  white-space: nowrap;
  z-index: 6;
}
.leaflet-label.leaflet-clickable {
  cursor: pointer;
  pointer-events: auto;
}
.leaflet-label:before,
.leaflet-label:after {
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  content: none;
  position: absolute;
  top: 5px;
}
.leaflet-label:before {
  border-right: 6px solid black;
  border-right-color: inherit;
  left: -10px;
}
.leaflet-label:after {
  border-left: 6px solid black;
  border-left-color: inherit;
  right: -10px;
}
.leaflet-label-right:before,
.leaflet-label-left:after {
  content: "";
}
