@font-face {
  font-family: 'NeoTech';
  src: url('NeoTech.woff2') format('woff2'), url('NeoTech.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
:root {
  --f_titulos: "NeoTech", sans-serif;
  --f_menus:"Noto Sans", sans-serif;
  --f_textos: 'Noto Sans', sans-serif;
  --c1: #004857;
  --c1-11: #00485711;
  --c2: #77B800;
  --c2-03: #77B80066;
  --c3:#666666;
  --c4: #FCF7F1;
  --c5: #f0f0f0;
  --color_borde_inputs: var(--c2);
  /*varios*/
  --ancho_cabecera:1350px;
  --max_ancho_contenido:1180px;
  --max_ancho_contenido2:1180px;
  --max_ancho_texto:920px;
  --b_radius:10px;
}
*, *:before, *:after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0 auto;
  font-family:var(--f_textos);
  font-weight: 300;
  font-size: 100%;
  font-style: normal;
  /*overflow-x: hidden;*/
  height: 100%;
  min-height: 100%;
  color: #666;
  background: #F2EEEE;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
main {
  min-height: 380px;
}
main:not(.mContenedor):not(.mProducto) {
  margin-bottom: 60px;
}
main.mContenedor {
  padding: 0 0 30px;
}
body.bAvisos main.mContenedor, body.bMapaWeb main.mMapaWeb, body.bBlog main.mBlog, body.bBlogArticulo main.mBlogArticulo, body.bContacto .mContacto {
  padding: 50px 15px 30px;
}
.bInicio main.mContenedor {
  padding: 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_titulos);
  /*text-transform: uppercase;*/
  margin: 0;
  color:var(--c1);
}
h1 {
  font-size: 1.875rem;
}
h2 {
  font-size: 1.8rem;
  margin: auto;
  max-width:var(--max_ancho_contenido);
}
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(--c2);
  color: #FFF;
  padding: 8px 20px;
  /*border-radius: var(--b_radius);*/
  border-radius: var(--b_radius);
  display: inline-block;
  cursor: pointer;
  line-height: 1rem;
  font-family: inherit;
  font-weight: 400;
}
.botonera button.BtnAtras, .btn.BtnAtras {
  background: #CCC;
  color: #000;
}
.btnVolver {
  font-family:var(--f_titulos);
  font-size: 1.1rem;
  margin-top: 30px;
}
.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;
}
.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_texto);
  margin: 0 auto;
}
.max_w2 {
  max-width:var(--max_ancho_contenido2);
  margin: 0 auto;
}
/*separador*/
body.inicio .bloque_productos {
  position: relative;
}
body.inicio .bloque_productos:before {
  content: "";
  display: block;
  width: calc(100% - 30px);
  /*border-bottom: 1px solid;*/
  position: absolute;
  border:1px solid var(--c1);
  bottom: 20px;
  left: 15px;
  /*left: 50%;*/
  /*transform: translatex(-50%);*/
}
body.inicio .bloque_productos:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 40px;
  bottom: 0;
  background: url(/imgs/separador.png) 50% / auto 100% no-repeat;
}
/*max con borde en movil*/
.max_wb {
  margin: 0 15px;
}
@media (min-width: 1200px) {
  .max_wb {
    max-width:var(--max_ancho_contenido2);
    margin: 0 auto;
    padding: 0 20px;
  }
}
.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: 15px 0;
  /*margin-bottom: 10px;*/
  /*border-bottom:1px solid var(--c1);*/
  /*display: flex;*/
  align-items: center;
  position: relative;
  background:var(--c1);
}
.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/CFG-Centro-Fisioterapia-Geriatrica_negativo.svg) 100% / auto 100% no-repeat;
  text-indent: -1000000px !important;
  width: 221px;
  height: 57px;
  overflow: hidden;
  display: block;
  flex: 1;
  position: absolute;
  left: 15px;
  top: 10px;
  z-index: 1;
}
#logo a {
  width: 100%;
  height: 100%;
  display: block;
}
.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;
}
.pHeader .usuario {
}
html[lang=en] .pHeader .usuario {
  width: 180px;
}
html[lang=fr] .pHeader .usuario {
  width: 180px;
}
.pHeader section.usuario > * {
  cursor: pointer;
}
.pHeader section.usuario .nom_usuario {
  cursor: pointer;
  background:url(/imgs/usuario.svg) 10px 50% / auto 70% no-repeat var(--c1);
  color: #FFF;
  font-weight: 400;
  padding: 5px 20px 5px 40px;
  border-radius: var(--b_radius);
  text-align: center;
  white-space: nowrap;
  width: 150px !important;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  top: 5px;
  position: relative;
}
@-moz-document url-prefix() {
  .pHeader .usuario {
    bottom: 14px;
  }
  .pHeader section.usuario .nom_usuario {
    top: 0;
  }
}
.pHeader section.usuario .acceso {
  display: inline-block;
}
/*cabecera idiomas*/
.pHeader .idiomas {
  position: relative;
  padding-top: 0;
  top: -19px;
  display: none;
}
.pHeader .idiomas .selector {
  cursor: pointer;
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
/*MENU IDIOMAS*/
#menu_idiomas {
  position: fixed;
  top: 0;
  left: 50%;
  width: 100%;
  max-width: 500px;
  transform: translatex(-50%) translatey(-100%);
  background:var(--c2);
  color: #FFF;
  padding: 20px 0 10px;
  z-index: 999999;
  border-radius: 0 0 10px 10px;
  letter-spacing: 0.5px;
  transition: all 0.3s linear;
}
#menu_idiomas.ver {
  transform: translatex(-50%) translatey(0%);
  box-shadow:1px 0px 7px 2px #00000040;
}
#menu_idiomas .cerrar {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 1.8rem;
  width: 30px;
  height: 30px;
  text-align: center;
  cursor: pointer;
}
#menu_idiomas p {
  font-size: 1rem;
  text-transform: uppercase;
  padding-left: 30px;
  padding-top: 0;
}
#menu_idiomas nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  color: #FFF;
  z-index: 1000;
}
#menu_idiomas nav > * {
  text-align: center;
  flex: 1 calc(100% / 3);
  padding: 20px 0;
}
#menu_idiomas nav img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-bottom: 8px;
}
#menu_idiomas nav span {
  display: block;
}
@media (min-width: 550px) {
  #menu_idiomas nav > * {
    flex: 1 calc(100% / 6);
  }
}
/*Menú hamburguesa*/
#botonMenu {
  width: 35px;
  height: 18px;
  cursor: pointer;
  border:4px solid var(--c2);
  border-width: 2px 0;
  display: inline-block;
  position: absolute;
  right: 20px;
  top: 23px;
}
#botonMenu::before {
  display: block;
  height: 2px;
  content: ' ';
  margin-top: 6px;
  background:var(--c2);
}
#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: 14px;
  right: 15px;
  width: 30px;
  height: 30px;
  line-height: 28px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  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: 99998;
}
.ham #menu {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  bottom: 0;
  color: #FFF;
  z-index: 99999;
  padding: 40px 0 20px;
  box-shadow: 0 0 17px #444;
  width: 300px;
  overflow-y: scroll;
  animation: menuIn 0.6s;
  background-color:var(--c1);
}
.ham #menu:before {
  background:url(/imgs/logo_blanco.svg) 10px 10px / auto 50px no-repeat var(--c1);
  content: " ";
  width: 100%;
  height: 80px;
  display: block;
  top: 0;
  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 20px;
  font-weight: 300;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
