/*** FUENTES ***/

@font-face {

    font-family: 'NT Bau Mono';

    src: url('../fonts/NTBauMono-Regular.woff2') format('woff2'),

        url('../fonts/NTBauMono-Regular.woff') format('woff');

    font-weight: normal;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Bold.woff2') format('woff2'),

        url('../fonts/NTNeuss-Bold.woff') format('woff');

    font-weight: bold;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Regular.woff2') format('woff2'),

        url('../fonts/NTNeuss-Regular.woff') format('woff');

    font-weight: normal;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Medium.woff2') format('woff2'),

        url('../fonts/NTNeuss-Medium.woff') format('woff');

    font-weight: 500;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Light.woff2') format('woff2'),

        url('../fonts/NTNeuss-Light.woff') format('woff');

    font-weight: 300;

    font-style: normal;

    font-display: swap;

}

/*** contenidos comunes *****/

/*** RESET ***/

h1,

h2,

h3,

h4,

h5,

h6,

p,

ul,

ol,

figure {

  padding: 0;

  margin: 0;

  color: #000;

}

* {

  -moz-box-sizing: border-box;

  -webkit-box-sizing: border-box;

  box-sizing: border-box;

}

*:focus,

a:focus {

  outline: none;

}

ul,

li {

  list-style: none;

}

a,

button {

  text-decoration: none;

  -webkit-transition: all 0.5s ease;

  -moz-transition: all 0.5s ease;

  -ms-transition: all 0.5s ease;

  -o-transition: all 0.5s ease;

  transition: all 0.5s ease;

}



img {		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;}

a:hover {

  text-decoration: none;

}

/**** FONTS ****/





@font-face {

    font-family: 'NT Bau Mono';

    src: url('../fonts/NTBauMono-Regular.woff2') format('woff2'),

        url('../fonts/NTBauMono-Regular.woff') format('woff');

    font-weight: normal;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Bold.woff2') format('woff2'),

        url('../fonts/NTNeuss-Bold.woff') format('woff');

    font-weight: bold;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Regular.woff2') format('woff2'),

        url('../fonts/NTNeuss-Regular.woff') format('woff');

    font-weight: normal;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('../fonts/NTNeuss-Medium.woff2') format('woff2'),

        url('../fonts/NTNeuss-Medium.woff') format('woff');

    font-weight: 500;

    font-style: normal;

    font-display: swap;

}



@font-face {

    font-family: 'NT Neuss';

    src: url('NTNeuss-Light.woff2') format('woff2'),

        url('NTNeuss-Light.woff') format('woff');

    font-weight: 300;

    font-style: normal;

    font-display: swap;

}



/**** MIXINS LESS CLASES *****/

@media (min-width: 1024px) {

  .grid {

    display: grid;

    gap: 30px;

    margin-bottom: 20px;

  }

  .grid.gap-0 {

    gap: 0px;

    margin-bottom: 0px;

  }

  .grid.col-1 {

    grid-template-columns: 1fr;

  }

  .grid.col-2 {

    grid-template-columns: 1fr 1fr;

  }

  .grid.col-50-rest {

    grid-template-columns: 50px 1fr;

  }

  .grid.col-3 {

    grid-template-columns: 1fr 1fr 1fr;

  }

  .grid.col-4 {

    grid-template-columns: 1fr 1fr 1fr 1fr;

  }

  .grid.col-4-team {

    grid-template-columns: 1fr 1fr 1fr 1fr ; gap:0px!important

  }

  .grid.col-1-2-2-2 {

    grid-template-columns: 1fr 2fr 2fr 2fr;

  }

  .grid.col-1-2-2 {

    grid-template-columns: 1fr 2fr 2fr; gap:12px!important

  }

  .grid.col-5 {

    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;

  }

  .grid.col-6 {

    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;

  }

  .grid.col-8 {

    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;

  }

  .grid.col-1-2-1 {

    grid-template-columns: 1fr 2fr 1fr;

  }

  .grid.col-11-1-1 {

    grid-template-columns: 11fr 1fr 1fr; gap:10px!important; margin-bottom: 0px!important

  }

  .grid.col-2-1-1 {

    grid-template-columns: 2fr 1fr 1fr;

  }

  .grid.col-3-1 {

    grid-template-columns: 3fr 300px;

  }

  .grid.col-1-3 {

    grid-template-columns: 2fr 3fr;

    gap: 100px;

  }

  .grid.col-2-3 {

    grid-template-columns: 2fr 3fr;

    gap: 30px;

  }

  .grid.col-1-1 {

    grid-template-columns: 1fr 1fr;

    gap: 100px;

  }

  .grid.col-3-4 {

    grid-template-columns: 3fr 4fr;

    gap: 20px;

  }

  .grid.col-3-1 {

    grid-template-columns: 3fr 1fr;

    gap: 20px;

  }

  .grid.col-4-2 {

    grid-template-columns: 4fr 2fr;

    gap: 20px;

  }

  .grid.col-11-9 {

    grid-template-columns: 11fr 9fr;

    gap: 20px;

  }

	.long45 {width:45%;}

	.long80 {width:80%;}

	.wrapperImg p{ padding:12px 0!important}

  .grid .column {

    display: block;

  }

  .grid .column.flex-col-vert {

    display: flex;

    flex-direction: column;

  }

}

