:root {
  --f_titulos: "Montserrat", sans-serif;
  --f_menus:"Montserrat", sans-serif;
  --f_textos: 'Montserrat', sans-serif;
  --c1: #ff8000;
  --c2: #ff8000;
  --c2-03: rgba(116, 46, 52, 0.3);
  --c3:#666666;
  --c4: #FCF7F1;
  --c5: #f0f0f0;
  --color_borde_inputs: var(--c2);
  /*varios*/
  --ancho_cabecera:1350px;
  --max_ancho_contenido:1180px;
  --max_ancho_contenido2:1350px;
  --max_ancho_texto:1080px;
  --b_radius:3px;
}
*, *:before, *:after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0 auto;
  font-family:var(--f_textos);
  font-weight: 400;
  font-size: 100%;
  font-style: normal;
  /*overflow-x: hidden;*/
  height: 100%;
  min-height: 100%;
  color: #333;
  background: #FFF;
  display: flex;
  flex-direction: column;
  padding: 0 20px;
  max-width: 1100px;
}
main {
    margin-bottom: 60px;
}
main.mContenedor {
  padding: 0 15px 30px;
}
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);
}
select {
    background: #fff;
    border: 1px solid #ccc;
    padding: 3px 5px;
}
figure {
  margin: 0px;
}
h1, h2, h3, h4, h5 {
  font-weight: 400;
  font-family:var(--f_titulos);
  margin: 0;
  color:var(--c3);
}
h1 {
  font-size: 1.75rem;
  margin-bottom: 20px;
}
h2 {
  font-size: 1.4rem;
  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.png) 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;
}
.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_contenido);
  margin: 0 auto;
}
.max_w2 {
  max-width:var(--max_ancho_contenido2);
  margin: 0 auto;
}
.grupo {
	display: flex;
	margin: 10px -10px 15px 0;
	gap: 20px;
}

/*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 50px;
  /*margin-bottom: 10px;*/
  /*border-bottom:1px solid var(--c1);*/
  /*display: flex;*/
  align-items: center;
  position: relative;
  background: #FFF;
}
.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/logo.png) 100% / auto 100% no-repeat;
  background-position-x: 0;
  text-indent: -1000000px !important;
  width: 221px;
  height: 57px;
  overflow: hidden;
  display: block;
  flex: 1;
  position: absolute;
  left: 0;
  top: 10px;
  z-index: 1;
}
#logo a {
  width: 100%;
  height: 100%;
  display: block;
}
.pHeader .desconectar {
	position: absolute;
	text-align: right;
	bottom: -35px;
	background: url(/imgs/logout.svg) 100% 50% / auto 15px no-repeat;
	display: inline-block;
	padding: 10px 22px;
}

.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;
}
/**/
.pHeader .finalizar {
  display: none;
}
html[lang=en] .pHeader .usuario {
  width: 180px;
}
html[lang=fr] .pHeader .usuario {
  width: 180px;
}
.pHeader section.usuario .nom_usuario {
  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;
  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;
}
.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: 25px;
  height: 20px;
  cursor: pointer;
  border:4px solid var(--c2);
  border-width: 4px 0;
  display: inline-block;
  position: absolute;
  right: 18px;
  top: 29px;
}
#botonMenu::before {
  display: block;
  height: 4px;
  content: ' ';
  margin-top: 4px;
  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: 20px;
  right: 15px;
  width: 30px;
  height: 30px;
  line-height: 30px;
  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: 25px 0 20px;
  box-shadow: 0 0 17px #444;
  width: 300px;
  overflow-y: scroll;
  animation: menuIn 0.6s;
  background-color:var(--c2);
}
.ham #menu:before {
  background:url(/imgs/logo.png) 10px 10px / auto 50px no-repeat var(--c2);
  content: " ";
  width: 100%;
  height: 60px;
  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 {
  text-transform: uppercase;
}
.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 .w_header {
    margin-top: 70px;
  }
  #botonMenu {
    top: 37px;
  }
  .pHeader .usuario_carrito {
    position: absolute;
    top: 29px;
    right: 55px;
  }
  #logo {
    width: 236px;
    height: 62px;
    overflow: hidden;
    display: block;
    flex: 1;
    position: absolute;
    left: 0;
    top: 16px;
    z-index: 1;
  }
}
/*MIGAS*/
#MenuMigas {
  background:var(--c5);
  padding: 10px;
  font-size: 0.8rem;
  margin-bottom: 60px;
}
#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;
  line-height: 1.5;
}
.contenido_html p:last-child {
  margin-bottom: 0;
}
.contenido_html h2 {
  margin: 30px 0 10px;
}
.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%;
  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;
}
.modal .botonera {
  display: flex;
  justify-content: space-around;
}
.modal .botonera .volver{
  background: #999;
}
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 0;
}
.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;
}
/*PIE*/
.pFooter {
  margin-top: auto;
  background:var(--c1);
  color: #FFF;
  text-align: center;
  padding: 20px;
}
.pFooter .nav {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  line-height: 1.3rem;
  font-size: 0.90rem;
  justify-content: center;
  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: 150px;
  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) 0 0 / auto 100% no-repeat;
  width: 20px;
  height: 20px;
}
.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;
  }
