body {font-family: 'Open Sans', sans-serif; position: relative;}
.btn-primary {background: #518BBE; border: none;}
.btn-primary:hover {background: #3371A7;}
footer .btn-primary {background: #fff; border: none; color: #518BBE;}
footer .btn-primary:hover {background-color: #333; color: #fff;}
header {
  height: 100vh;
  position: relative;
  background: url(../img/bg-header.jpg) top center no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
div.logo {padding: 20px 0 0 20px;}
.header-redes {text-align: right; color: #fff; font-size: 24px; padding: 20px 40px 0 0}
.header-redes a {color: #fff; margin-left: 15px; opacity: 0.6; transition: all .3s ease-in-out;}
.header-redes a:hover {opacity: 1; transition: all .3s ease-in-out;}
.telefono {margin-left: 40px;}
header h1 {text-align: center; color: #fff; margin-top: 30vh; font-family: 'Fjalla One', sans-serif; font-size: 4rem; position: relative;}
header h1 span {display: inline-block; position: relative;}
header h1 em {position: absolute; top: 0px; left: -50px; width: 125px; height: 100px; background: url(../img/tachon.png) top center no-repeat; font-style: normal;}
header h2 {text-align: center; color: #fff; font-weight: 300; font-size: 1.6rem; width: 50vw; margin: auto; margin-top: 20px; margin-bottom: 40px; }
header p {text-align: center;}
header .btn {padding-left: 60px; padding-right: 60px; margin: auto;}

#nosotros {background: #f5f5f5; padding-top: 40px;}
#nosotros .container-fluid {padding: 0px;}
#nosotros .row {margin-left: 0px; margin-right: 0px;}
#nosotros h3 {text-align: center; margin-bottom: 30px; font-family: 'Fjalla One', sans-serif; font-size: 3rem; color: #333;}
#nosotros .in {text-align: center; padding-top: 20px; padding-bottom: 20px; height: 300px; transition: all .3s ease-in-out;}
/*#nosotros .in:hover {color: #fff; background: #518BBE; transition: all .3s ease-in-out;}*/
#nosotros img {margin: auto;}
#nosotros h4 {color: #666;}
/*#nosotros p {display: none; color: #fff; transition: all .3s ease-in-out;}
#nosotros .in:hover p, #nosotros .in:hover h4 {display: block; transition: all .3s ease-in-out;}*/

#redes-sociales {padding: 40px 0;}
#redes-sociales h3 {text-align: center; margin-bottom: 30px; font-family: 'Fjalla One', sans-serif; font-size: 1.5rem; color: #333;}
#redes-sociales a {font-size: 2rem; color: #999;}
#redes-sociales a:hover {text-decoration: none;}
.icon-twitter {color: #1da1f2;}
.icon-linkedin {color: #0077B5;}
.icon-instagram {color: #8a3ab9;}

#clientes {padding: 70px 0;}
#clientes h3 {text-align: center; margin-bottom: 30px; font-family: 'Fjalla One', sans-serif; font-size: 1.5rem; color: #333;}
/*#clientes img {opacity: 0.7; transition: all .3s ease-in-out;}
#clientes img:hover {opacity: 1; transition: all .3s ease-in-out;}*/


footer {background: #518BBE; height: 90vh;}
footer p {color: #fff; font-weight: 300; font-size: 2rem; margin: 0px; line-height: 180%;}
footer p strong {font-family: 'Fjalla One', sans-serif; font-size: 4rem;}
footer p a {color: #fff;  border-bottom: 1px solid #fff; font-style: italic; font-weight: 300; font-size: 3rem; opacity: 0.8;}
footer p a:hover {text-decoration: none; opacity: 1; color: #fff;}
footer form {padding: 30px 0;}
footer form p {font-size: 1.5rem; font-weight: 300; margin-bottom: 40px;}
footer form input.form-control {/*margin-left: 8px; margin-right: 4px; border-radius: 0px;*/ /*background: #c5c5c5;*/ border: none;}
footer form button.btn {clear: both; padding-left: 60px; padding-right: 60px;}
footer form a {color: #d5d5d5; margin-left: 30px; text-decoration: none;}
footer form a:hover {color: #f5f5f5; text-decoration: none;}
.studiogenesis {background: #518BBE; padding-bottom: 20px; color: #fff; font-weight: 300; font-size: 0.7rem; height: 10vh}
.studiogenesis a {color: #fff; text-decoration: none;}
.studiogenesis p span {padding-right: 15px;}
.footer-redes {float: right; font-size: 1rem;}
.footer-redes a {margin-left: 15px; opacity: 0.7; transition: all .3s ease-in-out;}
.footer-redes a:hover {opacity: 1; transition: all .3s ease-in-out;}

/* efectos */
.grid {
  position: relative;
  margin: 0 auto;
  /*padding: 1em 0 4em;*/
  padding: 0;
  max-width: 1000px;
  list-style: none;
  text-align: center;
  outline: 1px solid #e5e5e5;
}

/* Common style */
.grid figure {
  position: relative;
  float: left;
  overflow: hidden;
  margin: 0px;
  min-width: 100%;
  /*max-width: 480px;
  max-height: 360px;*/
  /*width: 48%;*/
  background: #f5f5f5;
  text-align: center;
  cursor: default;
  transition: all .3s ease-in-out;
}
/*.grid figure:hover {background: #518BBE; transition: all .3s ease-in-out;}*/

.grid figure img {margin-bottom: 25px; display: block;}

/*.grid figure img {
  position: relative;
  display: block;
  min-height: 100%;
  max-width: 100%;
  opacity: 0.8;
}*/

.grid figure figcaption {
  padding: 2em;
  color: #fff;
  /*text-transform: uppercase;*/
  font-size: 1.25rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.grid figure figcaption::before,
.grid figure figcaption::after {
  pointer-events: none;
}

.grid figure figcaption,
.grid figure figcaption > a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Anchor will cover the whole item by default */
/* For some effects it will show as a button */
.grid figure figcaption > a {
  z-index: 1000;
  text-indent: 200%;
  white-space: nowrap;
  font-size: 0;
  opacity: 0;
}

.grid figure h4 {
  /*word-spacing: -0.15em;*/
  font-weight: 300;
}



.grid figure h4,
.grid figure p {
  margin: 0;
}

.grid figure p {
  letter-spacing: 1px;
  font-size: 0.8rem;
  margin-bottom: 20px;
}

/*---------------*/
/***** Lily *****/
/*---------------*/

/*figure.effect-lily img {
  max-width: none;
  width: -webkit-calc(100% + 50px);
  width: calc(100% + 50px);
  opacity: 0.7;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(-40px,0, 0);
  transform: translate3d(-40px,0,0);
}*/

.effect-lily {height: 350px;}
.effect-lily a {color: #fff; text-decoration: none; border-bottom: 1px solid #fff;}

figure.effect-lily figcaption {
  text-align: left;
}

figure.effect-lily figcaption > div {
  position: absolute;
  bottom: 45%;
  left: 0;
  padding: 2em;
  width: 100%;
  height: 50%;
  text-align: center;
}

figure.effect-lily h4,
figure.effect-lily p {
  -webkit-transform: translate3d(0,40px,0);
  transform: translate3d(0,40px,0);
}

figure.effect-lily h4 {
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  margin-bottom: 15px;
}

figure.effect-lily p {
  color: rgba(255,255,255,0.8);
  opacity: 0;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.35s;
  transition: opacity 0.2s, transform 0.35s;
}

/*figure.effect-lily:hover img,*/
/*figure.effect-lily:hover p {
  opacity: 1;
}*/

/*figure.effect-lily:hover img,*/
/*figure.effect-lily:hover h4,
figure.effect-lily:hover p {
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
  color: #fff !important;
}*/

/*figure.effect-lily:hover p {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
}*/

/* cookies */
/*#cookies {position: fixed; right: 30px; bottom: 30px; display: none;}*/
/*#cookies p {color: #666 !important;}*/
#cookies a {color: #518BBE !important;}

/*nuevo 25-05-2018*/
#cookies .card{border-radius: 0;background-color: rgba(0,0,0,0.6);position: fixed;bottom: 0;left: 0;width: 100%!important;height: auto;color: #fff;}
#cookies .card-body{padding:10px 15px;}
#cookies h5{font-size: 12px;color: #fff!important;margin-bottom: 5px;}
#cookies p{margin-bottom: 0;color: #fff!important;}
#cookies p, #cookies a{font-size: 11px;}
#cookies span{cursor: pointer;font-size: 16px;color: #fff!important}

@media (max-width: 767px){
  #cookies h5{font-size: 10px;}
  #cookies p, #cookies a{font-size: 9px;}
}
/************************************************************************************************* responsive ************/


@media (max-width: 575px) { 
  div.logo {padding-left: 0px;}
  .header-redes {text-align: right; color: #fff; font-size: 18px; padding: 20px 0px 0 0;}
  .header-redes a {color: #fff; margin-left: 15px; opacity: 0.6; transition: all .3s ease-in-out;}
  .header-redes a:hover {opacity: 1; transition: all .3s ease-in-out;}
  .telefono {display: block; text-align: right; margin-left: 0px;}
  header h1 {
      margin-top: 15vh;
      font-size: 3rem;
  }
  header h1 em {position: absolute; top: 0px; left: -30px; width: 90px; height: 45px; background: url(../img/tachon.png) top center no-repeat; background-size: cover; font-style: normal;}
  header h2 {font-size: 1rem; width: 80vw; }
  footer p {color: #fff; font-weight: 300; font-size: 1rem; margin: 0px; line-height: 250%;}
  footer p strong {font-size: 2.5rem;}
  footer p a {font-size: 2rem; display: block;}
  footer form {padding: 20px 0;}
  footer form p {font-size: 1rem; font-weight: 300; margin-bottom: 5px;}
  footer form button.btn {clear: both; padding-left: 60px; padding-right: 60px;}
  footer form a {color: #d5d5d5; margin-left: 30px; text-decoration: none;}
  footer form a:hover {color: #f5f5f5; text-decoration: none;}
  ul.nav {display: block; margin-right: 15px;}
  #nosotros h3 {margin-bottom: 30px; font-size: 2rem;}
  .studiogenesis p {text-align: center;}
  .footer-redes {
    float: none;
    display: block;
    margin: auto;
    text-align: center;
    margin-top: 10px;
  }
  footer form input.form-control {margin-left: 0px; margin-right: 0px;}
}


@media (min-width: 576px) and (max-width: 767px) { 
  div.logo {padding-left: 0px;}
  .header-redes {text-align: right; color: #fff; font-size: 18px; padding: 20px 0px 0 0;}
  .header-redes a {color: #fff; margin-left: 15px; opacity: 0.6; transition: all .3s ease-in-out;}
  .header-redes a:hover {opacity: 1; transition: all .3s ease-in-out;}
  .telefono {display: block; text-align: right; margin-left: 0px;}
  header h1 {
      margin-top: 15vh;
      font-size: 2rem;
  }
  header h1 em {position: absolute; top: 0px; left: -30px; width: 70px; height: 25px; background: url(../img/tachon.png) top center no-repeat; background-size: cover; font-style: normal;}
  header h2 {font-size: 1rem; width: 80vw; }
  footer {height: 160vh;}
  footer p {color: #fff; font-weight: 300; font-size: 1rem; margin: 0px; line-height: 250%;}
  footer p strong {font-size: 2.5rem;}
  footer p a {font-size: 2rem; display: block;}
  footer form {padding: 20px 0;}
  footer form p {font-size: 1rem; font-weight: 300; margin-bottom: 5px;}
  footer form button.btn {clear: both; padding-left: 60px; padding-right: 60px;}
  footer form a {color: #d5d5d5; margin-left: 30px; text-decoration: none;}
  footer form a:hover {color: #f5f5f5; text-decoration: none;}
  ul.nav {display: block; margin-right: 15px;}
  #nosotros h3 {margin-bottom: 30px; font-size: 2rem;}
  .studiogenesis p {text-align: center;}
  .footer-redes {
    float: none;
    display: block;
    margin: auto;
    text-align: center;
    margin-top: 10px;
  }
  footer form input.form-control {margin-left: 0px; margin-right: 0px;}
  .studiogenesis p span {
    padding-right: 5px;
}
}


@media (min-width: 768px) and (max-width: 991px) { 
div.logo {padding-left: 0px;}
  .header-redes {text-align: right; color: #fff; font-size: 18px; padding: 20px 0px 0 0;}
  .header-redes a {color: #fff; margin-left: 15px; opacity: 0.6; transition: all .3s ease-in-out;}
  .header-redes a:hover {opacity: 1; transition: all .3s ease-in-out;}
  .telefono {display: block; text-align: right; margin-left: 0px;}
  header h1 {
      margin-top: 30vh;
      font-size: 3rem;
  }
  header h1 em {position: absolute; top: 0px; left: -30px; width: 90px; height: 35px; background: url(../img/tachon.png) top center no-repeat; background-size: cover; font-style: normal;}
  header h2 {font-size: 1.6rem; width: 80vw; }
  footer p {color: #fff; font-weight: 300; font-size: 1rem; margin: 0px; line-height: 250%;}
  footer p strong {font-size: 2.5rem;}
  footer p a {font-size: 2rem; display: block;}
  footer form {padding: 20px 0;}
  footer form p {font-size: 1rem; font-weight: 300; margin-bottom: 5px;}
  footer form button.btn {clear: both; padding-left: 60px; padding-right: 60px;}
  footer form a {color: #d5d5d5; margin-left: 30px; text-decoration: none;}
  footer form a:hover {color: #f5f5f5; text-decoration: none;}
  ul.nav {display: block; margin-right: 15px;}
  #nosotros h3 {margin-bottom: 30px; font-size: 2rem;}
  #nosotros h4 {font-size: 1.2rem;}
  .studiogenesis p {text-align: center;}
  .footer-redes {
    float: none;
    display: block;
    margin: auto;
    text-align: center;
    margin-top: 10px;
  }
  footer form input.form-control {margin-left: 0px; margin-right: 0px;}
}


@media (min-width: 992px) and (max-width: 1199px) { 
  #nosotros h4 {font-size: 1.2rem;}
}


@media (min-width: 1200px) { ... }













/* gris #586572 */
/* rojo #c42226 */
/* font-family: 'Fjalla One', sans-serif; */