@media (min-width: 1360px) {

  

}

@media (max-width: 1023px) {

  .grid.invert {

    display: flex;

    flex-direction: column-reverse;

  }

  .grid.col-4 {

    display: grid;

    gap: 30px;

    margin-bottom: 20px;

    grid-template-columns: 1fr 1fr 1fr 1fr;

  }

	

  .grid.col-8 {

    display: grid;

    gap: 30px;

    grid-template-columns: 1fr 1fr 1fr 1fr;

  }

}

/***** CONTENIDOS COMUNES ******/

body.open {

  overflow: hidden !Important;

}

html {

  width: 100%;

  height: 100%;

}

body {

  width: 100%;

  height: 100%;

  margin: 0;

  color: #000;

    font-family: 'NT Neuss'; font-weight: normal 

}



/* paragraph*/

p { font-weight: 500; font-size: 18px; line-height: 28px}



#main {

  display: block;

  height: auto;

  width: 100%;

  overflow-x: hidden;

  padding-top: 0;

}
#main.pdbot500 {
  padding-bottom: 400px;
}

.wrapperMin {

  max-width: 850px; width: 100%;

  display: block;

  margin: 0 auto;

  padding: 0px 20px ;

}

.wrapperMed {

  width: 110%; 

  display: block;

  margin: 0 auto;

  }

.wrapperMax {

  width: 145%; 

  display: block;

  margin: 0 auto; position: relative

  }

.wrapperUltra {

  width: 130%;  

  display: block;

  margin: 0 auto; position: relative

  }

.wrapperMin img {max-width:100%; margin-bottom: 8px;}
.proyectpage .wrapperMin img {max-width:100%; margin-bottom: 8px; max-height: 700px;}
.doble { padding: 100px 20px}

.wrapperImg {padding: 60px 0!important}

.mini { max-width: 1000px}

.medium { max-width: 1200px}



.center {text-align:center!important}

.txtRight {text-align:right!important}

.paddingTB120 { padding: 120px 0}

.paddingTB100 { padding: 100px 0}

.paddingTB180 { padding: 180px 0}

.paddingTB60 { padding: 60px 0}

.paddingTB80 { padding: 80px 0}

.paddingT80 { padding-top: 80px}

.paddingB80 { padding-bottom: 80px}

.paddingB300 { padding-bottom: 300px}

.padTopG {padding-top:260px!important; padding-bottom: 40px}

.padTopM {padding-top:160px!important; padding-bottom: 40px}

.txtUnd {text-decoration: underline}





@media (max-width: 1690px) {

  

}

@media (max-width: 1023px) {

  #main {

    padding-top: 0;

  }

}

/********** WP FORMS PLUGIN CUSTOMIZE ******/

.wpforms-container .wpforms-field-label {display: block;

    font-weight: 400!important;

    font-style: normal;

    word-break: break-word;

    word-wrap: break-word;

    position: absolute;

    top: 17px;

    background: #fff;}





.form-custom {

  display: block;

  max-width: 700px;

}

/***** inputs custom ***/

.wpforms-container {

  display: block!important;

  padding: 0 0 10px 0!important;

  position: relative!important;

}

.wpforms-container .wpforms-field {padding:15px 0 0 0!important}

.wpforms-container input[type="text"] {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif!important;

  color: #111111!important;

  font-size: 16px!important;

  line-height: 30px!important;

  font-weight: 400!important;

  display: block!important;

  width: 100%!important;

  border: none!important;

  border-bottom: solid 1px #000 !important;

  background: #ffffff!important;

  text-indent: 160px!important;

  padding: 0 20px 0 0!important; border-radius: 0!important; height: 20px!important

}

.wpforms-container input[type="text"]:focus {

  background: #fff!important;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

}

.wpforms-container input[type="tel"] {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif!important;

  color: #111111!important;

  font-size: 16px!important;

  line-height: 30px!important;

  font-weight: 400!important;

  display: block!important;

  width: 100%!important;

  border: none!important;

  border-bottom: solid 1px #000!important;

  background: #ffffff!important;

  text-indent: 85px!important;

  padding: 0 20px 0 0!important; border-radius: 0!important

}

.wpforms-container input[type="tel"]:focus {

  background: #fff!important;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

}

.wpforms-container input[type="password"] {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  color: #111111;

  font-size: 16px;

  line-height: 30px;

  font-weight: 400;

  display: block;

  width: 100%;

  border: none;

  border-bottom: solid 1px #000;

  background: #ffffff;

  text-indent: 125px;

  padding: 0 20px 0 0;

}

.wpforms-container input[type="password"]:focus {

  background: #fff;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0);

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0);

}