#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;
}
@media screen and (max-width: 450px) {
  .paginador a.siguiente, .paginador a.anterior {
    display: none;
  }
}
/*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: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 {
  min-width: 230px;
  overflow-y: auto;
  border: 1px solid #CCC;
  width: 300px;
  max-height: 300px;
}
.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;
}
.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-right: 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;
}
.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%;
}
.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;
}
/*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;
}
/*CONTENEDORES: BLOQUE VERTICAL*/
.contenedor .bloque_vertical figure {
  justify-content: center;
  align-content: center;
  display: flex;
}
.contenedor .bloque_vertical {
  padding: 60px 15px;
}
.contenedor .bloque_vertical h2 {
  margin-top: 0;
  color:var(--c2);
}
.contenedor .bloque_vertical img {
  max-width: 100%;
  margin-bottom: 20px;
  max-width: 100%;
  display: block;
}
@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.izquierda figure {
    margin: 0 20px 0 0;
    flex: 0 0 calc(30% - 7px);
  }
  .contenedor .bloque_vertical.derecha figure {
    order: 2;
    margin: 0 0 0 20px;
    flex: 0 0 calc(50% - 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: 30px 0 0;
  border-top:1px solid var(--c1);
}
.contenedor .bloque_blog .contenido {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contenedor .bloque_blog h2 {
  margin-bottom: 20px;
}
.contenedor .bloque_blog h3 {
  font-size: 1.2rem;
  line-height: 1.3rem;
  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: auto;
}
.contenedor .bloque_blog p {
  margin: 0;
}
.contenedor .bloque_blog .txt {
  padding: 0 15px;
}
@media (min-width: 550px) {
  .contenedor .bloque_blog article {
    flex: 0 calc(50% - 10px);
    margin-bottom: 30px;
  }
}
@media (min-width: 1000px) {
  .contenedor .bloque_blog .contenido {
    padding: 0 20px;
  }
  .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 10px 0 0;
  }
  .contenedor .bloque_blog figure.d {
    margin: 0 0 0 10px;
    order: 2;
  }
  .contenedor .bloque_blog .txt {
    flex: 1;
    padding: 0;
  }
}
/*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;
}
.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;
  text-align: center;
}
.contenedor .bloque_imagenes.n1 {
  padding: 0;
  text-align: center;
}
.contenedor .bloque_imagenes .imagenes {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.contenedor .bloque_imagenes figure {
  flex: 0 0 calc(50% - 10px);
  margin-bottom: 10px;
}
.contenedor .bloque_imagenes.n1 figure {
  flex: 1 100%;
  margin-bottom: 0;
}
.contenedor .bloque_imagenes figure img {
  width: 100%;
  display: block;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
}
@media screen and (min-width: 768px) {
  .contenedor .bloque_imagenes.n1 figure {
    flex: 1 100%;
  }
  .contenedor .bloque_imagenes.n2 figure {
    flex: 0 0 calc(50% - 5px);
  }
  .contenedor .bloque_imagenes.n3 figure {
    flex: 0 0 calc(33.3333% - 5px);
  }
  .contenedor .bloque_imagenes figure {
    /*flex: 0 0 calc(25% - 7px);*/
    flex: 0 0 calc(33.3333% - 10px);
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 1000px) {
  .contenedor .bloque_imagenes figure {
    /*flex: 0 0 calc(25% - 7px);*/
    flex: 0 0 calc(33.3333% - 20px);
    margin-bottom: 20px;
  }
}
/*CONTENEDORES: BLOQUE FAQ*/
.contenedor .bloque_faq {
  margin-bottom: 10px;
}
.contenedor .bloque_faq header {
  font-size: 1rem;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.1;
  padding: 10px 40px 10px 10px;
  color:var(--c3);
  background:url(/imgs/plegar-c3.svg) calc(100% - 15px) 50% no-repeat var(--c6);
  cursor: pointer;
  border-radius:var(--b_radius);
}
.contenedor .bloque_faq .contenido_html {
  display: none;
}
.contenedor .bloque_faq.ver header {
  background-image: url(/imgs/desplegar-c3.svg);
}
.contenedor .bloque_faq.ver .contenido_html {
  display: block;
  margin: 15px 0 40px 10px;
}
/*CONTENEDORES: BLOQUE LISTADO SECCION*/
.contenedor .bloque_listado_seccion .contenido {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .contenedor .bloque_listado_seccion article {
    flex: 0 0 calc(50% - 20px);
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .contenedor .bloque_listado_seccion figure {
    width: 90%;
    aspect:1;
    border-radius: 50%;
    border:1px solid var(--c1);
    overflow: hidden;
    margin-bottom: 15px;
  }
  .contenedor .bloque_listado_seccion img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
  .contenedor .bloque_listado_seccion h3 {
    font-weight: 300;
    font-size: 1rem;
  }
  @media screen and (min-width: 600px) {
    .contenedor .bloque_listado_seccion article {
      flex: 0 0 calc(25% - 20px);
    }
  }
  @media screen and (min-width: 1000px) {
    .contenedor .bloque_listado_seccion article {
      flex: 0 0 calc(100% / 8 - 20px);
    }
  }

/* Date range picker*/
.date_range {
    --data_range_fecha_activa: #0F4C81;
    --data_range_shadow:#666;
    --data_range_fecha_activa_transparente: #0F4C8166;
    --data_range_borde_inputs: #CCC;
}
.date_range .daterangepicker {
    box-shadow: var(--data_range_shadow) 1px 3px 10px;
}
.date_range .daterangepicker .ranges li.active {
    background-color: var(--data_range_fecha_activa);
}

.date_range .daterangepicker td.in-range {
    background-color: var(--data_range_fecha_activa_transparente);
}
.date_range .daterangepicker td.active {
    background-color: var(--data_range_fecha_activa);
}
.date_range .daterangepicker td.available:hover {
    background-color: var(--data_range_fecha_activa);
    color: #FFF;
}
.date_range :is(.selector_fechas, #selector_fechas) {
    background: url(/admin/imgs/calendario.gif) 95% 50% no-repeat;
    border: 1px solid var(--data_range_borde_inputs);
    padding: 4px 45px 4px 10px;
    border-radius: var(--b_radius);
    box-sizing: border-box;
    color: var(--data_range_shadow);
}
.date_range .disabled {
    opacity: 0.5;
    text-decoration: none !important;
}
.daterangepicker select:is(.yearselect, .monthselect) {
    background: #fff;
    border: 1px solid #ddd;
}
/*Orden de trabajo*/
/* .bOrden_de_trabajo.guardando #btnGuardar {
    opacity: 0.5;
    pointer-events: none;
} */

/*firma*/
.bOrden_de_trabajo.body_firma {
    overflow: hidden;
}

.bOrden_de_trabajo.body_firma .firma {
    transform: scale(1);
    pointer-events: auto;
}

.bOrden_de_trabajo .firma {
    transform: scale(0);
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.655);
    display: flex;
    justify-content: center;
    align-items: start;
    z-index: 1;
}

.bOrden_de_trabajo .w_pizarra {
    display: flex;
    flex-direction: column;
    margin-top: 100px;
    padding: 20px;
    border-radius: 10px;
    background: #000;
    z-index: 1;
    position: relative;
}

.bOrden_de_trabajo .firma #pizarra {
    flex: 1;
    margin-bottom: 20px;
    background: #FFF;
    border-radius: 8px;
    border: 1px solid #CCC;
    cursor: pointer;
}

