@font-face {
  font-family: 'marselis_probold';
  src: url('marselispro-bold-webfont.woff2') format('woff2'), url('marselispro-bold-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
:root {
  --f_titulos2: "marselis_probold", system-ui;
  --f_titulos1:"Roboto Slab", serif;
  --f_menus:"Roboto Slab", serif;
  --f_textos: "Lato", sans-serif;
  --c1: #006F4D;
  --c2: #B0DF73;
  --c3:#AAC381;
  --c4: #595B60;
  --c5: #DDD;
  --c6: #333;
  --c7:#AAA;
  --c_fondo: #F3F5F0;
  --color_borde_inputs: var(--c2);
  color: #AAC381;
  --ck_verde_oscuro: #006F4D;
  --ck_verde_claro1: #B0DF73;
  --ck_verde_claro2: #AAC381;
  /*varios*/
  --ancho_cabecera:1350px;
  --max_ancho_contenido:1180px;
  --max_ancho_contenido2:1350px;
  --max_ancho_texto:1080px;
  --max_ancho_texto2:850px;
  --b_radius:3px;
  /*+placement: ;*/
  position: relative;
  left: 0;
  top: 0;
}
*, *:before, *:after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0 auto;
  font-family:var(--f_textos);
  font-weight: 400;
  font-size: 100%;
  font-style: normal;
  /*overflow-x: hidden;*/
  height: 100%;
  min-height: 100%;
  color:var(--c4);
  background: #FFF;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
main {
  min-height: 380px;
}
main.mContenedor {
  padding: 0;
  margin-top: 20vw;
}
.bAvisos main.mContenedor {
  margin-top: 150px;
}
.bInicio main.mContenedor {
  padding-bottom: 0;
}
b, strong {
  font-weight: 500;
}
.cont_body {
  background: #FFF;
  max-width: 1184px;
  margin: 0 auto;
  padding: 10px;
  padding-bottom: 40px;
}
button, input, optgroup, select, textarea {
  font-family: inherit;
  font-weight: 300;
  border-radius:var(--b_radius);
}
figure {
  margin: 0px;
}
h1, h2, h3, h4, h5 {
  font-weight: 400;
  font-family:var(--f_titulos2);
  /*text-transform: uppercase;*/
  margin: 0;
  color:var(--c3);
}
h1 {
  font-size: 1.875rem;
}
h2 {
  font-size: 1.6rem;
  line-height: 1.8rem;
  margin: auto;
  color:var(--c1);
  text-align: center;
  max-width:var(--max_ancho_contenido);
}
h3 {
  color:var(--c1);
  line-height: 1.2;
  font-size: 1.5rem;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 25px;
}
button {
  cursor: pointer;
  border: none;
}
button[type=submit]:disabled {
  cursor: default;
  pointer-events: none;
  opacity: 0.5;
}
p {
  display: block;
  margin: 0 0 1rem 0;
  line-height: 1.3;
}
p.sin_articulos {
  width: 100%;
  text-align: center;
  margin: 8rem 0;
}
ul {
  list-style-type: none;
  padding: 0;
}
a {
  text-decoration: none;
  color: inherit;
}
a, article, li {
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
}
#cargando {
  display: none;
  position: fixed;
  z-index: 999999999;
  top: 10px;
  width: 100%;
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
  left: 0;
  right: 0;
}
/*#cargando .pelota {
  border: 3px solid;
  border-color:var(--c2) var(--c6);
  background: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  box-shadow:0 0 15px var(--c1);
  width: 40px;
  height: 40px;
  margin: 0 30px 0 auto;
  z-index: -1;
  animation: loop 1.5s infinite linear;
  (*background: rgba(188, 9, 38, 0.663);*)
  background:var(--c1);
}*/
#cargando .pelota {
  border-radius: 50%;
  position: relative;
  width: 80px;
  height: 80px;
  margin: 0 30px 0 auto;
  z-index: 10;
  animation: inout 2s infinite linear;
  /*animation: loop 3.5s infinite linear;*/
  background: url(/imgs/logo.svg) 0 0 / 100% auto no-repeat #FFF;
  box-shadow: 0 0 15px #000;
}
#cargando p {
  position: relative;
  top: calc(-0.675rem + -30px);
  font-size: 0.675rem;
  font-weight: 400;
  color: #FFF;
}
@keyframes loop {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes inout {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.6);
  }
  100% {
    transform: scale(1);
  }
}
.botonera button, .btn {
  border: none;
  background-color:var(--c1);
  color: #FFF;
  padding: 12px 30px;
  border-radius: var(--b_radius);
  display: inline-block;
  cursor: pointer;
  line-height: 1rem;
  font-size: 115%;
  letter-spacing: 0.5px;
  text-decoration: none !important;
}
.btn_cerrar {
  background-color: #AAA;
}
.botonera button.BtnAtras, .btn.BtnAtras {
  background: #CCC;
  color: #000;
}
.msg {
  border-radius: var(--b_radius);
  border: 1px solid #12A112;
  padding: 5px 7px 5px 10px;
  text-transform: uppercase;
  color: #12A112;
  background-color: #E1FBDC;
  display: none;
  text-align: center !important;
  font-size: 0.8rem;
  margin-bottom: 10px;
}
.msg.ver {
  display: block;
}
.msg a {
  text-decoration: underline;
}
.msg.error {
  color: #C00;
  border-color: #C00;
  background-color: #FFCFCF;
}
.msg.info {
  color: #000;
  border-color: #AAA;
  background-color: transparent;
}
.desactivado {
  opacity: 0.5;
  pointer-events: none;
}
/*.cont_max, main {
  position: relative;
  padding: 20px 10px 10px;
}*/
.ilightbox {
  cursor: pointer;
}
.cVideoInicio {
  max-width:var(--max_ancho_texto2);
  margin: 0 20px;
}
.cVideoInicio iframe {
  height: 47.6vw;
}
.videoEmbed {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.videoEmbed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.videoEmbed video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.tabs .tab {
  height: 0;
  transform: scale(0);
  opacity: 0;
  transition: opacity 0.5s linear;
}
.tabs .tab.sel {
  height: auto;
  opacity: 1;
  transform: scale(1);
}
.max_w0 {
  max-width:var(--ancho_cabecera);
  margin: 0 auto;
}
.max_w {
  /*max-width:var(--max_ancho_contenido);*/
  max-width:var(--ancho_cabecera);
  margin: 0 auto;
}
.max_w2 {
  max-width:var(--max_ancho_contenido2);
  margin: 0 auto;
}
/*max con borde en movil*/
.max_wb {
  margin: 0 15px;
}
@media (min-width: 1200px) {
  .max_wb {
    max-width:var(--max_ancho_contenido);
    margin: 0 auto;
    padding: 0;
  }
}
.max_wb3 {
  margin: 0 20px;
}
@media (min-width: 1020px) {
  .max_wb3 {
    max-width:var(--max_ancho_texto);
    margin: 0 auto;
  }
}
/*cabecera*/
.pHeader {
  text-align: left;
  padding: 0;
  align-items: center;
  position: relative;
  top: 0;
  width: 100%;
  z-index: 2;
  height: 20vw;
  background:var(--c3);
}
.pHeader {
  position: fixed;
}
body:not(.bInicio) .pHeader {
  /*position: relative;*/
  /*margin-top: 0px;*/
  /*top: 0;*/
}
.pHeader .msg_header {
  width: 100%;
  color: #FFF;
  text-align: center;
  background:var(--c2);
  font-family:var(--f_menus);
  text-transform: uppercase;
  font-size: 0.7rem;
  padding: 5px 0 8px;
}
.pHeader .msg_header small {
  text-transform: none;
  font-size: 0.55rem;
}
.pHeader .msg_header strong {
  font-weight: 600;
}
.pHeader > nav {
  text-align: left;
  /*padding: 0 10px 20px;*/
  display: flex;
  align-items: center;
  position: relative;
  font-family:var(--f_menus);
  text-transform: uppercase;
}
#logo {
  background: url(/imgs/plantafarm.svg) 100% / contain no-repeat;
  text-indent: -1000000px !important;
  width: 34vw;
  height: 9.8vw;
  overflow: hidden;
  display: block;
  flex: 1;
  position: absolute;
  left: 20px;
  top: 20px;
  z-index: 1;
}
#logo a {
  width: 100%;
  height: 100%;
  display: block;
  color: #006F4D;
}
@media (min-width: 480px) {
  #logo {
    width: 165px;
    height: 48px;
  }
  .pHeader {
    height: 90px;
  }
  main.mContenedor {
    padding: 0;
    margin-top: 90px;
  }
  #botonMenu {
    top: 34px !important;
  }
}
.pHeader .desconectar {
  position: absolute;
  bottom: 10px;
  right: 0px;
  text-align: right;
  font-weight: 400;
  font-size: 0.875rem;
  width: 300px;
}
.pHeader .desconectar a {
  font-weight: normal;
  text-align: right;
  white-space: nowrap;
  background: url(/imgs/logout.svg) 100% 50% / auto 15px no-repeat;
  color:var(--c2);
  padding: 5px 20px 5px 5px;
}
.pHeader .desconectar img {
  width: 15px;
}
.pHeader .carrito {
  width: 30px;
  height: 30px;
  position: relative;
  display: block;
  margin-left: 15px;
  z-index: 1;
  margin-top: 3px;
}
.pHeader .carrito:before {
  background:url(/imgs/carro_blanco_45deg.svg) 50% / auto 80% no-repeat var(--c2);
  content: " ";
  width: 28px;
  height: 28px;
  display: block;
  transform: rotate(-45deg);
  position: relative;
  z-index: -1;
}
.pHeader .carrito:after {
  content: " ";
  width: 26px;
  height: 26px;
  display: block;
  position: absolute;
  z-index: 71;
  background: url(/imgs/carro_blanco.svg) 50% / auto 60% no-repeat #C00CCC;
}
.pHeader .carrito:after {
  position: absolute;
  content: attr(data-n);
  top: -5px;
  right: -5px;
  font-size: 0.7rem;
  background: #000;
  color: #FFF;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  display: flex;
  padding: 0 0 2px 0;
  justify-content: center;
  align-items: center;
}
.pHeader .w_header {
  display: flex;
  margin-top: 55px;
  justify-content: end;
}
.pHeader .usuario_carrito {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  /*text-transform: uppercase;*/
  font-family:var(--f_menus);
  font-size: 0.8rem;
  position: relative;
  margin: 0 15px 0 5vw;
}
/*BUSCADOR*/
#f_buscador {
  display: none;
}
#f_buscador .txt {
  margin-right: 5px;
  color: #666;
  display: none;
  cursor: pointer;
}
#f_buscador label {
  width: 20px;
  height: 20px;
  display: inline-block;
  background: url(/imgs/lupa.svg) 0 0 / 100%;
  cursor: pointer;
}
#f_buscador.buscando {
  position: absolute;
  top: 112px;
  right: 20px;
  left: 20px;
  margin: 0;
  background: #FFF;
  z-index: 999;
  border:1px solid var(--c2);
  border-radius:var(--b_radius);
  display: flex;
  align-items: center;
  justify-content: center;
}
#f_buscador.buscando label {
  background: none;
  cursor: pointer;
  height: 100%;
  flex: 1;
}
#f_buscador.buscando input {
  display: block;
  font-size: 0.75rem;
  width: 100%;
  padding: 5px 10px;
  border: none;
  outline: none;
  height: 100%;
  text-align: center;
  font-size: 1.7rem;
  color:var(--c3);
}
#f_buscador.buscando .cerrar {
  display: block;
  font-size: 1.4rem;
  text-align: center;
  flex: 0 0 40px;
  cursor: pointer;
}
/**/
.pHeader .finalizar {
  display: none;
}
/*MENU IDIOMAS*/
#menu_idiomas {
  padding: 0 0 30px 25px;
}
#menu_idiomas img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  margin-bottom: 8px;
}
#menu_idiomas a {
  display: inline-block;
  text-transform: uppercase;
  margin-right: 20px;
}
@media (min-width: 550px) {
  #menu_idiomas nav > * {
    flex: 1 calc(100% / 6);
  }
}
/*Menú hamburguesa*/
#botonMenu {
  width: 35px;
  height: 18px;
  cursor: pointer;
  border:2px solid var(--c1);
  border-width: 2px 0;
  display: inline-block;
  position: absolute;
  right: 20px;
  top: 7vw;
}
#botonMenu::before {
  display: block;
  height: 2px;
  content: ' ';
  margin-top: 6px;
  background:var(--c1);
}
#menu {
  color:var(--c2);
  display: none;
  font-weight: 300;
  /*position: relative;*/
}
#menu li {
  position: relative;
}
#menu li ul {
  display: none;
}
#menu > .cerrar {
  position: absolute;
  top: 25px;
  right: 17px;
  width: 30px;
  height: 30px;
  line-height: 28px;
  border:1px solid var(--c1);
  color:var(--c1);
  border-radius: 15px;
  text-align: center;
  font-size: 20px;
  cursor: pointer;
  display: inline-block;
}
body.ham {
  overflow-y: hidden;
}
#apagon {
  display: none;
}
.ham .apagon {
  opacity: 0.4;
  background: #000;
  display: block;
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 2;
}
.ham #menu {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  bottom: 0;
  color: #FFF;
  z-index: 999999;
  padding: 50px 0 20px;
  box-shadow: 0 0 17px #000;
  width: 300px;
  overflow-y: scroll;
  animation: menuIn 0.6s;
  background-color:var(--c3);
}
.ham #menu .btn {
  background:var(--c1);
  color: #FFF;
  border-radius: 30px;
  margin: 25px 0 0 29px;
}
.ham #menu:before {
  background: url(/imgs/plantafarm.svg) 8px 20px / auto 40px no-repeat;
  content: " ";
  width: 200px;
  height: 85px;
  display: block;
  top: 0;
  left: 17px;
  position: absolute;
}
.ham #cerrarMenu {
  display: block;
  position: absolute;
  right: 10px;
  top: 5px;
  font-size: 40px;
  cursor: pointer;
}
@keyframes menuIn {
  from {
    left: -300px;
  }
  to {
    left: 0;
  }
}
.ham #menu > ul {
  margin-top: 50px;
}
.ham #menu .familias {
  margin: 20px 0 0;
  padding: 10px 0 20px;
  display: block;
  background: rgba(0, 0, 0, 0.1);
}
.ham #menu .familia {
}
.ham #menu .familia > a {
  padding: 5px 20px 10px 0;
  font-weight:medium;
  display: block;
  white-space: nowrap;
}
.ham #menu .subfamilias {
  display: block;
  padding: 0 0 10px 0;
}
.ham #menu .subfamilia a {
  font-size: 80%;
  border-bottom: none;
  display: block;
  padding: 10px 20px 10px 0px;
}
.ham #menu > ul > li {
  padding: 15px 0 15px 15px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