.wpforms-container input[type="email"] {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif!important;

  color: #111111!important;

  font-size: 16px!important;

  line-height: 30px!important;

  font-weight: 400!important;

  display: block!important;

  width: 100%!important;

  border: none!important;

  border-bottom: solid 1px #000!important;

  background: #ffffff!important;

  text-indent: 70px!important;

  padding: 0 20px 0 0!important; border-radius: 0!important; height: 20px!important

}

.wpforms-container input[type="email"]:focus {

  background: #fff!important;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

}

.wpforms-container input[type="number"] {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif!important;

  color: #111111!important;

  font-size: 16px!important;

  line-height: 30px!important;

  font-weight: 400!important;

  display: block!important;

  width: 100%!important;

  border: none!important;

  border-bottom: solid 1px #000!important;

  background: #ffffff!important;

  text-indent: 95px!important;

  padding: 0 20px 0 0!important; border-radius: 0!important; height: 20px!important

}

.wpforms-container input[type="number"]:focus {

  background: #fff!important;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

}

.wpforms-container input[type="checkbox"] {

  margin-right: 10px;

}

.wpforms-container input[type="radio"] {

  margin-right: 10px;

}

.wpforms-container select {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  color: #111111;

  font-size: 16px;

  line-height: 30px;

  font-weight: 400;

  display: block;

  width: 100%;

  border: none;

  border-bottom: solid 1px #000;

  background: #ffffff;

  text-indent: 125px;

  padding: 0 20px 0 0;

  height: 40px;

}

.wpforms-container select:focus {

  background: #fff;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0);

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0);

}

.wpforms-container textarea {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif!important;

  color: #111111!important;

  font-size: 16px!important;

  line-height: 30px!important;

  font-weight: 400!important;

  display: block!important;

  width: 100%!important;

  border: none!important;

  border-bottom: solid 1px #000!important;

  background: #ffffff!important;

  padding: 35px 20px 0 0!important;

  height: 180px!important;

  resize: none!important;

  padding: 10px 0 0 0!important;

  text-indent: 0!important;

  line-height: 20px!important; border-radius: 0!important

}

.wpforms-field-textarea label {top:0px!important}

.wpforms-container textarea:focus {

  background: #fff!important;

  -webkit-box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

  box-shadow: 0px 20px 40px 0px rgba(79, 35, 35, 0)!important;

}

.wpforms-field-textarea {

  margin-top: 18px!important;

}

.wpforms-container-textarea .wpforms-container-label {

  top: -30px;

}

.wpforms-submit {width: auto !important;

    color: #000 !important;

    border: none !important;

    padding: 8px 0px 8px 20px !important;

    border-radius: 0 !important;

    cursor: pointer !important;

    margin: 10px 0 0 0 !important;

    background-color: transparent !important;

    background: url(../img/portfolio/planos/flecha.jpg) center left no-repeat !important;

    background-size: 15px 13px !important;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;

    box-shadow: none!important;

}

.wpforms-submit:hover {

    padding: 8px 0px 8px 26px !important;

    background-color: transparent !important;}

.wpforms-error {

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  font-size: 12px;

  color: #333;

}

.wpforms-container-label {

  display: block;

  position: absolute;

  left: 0;

  top: 0;

  z-index: 2;

  width: 115px;

  background: #fff;

  font-size: 20px;

  text-transform: uppercase;

  line-height: 31px;

  font-weight: 400;

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  color: #000;

  padding: 0;

}

.wpforms-container-layout-preset-33-33-33 {

  display: grid;

  gap: 20px;

  grid-template-columns: 1fr 1fr 1fr;

}

.wpforms-container-layout-preset-50-50 {

  display: grid;

  gap: 20px;

  grid-template-columns: 1fr 1fr;

}

.wpforms-container ul {

  margin-bottom: 0;

  padding: 0 0 0 0;

  list-style: none;

}

.wpforms-container ul li {

  list-style: none;

  margin-bottom: 14px;

  font-size: 16px;

  line-height: 22px;

  color: #000;

}

.wpforms-container ul li::before {

  display: none;

}

/**** HOME ***/

.HeadInterna {

  display: flex;

  justify-content: center;

  width: 100%;

  height: 100vh;

  position: relative; overflow: hidden; align-items: center; margin-bottom: 12px

}

.HeadInterna img{ height: 100%}



.homeBody {background-size: cover; width: 100%; height: 100%!important; justify-content: center; display: flex !important; align-items: center;}