#menu > ul > li > a {
  font-family:var(--f_menu);
  font-weight: 300;
  color: #FFF;
}
#menu > ul > li > a.btnMenu {
  background:var(--c2);
  padding: 7px 15px 8px;
  border-radius:var(--b_radius);
}
#menu > ul > li > a.btnMenu:hover {
  background: #FFF;
}
#menu > ul > li.sel > a.btnMenu {
  color: #FFF;
}
#menu > ul > li > a.btnMenu:hover:after {
  display: none;
}
.ham #menu > ul > li:last-of-type {
  border-bottom: none;
}
#menu li {
  font-size: 1.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: 29px;
  }
  .pHeader .usuario_carrito {
    position: absolute;
    top: 29px;
    right: 55px;
  }
  #logo {
    width: 239px;
    height: 62px;
    overflow: hidden;
    display: block;
    flex: 1;
    position: absolute;
    left: 15px;
    top: 15px;
    z-index: 1;
  }
}
#cImgCat, #cImgPag {
  position: relative;
  display: block;
  z-index: 1;
  /*background: rgb(2, 0, 36);*/
  /*background: linear-gradient(180deg, rgba(2, 0, 36, 1) 0%, rgba(0, 53, 133, 1) 35%, rgba(0, 167, 221, 1) 100%);*/
}
#cImgCat span, #cImgPag span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  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:var(--c1);
  margin: 0 auto 15px;
  max-width:var(--ancho_cabecera);
  text-align: right;
  font-size: 1.5rem;
  position: relative;
  z-index: 1;
  padding: 15vw 15px 10px 0;
}
/*MIGAS*/
#MenuMigas {
  background:var(--c5);
  padding: 10px;
  font-size: 0.8rem;
  margin-bottom: 60px;
  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: 0.9rem;
  line-height: 1.5;
}
.contenido_html p {
  margin: 0 0 20px;
  font-size: 1.1rem;
  line-height: 1.5;
}
.contenido_html p:last-child {
  margin-bottom: 0;
}
.contenido_html h2 {
  margin: 30px 0 10px;
}
.presentacion .contenido_html h2 {
  font-size: 6vw;
  line-height: 1.2;
  margin-bottom: 30px;
}
.presentacion .contenido_html p {
  font-size: 1.05rem;
}
.texto_centrado .contenido_html > * {
  text-align: center;
}
.contenido_html strong {
  font-weight: 500;
  color:var(--c1);
}
.contenido_html img {
  max-width: 100%;
  height: auto !important;
}
.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;
}
.contenido_html .compartir {
  margin-top: 50px;
}
.contenido_html .compartir a {
  margin: 5px 20px 0 0;
  display: inline-block;
}
.contenido_html .compartir img {
  width: 40px;
}
/*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%;
  border-radius:var(--b_radius);
  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;
}
/* Area personal*/
.mAreaPersonal h1 {
  margin-bottom: 40px;
  text-align: center;
}
.mAreaPersonal {
  padding: 60px 0;
}
.mAreaPersonal nav a {
  display: block;
  margin: 0 auto;
  text-align: center;
  max-width: 300px;
  border:1px solid var(--c2);
  color:var(--c2);
  margin-bottom: 40px;
  padding: 20px;
  border-radius: var(--b_radius);
}
.mAreaPersonal nav a:hover {
  color: #FFF;
  background-color:var(--c2);
}
/*Editar perfil*/
.mEditarPerfil [type=file] {
  display: none;
}
.mEditarPerfil .codigo_cambio {
  display: none;
}
.mEditarPerfil #img_avatar {
  border-radius: 50%;
}
.mEditarPerfil h3 {
  margin: 30px 0;
  font-size: 1.5rem;
}
.mEditarPerfil form:not(:last-of-type)::after {
  content: "";
  display: block;
  width: 50%;
  border-bottom: 1px solid #666;
  padding-bottom: 30px;
}
.mEditarPerfil .codigo_cambio {
  margin-bottom: 20px;
}
.mEditarPerfil .msg {
  margin: 10px 0;
}
.mEditarPerfil .btn {
  margin-top: 10px;
}
.mEditarPerfil form {
  padding: 30px 0;
  /*margin: 0 auto 60px;*/
  max-width: 360px;
}
.mEditarPerfil fieldset {
  border: none;
  padding: 0;
  margin: 0;
}
.mEditarPerfil label {
  display: block;
  margin-bottom: 20px;
}
.mEditarPerfil input:not([type=checkbox]) {
  display: block;
  margin-top: 3px;
  padding: 5px;
  border: 1px solid #AAA;
  width: 100%;
  box-sizing: border-box;
  font-size: 0.9rem;
}
.mEditarPerfil select {
  display: block;
  margin-top: 3px;
  padding: 5px;
  border: 1px solid #AAA;
  width: 100%;
  box-sizing: border-box;
  font-size: 0.9rem;
}
/*Mis pedidos*/
.mMisPedidos {
  margin: 10px 0 40px;
  padding: 0 20px;
  font-size: 0.85rem;
  overflow-x: scroll;
}
.mMisPedidos h1 {
  font-weight: 300;
  font-size: 2.25rem;
  color:var(--c1);
  line-height: 1.2;
  margin-bottom: 40px;
  width: 100%;
  text-align: center;
}
.mMisPedidos .w_carrito {
  width: 100%;
  overflow-x: auto;
  margin-bottom: 70px;
}
.mMisPedidos .carrito {
  width: 100%;
  min-width: 800px;
  max-width: 800px;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0px auto 60px;
  border-bottom:2px solid var(--c2);
}
.mMisPedidos .carrito .filaResumen:last-child td {
  padding-bottom: 20px;
}
.mMisPedidos .carrito caption {
  /*font-weight: 400;*/
  font-size: 1.2rem;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom:1px solid var(--c1);
}
.mMisPedidos .carrito tbody tr {
  padding: 20px 0;
}
.mMisPedidos .carrito .filaResumen {
  padding-top: 5px;
  padding-bottom: 0;
}
.mMisPedidos .carrito th {
  font-weight: 500;
  color:var(--c2);
}
.mMisPedidos .carrito td {
  border-bottom: 1px solid #EAEAEA;
  text-align: center;
  padding: 10px 0;
  vertical-align: middle;
}
.mMisPedidos .carrito td.destacado {
  color: #FF0202;
  font-weight: 400;
  font-size: 18px;
}
.mMisPedidos .carrito td:nth-child(1) {
  width: 70px;
}
.mMisPedidos .carrito td:nth-child(2) {
  padding-left: 10px;
}
.mMisPedidos .carrito .colProducto {
  text-align: left;
}
.mMisPedidos .carrito .colMoneda {
  white-space: nowrap;
  text-align: right;
  padding-right: 10px;
}
.mMisPedidos .carrito .filaResumen td {
  white-space: nowrap;
  text-align: right;
  padding-right: 10px;
  border-bottom: none;
  padding-bottom: 0;
}
.mMisPedidos .carrito .filaResumen .envio_gratis {
  text-align: left;
}
.mMisPedidos .carrito .total.colMoneda {
  font-weight: 500;
}
.mMisPedidos .datos {
  display: flex;
  font-size: 0.85rem;
}
.mMisPedidos .estado {
  text-align: left;
  font-size: 0.85rem;
  flex: 1;
  align-self: flex-end;
}
.mMisPedidos .direccion {
  text-align: left;
}
.mMisPedidos .direccion h3 {
  font-family:var(--f_menus);
  margin-bottom: 5px;
}
.mMisPedidos .direccion:last-child {
  border-left:1px solid var(--c1);
  margin-left: 20px;
  padding-left: 20px;
}
.mMisPedidos .datos p {
  margin-bottom: 2px;
}
.mMisPedidos .carrito .personalizaciones {
  font-size: 85%;
  color: #999;
  margin-top: 3px;
}
/*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: 600px;
  max-width: calc(100% - 10px);
  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_titulacos);
}
.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;
}
.acceso_registro #registroUsuario.codigo_enviado .botonera {
  display: none;
}
/*FINALIZAR PEDIDO*/
.mFinalizar_pedido #resumen_pedido .finalizar {
  display: none;
}
.mFinalizar_pedido .cont_main section {
  margin-bottom: 50px;
}
.mFinalizar_pedido .cont_main {
  font-size: 0.875rem;
}
.mFinalizar_pedido .cont_main h2 {
  color:var(--c3);
  font-size: 1.4rem;
  margin-bottom: 5px;
}
.mFinalizar_pedido .cont_main section .btn {
  background:var(--c4);
  font-size: 0.875rem;
  padding: 5px 20px;
}
#resumen_pedido footer {
  margin-bottom: 0px;
}
.mFinalizar_pedido .forma_de_pago input {
  display: none;
}
.mFinalizar_pedido .forma_de_pago input:checked + label {
  box-shadow:1px 1px 7px var(--c1);
  /*opacity: 1;*/
  border-color:var(--c1);
}
.mFinalizar_pedido .forma_de_pago img {
  height: 15px;
  vertical-align: text-top;
  margin-right: 3px;
}
.mFinalizar_pedido .forma_de_pago label {
  width: 100%;
  display: block;
  border:1px solid var(--c1);
  border-radius: var(--b_radius);
  padding: 10px;
  position: relative;
  margin-bottom: 20px;
  min-height: 80px;
}
.mFinalizar_pedido .forma_de_pago label > div {
  margin: 10px 0 0 5px;
}
.mFinalizar_pedido .forma_de_pago .info {
  margin: -10px 0 30px;
  background:var(--c1);
  color: #FFF;
  text-align: center;
  border-radius: var(--b_radius);
  padding: 5px;
  font-size: 0.75rem;
}
.mFinalizar_pedido .forma_de_pago [value=tarjeta] ~ .info .info_ultima_tarjeta {
  display: none;
}
.mFinalizar_pedido .forma_de_pago [value=ultima_tarjeta] ~ .info .info_tarjeta {
  display: none;
}
@media screen and (min-width: 600px) {
  .mFinalizar_pedido .forma_de_pago .cont {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .mFinalizar_pedido .forma_de_pago label {
    flex: 0 calc(50% - 10px);
    margin: 0;
  }
  .mFinalizar_pedido .forma_de_pago .info {
    flex: 0 calc(50% - 10px);
    margin: 10px 0 0;
    order: 3;
    font-size: inherit;
  }
}
.mFinalizar_pedido .forma_de_pago .btn {
  position: absolute;
  bottom: 10px;
  right: 10px;
}
.mFinalizar_pedido .forma_de_pago .ultima_tarjeta {
  display: flex;
  align-items: center;
  margin: 15px 0 20px 5px;
}
.mFinalizar_pedido .forma_de_pago .ultima_tarjeta:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  text-align: center;
  margin-right: 5px;
  border-radius: var(--b_radius);
  background:var(--c1);
  border:1px solid var(--c1);
}
.mFinalizar_pedido .forma_de_pago .ultima_tarjeta.no:before {
  border-color:var(--c1);
  background: none;
}
.mFinalizar_pedido .forma_de_pago .metalico_cambio {
  display: flex;
  align-items: center;
  margin: 15px 0 30px 5px;
}
.mFinalizar_pedido .forma_de_pago .metalico_cambio:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  text-align: center;
  margin-right: 5px;
  border-radius: var(--b_radius);
  background:var(--c1);
  border:1px solid var(--c1);
}
.mFinalizar_pedido .forma_de_pago .metalico_cambio.no:before {
  border-color:var(--c1);
  background: none;
}
.mFinalizar_pedido .otros span {
  display: block;
  cursor: pointer;
}
.mFinalizar_pedido .otros textarea {
  display: none;
  max-width: calc(100% - 10px);
  width: 500px;
  height: 120px;
  margin: 10px 0 0 20px;
  padding: 10px;
  border-radius: var(--b_radius);
  border:1px solid var(--c1);
}
.mFinalizar_pedido .otros .ver + textarea {
  display: block;
}
.mFinalizar_pedido .otros > div {
  margin: 0 0 20px 0;
}
.mFinalizar_pedido .otros span:before {
  content: "";
  /*display: inline-flex;*/
  display: inline-block;
  /*justify-content: center;*/
  /*align-items: center;*/
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 10px;
  border-radius: var(--b_radius);
}
.mFinalizar_pedido .otros span.ver:before {
  background:var(--c1);
  border-color:var(--c1);
}
.mFinalizar_pedido section .caja {
  border:1px solid var(--c1);
  border-radius: var(--b_radius);
  padding: 10px;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mFinalizar_pedido section .caja .linea2 {
  display: block;
  opacity: 0.8;
}
.mFinalizar_pedido section .caja .btn {
  width: 130px;
  text-align: center;
}
.mFinalizar_pedido section .caja .btn[disabled] {
  opacity: 0.5;
  pointer-events: none;
}
.mFinalizar_pedido #map {
  height: 300px;
  width: 100%;
  margin-bottom: 10px;
  border-radius: var(--b_radius);
}
.mFinalizar_pedido .cont_main .botonera {
  text-align: center;
  margin-bottom: 100px;
}
.mFinalizar_pedido .cont_main .botonera button {
  width: 300px;
  font-size: 1.3rem;
  max-width: 100%;
  padding: 15px;
}
.mFinalizar_pedido .cont_main .botonera button[disabled] {
  pointer-events: none;
  opacity: 0.3;
}
.mFinalizar_pedido .cont_main .botonera .seguir {
  display: block;
  margin-top: 20px;
  color:var(--c2);
  text-decoration: underline;
  font-size: 0.75rem;
}
.mFinalizar_pedido .acepto_terminos {
  margin-bottom: 70px;
}
.mFinalizar_pedido .acepto_terminos label {
  display: block;
  margin-bottom: 20px;
}
.mFinalizar_pedido .acepto_terminos input {
  display: none;
}
.mFinalizar_pedido .acepto_terminos label:before {
  content: "";
  /*display: inline-flex;*/
  display: inline-block;
  /*justify-content: center;*/
  /*align-items: center;*/
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
.mFinalizar_pedido .acepto_terminos input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
.mFinalizar_pedido .acepto_terminos a {
  text-decoration: underline;
}
/*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;
}
/*FINALIZAR: Añadir direccion*/
#direccion_add_modal {
  padding: 5px 0px 0px;
  font-size: 0.875rem;
  color:var(--c4);
}
#direccion_add_modal .cont_contenido {
  width: 800px;
  top: 0;
  overflow: hidden;
}
#direccion_add_modal h2 {
  text-align: center;
  margin-bottom: 20px;
  font-size: 2rem;
  color:var(--c2);
  font-family:var(--f_titulacos);
}
#direccion_add_modal label {
  margin-bottom: 20px;
  display: block;
  max-width: 500px;
  margin-right: auto;
  margin-left: auto;
}
#direccion_add_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);
}
#direccion_add_modal .botonera {
  text-align: center;
}
#direccion_add_modal .botonera a {
  color:var(--c2);
  font-size: 0.875rem;
  text-decoration: underline;
  cursor: pointer;
  white-space: nowrap;
  margin: 0 10px 10px;
}
#direccion_add_modal.sin_listado .botonera a {
  display: none;
}
#direccion_add_modal .btn {
  width: 200px;
  margin-bottom: 10px;
  margin: 0 10px 10px;
}
#direccion_add_modal #mapa_direcciones {
  position: relative;
  width: calc(100% + 50px);
  height: 300px;
  margin-left: -25px;
  margin-top: 15px;
  margin-bottom: 20px;
  margin-top: -20px;
}
#direccion_add_modal #mapa_direcciones::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  /*la chincheta es de 64px, hay que subirla 32px*/
  background: url(/imgs/chincheta.png) 50% calc(50% - 32px) no-repeat;
  pointer-events: none;
}
#direccion_add_modal.no #mapa_direcciones::after {
  filter: grayscale();
}
#direccion_add_modal.no .btn {
  opacity: 0.5;
  pointer-events: none;
  /*background:var(--c1);*/
}
#direccion_add_modal .error {
  display: none;
}
#direccion_add_modal.no .error:not(:empty) {
  display: block;
  color: red;
  text-align: center;
  font-size: 80%;
  max-width: 500px;
  margin: -5px auto 10px;
}
.bFinalizar_pedido .pac-container {
  /*Para el dropdown del maps place search*/
  z-index: 99999999 !important;
}
/*Finalizar: listado direcciones*/
#direcciones_modal li {
  background: url(/imgs/chincheta.png) 10px 50% / auto 30px no-repeat;
  color:var(--c3);
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  border:1px solid var(--c1);
  padding: 10px 10px 10px 40px;
  border-radius: var(--b_radius);
  margin-bottom: 20px;
}
#direcciones_modal li:hover {
  background-color:var(--c7);
  box-shadow:1px 1px 7px var(--c1);
}
#direcciones_modal small:not(:empty) {
  display: block;
  margin-top: 5px;
  opacity: 0.8;
  color:var(--c2);
}
#direcciones_modal .borrar {
  background: url(/imgs/papelera.svg) 0 0 / 100% no-repeat;
  opacity: 0.5;
  width: 20px;
  height: 20px;
  min-width: 20px;
  display: inline-block;
  margin-left: 20px;
}
#direcciones_modal li.noborrar .borrar {
  opacity: 0;
  pointer-events: none;
}
#direcciones_modal .botonera {
  text-align: center;
  margin-top: 30px;
}
#direcciones_modal .botonera a {
  color:var(--c2);
  font-size: 0.875rem;
  margin-left: 20px;
  text-decoration: underline;
  cursor: pointer;
  white-space: nowrap;
}
/*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;
}
/*PAGOOK*/
.mPagoOK {
  text-align: center;
  padding: 80px 0;
}
.mPagoOK h1 + p {
  margin: 30px 0;
}
.mPagoOK #detalle_pedido {
  border:4px solid var(--c1);
  border-radius: var(--b_radius);
  padding: 20px 15px;
  top: 20px;
  background-color:var(--c7);
  text-align: center;
  transition: width 0.5s linear;
  max-width: 340px;
  margin: 0 auto 40px;
}
.mPagoOK #detalle_pedido h2 {
  text-align: center;
  color:var(--c2);
  font-family:var(--f_titulacos);
  font-size: 2rem;
  margin-bottom: 20px;
}
.mPagoOK #detalle_pedido .fila {
  border-bottom:1px solid var(--c1);
  padding-bottom: 10px;
  margin-bottom: 20px;
}
.mPagoOK #detalle_pedido .fila header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.mPagoOK #detalle_pedido .fila .cantidad {
  flex: 0 0 30px;
  text-align: left;
}
.mPagoOK #detalle_pedido .fila p {
  text-align: left;
  margin: 0 0 0 30px;
}
.mPagoOK #detalle_pedido .fila strong {
  text-align: left;
  margin-right: 5px;
  flex: 1;
}
.mPagoOK #detalle_pedido .fila .precio {
  text-align: right;
  white-space: nowrap;
  color:var(--c3);
}
.mPagoOK #detalle_pedido .fila small {
  display: block;
}
.mPagoOK #detalle_pedido .suplemento {
  text-align: right;
  font-size: 0.8rem;
  margin-bottom: 10px;
}
.mPagoOK #detalle_pedido .suplemento a {
  text-decoration: underline;
}
.mPagoOK #detalle_pedido .cupon_aplicado {
  text-align: right;
  font-size: 0.8rem;
  margin-bottom: 10px;
}
.mPagoOK #detalle_pedido footer {
  text-align: right;
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom:1px solid var(--c1);
  color:var(--c3);
  font-size: 1.2rem;
}
.mPagoOK #detalle_pedido .resto {
  text-align: left;
  font-size: 0.875rem;
}
.mPagoOK #detalle_pedido .resto dt {
  margin-bottom: 3px;
}
.mPagoOK #detalle_pedido .resto dd {
  margin-bottom: 15px;
  padding: 0;
  margin: 0 0 15px 20px;
  font-weight: 400;
}
.mPagoOK .volver {
  margin: 0px 0px 40px 0px;
}
/*PAGO KO*/
.mPagoKO {
  text-align: center;
  min-height: 400px;
  padding: 80px 0;
}
.mPagoKO h1 {
  margin: 0 0 20px 0;
}
.mPagoKO .volver {
  margin: 50px 0px 40px 0px;
}
/*PIE*/
.pFooter {
  margin-top: auto;
  background:var(--c1);
  color: #FFF;
  text-align: center;
  padding: 30px 0 0;
  position: relative;
  overflow: hidden;
}
.pFooter p, .pFooter address {
  font-size: 0.85rem;
  line-height: 1.4;
  font-style: normal;
  color:#FFFFFF99;
  margin: 40px 0 30px;
}
.pFooter address a {
  display: block;
  margin: 0 0 20px 0;
}
.pFooter p strong {
  color: #FFF;
  display: block;
  font-size: 1.2rem;
  margin-bottom: 3px;
}
.pFooter .w_siguenos {
  border: 1px solid #FFF;
  opacity: 0.7;
  text-align: center;
  font-size: 0.8rem;
  border-radius: 50%;
  height: 100px;
  width: 100px;
  background:var(--c1);
  padding: 20px 15px 15px;
  position: absolute;
  bottom: 95px;
  right: -10px;
}
.pFooter:after {
  background: url(../imgs/bg_pie.svg) bottom left / contain no-repeat;
  height: 80px;
  width: 100px;
  display: block;
  content: " ";
  position: absolute;
  bottom: 91px;
}
.pFooter .nav {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  line-height: 1.3rem;
  font-size: 0.90rem;
  justify-content: center;
  background:#00000033;
  align-items: center;
  /*margin-bottom: 40px;*/
}
.pFooter .nav a {
  white-space: nowrap;
  margin-bottom: 5px;
  font-family:var(--f_menus);
  flex: 0;
}
.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 .nav a:not(:last-of-type):after {
  content: "|";
  margin-right: 10px;
  margin: 0 8px;
}
.pFooter .siguenos {
  display: flex;
  padding-top: 10px;
  justify-content: space-around;
  align-items: center;
  width: auto;
  margin: 0 auto;
}
.pFooter .siguenos > * {
  text-indent: -9999px;
}
.pFooter .siguenos .twitter {
  background: url(/imgs/twitter.svg) 0 0 / auto 100% no-repeat;
  width: 20px;
  height: 20px;
}
.pFooter .siguenos .instagram {
  background: url(/imgs/instagram.svg) 0 0 / auto 100% no-repeat;
  width: 20px;
  height: 20px;
}
.pFooter .siguenos .facebook {
  background: url(/imgs/facebook.svg) center center / auto 100% no-repeat;
  width: 20px !important;
  height: 20px !important;
}
.pFooter .siguenos .youtube {
  background: url(/imgs/youtube.svg) 0 0 / auto 100% no-repeat;
  width: 25px;
  height: 24px;
}
.pFooter .siguenos .linkedin {
  background: url(/imgs/linkedin.svg) 0 0 / auto 100% no-repeat;
  width: 25px;
  height: 24px;
}
@media screen and (min-width: 660px) {
  .pFooter:after {
    background: url(../imgs/bg_pie.svg) bottom left / contain no-repeat;
    height: 110px;
    width: 140px;
    bottom: 68px;
  }
  .pFooter img {
    width: 300px;
  }
  .pFooter .w_siguenos {
    font-size: 0.9rem;
    height: 136px;
    width: 136px;
    padding: 43px 20px 15px;
    top: 40px;
  }
  .pFooter .siguenos .facebook {
    background: url(/imgs/facebook.svg) center center / auto 100% no-repeat;
    width: 35px !important;
    height: 35px !important;
  }
}
@media screen and (min-width: 1000px) {
  .pFooter:after {
    background: url(../imgs/bg_pie.svg) bottom left / contain no-repeat;
    height: 200px;
    width: 250px;
    bottom: 0;
  }
  .pFooter .w_siguenos {
    font-size: 1.2rem;
    height: 170px;
    width: 170px;
    padding: 56px 20px 15px;
    top: 50px;
  }
  .pFooter .siguenos .facebook {
    width: 45px !important;
    height: 45px !important;
  }
}
#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: 31px;
  height: 31px;
  margin: 0 3px;
  /*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;
  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;
  }
}
/*FAMILIA*/
.mFamilia h1 {
  font-family:var(--f_menus);
  text-align: center;
  color:var(--c2);
  margin: 30px 0;
}
.mFamilia .resumen {
  margin-bottom: 30px;
}
.mFamilia .resumen img {
  width: 100%;
  height: auto;
  margin-bottom: 10px;
}
.bFamilia.multiple .lista_productos .ordenar {
  display: none;
}
/*lista_productos: header*/
.lista_productos .h_lista_productos {
  width: 100%;
  text-align: right;
  font-size: 0.8rem;
  display: flex;
  justify-content: end;
  align-items: flex-end;
}
.lista_productos .filtro_movil {
  display: none;
}
.lista_productos .ordenar select {
  display: block;
  margin: 2px 0 0;
  padding: 5px;
  border:1px solid var(--c3);
  border-radius:var(b_radius);
  margin-bottom: 25px;
}
.mListaDeseos .lista_productos .ordenar {
  display: none;
}
@media screen and (max-width: 999px) {
  .lista_productos .filtro_movil {
    width: 100%;
    text-align: left;
    display: block;
    margin-bottom: 25px;
  }
  .lista_productos .filtro_movil button {
    height: 27px;
    background: url(/imgs/filtros.svg) 0 50% / 28px no-repeat #FFF;
    text-transform: uppercase;
    font-size: 1.1rem;
    line-height: 1.2rem;
    padding-left: 40px;
  }
  .lista_productos .filtro_movil button img {
    width: 100%;
  }
}
/*lista_productos*/
.lista_productos {
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  justify-content: center;
  --gap: 5px;
  --doblegap: 10px;
  --anchoe: calc(49% - var(--doblegap));
  margin: 0 0 0px 0;
  /*margin: 0 calc(-1 * var(--gap)) 40px 0;*/
}
.lista_productos .titulo_seccion {
  width: 100%;
}
.lista_productos h2 {
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
  font-size: 1.7rem;
  text-transform: uppercase;
  color:var(--c3);
  font-family:var(--f_menus);
}
.producto_listados {
  /*flex:0 var(--anchoe);*/
  margin: 0 0 50px 0;
  text-align: center;
  padding: 15px 10px;
  position: relative;
  display: flex;
  flex-direction: column;
  width:var(--anchoe);
  border: 1px solid #FFF;
  /*box-shadow: 3px 3px 5px rgba(240, 240, 240, 0.771);*/
}
.relacionados .producto_listados {
  border: none;
  max-width: 180px;
}
.producto_listados:hover {
  /*border:1px solid var(--c1);*/
  background: #F9F9F9;
}
/*.producto_listados:hover {
  box-shadow: -3px 4px 5px #CCC, 3px 4px 5px #CCC;
}*/
.producto_listados.no_disponible img {
  opacity: 0.5;
}
.producto_listados img {
  width: 100%;
  height: auto;
}
.producto_listados .detalle {
  font-size: 0.9rem;
  margin: 0 0 5px 0;
  color: #666;
}
.relacionados .producto_listados .detalle {
  font-size: 0.75rem;
}
.producto_listados .titulo {
  color: #000;
  font-size: 1rem;
  line-height: 1.3rem;
  margin: 7px 3px 5px;
}
.producto_listados .precio_antes {
  color:var(--c1);
  font-size: 79%;
  text-decoration: line-through solid;
}
.producto_listados .desde {
  font-size: 60%;
  margin-right: 5px;
}
.producto_listados .precio {
  color:var(--c2);
  margin-bottom: 10px;
  font-weight: 500;
  font-family:var(--f_titulos);
  font-size: 1.3rem;
}
.relacionados .producto_listados .precio {
  font-size: 1.3rem;
}
.producto_listados .botonera {
  text-transform: uppercase;
  font-size: 0.65rem;
  /*display: flex;*/
  justify-content: center;
  font-family:var(--f_menus);
  align-items: center;
  margin-top: auto;
  width: 100%;
}
.producto_listados .masinfo {
  color:var(--c3);
  white-space: nowrap;
  padding: 5px;
}
.producto_listados .masinfo:hover {
  color:var(--c2);
}
.producto_listados .btn_compra {
  /*background:5px 10px / 20px no-repeat var(--c1);*/
  font-size: 0.85rem;
  width: 100%;
  /*background: url(/imgs/carro_azul.svg) 8px 5px / 15px no-repeat #FFF;*/
  background:var(--c2);
  font-family:var(--f_menus);
  display: block;
  border:1px solid var(--c2);
  color: #FFF;
  padding: 5px 8px;
  cursor: pointer;
  margin: 0 auto 15px;
  max-width: 150px;
  border-radius:var(--b_radius);
}
.producto_listados .btn_compra:hover {
  /*background:url(/imgs/carro_blanco.svg) 8px 5px / 15px no-repeat var(--c2);*/
  color: #FFF;
  background:var(--c1);
  border:1px solid var(--c2);
}
.producto_listados .info_txt {
  font-size: 0.75rem;
  text-align: center;
  display: block;
  width: 100%;
  margin-bottom: 5px;
  text-transform: uppercase;
}
.producto_listados .botonera_info {
  text-transform: uppercase;
  font-size: 0.65rem;
  font-family:var(--f_menus);
  margin-top: auto;
  width: 100%;
}
.producto_listados .aviso {
  display: inline-block;
  padding: 4px 10px;
  border-radius: var(--b_radius);
  background:var(--c2);
  color: #FFF;
  font-size: 80%;
  cursor: pointer;
  margin-top: 3px;
}
.producto_listados.en_oferta:after {
  content: "";
  position: absolute;
  pointer-events: none;
  background: url(/imgs/sello_novedad-negro.png) 0 0 / 100% no-repeat;
  color: #FFF;
  width: 60px;
  height: 60px;
  top: 6px;
  left: 6px;
}
.producto_listados.novedad:after {
  content: "";
  position: absolute;
  pointer-events: none;
  background: url(/imgs/sello_novedad-negro.png) 0 0 / 100% no-repeat;
  color: #FFF;
  width: 60px;
  height: 60px;
  top: 6px;
  left: 6px;
  /*transform: rotate(-25deg);*/
}
.producto_listados.periodo_especial_precio:after {
  content: "";
  position: absolute;
  pointer-events: none;
  /*background: url(/imgs/sello_bf.png) 0 0 / 100% no-repeat;*/
  background: url(/imgs/sello_oferta-negro.png) 0 0 / 100% no-repeat;
  color: #FFF;
  width: 60px;
  height: 60px;
  top: 6px;
  left: 6px;
  /*transform: rotate(-25deg);*/
}
.relacionados .lista_productos .producto_listados:nth-child(7) {
  display: none;
}
.relacionados .lista_productos .producto_listados:nth-child(6) {
  display: none;
}
@media screen and (min-width: 640px) {
  .relacionados .lista_productos .producto_listados:nth-child(7) {
    display: flex;
  }
  .relacionados .lista_productos .producto_listados:nth-child(6) {
    display: flex;
  }
}
.relacionados .lista_productos .ordenar {
  display: none;
}
/*PRODUCTO*/
.mProducto .principal {
  text-align: left;
  margin: 0 auto;
  padding: 25px 0px 75px 0px;
  position: relative;
}
.mProducto .principal figure {
  position: relative;
}
.mProducto .en_oferta figure:after {
  content: "";
  position: absolute;
  pointer-events: none;
  width: 82px;
  height: 82px;
  top: 3px;
  left: 3px;
  background: url(/imgs/sello_oferta-negro.png) 0 0 / 100% no-repeat;
  /*transform: rotate(-25deg);*/
}
.mProducto .novedad figure:after {
  content: "";
  position: absolute;
  pointer-events: none;
  width: 82px;
  height: 82px;
  top: 3px;
  left: 3px;
  background: url(/imgs/sello-novedad.png) 0 0 / 100% no-repeat;
  /*transform: rotate(-25deg);*/
}
.mProducto .periodo_especial_precio figure:after {
  content: "";
  position: absolute;
  pointer-events: none;
  width: 82px;
  height: 82px;
  top: 3px;
  left: 3px;
  /*background: url(/imgs/sello_bf.png) 0 0 / 100% no-repeat;*/
  background: url(/imgs/sello_oferta-negro.png) 0 0 / 100% no-repeat;
  /*transform: rotate(-25deg);*/
}
.mProducto .principal figure img.ppal {
  width: 100%;
  display: block;
}
.mProducto .sellos {
  display: flex;
  margin-bottom: 15px;
}
.mProducto .sellos img {
  margin-right: 10px;
  width: 65px;
  height: 65px;
  object-fit: contain;
}
@media screen and (min-width: 500px) {
  .mProducto .sellos img {
    width: 75px;
    height: 75px;
  }
  .mProducto .novedad figure:after {
    width: 91px;
    height: 91px;
    top: 3px;
    left: 3px;
  }
}
.mProducto .principal .compra {
  margin-bottom: 20px;
  text-align: center;
}
.mProducto .principal .w_cantidad {
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
}
.mProducto select {
  border: 1px solid #CCC;
  width: 60px;
  vertical-align: top;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 500;
  /* text-align: center; */
  padding-left: 14px;
  background: url(/imgs/desplegar.svg) calc(100% - 5px) 50% / 10px no-repeat #FFF;
}
.mProducto .formatos {
  height: 40px;
}
.mProducto h1 {
  /*margin-bottom: 5px;*/
  font-size: 1.6rem;
}
.mProducto h2 {
  font-size: 1.3rem;
  font-family:var(--f_menus);
  color: #000;
  margin-bottom: 15px;
}
.mProducto .compra .detalle {
  font-size: 0.9rem;
  color: #666;
}
.mProducto .compra .peso_txt {
  font-size: 0.9rem;
  color: #000;
}
.mProducto .solouno .formatos {
  display: none;
}
.mProducto .formatos {
  margin: 3px auto 0;
  text-align: center;
  width: 263px;
  border: 1px solid #CCC;
  color: #555;
}
.mProducto .compra .precio {
  margin: 30px 0 15px;
}
.mProducto .compra .precio span {
  font-size: 2.3em;
  margin-right: 10px;
  color:var(--c2);
  font-weight: 400;
  font-family:var(--f_titulos);
}
.mProducto .compra .precio .msg_iva {
  font-size: 0.75rem;
  color: #CCC;
  font-family:var(--f_menus);
}
.mProducto .compra .precio .precio_kilo {
  color: #CCC;
  font-family:var(--f_menus);
  margin-bottom: 10px;
  font-size: 0.85rem;
  display: none;
}
.mProducto .compra #precio_formato_antes_sel {
  color: #000;
  margin-bottom: 15px;
  font-weight: 400;
  font-size: 0.875rem;
  opacity: 0;
}
.mProducto .compra #precio_formato_antes_sel.ver {
  opacity: 1;
}
.mProducto .compra button.comprar {
  border: none;
  font-size: 1.3em;
  font-family:var(--f_menus);
  background:url(/imgs/carro_blanco.svg) 15px 50% / 20px auto no-repeat var(--c2);
  padding: 10px 30px 10px 50px;
  color: #FFF;
  text-transform: uppercase;
  cursor: pointer;
  margin-left: 15px;
}
.mProducto .compra button.comprar:hover {
  background-color:var(--c1);
}
.bProducto.logeado .favorito {
  display: none;
}
.mProducto .compra .favorito {
  border: 1px solid #CCC;
  background: url(/imgs/favorito-off.svg) 50% / 25px auto no-repeat #FFF;
  width: 50px;
  margin-left: 15px;
}
.mProducto .compra .favorito.on {
  background-image: url(/imgs/favorito-on.svg);
}
.mProducto .compra button[disabled] {
  opacity: 0.5;
  pointer-events: none;
}
.mProducto .Datos {
  margin: 0 0 20px 0;
  font-size: 0.875rem;
  line-height: 1.4em;
}
.mProducto .Datos p {
  line-height: 1.4rem;
}
.mProducto .bloques_texto {
  margin: 0 0 20px 0;
  order: 5;
  flex: 0 51%;
  font-size: 0.875rem;
}
.mProducto .bloque .contenido_html {
  /*display: none;*/
  height: 0;
  transform: scale(0);
  transform-origin: left top;
}
.mProducto .bloque.ver {
  margin: 0 0 40px 0;
}
.mProducto .bloque h2 {
  background: url(/imgs/desplegar.svg) calc(100% - 10px) 60% / 10px no-repeat #FFF;
  padding: 5px 30px 8px 0;
  border-bottom: 1px solid #CCC;
  cursor: pointer;
  display: inline-block;
  /*min-width: 350px;*/
  width: 100%;
}
.mProducto .bloque.ver h2 {
  border: none;
  background: none;
  padding: 0;
  cursor: auto;
}
.mProducto .bloque.ver .contenido_html {
  height: auto;
  transform: scale(1);
  transition: transform 0.5s;
}
@media screen and (min-width: 500px) {
  .mProducto .bloque h2 {
    min-width: 350px;
    width: 100%;
  }
}
.mProducto .galeria {
  width: calc(100% + 10px);
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 10px 0 0;
}
.mProducto .galeria .pie {
  display: none;
}
.mProducto .galeria .pie.ver {
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
}
.mProducto .galeria a {
  margin: 0 10px 10px 0;
  flex: 0 0 calc(25% - 10px);
}
.mProducto .galeria img {
  width: 100%;
  height: auto;
}
.mProducto .cont_entrega {
  font-size: 0.875rem;
  line-height: 1.6;
  text-align: center;
}
.mProducto .cont_entrega a {
  font-size: 0.675rem;
  text-decoration: underline;
}
.mProducto .cont_entrega div {
  display: inline-block;
  text-align: left;
  width: 95%;
}
.mProducto .cont_entrega strong {
  display: block;
  line-height: 2;
  font-weight: 500;
}
.mProducto .cont_entrega ul {
  list-style-type: initial;
  padding-left: 15px;
}
.mProducto article .cont_ahorro {
  margin-bottom: 20px;
  /*display: none;*/
}
.mProducto article .cont_ahorro.ver {
  /*display: block;*/
}
.mProducto article .cont_ahorro * {
  margin: 0;
  font-size: 0.85rem;
  text-align: center;
}
.mProducto article .precio_recomendado span {
  text-decoration: line-through;
}
.mProducto .w_relacionados {
  background:var(--c4);
  padding: 30px 0;
}
.mProducto .volver {
  background: #F0F0F0;
  padding: 5px 10px;
  font-size: 0.85rem;
  display: inline-block;
  margin: 30px 0 0;
  border-radius: var(--b_radius);
  cursor: pointer;
}
.mProducto .personalizaciones {
  display: flex;
  flex-direction: column;
  text-align: left;
}
.mProducto .personalizaciones label {
  margin-bottom: 20px;
}
.mProducto .personalizaciones select {
  width: 100%;
  padding: 8px;
  margin-top: 5px;
  font-weight: 300;
  font-size: 0.9rem;
}
.mProducto .personalizaciones input {
  width: 100%;
  border: 1px solid #CCC;
  border-radius: var(--b_radius);
  padding: 8px 10px;
  font-size: 0.9rem;
  margin: 2px 0 5px;
  color:var(--c3);
}
.mProducto .personalizacion {
  margin-bottom: 15px;
  margin-top: 15px;
}
.mProducto .medidas {
  display: flex;
  flex-direction: column;
  text-align: left;
  margin: 20px 0;
}
.mProducto .medidas label {
  margin-bottom: 10px;
}
.mProducto .medidas input {
  width: 100%;
  border: 1px solid #CCC;
  border-radius: var(--b_radius);
  padding: 8px 10px;
  font-size: 0.9rem;
  margin: 2px 0 0;
  color:var(--c3);
}
.mProducto .medidas #excepciones_medidas_txt {
  border: 1px solid #F00;
  border-radius: var(--b_radius);
  padding: 8px 10px;
  font-size: 0.9rem;
  margin: 2px 0 0;
  color: #666;
  font-weight: 400;
  text-align: center;
}
.mProducto .medidas #excepciones_medidas_txt header {
  color: #F00;
  font-weight: 500;
  margin-bottom: 15px;
}
.mProducto .medidas #excepciones_medidas_txt .medidas_excluidas_txt header {
  margin-top: 10px;
  color: #000;
  margin-bottom: 5px;
}
.mProducto .medidas #excepciones_medidas_txt a {
  display: block;
  margin-top: 10px;
  color: #000;
  text-decoration: underline;
  cursor: pointer;
}
.mProducto #excepciones_medidas_txt .medidas_excluidas_txt {
  color: #000;
}
.mProducto .documentos {
  margin: 30px 0 0;
  text-align: left;
}
.mProducto .documentos header {
  font-size: 1rem;
  color: #000;
  font-weight: 400;
}
.mProducto .documentos ul {
  list-style-type: disc;
  padding: 0 0 0 35px;
}
.mProducto .documentos li {
  margin-bottom: 10px;
  padding-left: 5px;
  font-size: 0.875rem;
}
.mProducto .documentos small {
  opacity: 0.7;
  font-size: 0.75rem;
}
/*Producto no disponible*/
.nocompra .selector_formatos {
  pointer-events: none !important;
  opacity: 0.6 !important;
}
.mProducto .nocompra button {
  pointer-events: none !important;
  opacity: 0.6 !important;
}
.mProducto .nodisponible {
  color: #D60000;
  margin-top: 10px;
  font-size: 0.85rem;
  overflow: hidden;
  margin-bottom: 30px;
  pointer-events: none;
  align-items: center;
  justify-content: center;
  display: none;
}
.mProducto .nodisponible.ver {
  opacity: 1;
  pointer-events: auto;
  display: flex;
}
.mProducto .nodisponible .aviso {
  display: inline-block;
  padding: 4px 10px;
  border-radius: var(--b_radius);
  background:var(--c2);
  color: #FFF;
  font-size: 80%;
  margin-left: 10px;
  cursor: pointer;
}
/*Producto select formatos*/
.mProducto .solouno .selector_formatos {
  display: none;
}
.mProducto .formatos_sin_imagen .selector_formatos img {
  display: none;
}
.mProducto .selector_formatos {
  min-width: 300px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.mProducto .selector_formatos .formato img {
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 5px;
  border-radius: var(--b_radius);
}
.mProducto .selector_formatos .formato {
  position: relative;
}
.mProducto .selector_formatos .formato span:nth-child(2) {
  text-align: left;
  flex: 1;
}
.mProducto .selector_formatos .formato span:nth-child(3) {
  flex: 0 0 25%;
  white-space: nowrap;
  /*margin-top: -13px;*/
  text-align: right;
}
.mProducto .selector_formatos .formato.sin_precio_kilo span:nth-child(3) {
  margin-top: 0;
}
.mProducto .selector_formatos .formato .precio_kilo {
  font-size: 0.65rem;
  position: absolute;
  opacity: 0.6;
  bottom: 9px;
  right: 10px;
  display: none;
}
.mProducto .selector_formatos .formato_sel .precio_kilo {
  right: 40px;
}
.mProducto .selector_formatos .formato_sel {
  padding: 5px 40px 5px 10px;
  line-height: 1.2;
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 0.9rem;
  color: #000;
  font-weight: 500;
  background: url(/imgs/desplegar-negro.svg) calc(100% - 10px) 50% no-repeat;
  border: 1px solid #CCC;
  border-radius: var(--b_radius);
  margin: 0 auto;
  min-height: 3rem;
}
.mProducto .selector_formatos.desplegado .formato_sel {
  /*border-bottom: none;*/
  border-bottom-color: #EFEFEF;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  /*box-shadow: 6px 5px 10px -10px #000;*/
}
.mProducto .selector_formatos .w-formatos {
  transform: scale(0);
  position: absolute;
  border: 1px solid #CCC;
  border-top: none;
  margin: 0;
  max-height: 0;
  background: #FFF;
  color: #000;
  border-radius: 0 0 10px 10px;
  width: 100%;
  z-index: 2;
}
.mProducto .selector_formatos.desplegado .w-formatos {
  max-height: calc(10 * 3rem + 1.5rem);
  transform: scale(1);
  overflow-y: auto;
  box-shadow: 6px 5px 10px -10px #000;
}
.mProducto .w-formatos .formato:not(:last-child) {
  border-bottom: 1px solid #FFF;
}
.mProducto .w-formatos .formato {
  padding: 0 10px;
  height: 3rem;
  line-height: 1.2;
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 0.9rem;
  /*margin: 5px 0;*/
}
.mProducto .w-formatos .formato.sel {
  background: rgba(0, 0, 0, 0.10);
  font-weight: 500;
}
.mProducto .w-formatos .formato:hover {
  background: rgba(0, 0, 0, 0.10);
}
/*Producto compra rapida*/
.mProducto .compra_rapida {
  display: none;
}
.bProducto.con_personalizaciones .compra_rapida {
  display: none;
}
@media screen and (max-width: 999px) {
  .bProducto .pFooter .w-nav {
    padding-bottom: 120px;
  }
  .mProducto .compra_rapida {
    display: block;
    position: fixed;
    text-align: center;
    width: 100%;
    max-width: 450px;
    bottom: -20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color:var(--c2);
    padding: 10px 20px 30px;
    color: #FFF;
    z-index: 2;
    border-radius: 5px 5px 0 0;
    transform: translatey(100%);
    transition: transform 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
  }
  .mProducto .compra_rapida.ver {
    box-shadow: 0px 2px 19px -5px #FFF;
    transform: translatey(0);
  }
  .mProducto .compra_rapida .titulo {
    font-weight: 500;
    margin-bottom: 10px;
    margin-bottom: 15px;
    padding-bottom: 5px;
    text-transform: uppercase;
    line-height: 1.2;
    border-bottom:1px solid var(--c1);
    pointer-events: none;
  }
  .mProducto .compra_rapida.con_formatos .titulo {
    background: url(/imgs/desplegar-blanco.svg) 98% 50% no-repeat;
    cursor: pointer;
    pointer-events: auto;
  }
  .mProducto .compra_rapida .titulo small {
    display: block;
    margin-top: 3px;
    text-transform: none;
  }
  .mProducto .compra_rapida .formatos_mini {
    transform: scale(0);
    margin: 0;
    padding: 0;
    max-height: 0;
    transition: max-height 0.3s cubic-bezier(0.19, 1, 0.22, 1);
    /*scrollbar-width:none;*/
    background: #FFF;
    color: #000;
    border-radius: var(--b_radius);
  }
  .mProducto .compra_rapida .formatos_mini.ver {
    margin: 20px 0;
    max-height: calc(5 * 3rem + 1.5rem);
    transition-duration: 0.5s;
    transform: scale(1);
    overflow-y: auto;
  }
  /*.mProducto .compra_rapida .formatos_mini::-webkit-scrollbar {
    display: none;
    (* Chrome Safari *)
  }*/
  .mProducto .compra_rapida .formatos_mini li {
    padding: 0 10px;
    height: 3rem;
    line-height: 1.2;
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: 0.9rem;
  }
  .mProducto .formatos_sin_imagen .compra_rapida .formatos_mini li img {
    display: none;
  }
  .mProducto .compra_rapida .formatos_mini li img {
    width: 2.5rem;
    height: 2.5rem;
    margin-right: 5px;
    border-radius: var(--b_radius);
  }
  .mProducto .compra_rapida .formatos_mini li span:nth-child(2) {
    text-align: left;
    flex: 1;
  }
  .mProducto .compra_rapida .formatos_mini li span:nth-child(3) {
    flex: 0 0 25%;
    white-space: nowrap;
    text-align: right;
  }
  .mProducto .compra_rapida .formatos_mini li.sel {
    background:var(--c1);
    font-weight: 500;
  }
  .mProducto .compra_rapida .precio {
    font-size: 1.3rem;
    white-space: nowrap;
    position: relative;
  }
  .mProducto .compra_rapida .cantidad {
    font-size: 0.65rem;
    position: absolute;
    top: -10px;
    left: 3px;
  }
  .mProducto .compra_rapida .w-precio-comprar {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 500;
    line-height: 1.2;
  }
  .mProducto .compra_rapida button {
    border: none;
    font-size: 1em;
    font-family:var(--f_menus);
    background:url(/imgs/carro_blanco.svg) 15px 50% / 20px auto no-repeat var(--c1);
    background: url(/imgs/carro_blanco.svg) 15px 50% / 20px auto no-repeat #000;
    padding: 10px 30px 10px 50px;
    color: #FFF;
    text-transform: uppercase;
    cursor: pointer;
    margin-left: 50px;
  }
}
/*AVISO DISPONIBILIDAD*/
#aviso_disponibilidad_modal label {
  margin-bottom: 20px;
  display: block;
}
#aviso_disponibilidad_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(--c2);
  text-align: center;
  letter-spacing: 0.5px;
}
#aviso_disponibilidad_modal .botonera {
  text-align: center;
  margin: 40px 0 30px;
}
#aviso_disponibilidad_modal .btn {
  font-size: 1.2rem;
  width: 200px;
}
#aviso_disponibilidad_modal .btncerrar {
  display: none;
  background: #666;
}
/*BUSCADOR*/
.mBusqueda h1 {
  text-align: center;
  margin: 20px 0 5px;
  font-family:var(--f_menus);
}
.mBusqueda .res {
  text-align: center;
  margin-bottom: 40px;
}
/*CARRITO*/
.btn_eliminar {
  background: url(/imgs/papelera.svg) 50% / auto 16px no-repeat;
  width: 16px;
  height: 16px;
  display: inline-block;
}
.mCarro h1 {
  font-size: 1.5rem;
  text-align: center;
  font-family:var(--f_menus);
  margin: 30px 0 50px;
}
.mCarro h1 small {
  white-space: nowrap;
  display: block;
  font-size: 0.85rem;
  color:var(--c3);
}
.productos_carrito {
  margin-bottom: 20px;
  /*border: 1px solid;*/
}
.productos_carrito .titulo {
  color:var(--c2);
  font-weight: 500;
  margin-bottom: 0;
}
.personalizado {
  font-size: 0.8rem;
  color: #AAA;
}
.personalizado ul {
  list-style: square;
  margin: 3px 0 10px 15px;
}
.personalizado ul ul {
  list-style: none;
}
.personalizado li {
  margin: 0 0 5px 0;
}
.personalizado strong {
  font-weight: bold;
}
.personalizado a {
  text-decoration: underline;
}
.productos_carrito .titulo:hover {
  text-decoration: underline;
}
.productos_carrito .detalle {
  font-size: 0.8rem;
  margin-bottom: 10px;
  color: #AAA;
}
.productos_carrito .detalle p {
  margin-bottom: 0;
}
.productos_carrito .producto {
  display: flex;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #CCC;
}
.productos_carrito .producto:last-child {
  border-bottom: none;
}
.productos_carrito .producto figure {
  flex: 0 100px;
  margin-right: 15px;
}
.productos_carrito .producto img {
  width: 100%;
  height: auto;
  display: block;
}
.productos_carrito select {
  border: 1px solid #CCC;
  width: 60px;
  vertical-align: top;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 500;
  padding: 5px 14px;
  background: url(/imgs/desplegar.svg) calc(100% - 5px) 50% / 10px no-repeat #FFF;
}
.productos_carrito .datos {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.mCarro .productos_carrito .acciones {
  margin-top: auto;
  font-size: 0.7rem;
  margin-left: auto;
  color: #FFF;
  display: flex;
  min-height: 16px;
}
.mCarro .acciones .btn_eliminar {
  margin-top: auto;
  order: 2;
  font-size: 0.7rem;
  padding-left: 20px;
  background-position: 0;
  margin-left: auto;
  overflow: hidden;
  color: #FFF;
}
.mCarro .acciones .btn_lista_deseos {
  margin-right: 30px;
  background: url(/imgs/favorito.svg) 0px 2px / 15px no-repeat #FFF;
  padding: 0 0 0 22px;
}
.mCarro .acciones .btn_lista_deseos:first-child {
  margin: 0;
}
.productos_carrito .precio {
  margin-right: 11px;
}
.mCarro .resumen {
  border: 1px solid #333;
  background: #F9F9F9;
  padding: 10px;
  margin-bottom: 20px;
  border-radius:var(--b_radius);
}
.mCarro .resumen > * {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  font-size: 0.9rem;
}
.mCarro .resumen .total {
  color: #000;
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 0;
  flex-wrap: wrap;
}
.mCarro .resumen .tiempo_envio {
  font-size: 0.8rem;
  width: 100%;
  margin-top: 15px;
  text-align: center;
  color:var(--c1);
}
.mCarro .resumen .info_envio {
  margin-top: -18px;
  font-size: 0.65rem;
}
.mCarro .resumen .faltan {
  color:var(--c2);
  text-align: right;
}
.mCarro .realizar_pedido {
  margin-bottom: 20px;
  border-radius:var(--b_rad ius);
  background:var(--c2);
  display: block;
  text-align: center;
  color: #FFF;
  padding: 10px 0;
  font-size: 1.2rem;
  border-radius: var(--b_radius);
}
.mCarro .continuar_comprando {
  display: block;
  text-align: center;
  color:var(--c2);
  font-size: 0.8rem;
  margin-bottom: 40px;
}
.mCarro .w_relacionados {
  /*background: #FCF7F1;*/
  padding: 60px 0 30px;
}
.mCarro .relacionados h2 {
  color:var(--c2);
  text-transform: uppercase;
  margin-bottom: 30px;
  font-size: 1.4rem;
}
.mCarro .w_cantidad {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.mCarro .cupon {
  font-size: 0.875rem;
  margin-bottom: 40px;
  color:var(--c3);
  display: flex;
  flex-wrap: wrap;
  /*flex-direction: column;*/
  justify-content: space-between;
}
.mCarro .cupon p {
  text-align: left;
  font-size: 0.75rem;
  width: 100%;
  margin: 0 0 5px 0;
}
.mCarro .cupon input {
  border:1px solid var(--c3);
  /*border-radius: var(--b_radius);*/
  padding: 4px 5px;
  width: 56%;
  margin-bottom: 5px;
}
.mCarro .cupon .btn {
  padding: 5px 5px 0 5px;
  line-height: 0.9rem;
  text-align: center;
  height: 26px;
  font-weight: 300;
  width: 42%;
  background:var(--c3);
}
.mCarro .cupon_aplicado {
  text-align: right;
  font-size: 0.8rem;
  margin-bottom: 10px;
}
.mCarro #msgcupon {
  display: none;
}
.mCarro #msgcupon::before {
  content: "✓";
  font-size: 1.3rem;
  vertical-align: sub;
  margin-left: 5px;
  color:var(--c1);
}
.mCarro #msgcupon.error::before {
  content: "✗";
  color: #C00;
}
.mCarro .resumen .iva {
  color: #666;
  font-size: 0.75rem;
  font-weight: 500;
  margin-bottom: 0;
  display: block;
  text-align: right;
  margin-top: 5px;
}
/*OnePageCheckOut*/
/*.bOPC .pHeader {
  display: none;
}*/
.bOPC h1 {
  font-family:var(--f_menus);
  text-align: center;
  margin: 30px 0;
}
.bOPC .haz_login {
  font-size: 0.8rem;
  text-align: center;
  margin: 0 0 20px;
  width: 100%;
}
.bOPC .haz_login .acceso {
  color:var(--c2);
  background: none;
  cursor: pointer;
}
.mOPC input[type=text], .mOPC input[type=email] {
  font-size: 0.8rem;
  border-radius: var(--b_radius);
  border:1px solid var(--c3);
  line-height: 0.9rem;
  padding: 0px 0 0px 5px;
  height: 25px;
  color: #666;
}
/*OnePageCheckOut: datos de usuario*/
.mOPC .w_usu_pass {
  padding-bottom: 30px;
  margin-bottom: 20px;
  border-bottom:1px solid var(--c1);
}
#CapaEnvio {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#CapaEnvio label {
  width: calc(50% - 5px);
  margin-bottom: 10px;
}
#CapaEnvio label span {
  display: none;
}
#CapaEnvio .email {
  width: 100%;
}
#CapaEnvio input {
  width: 100%;
}
#CapaEnvio .comprar_y_registrar label {
  width: 100%;
  display: block;
  color:var(--c1);
  margin: 4px 0 0 0px;
  font-size: 0.75rem;
  font-weight: 500;
}
#CapaEnvio .comprar_y_registrar input {
  display: none;
}
#CapaEnvio .comprar_y_registrar label:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
#CapaEnvio .comprar_y_registrar input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
/*OnePageCheckOut: datos de envio*/
#direccion_envio_facturacion {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#direccion_envio_facturacion label span {
  display: none;
}
#direccion_envio_facturacion select {
  font-size: 0.8rem;
  border-radius: var(--b_radius);
  border: none;
  border:1px solid var(--c3);
  line-height: 0.9rem;
  margin: 0 0 5px 0;
  padding: 0px 0 0px 1px !important;
  width: 100%;
  background: #FFF;
  height: 27px;
  color: #666;
}
#direccion_envio_facturacion form, #direccion_envio_facturacion #campos_direccion_envio {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#direccion_envio_facturacion label {
  width: calc(50% - 5px);
  margin-bottom: 15px;
}
#direccion_envio_facturacion .calle {
  width: 100%;
}
#direccion_envio_facturacion .cp {
  flex: 0 30%;
}
#direccion_envio_facturacion .cp + label {
  flex: 0 calc(70% - 10px);
}
#direccion_envio_facturacion .email {
  width: 100%;
}
#direccion_envio_facturacion input {
  width: 100%;
}
#direccion_envio_facturacion #CapaFacturacion {
  display: none;
}
#direccion_envio_facturacion #CapaFacturacion .nombre {
  width: 100%;
}
#direccion_envio_facturacion #CapaFacturacion.ver {
  display: flex;
  margin-top: 20px;
}
#direccion_envio_facturacion #CapaFacturacion h2 {
  font-size: 1rem;
  width: 100%;
}
#direccion_envio_facturacion .cambiar_direccion_facturacion label {
  width: 100%;
  display: block;
  color:var(--c1);
  margin: 4px 0 0 0px;
  font-size: 0.75rem;
  font-weight: 500;
}
#direccion_envio_facturacion .cambiar_direccion_facturacion input {
  display: none;
}
#direccion_envio_facturacion .cambiar_direccion_facturacion label:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
#direccion_envio_facturacion .cambiar_direccion_facturacion input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
#direccion_envio_facturacion .guardar_direccion {
  width: 100%;
  text-align: center;
}
#direccion_envio_facturacion .guardar_direccion label {
  width: 100%;
  display: block;
  color:var(--c1);
  margin: 4px 0 20px 0px;
  font-size: 0.75rem;
  font-weight: 500;
}
#direccion_envio_facturacion .guardar_direccion input {
  display: none;
}
#direccion_envio_facturacion .guardar_direccion label:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
#direccion_envio_facturacion .guardar_direccion input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
#direccion_envio_facturacion .w_direcciones {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
  position: relative;
  align-items: center;
}
#direccion_envio_facturacion .w_direcciones:after {
  content: "";
  width: 90%;
  border-bottom:1px solid var(--c1);
  margin: 10px auto 0;
}
#direccion_envio_facturacion .w_direcciones a {
  color:var(--c2);
  font-size: 0.75rem;
}
#direccion_envio_facturacion .w_direcciones span {
  font-size: 0.9rem;
}
#direccion_envio_facturacion .w_direcciones select {
  margin-top: 2px;
}
/*OnePageCheckOut: comprar y registrar*/
#direccion_envio_facturacion .comprar_y_registrar {
  width: 100%;
  text-align: center;
}
#direccion_envio_facturacion .comprar_y_registrar label {
  width: 100%;
  display: block;
  color:var(--c1);
  margin: 4px 0 20px 0px;
  font-size: 0.75rem;
  font-weight: 500;
}
#direccion_envio_facturacion .comprar_y_registrar input {
  display: none;
}
#direccion_envio_facturacion .comprar_y_registrar label:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
#direccion_envio_facturacion .comprar_y_registrar input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
#direccion_envio_facturacion #nuevo_usuario_pass {
  display: none;
}
#direccion_envio_facturacion #nuevo_usuario_pass {
  display: none;
}
#direccion_envio_facturacion #nuevo_usuario_pass.ver {
  width: 100%;
  margin: -5px 0 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  border: none;
}
#nuevo_usuario_pass label {
  width: calc(50% - 5px);
  margin-bottom: 10px;
}
#nuevo_usuario_pass label span {
  display: none;
}
/*OnePageCheckOut: formas de pago*/
#fMetodoPago {
  border-bottom: 1px solid #CCC;
  padding-bottom: 30px;
  margin-bottom: 30px;
}
#fMetodoPago label {
  font-size: 0.85rem;
  font-weight: 500;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}
