  ::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

iframe,
img {
    vertical-align: middle;
}

textarea {
    resize: none;
    width: 100%;
    height: 100%;
    background:none;
    border: none;
    outline: none;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */

* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
       ms-box-sizing: border-box;
          box-sizing: border-box;
}
body {
    font: 12px 'Open Sans', sans-serif;
    margin: 0;
    padding: 0;
    color: #fff;
}

h1 {
  font-size: 39px;
  color: #fff;
  font-weight: normal;
  margin: 0;
}
h2 {
  margin: 0;
  padding: 0;
}

p {
  line-height: 120%;
}


/*  */

header {
    background: #fff; 
    /*overflow: hidden;*/
    height: 138px;
}

.info {
  float: left;
  width: auto;
  background: url(../img/ico.png) no-repeat 0 2px;
  margin: 15px 0;
  padding-left: 25px;
}
.dir {
  float: right;
  width: 320px;
  background: url(../img/ico.png) -41px -32px no-repeat;
  padding-left: 20px;
  margin: 10px 0 0;
}

.logo{
    background: url(../img/logo.png) no-repeat;
    width: 141px;
    height: 82px;
    float: left;
    clear: left;
    margin: 10px 0 0;
}

.fono {
    background: url("../img/fnd-fono.png") no-repeat scroll 0 0 rgba(0, 0, 0, 0);
    float: right;
    font-size: 18px;
    font-weight: bold;
    width:195px;
    height: 55px;
    line-height: 40px;
    margin: 55px 0 0;
    padding: 0 0 0 48px;
    width: 180px;
}


header span {
   display: block;
   color: #333;
}

footer {
    background: #18756a;
    clear: both;
    display: table;
    margin: auto;
}
footer p {
  text-align: center;
  padding: 5px 0;
}
footer a { 
  color: #fff;
  text-decoration: none;
}

nav {
  float: left;
  width: 610px;
  margin: 40px 0 0 25px;
}
nav li {
  float: left;
  height: 41px;
  list-style: none;
}
nav li a {
  color: #333;
  text-decoration: none;
  padding: 14px 12px;
  font-weight: bold;
  font-size: 12px;
}
nav li a:hover, a.activo {
  background: #37a290;
  color: #fff;
  font-weight: bold;
}


.cont960{

    width: 960px;
    margin: 0 auto;
    /*border: 1px solid orange;*/
}

.left-col {
  float: left;
  width: 455px;
  position: relative;
}
.right-col {
  float: right;
  width: 410px;
  position: relative;
}

/* BAJADA */
.left-col p {
  font-size: 14px;
}


/* CONTACTO */

.tit-contacto {
    background: url(../img/fnd-titulo.png) no-repeat 0 0;
    display: block;
    font-size: 14px;
    font-weight: bold;
    height: 45px;
    line-height: 35px;
    margin: 10px 0 0 10px;
    padding: 0 30px;
    position: relative;
    right: 26px;
    width: 465px;
    text-shadow: 1px 1px 1px #000;
}



.main {
  background: url(../img/fnd.jpg) center top no-repeat;
  /* height: 554px; */
  width: 100%;
}
.main .cont-960 {
  background:#37a290;
  height: 790px;
  width: 961px;
  margin: 0 auto;
  padding: 25px;
}

.main .cont-960.home {
  background:#37a290;
  height: 750px;
}
.main .cont-960.planta  {
  background:#37a290;
  height: 1050px;
}


.video {
  background: url(../img/video.jpg) no-repeat;
  width: 448px;
  height: 323px;
}
.video a {
  display: block;
  width: 448px;
  height: 323px;
}
.galeria li {float:left; width:200px; height: 200px; margin:0 5px 0 0; list-style: none; margin-left: 10px; }
.galeria img {max-width: 180px;}






/* ==========================================================================

    CONTACTO
   ==========================================================================*/

.form {
  margin: 10px 0; 
  overflow: hidden;
  width: 410px;
}
.form .tit-campo {
  line-height: 35px;
  display: block;
  padding: 0;
  margin: 0;
}