.homeBody h1 {color:#fff; font-size:150px; text-align: center; text-transform: uppercase}

.homeBody img {max-width:2000px; width: 70%;}

.page-template-front-page .footer {display:none!important}



.page-template-portfolio .portfolio:after { opacity: 1!important; transform: scale(1,1)!important}

.page-template-portfolio-interna .portfolio:after { opacity: 1!important; transform: scale(1,1)!important}

.page-template-compania .compania:after { opacity: 1!important; transform: scale(1,1)!important}

.page-template-research .research:after { opacity: 1!important; transform: scale(1,1)!important}

.page-template-contacto .contacto:after { opacity: 1!important; transform: scale(1,1)!important}



.page-template-contacto {background:#000; color: #fff!important}

.page-template-contacto p{color: #fff!important}
.page-template-contacto p a{color: #fff!important}

.page-template-contacto h1 .internas{color: #fff!important}

.page-template-contacto .footer  {display:none!important}



.footContact {position: absolute; bottom:27px}



.topPad {padding-top:90px!important}

.imgFull {width:100%}

.posRel {position:relative!important; overflow: hidden}

.posRel .imgFull {
  display: block;
  margin: 0;
}

.titPort { padding: 30px 0}

.portfolioGrid  {margin-bottom:140px}

.portfolioGrid a {overflow:hidden; display: block; color: #000; position: relative}

.portfolioGrid .posRel {margin-bottom:50px}

.hoverPort {background: rgba(255,255,255,0.9); position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 9;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease; opacity: 0}

.hoverPort span {color:#000!important; font-size: 200px; line-height: 190px; font-weight: 500; position: absolute; opacity: 0;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;}

.txtTop {top:8px; left: 14px; }

.txtBot {bottom:0px;left: 14px; }

.hoverPort:hover {opacity:1}

.hoverPort:hover span{opacity:1}

.portfolioGrid a:hover img.imgFull {transform:scale(1.04)}

.portfolioGrid p {padding-top:12px}



.listUnidades {width:100%; position: relative; float: left; border-bottom: 1px solid #000; padding: 30px 0px; display: grid;

  gap: 20px;

  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 2fr;-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;}

.listUnidades li{display:inline-block; text-align: center; }

.listUnidades a {border:#000 1px solid; padding: 6px 8px; text-transform: uppercase; color: #000; margin: 13px 3px 0 3px;; font-size: 14px; display: inline-block}

.listUnidades a:hover {color: #fff; background: #000}

.listUnidades p {font-size:16px}



.modalPlano {position:absolute; top: 0px; left: 0px; width: 100%; z-index: 9;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;opacity: 0; transform: scale(0); background: #fff}

.modalPlano img{width: 44%; position: relative; float: left}

.planoSpecs {width: 50%; position: relative; float: left}

.planoSpecs h1{font-size:40px; margin-bottom: 30px; font-weight: 500}

.planoSpecs h2{font-size:30px; margin-bottom: 20px; font-weight: 500}

.planoSpecs p{font-size:20px; margin-bottom: 60px; padding-right: 40%; font-weight: 400;}

.planoSpecs ul{width: 100%; padding-right: 10%; position: relative; float: left}

.planoSpecs ul li{display:inline-block; font-size: 20px; width: 20%; text-align: right}

.planoSpecs ul li.supList{display:inline-block; font-size: 20px; width: 43%; text-align: left}

.planoSpecs ul.totalList{font-weight: 900; margin-top: 30px}



.modalResearch {position:absolute; top: 0px; left: 0px; width: 100%; z-index: 9;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;opacity: 0; transform: scale(0);overflow: visible!important}

.modalResearch img{width: 50%; margin-top: 130px; position: relative; float: left }



.modalComprar {position:absolute; top: 0px; left: 0px; width: 100%; z-index: 9;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;opacity: 0; transform: scale(0)}

.modalComprar img{width: 100%;}

.modalComprar h2{ font-size: 33px; font-weight: 400; margin-bottom: 30px}

.wpforms-form{    width: 54%!important;  float: right!important;  margin-right: 22%!important;}



span.cerrarPlano { right: -30px;  top: 0px; position: absolute; background: url('../img/portfolio/planos/cruz.jpg') center center no-repeat; width: 30px; height: 30px;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease; cursor: pointer; opacity: 0; background-size: cover}

span.cerrarPlano:hover {transform:rotate(260deg)}



span.cerrarModal { left: 50%; margin-left: -250px; top: 0px; position: absolute; background: url('../img/research/volver.png') center center no-repeat; width: 300px; height: 59px;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease; cursor: pointer; opacity: 0; background-size: cover; text-indent: -9999px}

span.cerrarModal:hover {transform:translateX(-10px)}



.mostrarCerrar {opacity:1!important; height: 23px}

.mostrarPlano { opacity: 1!important;transform: scale(1)}

.ocultarListas {opacity:0}



.legales {font-size:11px; line-height: 14px; position: relative; float: left; margin-top: 60px;}



.teamFace p {font-size:13px; line-height: 16px; padding: 10px 8px 12px 8px; font-weight: 500}



.titGig {font-size:120px; line-height: 100px; font-weight: 500}



.resPdf {

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease; border-bottom: #000 1px solid; padding: 8px 8px 6px 0; display: grid; align-items: center}

.resPdf:hover { background: #ececec}
.resPdf p {
  font-size: 16px;
}
.resPdf h3 {
  font-weight: 500;
}


.btnOjo {background: url('../img/research/btnOjo.png') center center no-repeat; height: 30px; background-size: contain; width: 100%;cursor: pointer; text-indent: -9999px; display: block ;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;}

.btnOjo:hover {background: url('../img/research/btnOjoA.png') center center no-repeat; height: 30px; background-size: contain; width: 100%; }

.btnPdf  {background: url('../img/research/btnPdf.png') center center no-repeat; height: 26px; background-size: contain; width: 100%;cursor: pointer; text-indent: -9999px; display: block ;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;}



.top .slide {

  width: 100%;

}

.top .logo {

  position: relative;

  z-index: 3; margin: 120px 0 170px 0; width: 100%; float: left; text-align: center

}

.top .logo img {

  max-width: 100%; 

}

.internas top:after {display:none!important}

.top:after {

  content: ' ';

  position: absolute;

  width: 100%;

  height: 100%;

  background: rgba(0, 0, 0, 0.2);

}

.diapo {

  background: #000;

  width: 95%;

  margin: -40px auto 120px;

  position: relative;

  z-index: 2;

  padding: 200px 20px;

  text-align: center;

}

.diapo h1 {

  font-family: 'BigCaslonFB-Regular', sans-serif;

  color: #fff;

  font-weight: 400;

  font-size: 70px;

  margin: 0 0 50px 0;

}

.diapo h1 .it {

  font-family: 'BigCaslon-ItalicSwash', serif;

}

.diapo p {

  color: #fff;

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  font-size: 20px;

  text-transform: uppercase;

  margin: 0;

  padding: 0;

  font-weight: 400;

}

.contact {

  padding: 50px 0;

  margin-bottom: 150px;

}

.contact .info h2 {

  font-family: 'BigCaslonFB-Regular', sans-serif;

  color: #000;

  font-size: 40px;

  line-height: 120%;

  margin: 0 0 20px 0;

  font-weight: 400;

}

.contact .info h2 span {

  font-family: 'BigCaslon-ItalicSwash', serif;

}

.contact .info p {

  color: #000;

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  font-size: 20px;

  text-transform: uppercase;

  margin: 0;

  padding: 0;

  font-weight: 400;

}

.contact .info p a {

  color: #000;

}

.contact .info p a:hover {

  text-decoration: underline;

}

.sponsors {

  display: flex;

  align-items: flex-start;

  justify-content: space-between;

}

.sponsors .item {

  text-align: center;

}

.sponsors .item p {

  color: #000;

  font-family: 'HelveticaNowDisplay-Medium', sans-serif;

  font-size: 12px;

  text-transform: uppercase;

  margin: 40px 0 30px 0;

  padding: 0;

  font-weight: 400;

}

.top-m {

  display: none;

}

@media (max-width: 800px) {

  .top {

    display: none;

  }

  .top-m {

    display: block;

  }

  .top-m .logo {

    display: flex;

    align-items: center;

    justify-content: center;

    background: #fff;

    padding: 20px 10px;

  }

  .top-m .logo img {

    max-width: 100%;

  }

  .top-m .bg {

    display: block;

  }

  .top-m .bg img {

    display: block;

    width: 100%;

  }

  .diapo {

    width: 100%;

    margin: 0 0 40px 0;

    padding: 80px 20px;

  }

  .diapo h1 {

    font-size: 40px;

  }

  .diapo h1 .bm {

    display: block;

  }

  .diapo p {

    font-size: 14px;

  }

  .contact .info {

    margin-bottom: 60px;

  }

  .contact .info h2 {

    font-size: 25px;

  }

  .contact .info p {

    font-size: 14px;

  }

  .sponsors {

    display: block;

    padding-bottom: 40px;

  }

  .sponsors .item p {

    margin: 40px 0 15px 0;

  }

}



.textoHead {    width: 100%;  position: absolute;  float: left; display: flex; justify-content: center; align-items: center; height: 100%; text-align: center; z-index: 9}

.textoHead img{ margin-bottom:200px}

.textoHead h1 {color:#fff!important; font-size: 50px; text-align: center; font-weight: 300}

.textoHead h2 {color:#fff!important; font-size: 26px; text-align: center; margin-top: 30px; text-transform: uppercase;font-family: 'HelveticaNowDisplay-Medium'; font-weight: 300}



header {width: 100%;display: block; position: fixed; top:0px;left: 0px;	-webkit-transition: all 0.6s ease;-moz-transition: all 0.6s ease;	-ms-transition: all 0.6s ease;	-o-transition: all 0.6s ease;	transition: all 0.6s ease;  z-index: 9999; height: 0px }

.home.page-template-front-page header .logo-header {
  display: none;
}



.portfolioTop {background: url('../img/headPortfolio.jpg') center center no-repeat; margin-bottom: 0px!important}

.companiaTop {background: url('../img/fondo7.jpg') center center no-repeat; margin-bottom: 0px!important}

.researchTop {background: url('../img/galeria5.jpg') center center no-repeat; margin-bottom: 0px!important}

.contactoTop {background: url('../img/galeria8.jpg') center center no-repeat; margin-bottom: 0px!important}





.close { display:none !important}

	.hamburger {

		position:absolute;

		top:-7px;

		margin:0;

		cursor:pointer;

		z-index:9999;

		display:block;

		right: 50px;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease; background:transparent; padding: 14px; border-radius: 2px;

	}





	.hamburger .hamburger-inner {

		position:relative;

		display:block;

		margin:0;

		padding:0;

	}

	.hamburger h1 {font-weight: 400; font-size: 22px; position: absolute; top: 0px; right: 0px;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;}

	.hamburger h1.menuMenu {color:#fff; opacity: 1}

	.hamburger h1.menuCerrar {color:#fff; opacity:0}

    .hamburger.open .menuCerrar {opacity: 1}

    .hamburger.open .menuMenu {opacity: 0}





.layoutN .logoInterntas{ display:none!important}

.layoutN .logoBlack{ display:block!important}

.layoutN .hamblack .logoBlack{ display:none!important}

.layoutN .menuMenu{ color:#000!important}

.hamblack .menuMenu{ color:#fff!important}



	.hamburger .bar {

		width:37px;

		height:4px;

		position:absolute;

		top:0;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;background: url('../img/hamburger.svg') center center no-repeat;

	}

	.contactoPage .hamburger .bar {

		width:37px;

		height:4px;

		position:absolute;

		top:0;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;background: url('../img/hamburgerB.svg') center center no-repeat;

	}



	.hamBlack .hamburger .bar {

		width:37px;

		height:4px;

		position:absolute;

		top:0;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;background: url('../img/hamburger.svg') center center no-repeat!important;

	}



	.stk .hamburger .bar {

		background: #fff;

	}



	.hamburger .bar.bar2, .hamburger .bar.bar3 {

		top:9px;

		transform: matrix(0.99999, 0, 0, 0.99999, 0, 0);

	}

	.hamburger .bar.bar4 {

		top:18px

	}

	.hamburger.open .bar1, .hamburger.open .bar4 {

		opacity: 0; background:#fff!important;

	}

	.hamburger.open .bar2 {

		height:4px;

		transform: matrix(0.7071, 0.7071, -0.7071, 0.7071, 0, 0);background:#fff!important

	}

	.hamburger.open .bar3 {

		height:4px;

		transform: matrix(0.7071, -0.7071, 0.7071, 0.7071, 0, 0);background:#fff!important

	}

	.menu-nav {

	    display: block;

	    float: none;

	    margin: 0;

	    position: fixed;

	    top: 0px; height: 0;

	    right: 0px; left: 0px; width:100%;   z-index: 9;

	    overflow: hidden; opacity: 0; visibility: hidden;

	    -webkit-transition: all 0.5s ease;

		-moz-transition: all 0.5s ease;

		-ms-transition: all 0.5s ease;

		-o-transition: all 0.5s ease;

		transition: all 0.5s ease; 

	}



	.menu-nav.open {   opacity: 1; visibility: visible; height: 100%}

	.menu-nav .menu {background: #000;    position: absolute; top: 0px; left: 0;

      margin-right: -100%; width: 100%; 

	    -webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease; padding: 20% 0; display: flex; align-items: center; justify-content: center;}



	.menu-nav.open .menu{ margin-right: 0px}

	.menu-nav .menu li {

	    display: block;

	    margin: 0px 0; text-align: center; padding-right: 0px; position: relative; float: left

	}

.menu-nav .menu li a {

	color: #fff;  text-align: center;

	padding:0px 22px;

	display: inline-block;

	vertical-align: middle;

	-webkit-transform: translateZ(0);

	transform: translateZ(0);

	-webkit-backface-visibility: hidden;

	backface-visibility: hidden;

	-moz-osx-font-smoothing: grayscale;

	position: relative;

	font-size: 58px;

	font-weight: 500; cursor:pointer;

	-webkit-transition: all 0.3s ease;

	-moz-transition: all 0.3s ease;

	-ms-transition: all 0.3s ease;

	-o-transition: all 0.3s ease;

	transition: all 0.3s ease; 

}

.menu-nav .menu li a:after {height:3px; background: #fff; content: ''; display: block; width: 100%; opacity: 0; -webkit-transition: all 0.3s ease;

	-moz-transition: all 0.3s ease;

	-ms-transition: all 0.3s ease;

	-o-transition: all 0.3s ease;

	transition: all 0.3s ease; transform: scale(0,0) } 

.menu-nav .menu li a:hover:after {transform:scale(1, 1); opacity: 1} 

.menu-nav .menu li a span {position: absolute; top: 11px; font-size: 18px; left: 0px;}



.footer {margin: 0 auto ;  width: 100%; max-width: 1600px; padding:140px 12px 20px 12px; position: relative }

.footer a {color:#000!important; }

.top {margin-bottom:50px}

.footer .grid {gap:80px; margin-bottom:80px }

.hamblack { background: #000; height: 40px!important}





.marNeg { margin-top: -40px; z-index: 9}



h1 em {font-family: 'BigCaslon-ItalicSwash';}

h2 em {font-family: 'BigCaslon-ItalicSwash';}

h3 em {font-family: 'BigCaslon-ItalicSwash';}

h4 em {font-family: 'BigCaslon-ItalicSwash';}



.logoInternas {position:fixed; top:10px; left: 50%; width: 120px;

	-webkit-transition: all 0.3s ease;

	-moz-transition: all 0.3s ease;

	-ms-transition: all 0.3s ease;

	-o-transition: all 0.3s ease;

	transition: all 0.3s ease; margin-left: -60px}

.homepage .logoInternas {opacity:0; margin-top: -200px}

.stik .homepage .logoInternas {opacity:1; margin-top: 0}

.stik .logoInternas {}





.logoBlack {position:fixed; top:10px; left: 50%; width: 120px;

	-webkit-transition: all 0.3s ease;

	-moz-transition: all 0.3s ease;

	-ms-transition: all 0.3s ease;

	-o-transition: all 0.3s ease;

	transition: all 0.3s ease; margin-left: -60px; display: none}

.stik .logoBlack {}

.stik .hamburger {top:-7px}

.menu img {position:absolute; width: 120px; top: 10px; left: 50%; margin-left: -60px}



.no-pad {padding:0px!important; margin-bottom: 30px}



.main {width:100%; position: relative; float: left; padding: 12px;}



.swiper-wrapper {height:auto!important}

.swiper-container { position: relative; width: 100%; padding-bottom: 34px}

.swiper-button-next { right:20px;-webkit-transition: all 0.3s ease;

	-moz-transition: all 0.3s ease;

	-ms-transition: all 0.3s ease;

	-o-transition: all 0.3s ease;

	transition: all 0.3s ease; }

.swiper-button-prev {left: 20px;-webkit-transition: all 0.3s ease;

	-moz-transition: all 0.3s ease;

	-ms-transition: all 0.3s ease;

	-o-transition: all 0.3s ease;

	transition: all 0.3s ease;}

.swiper-button-next:hover {right:30px}

.swiper-button-prev:hover {left:30px}

.swiper-slide img {width:100%; max-width: 100%}

.swiper-container-horizontal>.swiper-pagination-bullets {text-align: center; position: absolute; bottom: 0px!important; z-index: 9}

.swiper-pagination-bullet { background: transparent!important; border:#000 2px solid}

.swiper-pagination-bullet-active { background:#000!important}





.chico {font-size:14px; line-height: 18px}

.margin-top-40 {margin-top:40px}

.margin-bottom-80 {margin-bottom:80px}

.margin-bottom-120 {margin-bottom:120px}

.margin-top-200 {margin-top:200px}





.titPortI {font-size:60px; font-weight: 500; margin-bottom: 20px; line-height: 60px}

.listaItems {display: block; margin-top: 60px}

.listaItems li{display:inline-block; padding-right: 50px}



.menuRes {position:absolute; left: -210px; top: 96px; font-weight: 500}

.menuRes a {color:#000}

.menuRes a:hover {opacity:0.5}
.menuRes li {
  display: flex;
  align-items: center;
  margin-bottom: 2px;
}




.mob {display:none}





@media (max-width: 1180px) {

.wrapperUltra {width:120%}

}

@media (max-width: 1100px) {

.wrapperMed {width:110%}

.wrapperMax {width:110%}

.wrapperUltra {width:110%}

}

@media (max-width: 990px) {

.wrapperMed {width:100%}

.wrapperMax {width:100%}

.wrapperUltra {width:100%}

}



@media (max-width: 800px) {

	

	.listUnidades {grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 2fr; min-width: 118px;border-right: 1px solid #000; border-bottom: 0px;grid-template-columns:1fr; padding: 0px; gap:0px; align-items: center;scroll-snap-align: center;}

	.listUnidades li {border-bottom: 1px solid #000; padding: 10px 0 10px 0}

	.listUnidades li:last-child {border-bottom: 0px}

	.listUnidades a {font-size:12px; padding: 6px 4px}

	

	.modalPlano {top:-50px; left: auto; padding: 0px 0 100px 0; background: #fff}

	.modalComprar {top:-50px; left: auto; background: #fff;  padding: 0px 0 100px 0;}

	.modalPlano .cerrarModal {top:auto!important; bottom:30px!important}

	.modalComprar .cerrarModal {top:auto!important; bottom:30px!important}

	

	#main {overflow:visible}

	

.modalPlano img{width: 100%;}

	

.planoSpecs {width: 100%; position: relative; float: left}

.planoSpecs h1{font-size:60px; margin-bottom: 10px; font-weight: 500; margin-top: 20px}

.planoSpecs h2{font-size:40px; margin-bottom: 20px; font-weight: 500}

.planoSpecs p{font-size:20px; margin-bottom: 40px; padding-right: 0%}

.planoSpecs ul{width: 100%; padding-right: 0%; position: relative; float: left}

.planoSpecs ul li{display:inline-block; font-size: 20px!important; width: 30%; text-align: right}

.planoSpecs ul li.supList{display:inline-block; width: 60%; text-align: left}

.planoSpecs ul.totalList{font-weight: 900; margin-top: 20px; margin-bottom: 30px}

	

	.modalComprar h2 { font-size:25px}

	.wpforms-form {width:100%!important; margin-right: 0!important}

	

	.listaItems li {padding-right: 30px; margin-bottom: 20px}

	

	.xscroll {overflow-x: scroll;

    display: flex;

    overscroll-behavior: contain;

    scroll-snap-type: x proximity;}

	

		

	.mob {display:block}

	.desk {display:none!important}

	

	.hamburger {right:0px}



	.hamburger .bar {

			width:37px;

		height:4px;

		position:absolute;

		top:0;

		-webkit-transition: all 0.3s ease;

		-moz-transition: all 0.3s ease;

		-ms-transition: all 0.3s ease;

		-o-transition: all 0.3s ease;

		transition: all 0.3s ease;background: url('../img/hamburgerB.svg') center center no-repeat;

	}

.footer .grid div{ margin-bottom: 30px}

	h2 {font-size:21px}

h4 {font-size:26px}

	

	

.wrapperMin { padding: 0px 0px ;}

	

	.menu-nav .menu {display:block; text-align: center; padding: 32% 0}

	.menu-nav .menu li  {float:none!important}

	.menu-nav .menu li a {font-size:50px;}

	

	.titGig {font-size:55px; line-height: 55px; margin-top: 80px}

	.menu img {left:10px; margin-left: 0; top: 14px}

	.logoBlack {left:10px; margin-left: 0; top: 14px}

	.logoInternas {left:10px; margin-left: 0; top: 14px}

	.portfolioGrid .posRel {margin-bottom:30px}

	.portfolioGrid {margin-bottom:80px}

	

	.hoverPort span {font-size:100px; line-height: 100px}	

	.HeadInterna { height: 58vh; margin-top: 180px; margin-bottom: 0px}	

	

.logoInterntas{ display:none!important}

.logoBlack{ display:block!important}

.homepage .logoBlack{ display:none!important}

.hamblack .logoBlack{ display:none!important}

.menuMenu{ color:#000!important}

	.homepage .menuMenu {color:#fff!important}

	.menuRes {    position: relative;

    left: 0;

    top: 0;

    float: left;

    font-weight: 600;

    width: 100%;

    margin-bottom: 50px;}

	

	.paddingTB180 {padding: 30px 0}

	.paddingTB120 {padding: 30px 0}

	.padTopG {padding-top:100px!important}

	.padTopM {padding-top:100px!important}

	.paddingTB60 {padding:30px 0}

	.paddingB80 {padding-bottom: 20px}

	.paddingTB80 {padding:40px 0}

	

	.modalResearch img {width:100%; margin: 60px 0 0 0!important}

	span.cerrarModal {width:154px; height: 30px; left: 0px; margin-left: 0px}

	

	.page-template-contacto header {height:115px; background: #fff; }

	.page-template-contacto header.hamblack {background:#000!important; }

	.page-template-contacto .internas h1 {font-size:40px!important; line-height: 40px!important; margin-top: 75px!important}

	.page-template-contacto p.paddingT80 {font-size:40px!important; line-height: 56px!important}

	.page-template-contacto .footer {display:block!important; color:#fff!important}

	.footContact {display:none}

	

.page-template-front-page .footer {display:block!important}

  .grid.col-8 {

    display: grid;

    gap: 30px;

    grid-template-columns: 1fr 1fr;

  }

	.footer .grid {display:block; position: relative; float: left; width: 100%}

	.footer .grid div { margin-bottom: 30px;  width: 50%; position: relative; float: left;}	

	.footDir {width:100%!important}

	

  .grid.col-11-1-1 { grid-template-columns: 4fr 1fr 1fr; gap:10px!important; margin-bottom: 0px!important }

}



@media (max-width: 480px) {.listUnidades li p{font-size:14px; line-height: 18px}

}

.flechi {
  background: url('../img/flecha.svg') center center no-repeat;
  width: 30px;
  height: 20px;
  display: inline-block;
  background-size: 30px;
  margin-right: 5px;
}
.contact-page a {
  color: #fff;
}