.ham #menu > ul > li > ul {
  display: block;
  margin-top: 15px;
}
.ham #menu > ul > li > ul > li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  padding-left: 5px;
  opacity: 0.8;
  margin-right: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.ham #menu > ul > li > ul > li:last-of-type {
  border-bottom: none;
}
.ham #menu > ul > li > ul > li > a {
  color:var(--c1);
}
#menu > ul > li > a {
  text-transform: uppercase;
  border-radius:var(--b_radius);
  font-family:var(--f_menus);
  color:var(--c1);
}
.ham #menu > ul > li:last-of-type {
  border-bottom: none;
}
#menu li {
  font-size: 1rem;
  margin: 0 10px;
}
#menu #familias h2 {
  background: #F9660A;
  padding: 5px 15px 5px 5px;
  text-align: left;
  margin-top: 20px;
  font-size: 1rem;
}
#menu #familias img {
  margin-right: 10px;
  vertical-align: top;
}
#menu #familias li {
  padding: 10px;
  font-size: 0.812rem;
}
body > header .info {
  display: none;
  text-align: right;
  font-family: 'Futured', sans-serif;
}
body > header .info .tel {
  font-size: 1.5rem;
  display: block;
  color: #F9660A;
}
body > header .info .mail {
  font-size: 0.7rem;
  display: block;
  text-transform: uppercase;
}
@media screen and (min-width: 540px) {
  .pHeader .desconectar {
    position: absolute;
    bottom: 10px;
    right: 0px;
    text-align: right;
    font-weight: 400;
    font-size: 0.875rem;
  }
  .pHeader .desconectar a {
    display: block;
  }
  /*.pHeader .w_header {
    margin-top: 70px;
  }*/
  /*#botonMenu {
    top: 37px;
  }*/
  /*.pHeader .usuario_carrito {
    position: absolute;
    top: 29px;
    right: 55px;
  }*/
  /*#logo {
    width: 236px;
    height: 62px;
    overflow: hidden;
    display: block;
    flex: 1;
    position: absolute;
    left: 0;
    top: 16px;
    z-index: 1;
  }*/
}
/*MIGAS*/
#MenuMigas {
  display: none;
  /*background:var(--c2);*/
  padding: 10px;
  font-size: 0.8rem;
}
.bServicios #MenuMigas, .bNosotros #MenuMigas {
  display: none;
}
#MenuMigas .w_migas {
  display: flex;
  justify-content: space-between;
}
#MenuMigas a {
  text-decoration: underline;
}
#MenuMigas .btn_buscador {
  background: url(/imgs/lupa.svg) 100% 50% / auto 100% no-repeat;
  height: 100%;
  padding-right: 1.5em;
  color: inherit;
}
@media (max-width: 550px) {
  #MenuMigas .btn_buscador span {
    display: none;
  }
}
/*Contenidos web*/
#bContacto #mContacto {
  max-width: 850px;
}
.mContenidosWeb {
  /*max-width: 800px;*/
}
.mContenidosWeb .img_principal {
  margin-bottom: 20px;
}
.mContenidosWeb .img_principal img {
  max-width: 100%;
  display: block;
}
.mContenidosWeb h1 {
  margin: 0 0px 25px;
}
/*contenido_html*/
.contenido_html {
  font-size: 1.1rem;
  line-height: 1.5;
  max-width:var(--max_ancho_texto2);
}
.bAvisos .contenido_html, .bDescargas .contenido_html {
  font-size: 1rem;
}
.contenido_html p {
  margin: 0 0 20px;
  line-height: 1.4;
  text-align: justify;
}
.mBlogArticulo .cont_articulo .contenido_html p {
  font-size: 1rem;
  text-align: left;
}
body.bDescargas .contenido_html p, body.bAvisos .contenido_html p, body.bAvisos .contenido_html h2, body.bAvisos .contenido_html h3 {
  text-align: left;
}
.ContenedorColumnas {
  background: url(/imgs/bg_cuadros.jpg) 50% 50% / cover #25283B;
  text-align: center;
  color: #FFF;
  font-size: 0.90rem;
  font-weight: 300;
  padding: 30px;
  margin: 0;
}
.ContenedorColumnas h2 {
  color: #FFF;
  font-size: 1.8rem;
  margin-bottom: 30px;
}
.ContenedorColumnasDiv {
  width: 100%;
  margin: 0;
  display: block;
}
.ContenedorColumnas div {
  margin: 0 auto 40px;
  max-width: 300px;
}
.ContenedorColumnas div img {
  display: block;
  margin: 0 auto 10px;
}
.ContenedorColumnas div strong {
  font-size: 1.4rem;
  display: block;
  margin: 0 0 15px 0;
}
@media screen and (min-width: 640px) {
  .ContenedorColumnas div.ContenedorColumnasDiv {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    align-content: space-between;
    width: 100%;
    max-width:var(--max_ancho_contenido);
    justify-content: space-between;
  }
  .ContenedorColumnas div {
    margin: 0 0 40px 0;
    max-width: none;
    width: 47%;
  }
  .pFooter div {
    /*display: flex;*/
    max-width:var(--max_ancho_contenido);
    /*align-items: flex-start;*/
  }
  .pFooter div#cPartners {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    text-align: left;
  }
  .pFooter div#cPartners div {
    padding: 20px 0;
    justify-content: flex-start;
    align-items: center;
    text-align: left;
    max-width: 340px;
  }
  .pFooter div#cPartners span {
    display: block;
    width: 100%;
    text-align: left;
  }
}
.contenido_html p:last-child {
  margin-bottom: 0;
}
.contenido_html h2 {
  margin: 0px 0 10px;
  line-height: 1.2;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 2px;
  color:var(--c3);
  text-align: center;
  font-family:var(--f_titulos1);
  max-width:var(--max_ancho_texto2);
}
.bInicio .contenido_html h2 {
  text-align: center;
  color:var(--c1);
  font-size: 6.3vw;
  line-height: 1.1;
  font-weight: 400;
  font-family:var(--f_titulos2);
  margin: 20px 0 15px;
  text-transform: uppercase;
  max-width:var(--max_ancho_texto2);
}
.bInicio .contenido_html h2 span {
  /*white-space: nowrap;*/
}
.bInicio .cPresentacion .contenido_html h2 {
  margin-bottom: 30px;
  margin-top: 40px;
}
.bInicio .contenido_html h3 {
  text-align: center;
  font-size: 6.5vw;
  line-height: 1.3;
}
@media (min-width: 480px) {
  .bInicio .contenido_html h2 {
    font-size: 2rem;
    margin-top: 60px;
  }
  .bInicio .contenido_html h3 {
    font-size: 2.6rem;
  }
}
.bServicios .contenido_html h2 {
  text-align: left;
  color:var(--c4);
  font-size: 1.3rem;
  line-height: 1.2;
  margin: 10px auto 30px;
}
.contenido_html strong {
  font-weight: 700;
  color:var(--c4);
}
.contenido_html img {
  max-width: 100%;
  height: auto !important;
  margin: 30px 0;
}
.contenido_html blockquote {
  margin-left: 15px;
}
.contenido_html ul {
  padding: 10px 40px;
  list-style-type: square;
  line-height: 2em;
}
.contenido_html .videoEmbed {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.contenido_html .videoEmbed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.contenido_html table {
  border: none;
  border-collapse: collapse;
  text-align: initial;
}
.contenido_html tr:nth-child(odd) {
  background: #EEE;
}
.contenido_html tr:first-of-type {
  font-size: 1rem;
  font-weight: 500;
  background: #000;
  color: #FFF;
}
.contenido_html td {
  border: none;
  padding: 6px 10px;
}
.contenido_html a[href] {
  text-decoration: underline;
  color:var(--c1);
}
.contenido_html a[href]:hover {
  color:var(--c2);
}
.contenido_html .compartir {
  margin-top: 50px;
}
.contenido_html .compartir a {
  margin: 0 20px 0 0;
  display: inline-block;
}
.contenido_html .compartir img {
  width: 40px;
  margin: 10px 0 0;
}
.contenedor section {
  position: relative;
  padding-top: 40px;
  padding-bottom: 20px;
}
body:not(.bInicio) .contenedor section:nth-child(even) {
  background:var(--c_fondo);
  padding-top: 40px;
  padding-bottom: 20px;
}
body:not(.bInicio) .contenedor section:nth-child(even).cTimeline {
  background: no-repeat;
}
body:not(.bInicio) .contenedor section:last-of-type {
  padding-bottom: 80px !important;
}
ul#submenu {
  background: #E9E9E9;
  position: absolute;
  top: -119px;
  left: 0;
  z-index: 1;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
}
#menuvolver {
  background: #E9E9E9;
  top: 0;
  margin-bottom: 60px;
  left: 0;
  z-index: 1;
  width: 100%;
}
ul#submenu li a, #menuvolver a {
  text-transform: uppercase;
  text-align: center;
  margin: 20px 10px;
  display: inline-block;
  font-size: 0.9rem;
  text-align: center;
}
ul#submenu li a:hover, #menuvolver a:hover {
  font-weight: bold;
}
ul#submenu li a.sel {
  font-weight: bold;
}
.bInicio .cPresentacion {
  padding-bottom: 60px;
  padding-top: 10px;
  margin: 0 auto;
  max-width:var(--max_ancho_contenido);
}
.bInicio .cPresentacion .contenido_html p {
  text-align: justify;
}
.bInicio .cServicios {
  padding: 0;
}
.bInicio .cServicios .contenido_html {
  padding: 20px !important;
}
.bInicio .cServicios h2 {
  /*visibility: hidden;*/
  font-size: 5.8vw;
  text-shadow: 0 0 15px #FFF;
  padding: 25px 11px 10px;
  margin: 30px 0 0;
}
.bInicio .cServicios ul {
  list-style-type: none;
  text-align: center;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
  line-height: 1.2;
  justify-content: center;
}
.bInicio .cServicios ul li {
  display: block;
  height: 100%;
  /*box-shadow: 0 0 15px rgba(255, 255, 255, 0.7);*/
  padding: 0;
  text-decoration: none;
  color:var(--c3);
  font-size: 0.8rem;
  width: 31%;
  max-width: 350px;
  margin: 0 auto 20px;
}
.bInicio .cServicios ul li:first-of-type {
  margin-left: 0;
}
.bInicio .cServicios ul li:last-of-type {
  margin-right: 0;
}
.bInicio .cServicios ul li:hover a {
  /*background:var(--c1);*/
  color:var(--c4);
}
.bInicio .cServicios ul li h3 a {
  font-size: 5vw;
  padding: 0;
  margin: 0;
  text-decoration: none;
  color:var(--c3);
}
.bInicio .cServicios ul li p a {
  color:var(--c3);
  text-decoration: none;
}
.bInicio .cServicios ul li p {
  line-height: 1.4 !important;
  text-align: left !important;
}
.bInicio .cServicios ul li h3 {
  padding: 0;
  margin: 0 0 5px 0;
}
.bInicio .cServicios ul li img {
  /*-webkit-filter: grayscale(100%);*/
  /* Safari 6.0 - 9.0 */
  /*filter: grayscale(100%);*/
  margin: 0 0 10px 0;
}
@media (min-width: 460px) {
  .bInicio .cServicios ul li a {
    font-size:1.1 rem;
    line-height: 1.3;
  }
  .bInicio .cServicios ul li h3 a {
    font-size: 1.3rem;
  }
}
.id-seccion {
  scroll-margin-top: 120px;
}
/*.bInicio .cServicios ul li a:hover img {
  -webkit-filter: none;
}*/
.bServicios .enumServicios {
  text-align: center;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
  justify-content: center;
  max-width: 800px;
  margin: 60px auto 30px;
}
.bServicios .enumServicios article {
  width: 28%;
  margin: 0 2.5% 30px;
  padding: 7px 7px 10px 7px;
  border-radius: 200px;
  max-width: 190px;
}
.bServicios .enumServicios article:hover {
  background:var(--c1);
}
.bServicios .enumServicios article:hover h2, .bServicios .enumServicios article:hover h2:after {
  color: #FFF;
}
.bServicios .enumServicios article img {
  border-radius: 200px;
  width: 100%;
}
.bServicios .enumServicios article h2 {
  display: block;
  height: 100%;
  /*box-shadow: 0 0 15px rgba(255, 255, 255, 0.7);*/
  border-radius: 200px;
  text-decoration: none;
  color:var(--c6);
  font-size: 3.4vw;
  line-height: 1.4;
  margin-top: 7px;
  margin: 7px 0 0;
}
.bServicios .enumServicios article h2 span {
  white-space: nowrap;
}
.bServicios .enumServicios article h2:after {
  content: '+';
  display: block;
  font-size: 6vw;
  color:var(--c1);
  margin-top: -5px;
}
.bServicios .enumServicios article .btn {
  display: none;
}
@media (min-width: 460px) {
  .bServicios .enumServicios article h2 {
    font-size: 1.1rem;
    line-height: 1.4;
  }
  .bServicios .enumServicios article h2:after {
    font-size: 3rem;
  }
}
#cImgCat, #cImgPag {
  position: relative;
  display: block;
  z-index: 1;
  margin-bottom: 30px;
}
.bAvisos #cImgPag {
  margin-top: -40px;
  margin-bottom: 40px;
}
.bContacto #cImgPag {
  margin-top: 87px;
}
#cImgCat span, #cImgPag span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*opacity: 0.29;*/
  z-index: 0;
  background-size: cover;
}
/*#cImgCat span:after, #cImgPag span:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0.4;
  background: url(../imgs/ico_cort.svg) bottom right / 280px no-repeat;
}*/
#cImgCat h1, #cImgPag h1 {
  color: #FFF;
  margin: 0 auto;
  max-width:var(--ancho_cabecera);
  text-align: right;
  position: relative;
  font-weight: 300;
  z-index: 1;
  /*text-indent: 999999px;*/
  visibility: hidden;
  overflow: hidden;
  padding: 15vw 15px 10px 0;
}
.bServicios .bloque_texto .contenido_html p {
  text-align: left;
  margin: 0 0 20px 0;
}
.bServicio #cBServicios img {
  border-radius: 50%;
  width: 60%;
  max-width: 250px;
  margin: 0 0 30px 0;
  position: sticky;
  top: 10px;
}
.bServicio #cBServicios {
  text-align: center;
}
@media (min-width: 640px) {
  .mServicio {
    display: flex;
    flex-direction: row;
    width: 100%;
  }
  #DescServicio {
    flex: 1 1 70%;
  }
  .bServicio #cBServicios {
    order: 1;
    padding: 20px 0 0;
    flex: 1 1 30%;
  }
  .bServicio #cBServicios img {
    width: 85%;
  }
}
#map-inicio {
  height: 350px;
  width: 100%;
}
@media (min-width: 768px) {
  #map-inicio {
    height: 400px;
  }
}
/*Contacto*/
#mContacto h1 {
  margin-bottom: 40px;
}
#mContacto input:not([type=checkbox]), #mContacto textarea {
  display: block;
  margin: 5px 0 20px;
  padding: 4px 5px 2px;
  width: 90%;
  font-size: 0.9rem;
}
#mContacto textarea {
  height: 8rem;
}
#mContacto .btn {
  margin: 20px 0;
}
#mContacto address {
  line-height: 1.5rem;
  font-style: normal;
}
#mContacto .msg {
  margin: 20px 0;
}
#mContacto iframe {
  width: 100%;
  max-width: 1180px;
  margin-bottom: 40px;
}
#mContacto ul {
  list-style-type: initial;
  padding-left: 20px;
  margin-bottom: 40px;
}
#mContacto li {
  margin-bottom: 20px;
}
#mContacto form {
  margin-bottom: 40px;
}
#mContacto a {
  text-decoration: underline;
}
#mContacto #detalle {
  /*bots*/
  display: none;
}
/*MODAL*/
body.modal_ver {
  overflow: hidden;
  padding-right: 17px;
}
body.modal_ver #modal {
  transform: scale(1);
  z-index: 9999;
  pointer-events: auto;
  background: rgba(0, 0, 0, 0.5);
}
body.modal_ver #modal .cont_contenido {
  transform: scale(1);
  transition: all 0.3s linear;
}
body.modal_ver .cont_body {
  filter: blur(1px);
}
/*MODALES*/
.modal.ver {
  transform: scale(1);
  z-index: 9999;
  pointer-events: auto;
  background: rgba(0, 0, 0, 0.5);
}
.modal {
  position: fixed;
  background: none;
  z-index: -1;
  transform: scale(0);
  pointer-events: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  overflow: auto;
  text-align: center;
  transition: background 0.3s linear;
}
.modal .cont_contenido {
  position: relative;
  transform: scale(0);
  transform-origin: top center;
  /*transform-origin: top;*/
  top: 5px;
  width: 400px;
  max-width: calc(100% - 20px);
  border-radius: var(--b_radius);
  font-size: 0.875rem;
  background: #FFF;
  padding: 20px 15px;
  color: #000;
  text-align: left;
  display: inline-block;
}
.modal.ver .cont_contenido {
  transform: scale(1);
  transition: all 0.3s ease-in-out;
}
.modal .cerrar {
  position: absolute;
  top: 10px;
  right: 10px;
  font-weight: 700;
  font-size: 2rem;
  cursor: pointer;
  line-height: 0.5;
  z-index: 999999;
}
body.body_modal .cont_body {
  /*filter: blur(1px);*/
}
body.body_modal {
  overflow: hidden;
  padding-right: 17px;
}
.modal header {
  text-align: center;
  margin-bottom: 20px;
  font-size: 1.6rem;
  color:var(--c2);
  font-family:var(--f_menus);
}
/*MSG modal*/
#modal_msg .botonera {
  text-align: center;
  margin-top: 20px;
}
#modal_msg .botonera .btn_cerrar {
  font-size: 1.3em;
  padding: 9px 30px 10px;
}
/*MODAL REGISTRO*/
.acceso_registro {
  padding: 20px 0px 0px;
  font-size: 0.875rem;
}
.acceso_registro a {
  /*text-decoration: underline;*/
  color:var(--c2);
  cursor: pointer;
}
.acceso_registro .olvido {
  color:var(--c2);
  cursor: pointer;
}
.acceso_registro h2 {
  text-align: center;
  margin-bottom: 20px;
  font-size: 2rem;
  color:var(--c2);
  font-family:var(--f_titulos2);
}
.acceso_registro label {
  margin-bottom: 20px;
  display: block;
}
.acceso_registro input {
  width: 100%;
  border:1px solid var(--c2);
  border-radius: var(--b_radius);
  padding: 8px 10px;
  font-size: 0.9rem;
  margin-top: 2px;
  color:var(--c3);
}
.acceso_registro input + small {
  text-align: right;
  display: block;
  margin-top: 5px;
}
.acceso_registro .botonera {
  text-align: center;
  margin: 40px 0 30px;
}
.acceso_registro .btn {
  font-size: 1.2rem;
  min-width: 200px;
}
.acceso_registro .codigo {
  display: none;
}
.acceso_registro .codigo.ver {
  display: block;
  border:5px solid var(--c1);
  padding: 20px 20px 15px;
  border-radius: var(--b_radius);
}
.acceso_registro .codigo small {
  display: block;
  margin-top: 5px;
}
.acceso_registro .codigo .reenviar {
  text-align: right;
  margin-top: 10px;
}
.acceso_registro .codigo .reenviar .btn {
  font-size: 80%;
  padding: 3px 20px;
  width: auto;
}
.acceso_registro .yatienes {
  text-align: center;
}
.acceso_registro .yatienes a {
  font-weight: 500;
  letter-spacing: 0.5px;
}
.acceso_registro .acepto_terminos {
  font-size: 80%;
  text-align: center;
}
.acceso_registro #cambio_password .passwords {
  display: none;
}
/*FINALIZAR: TELEFONO*/
#telefono_modal {
  padding: 20px 50px 0px;
  font-size: 0.875rem;
  color:var(--c4);
}
#telefono_modal label {
  margin-bottom: 20px;
  display: block;
}
#telefono_modal input {
  width: 100%;
  border:1px solid var(--c1);
  border-radius: var(--b_radius);
  padding: 8px 10px;
  font-size: 1.1rem;
  margin-top: 3px;
  color:var(--c3);
  text-align: center;
  letter-spacing: 2px;
}
#telefono_modal input + small {
  text-align: right;
  display: block;
  margin-top: 5px;
}
#telefono_modal .botonera {
  text-align: center;
  margin: 40px 0 30px;
}
#telefono_modal .btn {
  font-size: 1.2rem;
  width: 200px;
}
#telefono_modal .codigo {
  display: none;
}
#telefono_modal .codigo.ver {
  display: block;
  border: 5px solid var(--c1);
  padding: 20px 20px 15px;
  border-radius: var(--b_radius);
}
#telefono_modal .codigo small {
  display: block;
  margin-top: 5px;
}
#telefono_modal .codigo .reenviar {
  text-align: right;
  margin-top: 7px;
}
#telefono_modal .codigo .reenviar .btn {
  font-size: 80%;
  width: auto;
  background: none;
  color: var(--c2);
  text-decoration: underline;
  margin: 0;
  padding: 0;
}
/*MINI RESUMEN*/
#mini_resumen {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 15px 0;
  text-transform: uppercase;
  background:var(--c1);
  z-index: 1;
  border: none;
  border-top-left-radius: 80px;
  border-top-right-radius: 80px;
  box-shadow: 0px 4px 6px 2px #333;
  font-weight: 400;
  letter-spacing: 1.5px;
}
body.bFinalizar_pedido #mini_resumen {
  display: none;
}
/*PIE*/
.pFooter {
  margin-top: auto;
  background:var(--c1);
  color: #FFF;
  text-align: center;
  padding: 25px 0 0;
}
.pFooter img {
  margin: 0 0 30px 0;
}
.pFooter address {
  font-style: normal;
  font-size: 0.9rem;
  color:var(--c2);
  line-height: 1.5rem;
  text-align: center;
  margin: 0 auto;
  background: #FFF;
  display: block;
  padding: 20px 20px 30px 20px;
}
.pFooter address a {
  display:inline-blockk;
  margin-bottom: 15px;
  white-space: nowrap;
  margin: 0 6px 15px;
}
.pFooter strong {
  width: 100%;
  display: block;
}
.pFooter .nav {
  display: flex;
  flex-wrap: wrap;
  padding: 10px;
  margin: 0 auto 30px;
  border-bottom:1px solid var(--c2);
  line-height: 1.6rem;
  font-size: 0.9rem;
  justify-content: center;
  align-items: center;
  width: 90%;
  /*margin-bottom: 40px;*/
}
.pFooter .nav a {
  white-space: nowrap;
  margin-bottom: 5px;
  color:var(--c2);
  margin: 0 7px 10px;
  flex: 0;
}
.pFooter .nav a.linkedin {
  margin-left: 35px;
  padding-right: 30px;
  color: #FFF;
  position: relative;
  z-index: 13;
}
.pFooter .nav a.linkedin:after {
  background: url(../imgs/linkedin.svg) 6px 5px / 14px no-repeat;
  display: block;
  height: 24px;
  width: 25px;
  background-color:var(--c2);
  position: absolute;
  top: 0;
  right: 0;
  border-radius: 3px;
  content: " ";
  z-index: -17;
}
.pFooter .nav a:hover {
  color:var(--verde);
}
.pFooter .nav > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 20px;
}
.pFooter .nav span img {
  margin-left: 10px;
}
.pFooter #cPartners div {
  display: flex;
  padding: 20px;
  justify-content: center;
}
.pFooter #cPartners div a {
  display: flex;
  margin: 0 3%;
}
.pFooter #cPartners span {
  font-size: 0.8rem;
}
.pFooter #cPartners div a img {
  width: 100%;
  margin: 0;
}
#FinanciadoUE {
  text-align: center;
  color: #000;
  padding: 15px;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}