.bOrden_de_trabajo .firma .botonera {
    display: flex;
    flex: 0;
    justify-content: space-around;
    gap: 20px;
}

.bOrden_de_trabajo .firma .botonera button {
    flex: 1;
}

.bOrden_de_trabajo .firma .botonera .cancelar {
    background: var(--c11);
    opacity: 0.6;
    border: 1px solid;
}

.bOrden_de_trabajo .firma .btn_borrar {
    background: url(/imgs/papelera.svg) 50% / auto 80% no-repeat;
    width: 30px;
    height: 30px;
    display: inline-block;
    position: absolute;
    top: 30px;
    right: 30px;
    border-radius: 0;
    border: none;
    padding: 0;
    cursor: pointer;
}
/**/
.bLogin {
    display: flex;
    align-items: center;
    padding: 150px 20px 0;
}
.bLogin h1 {
  text-align: center;
}
.bLogin img.logo {
	width: 100%;
	margin: 0 auto;
	display: block;
	max-width: 400px;
	margin-bottom: 20px;
}
.filtro {
  margin-bottom: 30px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.filtro .btn{
  font-size:0.8rem;
  padding: 5px 20px;
  align-self: end;
}

.bOrdenes_de_trabajo #selector_fechas {
  font-size: 0.8rem;
}