#fMetodoPago label:last-child {
  margin-bottom: 0;
}
#fMetodoPago input {
  display: none;
}
#fMetodoPago label:before {
  content: "";
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  min-width: 24px;
  min-height: 24px;
  max-width: 24px;
  max-height: 24px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 10px;
  border-radius: 50%;
}
#fMetodoPago input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
  content: "✔";
  color: #FFF;
}
#fMetodoPago label img {
  width: auto;
  height: 25px;
  margin: 0 10px 0 0;
}
#fMetodoPago .OtrasOpcionesPago {
  color: #000;
  font-size: 0.9rem;
  margin: 0;
  display: inline-block;
  background: url(../imgs/desplegar.svg) 100% 6px / 14px no-repeat;
  padding: 0 20px 0 0;
  cursor: pointer;
}
#fMetodoPago .OtrasOpcionesPago + div {
  display: none;
  margin-top: 30px;
}
/*OnePageCheckOut: formas de envio*/
#fMetodoEnvio {
  border-bottom: 1px solid #CCC;
  padding-bottom: 30px;
  margin-bottom: 30px;
}
#fMetodoEnvio strong {
  color: #000;
  margin-right: 5px;
}
#fMetodoEnvio label {
  font-size: 0.85rem;
  font-weight: 500;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}