#FinanciadoUE img {
  width: 100%;
  display: block;
  margin: 15px 0 0;
}
@media (min-width: 1000px) {
  .pFooter .w-nav {
    /*display: flex;*/
    /*justify-content: space-around;*/
    /*align-items: start;*/
    /*margin-bottom: 40px;*/
  }
}
/*Paginador*/
.paginador {
  width: 100%;
  margin: 40px auto;
  display: flex;
  justify-content: center;
}
.paginador a {
  font-size: 1.125rem;
  font-size: 1.025rem;
  background: #DDD;
  width: 34px;
  height: 34px;
  border-radius: 50px;
  margin: 0 5px;
  /*display: inline-block;*/
  /*padding: 7px 2px 7px 1px;*/
  /*text-align: center;*/
  /*vertical-align: text-bottom;*/
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.paginador a[disabled] {
  cursor: none;
  pointer-events: none;
  opacity: 0.5;
}
.paginador a[sel] {
  background:var(--c1);
  color: #FFF;
  cursor: none;
  font-weight: 500;
  pointer-events: none;
}
.paginador a.siguiente {
  /*background: url(/imgs/tri_d.svg) 50% / 12px no-repeat #DDD;*/
  /*text-indent: -1000000px !important;*/
  /*padding: 7px 15px;*/
}
.paginador a.ultima {
  /*background: url(/imgs/tri2_d.svg) 50% / 22px no-repeat #DDD;*/
  /*text-indent: -1000000px !important;*/
  /*padding: 7px 19px;*/
}
.paginador a.anterior {
  /*background: url(/imgs/tri_d.svg) 50% / 12px no-repeat #DDD;*/
  /*text-indent: -1000000px !important;*/
  /*padding: 7px 15px;*/
  /*transform: rotate(180deg);*/
}
.paginador a.primera {
  /*background: url(/imgs/tri2_d.svg) 50% / 22px no-repeat #DDD;*/
  /*text-indent: -1000000px !important;*/
  /*padding: 7px 19px;*/
  /*transform: rotate(180deg);*/
}
@media screen and (max-width: 450px) {
  .paginador a.siguiente, .paginador a.anterior {
    display: none;
  }
}
/*BUSCADOR*/
.mBusqueda h1 {
  text-align: center;
  margin: 20px 0 5px;
  font-family:var(--f_menus);
}
.mBusqueda .res {
  text-align: center;
  margin-bottom: 40px;
}
/*Custom checkbox*/
label.check {
  display: flex;
  text-align: left;
  margin: 0 20px 10px 0;
  justify-content: flex-start;
  --ancho-radio: 20px;
  align-items: center;
}
label.check input {
  display: none;
}
label.check span {
  cursor: pointer;
  position: relative;
  font-size: 0.8rem;
  position: relative;
  display: inline-block;
}
label.check .tick {
  display: inline-flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  flex:0 0 var(--ancho-radio);
  width:var(--ancho-radio);
  height:var(--ancho-radio);
  border:2px solid var(--c1);
  font-size: 1rem;
  border-radius: 50%;
  color: #FFF;
}
label.check .tick:after {
  content: "✓";
}
label.check input:checked + .tick {
  color: #FFF;
  background:var(--c1);
}
/*Custom checkbox*/
.listado_checks label.check {
  display: inline-block;
  text-align: left;
  --ancho-radio: 14px;
  margin: 0;
}
.listado_checks label.check input {
  display: none;
}
.listado_checks label.check span {
  cursor: pointer;
  position: relative;
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  white-space: nowrap;
  font-size: 0.8rem;
}
.listado_checks label.check input:disabled + span {
  display: none;
}
.listado_checks label.check span:hover:before {
  /*box-shadow:0px 0px 2px 0px var(--color_borde_inputs);*/
}
.listado_checks label.check span:before {
  /*content: "✗";*/
  content: "✓";
  display: inline-flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  width:var(--ancho-radio);
  height:var(--ancho-radio);
  /*box-shadow:0px 4px 6px -3px var(--color_borde_inputs);*/
  border-radius: var(--b_radius);
  border:1px solid var(--color_borde_inputs);
  font-size: 1rem;
  color: transparent;
}
.listado_checks label.check input:checked + span:before {
  color:var(--c2);
}
.listado_checks {
  height: 300px;
  min-width: 230px;
  overflow-y: auto;
  border: 1px solid #CCC;
}
.listado_checks .check {
  display: block;
  padding: 10px;
  width: 100%;
  margin-bottom: 0;
  border-bottom: 1px solid #CCC;
}
.listado_checks .check:nth-child(even) {
  background: #FFF;
}
.listado_checks .check.guardada + .check:not(.guardada) {
  border-top: 2px solid #000;
}
.listado_checks .grp > span {
  font-weight: 500;
  padding: 5px;
  font-size: 0.8rem;
  border-bottom: 1px solid #CCC;
  display: block;
}
.listado_checks .grp .check {
  padding-left: 25px;
}
.listado_checks .grp .check:last-child {
  border-bottom: none;
}
.listado_checks .grp:not(:last-of-type) {
  border-bottom: 1px solid #000;
}
/*cookies*/
#AdvertenciaCookies {
  position: fixed;
  font-size: 0.85rem;
  background:var(--c2);
  color: #FFF;
  opacity: 0.95;
  position: fixed;
  bottom: 50px;
  left: 50%;
  width: 450px;
  max-width: 90%;
  transform: translatex(-50%);
  line-height: 18px;
  z-index: 1998;
  border-radius: 10px;
  border:1px solid var(--c2);
  padding: 25px;
  box-shadow: 2px 2px 7px -1px #000;
}
#AdvertenciaCookies a {
  color: inherit;
  text-decoration: underline;
}
#AdvertenciaCookies p {
  margin-bottom: 20px;
}
#AdvertenciaCookies .check .tick {
  background: #FFF;
  color: #FFF;
  border-radius: 0;
  border: none;
}
#AdvertenciaCookies .check.necesarias {
  pointer-events: none;
  opacity: 0.6;
}
#AdvertenciaCookies .check .tick:after {
  background: #FFF;
}
#AdvertenciaCookies .check input:checked + .tick {
  content: "✓";
  color:var(--c2);
  font-weight: 400;
  background: #FFF;
  padding-right: 3px;
  font-size: 1.3rem;
}
#AdvertenciaCookies button {
  padding: 10px 20px;
  text-align: right;
  margin: 0 0 0 auto;
  display: block;
  position: relative;
  z-index: 99;
  background: #FFF;
  color:var(--c2);
}
/*Contacto*/
.mContacto h1 {
  margin: 0 0px 25px;
  width: 100%;
  color:var(--c1);
}
.mContacto input:not([type=checkbox]), .mContacto textarea {
  display: block;
  margin: 2px 0 15px;
  width: 100%;
  border:1px solid var(--c5);
  padding: 5px;
  font-size: 0.9rem;
  border-radius:var(--b_radius);
}
.mContacto textarea {
  height: 100px;
}
.mContacto iframe {
  margin-bottom: 10px;
  margin-top: 50px;
}
.mContacto #fContacto {
  margin-bottom: 40px;
}
.mContacto #fContacto p strong {
  color:var(--c1);
  font-weight: bold;
  display: block;
  font-size: 1.1rem;
  margin-bottom: 10px;
}
.mContacto #fContacto p {
  margin-bottom: 30px;
}
.mContacto #fContacto .responsable {
  font-size: 0.8rem;
  line-height: 1.3rem;
}
.mContacto .check2 {
  display: block;
  margin: 15px 0 30px;
}
.mContacto .check2 input {
  margin-right: 5px;
}
.mContacto .check2 a {
  text-decoration: underline;
}
.mContacto h3 {
  text-align: left;
}
.mContacto button {
  border: none;
  background:var(--c1);
  color: #FFF;
  padding: 10px 0;
  width: 90%;
  max-width: 200px;
  font-weight: 400;
  font-size: 1.2rem;
  letter-spacing: 0.5px;
  border-radius:var(--b_radius);
  background-position: -370px 0px;
  background-size: 700px;
  transition: background 100ms ease-in-out;
}
.mContacto button:hover {
  background:var(--c2);
}
.mContacto address {
  margin: 50px 0;
  font-style: normal;
  font-size: 0.9rem;
}
.mContacto address strong {
  display: inline-block;
  margin-right: 5px;
}
.mContacto address p:not(:first-child) {
  margin: 20px 0 0;
}
.mContacto .msg {
  margin-bottom: 20px;
}
.mContacto .w_contacto.max_wb {
  margin: 60px 0;
}
.mContacto .w_contacto.max_wb h2 {
  margin-bottom: 30px;
  text-align: left;
}
.mContacto .w_contacto .contenido_html p {
  text-align: left;
  font-size: 1rem;
}
.mContacto .w_contacto.max_wb div div {
  margin-bottom: 40px;
}
.mContacto .w_contacto.max_wb iframe {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .mContacto .w_contacto {
    display: flex;
  }
  .mContacto .w_contacto.max_wb {
    padding: 0;
  }
  .mContacto form {
    align-self: flex-start;
    margin-right: 30px;
    flex: 1 0 40%;
  }
}
@media screen and (min-width: 1000px) {
  .mContacto .w_contacto.max_wb {
    padding: 0;
  }
  .mContacto form {
    align-self: flex-start;
    margin-right: 30px;
    flex: 1 0 40%;
  }
  .mContacto .contenido_html {
    flex: 1 0 50%;
    display: flex;
    flex-direction: column;
  }
  .mContacto .contenido_html div {
    flex: 1 0 45%;
  }
  .mContacto .w_contacto.max_wb div div:first-of-type {
    margin-right: 30px;
  }
}
/*BLOG*/
.mBlog .articulos article {
  text-align: center;
  color:var(--c2);
  margin-bottom: 30px;
}
.mBlog .articulos article p {
  margin-bottom: 10px;
  font-weight: 400;
}
.mBlog .articulos article p.resumen {
  font-size: 0.9rem;
  font-weight: 300;
  color: #999;
}
.mBlog .articulos img {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 10px;
}
.mBlog h1 {
  margin-bottom: 20px;
  font-family:var(--f_menus);
  color:var(--c1);
  text-transform: uppercase;
}
.tit_blog_movil {
  margin-bottom: 20px;
  font-size: 2.275rem;
  font-family:var(--f_menus);
  color:var(--c1);
  text-transform: uppercase;
}
.blog .cont_blog {
  margin-top: 90px;
  position: relative;
}
.blog .categorias {
  margin: 40px 0;
  padding: 30px 0 0;
  position: relative;
  text-transform: uppercase;
}
.blog .categorias {
}
.blog .categorias:before {
  content: "";
  position: absolute;
  top: 0;
  left: 10%;
  height: 1px;
  width: 80%;
  border-bottom:1px solid var(--c2);
}
.blog .categorias a.linkedin {
  margin-left: 35px;
  margin-top: 54px;
  display: block;
  padding-right: 36px;
  position: relative;
  z-index: 13;
  font-size: 0.8rem;
}
.blog .categorias a.linkedin:after {
  background: url(../imgs/linkedin.svg) 6px 5px / 14px no-repeat;
  display: block;
  height: 24px;
  width: 25px;
  background-color:var(--c2);
  position: absolute;
  top: -5px;
  right: 0;
  border-radius: 3px;
  content: " ";
  z-index: -17;
}
.blog .categorias li {
  margin-bottom: 23px;
  line-height: 1.1rem;
  font-family:var(--f_menus);
  font-size: 0.9rem;
  font-weight: 400;
}
.blog .categorias [sel], .blog .categorias li a:hover {
  color:var(--c2);
}
/*Blog Articulo*/
.mBlogArticulo h1 {
  margin-bottom: 3px;
}
.mBlogArticulo .fecha {
  margin-bottom: 30px;
  font-size: 80%;
}
.mBlogArticulo figure {
  margin-bottom: 20px;
}
.mBlogArticulo figure img {
  width: 100%;
}
.mBlogArticulo .relacionados {
  margin-top: 60px;
}
.mBlogArticulo .categorias h2, .blog .categorias h1 {
  margin-bottom: 30px;
  font-family:var(--f_menus);
  color:var(--c2);
  text-transform: uppercase;
  text-align: right;
}
.blog .categorias h1, .blog .categorias h2 {
  text-align: left;
}
.mBlogArticulo .galeria {
  display: flex;
  gap: 10px 20px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.mBlogArticulo .galeria figure {
  width: 75px;
  margin: 0;
}
/*CONTENEDORES*/
.bContenedor.no_aside .principal {
  width: 100%;
  margin: 0;
}
.bContenedor h1, .bAvisos h1 {
  padding: 0 20px;
  font-size: 1.5rem;
  line-height: 1.2;
  color:var(--c1);
}
.bAvisos h1 {
  margin-bottom: 30px;
}
.contenedor .bloque .contenido.max_w {
  margin-left: auto;
  margin-right: auto;
}
/*CONTENEDORES: BLOQUE VERTICAL*/
.contenedor .bloque_vertical figure {
  justify-content: center;
  align-content: center;
  display: flex;
  margin: 0 auto 30px;
  max-width: 350px;
}
.contenedor .bloque_vertical.cTimeline figure {
  align-content: flex-end;
  margin: 0 0 30px;
  max-width: 400px;
}
.contenedor .bloque_vertical {
  padding: 40px 15px 60px;
}
.contenedor .bloque_vertical.cTimeline {
  border-left:2px solid var(--c2);
  padding: 20px 15px 60px 30px !important;
  margin: 0 0 0 30px;
  position: relative;
  background: #F0F0F0 !important;
}
.contenedor .bloque_vertical.cTimeline .w_txt {
  max-width: 400px;
}
.contenedor .bloque_vertical.cTimeline:after {
  content: " ";
  height: 16px;
  width: 16px;
  border-radius: 8px;
  background:var(--c2);
  display: block;
  position: absolute;
  top: 30px;
  left: -9px;
}
.contenedor .bloque_vertical h2 {
  margin: 0;
  line-height: 1.3;
  text-align: center;
  font-size: 1.3rem;
  color:var(--c3);
}
.contenedor .bloque_vertical.cTimeline h2 {
  text-align: left;
  font-size: 1.3rem;
}
.contenedor .bloque_vertical.cTimeline h2 span {
  position: absolute;
  top: 3px;
  color:var(--c2);
}
.contenedor .bloque_vertical strong {
  color:var(--c1);
  text-align: center;
}
.contenedor .bloque_vertical.derecha .contenido_html p strong {
  text-align: center;
  text-transform: none;
  display: block;
}
.contenedor .bloque_vertical h3 {
  color:var(--c1);
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: 400;
}
.contenedor .bloque_vertical.derecha h3 {
  text-align: right;
}
.contenedor .bloque_vertical img {
  max-width: 100%;
  /*max-width: 500px;*/
  margin: 0 auto;
  /*margin-bottom: 20px;*/
  display: block;
}
.contenedor .bloque_vertical.cTimeline img {
  margin-top: 50px;
}
.contenedor .bloque_vertical .w_txt {
}
.contenedor .bloque_vertical .cont {
  position: relative;
}
/*.contenedor .bloque_vertical .cont:after {
  background:var(--c2);
  height: 1px;
  width: 60%;
  left: 20%;
  position: absolute;
  display: block;
  content: " ";
  bottom: -60px;
}*/
.contenedor .bloque_vertical.cTimeline .cont:after {
  display: none;
}
.contenedor .bloque_vertical.cTimeline .cont {
  max-width: none;
}
.contenedor .bloque_vertical#bloque_1746790542958 .cont:after {
  display: none;
}
.contenedor .bloque_vertical .contenido_html p {
  text-align: justify;
}
.contenedor .bloque_vertical.cTimeline .contenido_html p {
  text-align: left;
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .contenedor .bloque_vertical.cTimeline {
    border-left:2px solid var(--c2);
    width: 50%;
    margin-right: 0;
    padding-right: 15px;
    transform: translateX(-1px);
  }
  .contenedor .bloque_vertical.derecha.cTimeline {
    margin-right: 50%;
    border-right:2px solid var(--c2);
    border-left: none;
    margin-left: 0;
    padding-left: 15px !important;
    padding-right: 30px !important;
    transform: translateX(1px);
  }
  .contenedor .bloque_vertical.derecha.cTimeline:after {
    left: auto;
    right: -9px;
  }
  .contenedor .bloque_vertical.izquierda.cTimeline {
    margin-left: 50%;
  }
  .contenedor .bloque_vertical h2 {
    text-align: left;
    font-size: 1.3rem;
  }
  .contenedor .bloque_vertical .contenido_html p {
    text-align: justify;
  }
  .contenedor .bloque_vertical.derecha .contenido_html p {
    text-align: justify;
  }
  .contenedor .bloque_vertical.derecha .contenido_html h2 {
    text-align: right;
  }
  .contenedor .bloque_vertical.derecha .contenido_html p strong {
    text-align: right;
  }
  .contenedor .bloque_vertical .cont {
    display: flex;
    text-align: left;
    align-items: flex-start;
    margin: 0 auto;
    max-width:var(--max_ancho_texto2);
  }
  .contenedor .bloque_vertical.izquierda figure {
    margin: 0 30px 0 0;
    flex: 0 0 calc(40% - 0px);
  }
  .contenedor .bloque_vertical.derecha figure {
    order: 2;
    margin: 0 0 0 30px;
    flex: 60%;
  }
  .contenedor .bloque_vertical.derecha.cTimeline figure {
    margin: 0;
    order: 0;
    flex: 1 1 100%;
    align-content: flex-end;
  }
  .contenedor .bloque_vertical.derecha.cTimeline .cont {
    display: flex;
    flex-direction: column;
    text-align: right;
    align-items: flex-end;
  }
  .contenedor .bloque_vertical .w_txt {
  }
  .contenedor .bloque_vertical img {
    margin-bottom: 0;
  }
  .contenedor .bloque_vertical.cTimeline h2 span {
    right: calc(100% + 60px);
    width: 250px;
    text-align: right;
  }
  .contenedor .bloque_vertical.derecha.cTimeline h2 span {
    right: auto;
    left: calc(100% + 60px);
    text-align: left;
  }
}
@media screen and (min-width: 768px) {
  .contenedor .bloque_vertical.derecha.cTimeline .contenido_html p {
    text-align: right;
  }
  .contenedor .bloque_vertical.derecha.cTimeline .contenido_html h2 {
    text-align: right;
  }
  .contenedor .bloque_vertical.cTimeline .cont {
    display: block;
    text-align: right;
    justify-content: flex-end;
    align-content: flex-end;
  }
  .contenedor .bloque_vertical.izquierda.cTimeline figure {
    flex: 0 0 calc(40% - 0px);
  }
  .contenedo .bloque_vertical.derecha.cTimeline figure {
    margin: 0 0 30px auto;
    text-align: right;
    width: 100%;
  }
  .contenedor .bloque_vertical.cTimeline .w_txt {
  }
  .contenedor .bloque_vertical.derecha.cTimeline .w_txt {
    margin: 0 0 0 auto;
  }
  .contenedor .bloque_vertical.cTimeline img {
    margin-bottom: 20px;
    margin-top: 0;
  }
}
@media screen and (min-width: 1180px) {
  .contenedor .bloque_vertical .w_txt {
    padding: 0;
  }
  .contenedor .ingacus .w_txt {
  }
}
/*CONTENEDORES: BLOQUE BLOG*/
.contenedor .bloque_blog {
  padding: 0 20px;
  margin-top: 30px;
}
.contenedor .bloque_blog .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_blog h2 {
  margin: 20px 0 30px;
  font-size: 2rem;
  line-height: 1.2;
  font-size: 2rem;
  color:var(--c1);
  text-align: center;
}
.contenedor .bloque_blog .txt h2 {
  display: none;
}
.contenedor .bloque_blog h3 {
  font-size: 1.3rem;
  line-height: 1.2;
  margin-bottom: 10px;
  text-transform: none;
  color:var(--c4);
  text-align: center;
}
.contenedor .bloque_blog article {
  flex: 0 100%;
  text-align: left;
  margin-bottom: 40px;
  font-size: 1.1rem;
}
.bInicio .contenedor .bloque_blog article {
  /*margin-bottom: 0;*/
  max-width: 450px;
  margin: 0 auto 40px;
}
.contenedor .bloque_blog figure {
  margin-bottom: 15px;
}
.contenedor .bloque_blog img {
  width: 100%;
  height: auto;
}
.contenedor .bloque_blog p {
  margin: 0;
  text-align: center;
}
.contenedor .bloque_blog .txt {
  padding: 0 15px;
}
.contenedor .bloque_blog .btnClaro, .contenedor .bloque_blog .btnOscuro {
  display: none;
}
.btnClaro {
  padding: 7px 30px;
  margin: 10px 20px 10px 0;
  color:var(--c2);
  width: auto;
  border:1px solid var(--c2);
  border-radius: 30px;
  display: inline-block;
  text-decoration: none !important;
}
.btnClaro:hover {
  background-color:var(--c2);
  color: #FFF !important;
}
.btnOscuro {
  padding: 7px 30px;
  margin: 20px 20px 10px 0;
  color: #FFF;
  background:var(--c2);
  width: auto;
  border:1px solid var(--c2);
  border-radius: 30px;
  display: inline-block;
}
.btnOscuro:hover {
  background:var(--c1);
  border:1px solid var(--c1);
}
.btnLlamarPie {
  display: inline-block;
  text-align: center;
  font-family:var(--f_titulos2);
  font-size: 1.4rem;
  width: 224px;
  background: url(../imgs/telefono.svg) 20px 50% / 20px no-repeat;
  background-color:var(--c1);
  color: #FFF;
  padding: 10px 0 8px 30px;
  margin: 17px auto 10px;
  border-radius: 30px;
}
.btnLlamarPie:hover {
  /*box-shadow: inset 10.6em 0px 0 0 #FFF;*/
  background: url(../imgs/telefono_azul.svg) 20px 50% / 20px no-repeat #FFF;
  color:var(--c1);
}
.btnContactar {
  display: inline-block;
  text-align: center;
  font-size: 1.2rem;
  font-family:var(--f_titulos2);
  width: 179px;
  background: url(../imgs/email_blanco.svg) 20px 48% / 30px no-repeat;
  color: #FFF;
  padding: 8px 0 8px 45px;
  margin: 17px auto 20px;
  border-radius: 30px;
}
.btnContactar:hover {
  background-color:#00000033;
  border-radius: 50px;
}
.btnMail {
  opacity: 0.6;
  display: block;
  width: 200px;
  margin: 0 auto;
  padding: 5px;
  font-family:var(--f_titulos2);
}
.btnMail:hover {
  background-color:#00000033;
  border-radius: 50px;
}
/*@media (min-width: 640px) {
  .contenedor .bloque_blog {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .contenedor .bloque_blog article {
    width: 100%;
    display: flex;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .contenedor .bloque_blog article figure {
    order: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    width:41.5 %;
  }
  .contenedor .bloque_blog article figure img {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .contenedor .bloque_blog .txt {
    padding: 0 20px;
    width: 73%;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .contenedor .bloque_blog h3 {
    font-size: 1.3rem;
    line-height: 1.2;
    margin-bottom: 10px;
    text-transform: none;
    text-align: left;
    color: #000;
  }
}*/
/*CONTENEDORES: BLOQUE COMENTARIOS HOME*/
.contenedor .bloque_comentarios_home {
  padding: 30px 0 0;
}
.contenedor .bloque_comentarios_home .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_comentarios_home h2 {
  margin-bottom: 40px;
}
.contenedor .bloque_comentarios_home h3 {
  font-size: 1.2rem;
  line-height: 1.3rem;
  margin-bottom: 10px;
  text-transform: none;
  color: #000;
}
.contenedor .bloque_comentarios_home small {
  opacity: 0.6;
  font-size: 65%;
}
.contenedor .bloque_comentarios_home article {
  flex: 0 100%;
  text-align: left;
  margin-bottom: 40px;
  font-size: 0.95rem;
  display: flex;
  flex-direction: column;
}
.contenedor .bloque_comentarios_home figure {
  margin-bottom: 15px;
  text-align: center;
}
.contenedor .bloque_comentarios_home img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  max-width: 150px;
}
.contenedor .bloque_comentarios_home p {
  margin: 0;
}
.contenedor .bloque_comentarios_home .txt {
  padding: 0 15px;
  margin-top: auto;
}
@media (min-width: 550px) {
  .contenedor .bloque_comentarios_home article {
    flex: 0 calc(50% - 10px);
    margin-bottom: 30px;
  }
}
@media (min-width: 1000px) {
  .contenedor .bloque_comentarios_home .contenido {
    padding: 0 20px;
  }
  .contenedor .bloque_comentarios_home article {
    flex: 0 calc(25% - 20px);
  }
  .contenedor .bloque_comentarios_home .txt {
    padding: 0;
  }
}
/*CONTENEDORES: BLOQUE CARRUSEL*/
.contenedor .bloque_banner {
  overflow-x: hidden;
  padding-top: 0;
}
.contenedor .bloque_banner .contenido.max_w {
  margin: 0;
}
.contenedor .bloque_carrusel {
  overflow-x: hidden;
}
/*CONTENEDORES: BLOQUE CATEGORIAS PRODUCTOS*/
.contenedor .bloque_categorias_productos {
  padding: 30px 0 0;
}
.contenedor .bloque_categorias_productos .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_categorias_productos h2 {
  margin-bottom: 20px;
}
.contenedor .bloque_categorias_productos h3 {
  font-size: 1.2rem;
  line-height: 1.3rem;
  margin-bottom: 10px;
  text-transform: none;
  color: #000;
}
.contenedor .bloque_categorias_productos article {
  flex: 0 100%;
  text-align: left;
  margin-bottom: 40px;
  font-size: 0.95rem;
}
.contenedor .bloque_categorias_productos figure {
  margin-bottom: 15px;
}
.contenedor .bloque_categorias_productos img {
  width: 100%;
  height: auto;
}
.contenedor .bloque_categorias_productos p {
  margin: 0;
}
.contenedor .bloque_categorias_productos .txt {
  padding: 0 15px;
}
@media (min-width: 550px) {
  .contenedor .bloque_categorias_productos article {
    flex: 0 calc(50% - 10px);
    margin-bottom: 30px;
  }
}
@media (min-width: 1000px) {
  .contenedor .bloque_categorias_productos .contenido {
    padding: 0 20px;
  }
  .contenedor .bloque_categorias_productos article {
    flex: 0 calc(50% - 20px);
    display: flex;
  }
  .contenedor .bloque_categorias_productos figure {
    flex: 0 0 40%;
  }
  .contenedor .bloque_categorias_productos figure.i {
    margin: 0 10px 0 0;
  }
  .contenedor .bloque_categorias_productos figure.d {
    margin: 0 0 0 10px;
    order: 2;
  }
  .contenedor .bloque_categorias_productos .txt {
    flex: 1;
    padding: 0;
  }
}
/*CONTENEDORES: BLOQUE PRODUCTOS*/
.contenedor .bloque_productos {
  padding: 40px 0 60px;
}
@media (min-width: 1000px) {
  .contenedor .bloque_productos .producto_listados {
    margin-bottom: 0;
  }
  .contenedor .bloque_productos .lista_productos {
    margin-bottom: 0;
  }
}
/*CONTENEDORES: BLOQUE TEXTO*/
.contenedor .bloque_texto .contenido_html {
  padding: 0 20px;
  margin: 0 auto;
}
.contenedor .bloque_texto.cFaldon .contenido_html {
  padding: 0;
  max-width: 100%;
  /*position: relative;*/
}
.contenedor .bloque_texto.cFaldon {
  margin: 20px 0;
}
.contenedor .bloque_texto.cFaldon .contenido_html img {
  /*position: absolute;*/
  margin: 0;
}
.contenedor .bloque_texto.cFaldon .contenido_html h2 {
  position: absolute;
  z-index: 1;
  top: 33.6vw;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1.2;
  color: #FFF;
  text-transform: uppercase;
  font-size: 4.7vw;
  text-align: center;
  max-width: 1000px;
  width: 100%;
}
.contenedor .bloque_texto.cFaldon .contenido_html h2 span {
  white-space: nowrap;
}
.contenedor .bloque_texto.cFaldon {
  position: relative;
}
@media (min-width: 1000px) {
  .contenedor .bloque_texto .contenido_html {
    padding: 0;
    margin: 0 auto 30px;
  }
  .bInicio .cServicios .contenido_html {
    padding: 20px 0 !important;
  }
}
/*CONTENEDORES: BLOQUE HORIZONTAL*/
.contenedor .bloque_horizontal {
}
.contenedor .bloque_horizontal img {
  width: 100%;
  display: block;
}
.contenedor .bloque_horizontal .w_txt {
  width: 100%;
  color: #FFF;
  position: relative;
  padding: 20px 20px 40px;
}
.contenedor .bloque_horizontal .contenido_html {
  max-width: 1200px;
  margin: 0 auto;
}
.contenedor .bloque_horizontal .contenido_html strong {
  font-weight: 400;
  color: #E7DA00;
}
/*CONTENEDORES: BLOQUE IMAGENES*/
.contenedor .bloque_imagenes {
  background: #FFF;
  padding: 20px;
  text-align: center;
}
.contenedor .bloque_imagenes.n1 {
  padding: 0;
  text-align: center;
}
.contenedor .bloque_imagenes .imagenes {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.contenedor .bloque_imagenes figure {
  flex: 0 0 calc(50% - 10px);
  margin-bottom: 10px;
}
.contenedor .bloque_imagenes.n1 figure {
  flex: 1 100%;
  margin-bottom: 0;
}
.contenedor .bloque_imagenes figure img {
  width: 100%;
  display: block;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
}
.bInicio .contenedor .bloque_imagenes figure img {
  width: 160%;
  margin-left: -30%;
}
.bInicio .contenedor .bloque_imagenes figure {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .contenedor .bloque_imagenes.n1 figure {
    flex: 1 100%;
  }
  .contenedor .bloque_imagenes.n2 figure {
    flex: 0 0 calc(50% - 5px);
  }
  .contenedor .bloque_imagenes.n3 figure {
    flex: 0 0 calc(33.3333% - 5px);
  }
  .contenedor .bloque_imagenes figure {
    /*flex: 0 0 calc(25% - 7px);*/
    flex: 0 0 calc(33.3333% - 10px);
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 1000px) {
  .contenedor .bloque_imagenes figure {
    /*flex: 0 0 calc(25% - 7px);*/
    flex: 0 0 calc(33.3333% - 20px);
    margin-bottom: 20px;
  }
}
/*CONTENEDORES: BLOQUE FAQ*/
.contenedor .bloque_faq {
  margin-bottom: 10px;
}
.contenedor .bloque_faq header {
  font-size: 1rem;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.1;
  padding: 10px 40px 10px 10px;
  color:var(--c3);
  background:url(/imgs/plegar-c3.svg) calc(100% - 15px) 50% no-repeat var(--c6);
  cursor: pointer;
  border-radius:var(--b_radius);
}
.contenedor .bloque_faq .contenido_html {
  display: none;
}
.contenedor .bloque_faq.ver header {
  background-image: url(/imgs/desplegar-c3.svg);
}
.contenedor .bloque_faq.ver .contenido_html {
  display: block;
  margin: 15px 0 40px 10px;
}
/*CONTENEDORES: BLOQUE LISTADO SECCION*/
.contenedor .bloque_listado_seccion .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_listado_seccion article {
  flex: 0 0 calc(50% - 20px);
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.contenedor .bloque_listado_seccion figure {
  width: 90%;
  aspect:1;
  border-radius: 50%;
  border:1px solid var(--c1);
  overflow: hidden;
  margin-bottom: 15px;
}
.contenedor .bloque_listado_seccion img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.contenedor .bloque_listado_seccion h3 {
  font-weight: 300;
  font-size: 1rem;
}
@media screen and (min-width: 600px) {
  .contenedor .bloque_listado_seccion article {
    flex: 0 0 calc(25% - 20px);
  }
}
@media screen and (min-width: 1000px) {
  .contenedor .bloque_listado_seccion article {
    flex: 0 0 calc(100% / 8 - 20px);
  }
}
/* SWIPER BANNER*/
.swiper {
  width: 100%;
  aspect-ratio: 1;
  --swiper-theme-color: #fff;
  --swiper-navigation-size: 30px;
}
.swiper img {
  width: 100%;
  height: auto;
}
.swiper-button-next, .swiper-button-prev {
  opacity: 0.2;
  transition: 0.3s;
}
.swiper:hover .swiper-button-next, .swiper:hover .swiper-button-prev {
  opacity: 1;
}
.swiper .info_banner {
  font-size: 7vw;
  line-height: 8.5vw;
  color: var(--swiper-theme-color);
  position: absolute;
  left: 5%;
  right: 5%;
  top: 6%;
  bottom: 5%;
  /*transform: translateX(-50%);*/
  text-align: center;
}
.swiper .info_banner.posicion_texto_izquierda {
  text-align: left;
}
.swiper .info_banner.posicion_texto_derecha {
  text-align: right;
}
.swiper .info_banner .linea1 {
  font-size: 99%;
  font-weight: 300;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 3px;
}
.swiper .info_banner .linea2 {
  margin-bottom: 10px;
  font-family:var(--f_menus);
  font-weight: 600;
  color:var(--c1);
  font-size: 65%;
}
.swiper .info_banner .linea_boton a {
  /*background: 11% 50% / 13% no-repeat #FFF000;*/
  padding: 0;
  left: 0%;
  right: 0%;
  top: 0%;
  height: 40%;
  position: absolute;
}
@media only screen and (min-width: 768px) {
  .swiper {
    aspect-ratio:2000 / 593;
  }
  /*.swiper .info_banner {
    top: auto;
    bottom: 20%;
    right: 10%;
    (*left: auto;*)
    (*transform: none;*)
  }*/
}
/*SLIDER PRECIOS*/
.filtros .w_slider2 {
  margin: 10px 0 50px;
  padding: 0 8px;
}
.filtros .slider {
  height: 10px;
  margin: 0 auto;
}
.filtros .noUi-handle::before, .filtros .noUi-handle::after {
  content: none;
}
.filtros .noUi-horizontal .noUi-handle {
  width: 15px;
  height: 15px;
  right: -8px;
  top: -4px;
  border-radius: 50%;
}
.filtros .noUi-connect {
  background: var(--c2);
}
.filtros .noUi-horizontal .noUi-tooltip {
  font-size: 0.7rem;
  bottom: -30px;
  left: 20px;
}
.filtros .noUi-horizontal [data-handle="1"] .noUi-tooltip {
  bottom: -30px;
  left: -10px;
}
.filtros .w_slider .titulo {
  font-weight: 400;
  text-transform: uppercase;
  padding: 5px;
  font-size: 0.8rem;
  border: none;
  background: #F4F4F4;
  display: block;
}
#opiniones #vermas:checked ~ .comentario {
  display: block;
}
/*FICHEROS DESCARGA*/
.bloque_ficheros_descarga .categorias .titulo {
  margin-bottom: 10px;
  color:var(--c1);
  font-size: 1.2rem;
}
.bloque_ficheros_descarga .categorias {
  margin-left: 20px;
  margin-top: 30px;
}
.bloque_ficheros_descarga .ficheros {
  margin-left: 40px;
  margin-bottom: 30px;
  margin-top: 15px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.bloque_ficheros_descarga .ficheros li {
  min-height: 44px;
  position: relative;
  padding-top: 5px;
}
.bloque_ficheros_descarga .ficheros li a {
}
.bloque_ficheros_descarga .ficheros li:before {
  content: attr(data-ext);
  position: absolute;
  left: -32px;
  top: 0;
  background: Url(../imgs/extensiones/otro.svg) 0 0 / 22px no-repeat;
  width: 22px;
  height: 26px;
  display: inline-grid;
  text-indent: -999999px;
  overflow: hidden;
}
.bloque_ficheros_descarga .ficheros li[data-ext="pdf"]:before {
  background-image: url(../imgs/extensiones/pdf.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="ai"]:before {
  background-image: url(../imgs/extensiones/ai.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="bmp"]:before {
  background-image: url(../imgs/extensiones/bmp.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="cdr"]:before {
  background-image: url(../imgs/extensiones/cdr.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="doc"]:before {
  background-image: url(../imgs/extensiones/doc.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="docx"]:before {
  background-image: url(../imgs/extensiones/doc.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="dxf"]:before {
  background-image: url(../imgs/extensiones/dxf.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="eps"]:before {
  background-image: url(../imgs/extensiones/eps.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="gif"]:before {
  background-image: url(../imgs/extensiones/gif.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="jpg"]:before {
  background-image: url(../imgs/extensiones/jpg.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="ppt"]:before {
  background-image: url(../imgs/extensiones/ppt.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="pptx"]:before {
  background-image: url(../imgs/extensiones/ppt.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="psd"]:before {
  background-image: url(../imgs/extensiones/psd.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="rtf"]:before {
  background-image: url(../imgs/extensiones/rtf.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="svg"]:before {
  background-image: url(../imgs/extensiones/svg.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="ttf"]:before {
  background-image: url(../imgs/extensiones/ttf.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="txt"]:before {
  background-image: url(../imgs/extensiones/txt.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="xls"]:before {
  background-image: url(../imgs/extensiones/xls.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="xlsx"]:before {
  background-image: url(../imgs/extensiones/xls.svg);
}
.bloque_ficheros_descarga .ficheros li[data-ext="zip"]:before {
  background-image: url(../imgs/extensiones/zip.svg);
}
#modal_descarga label {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
#modal_descarga input:not([type=checkbox]), #modal_descarga textarea {
  display: block;
  width: 100%;
  border: 1px solid #CCC;
  padding: 5px 10px;
  margin-top: 3px;
}
#modal_descarga .botonera {
  margin-top: 30px;
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
}
#modal_descarga .botonera * {
  margin: 0 10px;
}
#modal_descarga .responsable {
  font-size: 0.75rem;
  line-height: 1.3rem;
  margin-bottom: 20px;
}
#modal_descarga a {
  text-decoration: underline;
}
/*ANIMAR IMAGENES*/
.animar_imagenes img {
  opacity: 0;
  transition: transform 0.5s ease-in-out;
}
.animar_imagenes img._animado {
  opacity: 1;
  animation: animarImagenes 0.5s ease-in-out forwards;
}
@keyframes animarImagenes {
  from {
    transform: scale(0);
  }
  to {
    transform: scale(1);
  }
}