.bOrdenes_de_trabajo .listado_ordenes_de_trabajo{
  margin-bottom: 40px;
}

.bOrdenes_de_trabajo .orden_de_trabajo {
  padding: 20px;
  margin: 0 0 20px;
  border-radius: 5px;
  background: #f5f5f5;
}
.bOrdenes_de_trabajo .orden_de_trabajo:nth-of-type(even),
.bOrdenes_de_trabajo .orden_de_trabajo.par
{
  background: #dadada;
}
.bOrdenes_de_trabajo .orden_de_trabajo, 
.bOrdenes_de_trabajo .orden_de_trabajo.impar {
    background: #f5f5f5;
}
.bOrdenes_de_trabajo .orden_de_trabajo.oculta {
    display: none;
}

.bOrdenes_de_trabajo .orden_de_trabajo li {
   margin-bottom:3px;
}
.bOrdenes_de_trabajo .orden_de_trabajo strong {
   font-weight: 600;
   color: var(--c2);
}

.bOrdenes_de_trabajo .orden_de_trabajo .fecha {
  font-size: 110%;
  font-weight: 600;
  margin-bottom:10px;
}
.bOrdenes_de_trabajo .orden_de_trabajo .finalizada {
   color: var(--c1);
   float: right;
}
.bOrdenes_de_trabajo .listado_ordenes_de_trabajo .botonera {
   text-align: right;
   color: var(--c1);
   font-size: 85%;
   text-decoration: underline;
   display: flex;
   gap: 10px;
   justify-content: end;
}
.bOrdenes_de_trabajo .listado_ordenes_de_trabajo .botonera > * {
  cursor: pointer;
}

.bOrdenes_de_trabajo #busqueda_en_resultados {
	text-align: center;
	margin: 0 0 20px auto;
	display: block;
	border: 1px solid #ccc;
	padding: 5px;
	width: 100%;
	max-width: 400px;
}

.bOrdenes_de_trabajo .btn_crear_orden {
    white-space: nowrap;
    margin-left: auto;
}

.bOrden_de_trabajo fieldset {
  padding-bottom:30px;
  margin-bottom: 30px;
  border:none;
  border-bottom:1px solid;
}

.bOrden_de_trabajo .grupo_servicios_esquiladores .btn_add{
	display: block;
	margin: 10px 0;
	padding: 3px 20px
}

.bOrden_de_trabajo .grupo_servicios_esquiladores .item {
	line-height:1.8
}

.bOrden_de_trabajo .tabla {
  width: 100%;
  margin: 20px auto;
  border-collapse: collapse;
}

.bOrden_de_trabajo .tabla .R {
   text-align: right;
}
.bOrden_de_trabajo .tabla .C {
   text-align: center;
}

.bOrden_de_trabajo .tabla td, .bOrden_de_trabajo .tabla th {
   padding: 3px 10px;
	text-align:left;
}

.bOrden_de_trabajo #tabla_precios td, .bOrden_de_trabajo #tabla_precios th {
   padding: 8px 10px;
}


.bOrden_de_trabajo .tabla tr {
   background: #f5f5f5;
}

.bOrden_de_trabajo .tabla tr:nth-child(even) {
   background: #dadada;
}

.bOrden_de_trabajo .tabla thead tr {
   background: #000;
  color: #fff;
}
.bOrden_de_trabajo input[type=number] {
  padding: 3px 5px;
  text-align:right;
  width:100px;
  border: 1px solid #CCC;
}