#fMetodoEnvio label:last-child {
  margin-bottom: 0;
}
#fMetodoEnvio input {
  display: none;
}
#fMetodoEnvio label:before {
  content: "";
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 10px;
  border-radius: 50%;
}
#fMetodoEnvio input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
  content: "✔";
  color: #FFF;
}
/*OnePageCheckOut: carrito*/
.mOPC .productos_carrito .producto figure {
  flex: 0 75px;
  margin-right: 10px;
}
.mOPC .productos_carrito .w_precio_cantidad {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8rem;
  margin: auto 0 0;
  color: #AAA;
}
.mOPC .productos_carrito .precio_u {
  margin: 0;
}
.mOPC .productos_carrito .personalizacion {
  font-size: 0.8rem;
  color: #AAA;
}
.mOPC .productos_carrito .precio {
  text-align: right;
  font-size: 1rem;
  font-weight: 500;
  color: #000;
}
/*OnePageCheckOut: totales*/
.mOPC .resumen {
  border: 1px solid #666;
  padding: 10px;
  margin-bottom: 20px;
}
.mOPC .resumen > * {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  font-size: 0.9rem;
}
.mOPC .resumen .total {
  color: #000;
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 0;
  flex-wrap: wrap;
}
.mOPC .resumen .tiempo_envio {
  font-size: 0.8rem;
  width: 100%;
  margin-top: 15px;
  text-align: center;
  color:var(--c1);
}
.mOPC .resumen .info_envio {
  margin-top: -18px;
  font-size: 0.65rem;
}
.mOPC .resumen .faltan {
  color:var(--c2);
  width: 100%;
  text-align: right;
}
.mOPC .btnPago {
  margin-bottom: 20px;
  background:var(--c2);
  display: block;
  text-align: center;
  color: #FFF;
  padding: 15px 0;
  font-size: 1.5rem;
  border-radius: var(--b_radius);
  font-weight: 500;
  letter-spacing: 1px;
  width: 100%;
}
.mOPC .btnPago[disabled] {
  opacity: 0.6;
  pointer-events: none;
}
.mOPC .continuar_comprando {
  display: block;
  text-align: center;
  color:var(--c2);
  font-size: 0.8rem;
  margin-bottom: 40px;
}
.mOPC .aceptar_condiciones {
  margin: 30px;
}
.mOPC .aceptar_condiciones label {
  width: 100%;
  display: block;
  color:var(--c1);
  margin: 4px 0 0 0px;
  font-size: 0.75rem;
  font-weight: 500;
}
.mOPC .aceptar_condiciones input {
  display: none;
}
.mOPC .aceptar_condiciones label:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
.mOPC .aceptar_condiciones input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
#cOPCarrito #flInfoadicional {
  font-size: 0.8rem;
  border-radius: var(--b_radius);
  border: none;
  border:1px solid var(--c3);
  line-height: 0.9rem;
  padding: 7px 0 7px 5px;
  width: 100%;
  height: 75px;
  color: #666;
  margin-bottom: 20px;
  resize: vertical;
}
.mOPC .resumen .iva {
  color: #666;
  font-size: 0.75rem;
  font-weight: 500;
  margin-bottom: 0;
  display: block;
  text-align: right;
  margin-top: 5px;
}
/**/
#mbOPCarrito #cOPCarrito {
  display: flex;
  flex-direction: column;
}
#cOPCarrito .opCol {
  border-bottom:1px solid var(--c1);
  padding-bottom: 30px;
  margin-bottom: 20px;
}
#cOPCarrito .opCol:last-of-type {
  border: none;
}
#cOPCarrito .opCol h2 {
  font-size: 1.2rem;
  margin: 0 0 20px 0;
  font-family:var(--f_menus);
  text-align: center;
}
#cOPCarrito .aceptar_condiciones label {
  width: 100%;
  display: block;
  color:var(--c1);
  margin: 4px 0 25px 0px;
}
#cOPCarrito .aceptar_condiciones label a {
  text-decoration: underline;
}
#cOPCarrito .aceptar_condiciones input {
  display: none;
}
#cOPCarrito .aceptar_condiciones label:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border:1px solid var(--c1);
  text-align: center;
  margin-right: 6px;
  border-radius: var(--b_radius);
}
#cOPCarrito .aceptar_condiciones input:checked + label:before {
  background:var(--c1);
  border-color:var(--c1);
}
#cOPCarrito .msg {
  margin: 10px 0;
  font-size: 0.7rem;
}
#cOPCarrito .direccion p strong {
  font-size: 0.9rem;
}
#cOPCarrito .direccion p {
  margin-bottom: 0;
}
#cOPCarrito .direccion .botonera {
  margin: 15px 0 25px;
}
#cOPCarrito .direccion .botonera a, #cOPCarrito .direccion .botonera button {
  font-size: 0.85rem;
  border-radius: var(--b_radius);
}
#cOPCarrito .direccion p {
  float: none;
}
#cOPCarrito .msg.final li:last-child:first-child {
  text-align: center;
  list-style-type: none;
  margin: 0;
}
#cOPCarrito .msg.final li {
  margin: 5px 0;
  list-style-type: square;
  text-align: left;
  margin-left: 20px;
}
@media screen and (min-width: 600px) {
  #cOPCarrito {
    display: flex;
    flex-wrap: wrap;
  }
  #cOPCarrito .opCol {
    width: 50%;
    border-bottom: none;
  }
  #cOPCarrito .opCol:nth-child(1) {
    border-right: 1px solid #CCC;
    padding-right: 30px;
  }
  #cOPCarrito .opCol:nth-child(2) {
    padding-left: 20px;
  }
  #cOPCarrito .opCol:nth-child(3) {
    width: 500px;
    border-top:1px solid var(--c1);
    padding-top: 20px;
    margin: 0 auto;
  }
}
.att_cliente {
  margin-bottom: 40px;
  padding: 15px 10px;
  text-align: center;
  line-height: 1.5;
  background:var(--c3);
  color: #FFF;
  font-family:var(--f_titulos);
  font-size: 1.3rem;
}
.att_cliente a {
  white-space: nowrap;
}
/*Lista deseos*/
.mListaDeseos h1 {
  margin-bottom: 30px;
}
.mListaDeseos .eliminar_lista_deseos {
  font-size: 0.85rem;
  margin: 15px 0 0;
  cursor: pointer;
}
.bEditarPerfil .max_wb {
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  flex-direction: column;
}
.bEditarPerfil .max_wb form {
  width: 50%;
  min-width: 280px;
}
/*Mis direcciones*/
.bMisDirecciones .direcciones {
  display: flex;
  flex-wrap: wrap;
}
.bMisDirecciones .direccion {
  border: 1px solid #AAA;
  padding: 20px;
  border-radius: 5px;
  flex: 1 calc(100% - 20px);
  margin-right: 20px;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  position: relative;
}
.bMisDirecciones .direccion .botonera {
  display: flex;
  justify-content: space-between;
  margin-top: auto;
  font-size: 0.85rem;
}
.bMisDirecciones .direccion .btn_favorita {
  background: url(/imgs/favorito-off.svg) 50% / 25px auto no-repeat #FFF;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 10px;
  right: 10px;
}
.bMisDirecciones .direccion.favorita .btn_favorita {
  background-image: url(/imgs/favorito-on.svg);
}
.bMisDirecciones #crear {
  margin: 40px 0;
}
.bMisDirecciones #fDireccion {
  display: none;
  max-width: 300px;
  width: 100%;
  margin: 0 auto;
}
.bMisDirecciones #fDireccion label {
  display: block;
  margin: 15px 0;
}
.bMisDirecciones #fDireccion input {
  display: block;
  margin-top: 5px;
  padding: 3px 5px 1px;
  border: 1px solid;
  width: 100%;
}
.bMisDirecciones #fDireccion select {
  display: block;
  margin-top: 5px;
  padding: 3px 5px 1px;
  width: 100%;
  border: 1px solid;
}
.bMisDirecciones #fDireccion button {
  margin-right: 20px;
}
@media screen and (min-width: 500px) {
  .bMisDirecciones .direccion {
    flex: 1 calc(50% - 20px);
  }
}
@media screen and (min-width: 768px) {
  .bMisDirecciones .direccion {
    flex: 1 calc(25% - 20px);
  }
}
@media screen and (min-width: 1000px) {
  .bMisDirecciones .direccion {
    flex: 0 calc(25% - 20px);
  }
}
/*MINI CARRITO*/
.mini_carrito {
  z-index: 999;
  background: #FFF;
}
.mini_carrito .w_precio_cantidad {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.8rem;
  height: 100%;
  align-items: flex-end;
  justify-content: space-between;
}
.mini_carrito .precio_u {
  width: 100%;
  align-self: flex-start;
  margin: 0;
}
.mini_carrito .personalizacion {
  color: #666;
}
.mini_carrito .productos_carrito .producto figure {
  flex: 0 60px;
  margin-right: 10px;
}
.mini_carrito .productos_carrito .precio {
  margin: 0;
}
.mini_carrito .fin {
  text-align: center;
  font-size: 0.85rem;
  color: #000;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}
.mini_carrito .total strong {
  font-size: 1.3rem;
  margin-left: 5px;
  line-height: 1;
}
.mini_carrito .ir_carrito {
  text-align: center;
  margin: 5px 0 0;
  width: 100%;
}
.mini_carrito .ir_carrito .btn {
  border-radius: var(--b_radius);
  background:url(/imgs/carro_blanco.svg) 10% 50% / auto 60% no-repeat var(--c2);
  width: 100%;
  text-transform: uppercase;
  padding: 10px;
  margin: 5px 0 0;
  letter-spacing: 0.5px;
}
@media screen and (max-width: 999px) {
  .mini_carrito {
    position: fixed;
    width: 95%;
    max-width: 450px;
    left: 50%;
    transition: transform 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    /*en el top*/
    top: -20px;
    transform: translate(-50%, -100%);
    border-radius: 0 0 3px 3px;
    padding: 40px 20px 20px;
    /*en el bottom*/
    top: auto;
    bottom: -20px;
    padding: 20px 20px 40px 20px;
    transform: translate(-50%, 100%);
    border-radius: 3px 3px 0 0;
  }
  .mini_carrito.ver, .mini_carrito:hover {
    box-shadow: 0px 2px 19px -5px #000;
    transform: translatex(-50%) translatey(0);
  }
  .mini_carrito:after {
    content: "";
    position: absolute;
    bottom: 8px;
    height: 1px;
    background: #CCC;
    left: 30%;
    right: 30%;
  }
  .mini_carrito .productos_carrito {
    margin: 0;
  }
  .mini_carrito .mini_carrito_titulo {
    display: none;
  }
  .mini_carrito .productos_carrito .producto {
    display: none;
  }
  .mini_carrito .productos_carrito .producto .titulo {
    font-size: 0.8rem;
    color:var(--c2);
  }
  .mini_carrito .productos_carrito .producto:last-of-type {
    display: flex;
    padding-bottom: 5px;
    margin-bottom: 10px;
  }
  /*.mini_carrito {
    box-shadow:0px 2px 19px -5px var(--c2);
    transform: translatex(-50%) translatey(0);
  }*/
}
@media screen and (min-width: 1000px) {
  .mini_carrito {
    display: flex;
    flex-direction: column;
    position: fixed;
    width: 360px;
    right: -361px;
    top: 1vh;
    max-height: 98vh;
    padding: 0 40px 0 0;
    overflow-y: auto;
    transition: right 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
    border-radius: 3px 0 0 3px;
    border:1px solid var(--c2);
  }
  .mini_carrito .mini_carrito_titulo {
    text-align: center;
    width: 100%;
    display: block;
    text-transform: uppercase;
    font-size: 1.2rem;
    color:var(--c2);
    padding: 20px 20px 10px 20px;
    box-shadow:-1px 1px 3px -3px var(--c2);
    z-index: 2;
  }
  .mini_carrito .productos_carrito {
    overflow-y: auto;
    padding: 20px 20px 0 20px;
  }
  .mini_carrito .productos_carrito .producto .titulo {
    color: #000;
    font-size: 0.9rem;
  }
  .mini_carrito .fin {
    padding: 0 20px 20px;
  }
  .mini_carrito.ver, .mini_carrito:hover {
    right: -40px;
    /*box-shadow: -1px 4px 7px -5px #000, -4px -1px 7px -5px #000;*/
  }
  /*.mini_carrito {
    right: -40px;
    (*right: 0;*)
    box-shadow:-1px 4px 7px -5px var(--c2), -4px -1px 7px -5px var(--c2);
  }*/
}
/*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;
}
/*FILTROS ATRIBUTOS*/
.filtros {
  padding: 30px 10px 0 0;
  border-top:1px solid var(--c3);
  margin-top: 30px;
  max-width: 350px;
  position: relative;
  margin-left: -8px;
}
.filtro_movil {
  display: none;
}
.filtros header {
  margin-bottom: 15px;
  text-align: left;
  font-weight: bold;
  display: block;
  color:var(--c2);
  font-size: 1.1rem;
  padding: 5px;
}
.filtros .cerrar {
  display: none;
}
.filtros .listado_checks {
  height: auto;
  border: none;
}
.filtros .listado_checks .check {
  border: none;
  width: 100%;
}
.filtros .listado_checks .grp > span {
  font-weight: 400;
  text-transform: uppercase;
  padding: 5px;
  font-size: 0.8rem;
  border: none;
  background: #F4F4F4;
  display: block;
}
.filtros .listado_checks .grp {
  margin-bottom: 20px;
  border: none !important;
}
.filtros button {
  background:var(--c3);
  color: #FFF;
  padding: 10px;
  width: calc(100% - 6px);
  border: 0;
  margin: 3px;
  border-radius:var(--b_radius);
}
.filtros .listado_checks .grp.plegable .titulo {
  background: url(/imgs/desplegar_derecha.svg) 8px 7px / auto 10px no-repeat #F4F4F4;
  padding-left: 20px;
  cursor: pointer;
}
.filtros .listado_checks .grp.plegable.ver .titulo {
  background: url(/imgs/desplegar_abajo.svg) 5px 10px / 10px auto no-repeat #F4F4F4;
}
.filtros .listado_checks .grp.plegable:not(.ver) label {
  display: none;
}
@media screen and (max-width: 999px) {
  .filtros {
    display: none;
  }
  .filtros.ver {
    position: fixed;
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    background: #FFF;
    z-index: 99999;
    padding: 10px 10px 20px 15px;
    margin: 0;
    border-top: none;
    box-shadow: 0 0 17px #444;
    width: 300px;
    overflow-x: hidden;
    overflow-y: scroll;
    animation: menuIn 0.6s;
  }
  .filtros.ver:before {
    content: " ";
    opacity: 0.4;
    background: #000;
    display: block;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 300px;
    z-index: -99999991;
    animation: SombraFiltrosIn 0.6s;
  }
  @keyframes SombraFiltrosIn {
    from {
      left: 0px;
    }
    to {
      left: 300px;
    }
  }
  .filtros.ver .cerrar {
    display: block;
    position: absolute;
    top: 10px;
    right: 15px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border: 1px solid rgba(0, 0, 0, 0.5);
    border-radius: 15px;
    text-align: center;
    font-size: 20px;
    cursor: pointer;
    display: inline-block;
  }
}
/*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%;
}
.mContacto input:not([type=checkbox]), .mContacto textarea {
  display: block;
  margin: 2px 0 15px;
  width: 100%;
  border:1px solid var(--c1);
  padding: 5px;
  font-size: 0.9rem;
  border-radius:var(--b_radius);
}
.mContacto textarea {
  height: 100px;
}
.mContacto iframe {
  margin-bottom: 10px;
  border-radius:var(--b_radius);
}
.mContacto #fContacto {
  margin-bottom: 40px;
}
.mContacto #fContacto .responsable {
  font-size: 0.85rem;
  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 button {
  border: none;
  background:var(--c2);
  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(--c1);
}
.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: 0;
}
@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-left: 30px;
    flex: 1 0 50%;
  }
}
/*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;
  border-radius:var(--b_radius);
}
.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 .categorias {
  margin: 40px 0;
  padding: 30px 0 0;
  position: relative;
  text-transform: uppercase;
}
.blog .categorias:before {
  content: "";
  position: absolute;
  top: 0;
  left: 10%;
  height: 1px;
  width: 80%;
  border-bottom:1px solid var(--c2);
}
.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%;
  border-radius:var(--b_radius);
}
.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;
}
.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 {
  margin-bottom: 30px;
}
.contenedor .bloque .contenido.max_w {
  margin-left: auto;
  margin-right: auto;
}
.contenedor .bloque {
  padding: 20px 20px 60px;
}
.contenedor .bloque.fisioterapiapt {
  background: url(../imgs/bg_fisioterapia.jpg) 0 0 / cover no-repeat;
  padding: 30px 15px;
  color: #FFF;
}
.contenedor .bloque.fisioterapiapt p span {
  display: inline-block;
  border: 1px solid #FFF;
  line-height: 25px;
  margin-right: 10px;
  text-align: center;
  height: 36px;
  width: 36px;
  padding: 5px;
  border-radius: 20px;
}
.contenedor .bloque.fisioterapiapt p {
  text-shadow:0 0 5px var(--c1);
}
#cBServicios {
  display: none;
}
/*CONTENEDORES: BLOQUE VERTICAL*/
.contenedor .bloque_vertical figure {
  justify-content: center;
  align-content: center;
  display: flex;
}
.contenedor .bloque_vertical {
  padding: 30px 15px 60px;
}
.contenedor .bloque_vertical h2 {
  margin-top: 0;
  color:var(--c2);
}
.contenedor .bloque_vertical img {
  max-width: 100%;
  margin-bottom: 20px;
  max-width: 100%;
  border-radius:var(--b_radius);
  display: block;
}
.contenedor .bloque_vertical .w_txt {
}
@media screen and (min-width: 768px) {
  .contenedor .bloque_vertical .cont {
    display: flex;
    text-align: left;
    align-items: flex-start;
    margin: 0 auto;
  }
  .contenedor .bloque_vertical .w_txt {
    flex: 0 0 calc(70% - 10px);
  }
  .contenedor .bloque_vertical.izquierda figure {
    margin: 0 20px 0 0;
    flex: 0 0 calc(30% - 10px);
  }
  .contenedor .bloque_vertical.derecha figure {
    order: 2;
    margin: 10px 0 0 20px;
    flex: 0 0 calc(30% - 10px);
  }
  .contenedor .bloque_vertical img {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1180px) {
  .contenedor .bloque_vertical .w_txt {
    padding: 0;
  }
}
/*CONTENEDORES: BLOQUE BLOG*/
.contenedor .bloque_blog {
  padding: 60px 20px 20px;
}
.contenedor .bloque_blog .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_blog h2 {
  margin-bottom: 20px;
}
.contenedor .bloque_blog .txt h2 {
  display: none;
}
.contenedor .bloque_blog h3 {
  font-size: 1.3rem;
  line-height: 1.5rem;
  margin-bottom: 10px;
  text-transform: none;
  color: #000;
}
.contenedor .bloque_blog article {
  flex: 0 100%;
  text-align: left;
  margin-bottom: 40px;
  font-size: 0.95rem;
}
.contenedor .bloque_blog figure {
  margin-bottom: 15px;
}
.contenedor .bloque_blog img {
  width: 100%;
  height: 100%;
  border-radius:var(--b_radius);
}
.contenedor .bloque_blog p {
  margin: 0;
}
.contenedor .bloque_blog .txt {
  padding: 0 3px;
}
.btnClaro {
  padding: 7px 30px;
  margin: 10px 20px 10px 0;
  color:var(--c1);
  width: auto;
  border:1px solid var(--c1);
  border-radius:var(--b_radius);
  display: inline-block;
  text-decoration: none !important;
}
.btnClaro:hover {
  background-color:var(--c2);
  border:1px solid var(--c2);
  color: #FFF !important;
}
.btnOscuro {
  padding: 7px 30px;
  margin: 20px 20px 10px 0;
  color: #FFF;
  background:var(--c1);
  width: auto;
  border:1px solid var(--c1);
  border-radius:var(--b_radius);
  display: inline-block;
}
.btnOscuro:hover {
  background:var(--c2);
  border:1px solid var(--c2);
}
@media (min-width: 550px) {
  .contenedor .bloque_blog article {
    flex: 0 calc(50% - 10px);
    margin-bottom: 30px;
  }
  .contenedor .bloque_blog.n_1 article {
    flex: 0 100%;
    flex-direction: row;
    display: flex;
  }
  .contenedor .bloque_blog.n_1 figure {
    flex: 0 0 40%;
    display: flex;
    max-width: 540px;
  }
  .contenedor .bloque_blog.n_1 figure.i {
    margin-right: 20px;
  }
  .contenedor .bloque_blog.n_1 figure.d {
    margin-left: 20px;
  }
  .contenedor .bloque_blog.n_1 .txt {
    flex: 1;
    padding: 0;
  }
}
@media (min-width: 1000px) {
  .contenedor .bloque_blog .contenido {
    padding: 0;
  }
  .contenedor .bloque_blog article {
    flex: 0 calc(50% - 20px);
    display: flex;
  }
  .contenedor .bloque_blog figure {
    flex: 0 0 40%;
  }
  .contenedor .bloque_blog figure.i {
    margin: 0 20px 0 0;
  }
  .contenedor .bloque_blog figure.d {
    margin: 0 0 0 10px;
    order: 2;
  }
  .contenedor .bloque_blog .txt {
    flex: 1;
    padding: 0;
  }
}
@media (min-width: 768px) {
  .contenedor .bloque_blog.n_1 h2 {
    display: none;
  }
  .contenedor .bloque_blog.n_1 .txt h2 {
    display: block;
  }
}
/*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: 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;
}
@media (min-width: 1000px) {
  .contenedor .bloque_texto .contenido_html {
    padding: 0;
  }
}
/*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 15px;
  text-align: center;
}
.contenedor .bloque_imagenes.n1 {
  padding: 0;
  text-align: center;
}
.contenedor .bloque_imagenes .imagenes {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_imagenes figure {
  flex: 0 0 calc(50% - 5px);
  margin-bottom: 10px;
}
.contenedor .bloque_imagenes.n1 figure {
  flex: 1 100%;
  margin-bottom: 0;
}
.contenedor .bloque_imagenes figure img {
  width: 100%;
  display: block;
  border-radius:var(--b_radius);
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
}
@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(50% - 10px);
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1000px) {
  .contenedor .bloque_imagenes figure {
    /*flex: 0 0 calc(25% - 7px);*/
    flex: 0 0 calc(50% - 15px);
    margin-bottom: 30px;
  }
}
/*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*/
.bInicio .contenedor .bloque_listado_seccion {
  background:var(--c1-11);
  text-align: center;
  padding: 30px 20px 10px;
}
.bInicio .contenedor .bloque_listado_seccion h2 {
  margin-bottom: 30px;
}
.contenedor .bloque_listado_seccion .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.contenedor .bloque_listado_seccion article {
  flex: 0 0 calc(50% - 40px);
  margin: 0 15px 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.contenedor .bloque_listado_seccion figure {
  width: 90%;
  aspect-ratio:1;
  border-radius: 50%;
  /*border:1px solid var(--c1);*/
  overflow: hidden;
  margin-bottom: 15px;
}
.contenedor .bloque_listado_seccion img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contenedor .bloque_listado_seccion h3 {
  font-weight: 300;
  font-size: 1.1rem;
  margin-bottom: 15px;
}
@media screen and (min-width: 600px) {
  .contenedor .bloque_listado_seccion article {
    flex: 0 0 calc(30% - 16px);
  }
}
@media screen and (min-width: 1000px) {
  .contenedor .bloque_listado_seccion article {
    flex: 0 0 calc(100% / 4 - 20px);
  }
}
/*CONTENEDORES: BLOQUE MENU BLOQUES*/
.contenedor .bloque_menu_bloques {
  margin-top: 40px;
}
.contenedor .bloque_menu_bloques .contenido {
  padding: 20px 40px;
  border: 1px solid #CCC;
  width: fit-content;
  border-radius: var(--b_radius);
}
.contenedor .bloque_menu_bloques ul {
  list-style-type: square;
  width: fit-content;
}
.contenedor .bloque_menu_bloques a {
  text-decoration: underline;
  line-height: 1.8;
}
/*HOME: TIENDA*/
/*FAMILIA*/
.mFamilia h1 {
  font-family:var(--f_menus);
  text-align: center;
  margin-bottom: 30px;
}
.mFamilia .categorias {
  margin: 40px 0 60px;
  padding: 30px 0 0 10px;
  position: relative;
  /*text-transform: uppercase;*/
}
.mFamilia .categorias h2 {
  background-color:var(--c1);
  border-radius:var(--b_radius);
  color: #FFF;
  font-size: 1rem;
  padding: 10px;
  margin: 0 0 0 -10px;
  width: calc(100% + 20px);
  text-transform: none;
  white-space: nowrap;
}
.mFamilia .categorias .n1 li {
  margin-bottom: 15px;
  line-height: 1.1rem;
  font-family:var(--f_menus);
  font-size: 1rem;
  text-transform: uppercase;
  font-weight: 500;
}
.mFamilia .categorias .n1 li a {
  color:var(--c1);
  font-size: 1.2rem;
}
.mFamilia .categorias .n1 li li a {
  color:var(--c1);
  opacity: 0.5;
  font-size: 1rem;
}
.mFamilia .categorias .n1 li li a:hover {
  color:var(--c2);
  opacity: 1;
}
.mFamilia .categorias .n2 {
  margin: 15px 15px 35px 0;
  font-size: 1.2rem;
  font-weight: 300;
}
.mFamilia .categorias li li {
  text-transform: none !important;
  padding: 0px 0 15px;
  font-family:var(--f_menus);
  border-bottom: 1px solid #DDD;
}
.mFamilia .categorias .sel > a {
  color:var(--c2);
}
.portada_tienda .ordenar {
  display: none;
}
@media screen and (min-width: 1000px) {
  .mFamilia .w_familias_productos {
    display: flex;
    width: 100%;
  }
  .mFamilia .categorias {
    flex: 0 0 220px;
    order: 1;
    padding-right: 10px;
    margin: 0;
    padding-top: 0;
    align-self: flex-start;
    position: sticky;
    top: 10px;
  }
  .mFamilia .w_lista_productos {
    order: 2;
    align-self: start;
    width: calc(100% - 260px);
  }
}
/* SWIPER BANNER*/
@media only screen and (max-width: 767px) {
  .swiper.solo_apaisado {
    aspect-ratio: auto;
  }
}
.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: 2rem;
  color: var(--swiper-theme-color);
}
.swiper .info_banner {
  color: var(--swiper-theme-color);
  position: absolute;
  left: 50%;
  bottom: 20%;
  transform: translateX(-50%);
  text-align: center;
}
.swiper .info_banner .linea1 {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 0px;
}
.swiper .info_banner .linea2 {
  margin-bottom: 10px;
}
.swiper .info_banner .linea_boton a {
  background-color: #FFF;
  color: var(--c2);
  padding: 8px 30px;
  border-radius: var(--b_radius);
  font-weight: 600;
  text-decoration: none;
  font-size: 1rem;
}
@media only screen and (min-width: 768px) {
  .swiper {
    aspect-ratio: 2000 / 700;
  }
  .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;
}
/*ESTRELLAS*/
.estrellas {
  font-size: 1.6ex;
  font-size: 0.75rem;
}
.estrellas0 {
  display: none !important;
}
.estrellas:before {
  background: url(/imgs/estrellas.svg) 0 50% no-repeat;
  content: "";
  width: 94px;
  height: 16px;
  display: inline-block;
  vertical-align: -4px;
  margin-right: 5px;
}
.estrellas40:before {
  background-position: -19.3px 50%;
}
.estrellas30:before {
  background-position: -38.5px 50%;
}
.estrellas20:before {
  background-position: -57.6px 50%;
}
.estrellas10:before {
  background-position: -77.5px 50%;
}
.estrellas0:before {
  background-position: -96.5px 50%;
}
.estrellas45:before {
  background: url(/imgs/estrellas_medio.svg) 0 50% no-repeat;
}
.estrellas35:before {
  background: url(/imgs/estrellas_medio.svg) 0 50% no-repeat;
  background-position: -19.3px 50%;
}
.estrellas25:before {
  background: url(/imgs/estrellas_medio.svg) 0 50% no-repeat;
  background-position: -38.5px 50%;
}
.estrellas15:before {
  background: url(/imgs/estrellas_medio.svg) 0 50% no-repeat;
  background-position: -57.6px 50%;
}
.estrellas5:before {
  background: url(/imgs/estrellas_medio.svg) 0 50% no-repeat;
  background-position: -77.5px 50%;
}
/*Opiniones*/
#opiniones header ol {
  list-style-type: none;
  padding: 0;
}
#opiniones header li {
  margin: 0px 0 7px;
}
#opiniones header li > span:first-child {
  display: inline-block;
  min-width: 80px;
}
#opiniones .valoracionbarra {
  background-color: #EEE;
  vertical-align: bottom;
  position: relative;
  display: inline-block;
  width: 86px;
  height: 16px;
  margin-right: 10px;
}
#opiniones .valoracionbarra span {
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
  background-color: #FFC500;
  height: 100%;
}
#opiniones .valoracionbarra + span {
  color: #999;
}
#opiniones {
  font-size: 0.875rem;
  margin-bottom: 20px;
  clear: both;
  position: relative;
  z-index: 1;
  padding-top: 30px;
  border-top: 1px solid var(--c1);
}
#opiniones h2 {
  font-size: 1.5rem;
  margin-bottom: 25px;
  text-align: center;
}
#opiniones h3 {
  font-size: 1.125rem;
  margin: 30px 0;
}
#opiniones header > span {
  vertical-align: text-top;
}
#opiniones header > div {
  margin: 10px 0 20px;
  color: #999;
}
#opiniones .comentario strong {
  font-size: 0.938rem;
  margin-left: 11px;
  vertical-align: middle;
}
#opiniones .comentario div {
  margin: 3px 0 10px;
  color: #999;
  font-size: 90%;
}
#opiniones .comentario p {
  margin: 5px 0 10px;
  margin-bottom: 30px;
  max-width: 800px;
}
#opiniones .comentario .estrellas {
  margin-left: -3px;
}
#opiniones .comentario:nth-of-type(n+6) {
  display: none;
}
#opiniones #vermas, #opiniones #vermas:checked + label {
  display: none;
}
#opiniones #vermas + label {
  cursor: pointer;
  font-size: 1rem;
  padding-right: 25px;
  background: url(/imgs/desplegar.svg) 100% 70% / 14px auto no-repeat;
  font-weight: 500;
}
#opiniones #vermas:checked ~ .comentario {
  display: block;
}