.form .tit-mensaje {
  font-size: 1em;
  line-height:130%;
  display:table-cell;
  vertical-align: top;
  color: #fff;
  padding: 5px;
}

.enviar {
  cursor: pointer;
  color: #fff;
  width:92px;
  height:26px;
  background: url(../img/btn-enviar.png) no-repeat;
  text-indent: -9999px;
  position: absolute;
  bottom: -20px;
  right: -10px;
  border: none;

}  
.campo {
  width: 310px;
  float: right;
  margin: 0 0 8px;
}
.campo input {
  width: 100%;
  color: #333;
  padding: 5px;
  background:#fff;
  border:1px solid #ccc; 
  border-radius: 5px;
  moz-border-radius: 5px;
  webkit-border-radius: 5px;
  ms-border-radius: 5px;
  background-image: -webkit-gradient(
  linear,
  left top,
  left bottom,
  color-stop(0.25, #FFFFFF),
  color-stop(1, #EBEBEB)
);
background-image: -o-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: -moz-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: -webkit-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: -ms-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: linear-gradient(to bottom, #FFFFFF 25%, #EBEBEB 100%);
}

.textarea  {
  float: right;
  color: #333;
  width:310px;
  background:#fff;
  border:1px solid #ccc;
  border-radius: 5px;
  padding: 5px; 
  margin:0 0 10px 0;
  background-image: -webkit-gradient(
  linear,
  left top,
  left bottom,
  color-stop(0.25, #FFFFFF),
  color-stop(1, #EBEBEB)
);
background-image: -o-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: -moz-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: -webkit-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: -ms-linear-gradient(bottom, #FFFFFF 25%, #EBEBEB 100%);
background-image: linear-gradient(to bottom, #FFFFFF 25%, #EBEBEB 100%);
}


/* ==========================================================================
   INTERIOR  
   ========================================================================== */

.izq {
  float: left;
}
.der {
  float: right;
}

.cnt.der {
  float: right;
  width: 425px;
  margin-left: 35px;
}
.cnt p {
  font-size: 14px;
  line-height: 24px;
  margin: 0 0 20px;
}

.proyecto {
  padding: 0;
  margin: 0;
}

.proyecto li {
  display: inline-block;
  list-style: none; 
  width: 453px;
}

.proyecto li.green {
  background: #288476;
}
.proyecto li.gray {
  background: #dbdbdb;
}
.proyecto li p {
  width: 170px;
  font-size: 14px;
  line-height: 18px;
    padding: 20px; 
}
.proyecto li p.gris {
  color: #070911;
}




/* ==========================================================================
   Helper classes
   ========================================================================== */
.fz12{
    font-size: 12px;
    display: block;
    margin-top: 1px;
}

.tel{
    font-size: 20px;
    font-weight: bold;
    line-height: 120%;
}

.black{
  background: #000;
  color: #fff;  
}

.yellow{
  background: #fcc701;
}

.mapa {
  margin: 0 auto;
  width: 800px;
}

.etiqueta {
  display:block;
  width:80px;
  height:70px;
  color:#fff;
  position:fixed;
  right:20px;
  bottom:20px;
  line-height:80px;
  z-index:1000000000;
  cursor: pointer;
}

.galeria-home {clear:both;}
.galeria-home li {float: left; width: 200px; margin:20px 0 0 10px; list-style: none;}
.galeria-home li img {border:1px solid #333; max-width: 200px;}



.btn-whatsapp {
  display:block;
  position:fixed;
  right:20px;
  bottom:42px;
  border-radius:50%;
  line-height:80px;
  text-align:center;
  z-index:1000000000;
  cursor: pointer;
}

.heartbeat {
	animation: heartbeat 2s ease-in-out infinite both;
}

@keyframes heartbeat {
  from {
    transform: scale(1);
    transform-origin: center center;
    animation-timing-function: ease-out;
  }
  10% {
    transform: scale(0.91);
    animation-timing-function: ease-in;
  }
  17% {
    transform: scale(0.98);
    animation-timing-function: ease-out;
  }
  33% {
    transform: scale(0.87);
    animation-timing-function: ease-in;
  }
  45% {
    transform: scale(1);
    animation-timing-function: ease-out;
  }
}