.bOrden_de_trabajo input[type=time] {
  padding: 3px 5px;
  text-align:center;
  width:100px;
  border: 1px solid #CCC;
}

.bOrden_de_trabajo form .botonera {
    display: flex;
    gap: 20px;
  align-items: center
}
.bOrden_de_trabajo form .botonera :last-child{
    margin-left: 20px;
}
.bOrden_de_trabajo fieldset h2 {
    text-align: center;
}
@media screen and (max-width: 768px) {
    .bOrden_de_trabajo .grupo {
        flex-direction: column;
    }
}

.bOrden_de_trabajo .select2-results__option .desactivado, 
.bOrden_de_trabajo .select2-results__option:has(.desactivado) {
	opacity: 0.5;
	pointer-events: none;
	cursor: default;
}
.bOrden_de_trabajo .select2-results__option .no_en_cliente, 
.bOrden_de_trabajo .select2-results__option:has(.no_en_cliente) {
	display: none;
}
.bOrden_de_trabajo .select2-results__option span {
    display: flex;
    justify-content: space-between;
}

.select2-results__option--highlighted[aria-selected] {
    background: var(--c1) !important
}

.bOrden_de_trabajo .select2_majada small{
	display: block;
	font-size: 0.7rem;
	opacity: 0.5
}

.bOrden_de_trabajo .btnBorrarEsquilador,
.bOrden_de_trabajo .btnBorrarServicio {
    border-radius: 20px;
    font-size: 0.8rem;
    padding: 2px 6px 2px 5px;
    display: inline-block;
    margin-left: 10px;
}
.bOrden_de_trabajo :is(.btn-add-esquilador, .btn-add-servicio){
    font-size: 0.9rem;
    padding: 3px 8px;
}

.bOrden_de_trabajo .pagado {
	color: #fff;
	text-align: center;
	margin-bottom: 20px;
}
.bOrden_de_trabajo .observaciones {
	border: 1px solid #ccc;
	border-radius: 5px;
	width: 100%;
	max-width: 500px;
	height: 100px;
	margin-bottom: 50px;
    padding: 10px;
}

/**/
.botonera_cliente {
	display: inline-flex;
	gap: 15px;
	justify-content: center;
	align-items: baseline;
}

.enlace_externo {
  background: url(/imgs/external-link.svg) 50% / auto 100% no-repeat transparent;
  width: 18px;
  height: 18px;
  display: inline-block;
  vertical-align: top;
  margin-left: 5px;
}

/**/
.bTrabajosRealizados .agrupadores_grafica {
    display: flex;
    gap: 6px;
    justify-content: center;
}
.bTrabajosRealizados .agrupadores_grafica button {
    padding: 5px 15px;
    border-radius: 5px;
    border: 1px solid #CCC;
    background-color: #fff;
    font-size: 0.8rem;
}
.bTrabajosRealizados .w_grafica {
    margin: 0 0 20px 0;
}

.bTrabajosRealizados .agrupadores_grafica button.selected {
    background-color: var(--c1);
    border-color: var(--c1);
    color: white;
}
/**/
.btn_telefono {
	text-align: left;
	width: 16px;
	height: 16px;
	background: url(/imgs/telefono.svg) 50% / 100% auto no-repeat;
	padding: 0;
	display: inline-block;
}
.btn_whatsapp {
	text-align: left;
	width: 16px;
	height: 16px;
	background: url(/imgs/whatsapp.svg) 50% / 100% auto no-repeat;
	padding: 0;
	display: inline-block;
}
/**/
.bClientes .cliente {
    padding: 20px;
    margin: 0 0 20px;
    border-radius: 5px;
  }
  .bClientes .cliente li {
	margin-bottom: 3px;
    }

    .bClientes .cliente, 
    .bClientes .cliente.impar {
        background: #f5f5f5;
    }
  .bClientes .cliente:nth-of-type(even),
  .bClientes .cliente.par
  {
    background: #dadada;
  }
  .bClientes .cliente strong {
	font-weight: 600;
	color: var(--c2);
}
  .bClientes .cliente.oculta {
	display: none;
}

.bClientes #busqueda_en_resultados {
	text-align: center;
	margin: 0 0 20px auto;
	display: block;
	border: 1px solid #ccc;
	padding: 5px;
	width: 100%;
	max-width: 400px;
}

.bClientes .btn_crear_cliente {
    white-space: nowrap;
    display: block;
    width: fit-content;
    margin: -20px 0 20px auto;
}