@charset "UTF-8";
:root {
  --c-primary-10:#EFF0F4;
  --c-primary:#DA2424;
  --c-primary-20: #AF1D1D;
  --c-primary-40: #7B1414;
  --c-primary-60: #460B0B;
  --c-primary-light: #E03E3E;
  --c-primary-alpha: 218, 36, 36;
  --c-primary-20-alpha: 175, 29, 29;
  --c-primary-40-alpha: 123, 20, 20;
  --c-primary-60-alpha: 70, 11, 11;
  --c-primary-light-alpha: 224, 62, 62;
  --c-primary-accent:#00518F;
  --c-primary-accent-alpha:226, 39, 29;
  --c-black: #000C14;
  --c-black-alpha: 0, 12, 20;
  --background-color: #fff;
  --background-light-color: #eaf0f5;
  --text-color: #1a1a1a;
  --title-color: #1a1a1a;
  --subtitle-color: #656565;
  --text-color-dt: #fff;
  --title-color-dt: #fff;
  --high-contast: #001225;
  --c-title-color: var(--c-black);
  --header-background: #fff;
  --accent-dark-background: #fff;
  --button-background: var(--title-color);
  --button-color: #fff;
  --button-tag-background: #fff;
  --button-tag-color: var(--title-color);
  --pagination-link-color: var(--text-color);
  --pagination-link-border: var(--gris-bordes);
  --pagination-link-bg: transparent;
  --pagination-link-hover-color: var(--c-primary);
  --pagination-link-hover-bg: transparent;
  --pagination-link-active-color:var(--title-color);
  --pagination-link-active-bg: #fff;
  --pagination-link-inactive-color: #b9b9b9;
  --pagination-link-inactive-bg: #ececec;
  --block-bg-grey: #f7f7f7;
  --block-bg-color: rgba(0, 67, 137, .15);
  --block-bg-background: #fff;
  --block-bg-shadow: 0 10px 20px -5px rgba(0, 0, 0, .15);
  --card-color-bg: #3c3c3c;
  --card-background: #fff;
  --card-shadow: 0;
  --form-fondo-input: #fff;
  --form-color-input: #1a1a1a;
  --form-borde-input-color: #999;
  --form-color-select-icono: rgba(26, 24, 22, .25);
  --form-color-check-box:var(--text-color);
  --form-fondo-clausula: rgba(255, 255, 255, .4);
  --form-color-clausula: #333;
  --form-borde-clausula: rgba(26, 24, 22, .4);
  --icon-filter: invert(0);
  --img-filter: none;
  --gris-bordes: #c2c1c1;
  --gris-medio: #717171;
  --gris-claro: #e8e8e8;
  --gris-oscuro:#535150;
  --gris-bordes-alpha: 194, 193, 193;
  --bg-dark-theme: var(--c-black);
  --color-dark-theme: #fff;
  --bg-tint: rgba(0, 18, 37, .5);
  --bg-tint-hover: rgba(var(--c-black-alpha), .85);
  --level-0: #fff;
  --level-1: #e8e8e8;
  --level-2: #f8f8f8;
  --level-3: #fff;
}

/*RESET*/
a, abbr, acronym, address, applet, article, aside, audio, b, blockquote, big, body, center, canvas, caption, cite, code, command, datalist, dd, del, details, dfn, dl, div, dt, em, embed, fieldset, figcaption, figure, font, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, keygen, label, legend, li, meter, nav, object, ol, output, p, pre, progress, q, s, samp, section, small, span, source, strike, strong, sub, sup, table, tbody, tfoot, thead, th, tr, tdvideo, tt, u, ul, var {
  background: transparent;
  border: 0 none;
  font-size: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table, table td {
  padding: 0;
  border: none;
  border-collapse: collapse;
}

body {
  -webkit-text-size-adjust: none;
  overflow-x: hidden;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  vertical-align: top;
}

embed {
  vertical-align: top;
}

article, aside, audio, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, meter, nav, output, progress, section, source, video {
  display: block;
}

mark, rp, rt, ruby, summary, time {
  display: inline;
}

/* no incluir en exportación final */
@font-face {
  font-family: "Outfit Light";
  src: url("/static/fonts/outfit/Outfit-Light.woff2") format("woff2"), url("/static/fonts/outfit/Outfit-Light.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Outfit";
  src: url("/static/fonts/outfit/Outfit-Regular.woff2") format("woff2"), url("/static/fonts/outfit/Outfit-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Outfit SemiBold";
  src: url("/static/fonts/outfit/Outfit-SemiBold.woff2") format("woff2"), url("/static/fonts/outfit/Outfit-SemiBold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: "Outfit", sans-serif;
  font-size: 1em;
  line-height: 1.65;
  color: var(--text-color);
  font-size: 1.125rem;
  letter-spacing: 0.015rem;
}
@media (min-width: 25em) {
  body {
    font-size: 1.125rem;
  }
}
@media (min-width: 60em) {
  body {
    font-size: 1.1875rem;
    font-family: "Outfit Light", sans-serif;
  }
}
@media (min-width: 75em) {
  body {
    font-size: 1.1875rem;
  }
}
@media (min-width: 87.5em) {
  body {
    font-size: 1.1875rem;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.15;
  letter-spacing: 1px;
  margin-bottom: 0.5em;
  font-weight: normal;
  font-family: "Outfit";
  text-transform: none;
  color: var(--title-color);
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-family: inherit;
}

h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span,
h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {
  font-family: "Outfit";
  font-weight: normal;
  font-size: inherit;
  color: var(--subtitle-color);
}

* + h1,
* + h2,
* + h3,
* + h4,
* + h5,
* + h6 {
  margin-top: 1em;
}

h1 {
  font-size: 1.953rem;
  font-family: "Outfit";
}
h1 strong {
  font-family: "Outfit";
}

h2 {
  font-size: 1.563rem;
}

h3 {
  font-size: 1.25rem;
}

h4 {
  font-size: 1.15rem;
}

h5 {
  font-size: 1rem;
}

h6 {
  font-size: 1rem;
}

@media (min-width: 37.4em) {
  h1 {
    font-size: 2.441rem;
  }
  h2 {
    font-size: 1.953rem;
  }
  h3 {
    font-size: 1.563rem;
  }
  h4 {
    font-size: 1.25rem;
  }
  h5 {
    font-size: 1.15rem;
  }
  h6 {
    font-size: 1rem;
  }
}
@media (min-width: 80em) {
  h1 {
    font-size: 3.052rem;
  }
  h2 {
    font-size: 2.441rem;
  }
  h3 {
    font-size: 1.953rem;
  }
  h4 {
    font-size: 1.563rem;
  }
  h5 {
    font-size: 1.25rem;
  }
  h6 {
    font-size: 1.15rem;
  }
}
a {
  color: var(--c-primary);
  font-family: "Outfit";
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
a:hover {
  color: var(--c-primary-accent);
  text-decoration: underline;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
  text-decoration: none;
}

strong {
  font-family: "Outfit SemiBold";
  font-weight: normal;
}

address {
  font-style: normal;
}

/*
@media only screen and (min-width: 992px) {
  body {
    font-size: $default-font-size + .1em;
  }
}

@media only screen and (min-width: 1440px) {
  body {
    font-size: $default-font-size + .2em;
  }

} */
body.noscroll {
  overflow: hidden;
}

#contenedor {
  margin: 0 auto;
  height: auto;
  background: var(--background-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#header {
  -webkit-box-ordinal-group: -1;
      -ms-flex-order: -2;
          order: -2;
}

#contenido,
#footer {
  position: relative;
  width: 100%;
  top: 4.5rem;
}
@media only screen and (min-width: 600px) {
  #contenido,
  #footer {
    top: 4.5rem;
  }
}
@media only screen and (min-width: 960px) {
  #contenido,
  #footer {
    top: 4.5rem;
  }
}
@media only screen and (min-width: 1240px) {
  #contenido,
  #footer {
    top: calc(5rem + 0rem);
  }
}

#contenido {
  min-height: 50vh;
  background: var(--background-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

#contenedor.hero #contenido, #contenedor.hero #footer {
  top: 0;
}

.bloque {
  height: auto;
  width: 100%;
  padding: 1.5rem 1rem;
  clear: both;
}
.bloque.fondo {
  background: inherit;
}
.bloque.nopad {
  padding: 0 !important;
}
@media only screen and (min-width: 340px) {
  .bloque {
    padding: 1.5rem;
  }
}
@media only screen and (min-width: 400px) {
  .bloque {
    padding: 2rem;
  }
}
@media only screen and (min-width: 960px) {
  .bloque {
    padding: 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .bloque {
    width: 100%;
    padding: 4rem calc((100% - 1200px) / 2);
  }
  .bloque.descargas, .bloque.descargas_seccion {
    padding-left: calc((100vw - 56rem) / 2);
    padding-right: calc((100vw - 56rem) / 2);
  }
}
@media only screen and (min-width: 1440px) {
  .bloque {
    padding: 6rem calc((100% - 1356px) / 2);
  }
}
@media only screen and (min-width: 1600px) {
  .bloque {
    padding: 8rem calc((100% - 1356px) / 2);
  }
}

#contenido .bloque.dark_theme:nth-child(2n),
.bloque.dark_theme,
.dark_theme,
.bloque.fondo_color {
  background: var(--bg-dark-theme);
  color: var(--color-dark-theme);
  border-color: #444;
}
#contenido .bloque.dark_theme:nth-child(2n) h1, #contenido .bloque.dark_theme:nth-child(2n) h2, #contenido .bloque.dark_theme:nth-child(2n) h3, #contenido .bloque.dark_theme:nth-child(2n) h4, #contenido .bloque.dark_theme:nth-child(2n) h5, #contenido .bloque.dark_theme:nth-child(2n) h6, #contenido .bloque.dark_theme:nth-child(2n) .titulo_bloque, #contenido .bloque.dark_theme:nth-child(2n) .titulo_bloque h2, #contenido .bloque.dark_theme:nth-child(2n) .titulo_bloque strong, #contenido .bloque.dark_theme:nth-child(2n) .texto_imagen .caption,
.bloque.dark_theme h1,
.bloque.dark_theme h2,
.bloque.dark_theme h3,
.bloque.dark_theme h4,
.bloque.dark_theme h5,
.bloque.dark_theme h6,
.bloque.dark_theme .titulo_bloque,
.bloque.dark_theme .titulo_bloque h2,
.bloque.dark_theme .titulo_bloque strong,
.bloque.dark_theme .texto_imagen .caption,
.dark_theme h1,
.dark_theme h2,
.dark_theme h3,
.dark_theme h4,
.dark_theme h5,
.dark_theme h6,
.dark_theme .titulo_bloque,
.dark_theme .titulo_bloque h2,
.dark_theme .titulo_bloque strong,
.dark_theme .texto_imagen .caption,
.bloque.fondo_color h1,
.bloque.fondo_color h2,
.bloque.fondo_color h3,
.bloque.fondo_color h4,
.bloque.fondo_color h5,
.bloque.fondo_color h6,
.bloque.fondo_color .titulo_bloque,
.bloque.fondo_color .titulo_bloque h2,
.bloque.fondo_color .titulo_bloque strong,
.bloque.fondo_color .texto_imagen .caption {
  color: var(--color-dark-theme);
}
#contenido .bloque.dark_theme:nth-child(2n) a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio),
.bloque.dark_theme a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio),
.dark_theme a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio),
.bloque.fondo_color a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio) {
  color: var(--c-primary-light);
}
#contenido .bloque.dark_theme:nth-child(2n) a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio):hover,
.bloque.dark_theme a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio):hover,
.dark_theme a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio):hover,
.bloque.fondo_color a:not(.boton):not(.boton-borde):not(.boton-grande):not(.boton-medio):hover {
  color: var(--c-primary-light);
}
#contenido .bloque.dark_theme:nth-child(2n) .boton,
.bloque.dark_theme .boton,
.dark_theme .boton,
.dark_theme .boton-borde,
.dark_theme .boton-grande,
.dark_theme .boton-medio,
.bloque.fondo_color .boton,
.bloque.fondo_color .boton-borde,
.bloque.fondo_color .boton-grande,
.bloque.fondo_color .boton-medio {
  background: #fff;
  color: var(--c-primary);
  outline-color: #fff;
}
#contenido .bloque.dark_theme:nth-child(2n) .boton.boton-borde,
.bloque.dark_theme .boton.boton-borde,
.dark_theme .boton.boton-borde,
.dark_theme .boton-borde,
.bloque.fondo_color .boton.boton-borde,
.bloque.fondo_color .boton-borde {
  background: transparent;
  color: #fff;
  outline-color: #fff;
}
#contenido .bloque.dark_theme:nth-child(2n) .boton:hover,
.bloque.dark_theme .boton:hover,
.dark_theme .boton:hover,
.dark_theme .boton-borde:hover,
.dark_theme .boton-grande:hover,
.dark_theme .boton-medio:hover,
.bloque.fondo_color .boton:hover,
.bloque.fondo_color .boton-borde:hover,
.bloque.fondo_color .boton-grande:hover,
.bloque.fondo_color .boton-medio:hover {
  color: #fff;
  background: var(--c-primary);
  outline-color: var(--c-primary);
}

#contenido .bloque.fondo {
  background-color: #f7f7f7;
}

#contenido .bloque.fondo_color {
  background-color: var(--c-primary-60);
  color: #fff;
}

body.dark #contenido .bloque.fondo_color {
  background-color: var(--c-primary-60);
  color: #fff;
}

@media only screen and (min-width: 960px) {
  .seccion {
    padding: 0 3rem;
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .seccion #principal {
    margin-right: 1.5rem;
    background: inherit;
    width: 75%;
  }
  .seccion #columna {
    margin-left: 1.5rem;
    width: 25%;
  }
  .seccion #columna .sticker {
    position: sticky;
    top: calc(4.5rem + 0.1rem);
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .seccion {
    padding: 0 calc((100% - 1200px) / 2);
  }
  .seccion #principal {
    margin-right: 2rem;
  }
  .seccion #columna {
    margin-left: 2rem;
  }
  .seccion #columna .sticker {
    position: sticky;
    top: calc(4.5rem + 0.1rem);
    padding-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .seccion {
    padding: 0 calc((100% - 1356px) / 2);
  }
}

@media only screen and (max-width: 959px) {
  #principal {
    width: 100% !important;
  }
}
@media only screen and (min-width: 960px) {
  #principal .bloque {
    width: 100%;
    padding: 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  #principal .bloque {
    padding: 2rem;
  }
}

@media only screen and (min-width: 960px) {
  #columna .bloque {
    width: 100%;
    padding: 2rem 0;
  }
  #columna .bloque:first-child {
    padding-top: 3rem;
  }
}
#columna .bloque.etiquetas {
  margin: 0;
  padding-bottom: 3rem;
}
@media only screen and (max-width: 959px) {
  #columna {
    width: 100% !important;
  }
}

.caja1,
.caja2,
.caja3,
.caja4,
.caja5,
.caja6,
.caja23,
.caja24,
.caja34 {
  height: auto;
}

.caja1 {
  width: 100%;
}

.caja2 {
  width: 50%;
}

.caja3 {
  width: 33.333%;
}

.caja23 {
  width: 66.666%;
}

.caja24 {
  width: 49%;
}

.caja4 {
  width: 25%;
}

.caja34 {
  width: 75%;
}

.caja5 {
  width: 20%;
}

.caja6 {
  width: 16.666%;
}

/*
.seccion {

  // en móvil flex, columna izquierda en último lugar
  display: flex;
  flex-wrap: wrap;

  & .izquierda {
    order: 5;
    width: 100%;
  }

  @media only screen and (min-width: 960px) {
    padding: 0 $padd-960;
    border: none;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;

    & #principal {
      margin-right: $padd-340; // 1.5rem; mitad de base
      //background: rgba(#036, .2);
      background: inherit;
    }

    & #columna {
      margin-left: $padd-340; // 1.5rem; mitad de base
      // sticky column
      // & .sticker {
      //   position: sticky;
      //   top: calc(4.5rem + .1rem);
      // }
    }
  }

  @media only screen and (min-width: 960px) {
    padding: 0; //0 $padding-max;
    display: grid;
    //grid-template-columns: 1fr 3fr 1fr;
    grid-template-columns: 1fr 36rem 1fr; // 3fr 576px
    //grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "izquierda contenido derecha";
    grid-gap: 0;
    grid-column-gap: 0; //1rem;
    justify-content: center;
    align-content: start;



    & #principal {
      margin-right: 0; //$padd-400; // 2rem; mitad de base 
      grid-area: contenido;
      //background: #0cc;
      min-height: 100vh;
    }

    & .columna {
      margin-left: 0; // $padd-400; // 2rem; mitad de base 

      // bloques en columna
      & .bloque {
        padding: 1rem 0;
      }

      &.izquierda {
        // background-color: #fc0;
        background: #ececec;
        grid-area: izquierda;
        padding-left: 1rem;
        padding-right: 1rem;
        width: auto; // sobreescribe
      }

      &.derecha {
        //background-color: #c00;
        grid-area: derecha;
        padding-right: 1rem;
        padding-left: 1rem;
      }

      & .a {
        border: 1px solid;
        height: 500px;
      }

      // sticky column
      & .sticker {
        position: sticky;
        top: calc(4.5rem + .1rem);
      }
    }
  }

  @media only screen and (min-width: 1100px) {
    grid-template-columns: 1fr 42rem 1fr; // 3fr 672px
  }

  @media only screen and (min-width: 1240px) {
    grid-template-columns: 1fr 48rem 1fr; // 3fr 768px

    & .columna {
      margin-left: 0; // $padd-400; // 2rem; mitad de base 

      &.izquierda {
        padding-left: calc((100vw - 1200px)/2);
        padding-right: 1rem;
      }

      &.derecha {
        padding-right: calc((100vw - 1200px)/2);
        padding-left: 1rem;
      }
    }
  }

  @media only screen and (min-width: 1440px) {
    grid-template-columns: 1fr 56rem 1fr; // 896px

    & .columna {
      margin-left: 0; // $padd-400; // 2rem; mitad de base 

      &.izquierda {
        //padding-left: calc((100vw - 1356px)/2);
        padding: 1rem;
        margin-left: calc((100vw - 1356px)/2);
      }

      &.derecha {
        //padding-right: calc((100vw - 1356px)/2);
        padding: 1rem;
        margin-right: calc((100vw - 1356px)/2);
      }
    }
  }

}
*/
#contenido img {
  -webkit-filter: var(--img-filter);
          filter: var(--img-filter);
}

img.lazyload,
img.lazyloading {
  opacity: 0;
}

img.lazyloaded {
  opacity: 1;
  -webkit-transition: opacity 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  transition: opacity 0.3s cubic-bezier(0.85, 0, 0.15, 1);
}

body.hero #contenido, body.hero #footer {
  top: 0;
}
body.hero #header {
  background: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.86, 0, 0.07, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.86, 0, 0.07, 1);
  transition: transform 0.5s cubic-bezier(0.86, 0, 0.07, 1);
  transition: transform 0.5s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.5s cubic-bezier(0.86, 0, 0.07, 1);
}
body.hero #header .centrar {
  position: relative;
  z-index: 2;
}
body.hero #header:after {
  position: absolute;
  top: 0;
  content: "";
  width: 100%;
  height: 10rem;
  z-index: 1;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--c-black-alpha), 0.8)), color-stop(6rem, rgba(var(--c-black-alpha), 0)));
  background: linear-gradient(to bottom, rgba(var(--c-black-alpha), 0.8) 0%, rgba(var(--c-black-alpha), 0) 6rem);
}
@media only screen and (min-width: 1240px) {
  body.hero #header:after {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--c-black-alpha), 0.8)), color-stop(10rem, rgba(var(--c-black-alpha), 0)));
    background: linear-gradient(to bottom, rgba(var(--c-black-alpha), 0.8) 0%, rgba(var(--c-black-alpha), 0) 10rem);
  }
}
body.hero #header.scroll {
  background: #fff;
  -webkit-box-shadow: 0;
          box-shadow: 0;
  border: solid;
  border-width: 0;
  border-color: transparent;
}
body.hero #header.scroll:after {
  content: none;
}
body.hero #header #logo img {
  -webkit-filter: contrast(0) brightness(100);
          filter: contrast(0) brightness(100);
}
body.hero #header.scroll #logo img {
  -webkit-filter: none;
          filter: none;
}
body.hero #header .button_container span {
  background: #fff;
}
body.hero #header.scroll .button_container span {
  background: var(--title-color);
}
body.hero #header .button_container.activo span,
body.hero #header.scroll .button_container.activo span {
  background: var(--title-color);
}
@media only screen and (min-width: 1240px) {
  body.hero #header #nav li a {
    color: #fff;
  }
  body.hero #header #nav li a.activo:after {
    background: #fff;
    opacity: 0.25;
  }
  body.hero #header.scroll #nav li a {
    color: var(--text-color);
  }
  body.hero #header.scroll #nav li a.activo:after {
    background: var(--text-color);
    opacity: 1;
  }
  body.hero #header.scroll #nav li a.boton-borde {
    outline-color: var(--text-color);
  }
  body.hero #header.scroll #nav li a.boton-borde:hover {
    color: #fff;
  }
  body.hero #header #nav ul li a {
    color: var(--c-black);
  }
  body.hero #header #nav ul li a:hover {
    color: var(--c-primary-20);
  }
  body.hero #header .boton-borde {
    outline-color: #fff;
  }
  body.hero #header .boton-borde:hover {
    color: #fff;
  }
  body.hero #header.scroll .boton-borde {
    outline-color: var(--button-background);
  }
}
@media only screen and (min-width: 1240px) {
  body.hero #header #idiomas a.activo {
    color: #fff;
  }
  body.hero #header #idiomas a.activo img {
    -webkit-filter: invert(1);
            filter: invert(1);
  }
  body.hero #header #idiomas:before {
    color: #fff;
  }
  body.hero #header.scroll #idiomas a.activo, body.hero #header.fixed #idiomas a.activo {
    color: var(--title-color);
  }
  body.hero #header.scroll #idiomas a.activo img, body.hero #header.fixed #idiomas a.activo img {
    -webkit-filter: none;
            filter: none;
  }
  body.hero #header.scroll #idiomas:before, body.hero #header.fixed #idiomas:before {
    color: var(--text-color);
  }
}
body.hero #header .botones .carrito:before, body.hero #header .botones .usuario:before, body.hero #header .botones .usuario span {
  color: #fff;
}
body.hero #header.scroll .carrito:before, body.hero #header.scroll .usuario:before, body.hero #header.scroll .botones .usuario span {
  color: var(--text-color);
}

@media only screen and (min-width: 1240px) {
  body.hero #header.centrado-logo:not(.fixed) .menu_principal.centrar {
    background: transparent;
  }
  body.hero #header.centrado-logo:not(.fixed) .menu_principal.centrar #menu {
    border: 1px solid #fff;
    border-width: 1px 0;
  }
  body.hero #header.centrado-logo:not(.fixed) .menu_principal.centrar #menu li {
    border-width: 0;
  }
  body.hero #header.centrado-logo:not(.fixed) .menu_principal.centrar #menu li a {
    background: transparent;
  }
  body.hero #header.centrado-logo:not(.fixed) .submenu a {
    color: #fff;
  }
  body.hero #header.centrado-logo:not(.fixed) .boton-borde {
    color: #fff;
    outline-color: #fff;
  }
}

@media only screen and (min-width: 1240px) {
  body.hero #header.submenu:not(.fixed) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  }
  body.hero #header.submenu:not(.fixed) #submenus {
    background: transparent;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  }
}

body.hero #header.dark_theme.scroll,
body.hero #header.dark_theme.fixed {
  background: var(--bg-dark-theme);
}
body.hero #header.dark_theme.scroll #logo img,
body.hero #header.dark_theme.fixed #logo img {
  -webkit-filter: contrast(0) brightness(100);
          filter: contrast(0) brightness(100);
}
body.hero #header.dark_theme.scroll #nav li a, body.hero #header.dark_theme.scroll .carrito:before, body.hero #header.dark_theme.scroll .usuario:before, body.hero #header.dark_theme.scroll .botones .usuario span, body.hero #header.dark_theme.scroll #idiomas:before, body.hero #header.dark_theme.scroll #idiomas a.activo,
body.hero #header.dark_theme.fixed #nav li a,
body.hero #header.dark_theme.fixed .carrito:before,
body.hero #header.dark_theme.fixed .usuario:before,
body.hero #header.dark_theme.fixed .botones .usuario span,
body.hero #header.dark_theme.fixed #idiomas:before,
body.hero #header.dark_theme.fixed #idiomas a.activo {
  color: #fff;
}
body.hero #header.dark_theme.scroll .button_container span,
body.hero #header.dark_theme.fixed .button_container span {
  background: #fff;
}
body.hero #header.dark_theme.scroll #menu.abierto,
body.hero #header.dark_theme.fixed #menu.abierto {
  background: var(--bg-dark-theme);
}
body.hero #header.dark_theme.scroll #nav li a.activo:after,
body.hero #header.dark_theme.fixed #nav li a.activo:after {
  background: #fff;
  opacity: 0.5;
}
body.hero #header.dark_theme.scroll:after,
body.hero #header.dark_theme.fixed:after {
  background: transparent;
}

#header .centrar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 4.5rem;
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 0;
}
@media only screen and (min-width: 960px) {
  #header .centrar {
    height: 4.5rem;
  }
}
@media only screen and (min-width: 1240px) {
  #header .centrar {
    height: 5rem;
  }
}
@media only screen and (min-width: 1440px) {
  #header .centrar {
    height: 5rem;
  }
}

#header {
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 1000;
  -webkit-transition: -webkit-transform 0.125s cubic-bezier(0.86, 0, 0.07, 1);
  transition: -webkit-transform 0.125s cubic-bezier(0.86, 0, 0.07, 1);
  transition: transform 0.125s cubic-bezier(0.86, 0, 0.07, 1);
  transition: transform 0.125s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.125s cubic-bezier(0.86, 0, 0.07, 1);
  line-height: 1;
  background: #fff;
  -webkit-box-shadow: 0;
          box-shadow: 0;
  border: solid;
  border-width: 0;
  border-color: transparent;
}
#header #logo {
  display: inline-block;
  text-align: left;
  margin: auto;
}
@media only screen and (min-width: 600px) {
  #header #logo {
    margin-right: auto;
  }
}
@media only screen and (min-width: 1240px) {
  #header #logo {
    margin-left: 0;
    margin-right: 4rem;
  }
}
#header #logo a {
  display: block;
}
#header #logo img, #header #logo svg {
  width: auto;
  height: 2.5rem;
}
@media only screen and (min-width: 370px) {
  #header #logo img, #header #logo svg {
    height: 2.5rem;
  }
}
@media only screen and (min-width: 600px) {
  #header #logo img, #header #logo svg {
    height: 2.5rem;
  }
}
@media only screen and (min-width: 960px) {
  #header #logo img, #header #logo svg {
    margin: 0;
    width: auto !important;
  }
}
@media only screen and (min-width: 1240px) {
  #header #logo img, #header #logo svg {
    height: 2.5rem;
  }
}
@media only screen and (min-width: 1440px) {
  #header #logo img, #header #logo svg {
    height: 2.5rem;
  }
}
#header #logo svg {
  margin-top: 5px;
}
#header.fixed {
  -webkit-box-shadow: var(--block-bg-shadow);
          box-shadow: var(--block-bg-shadow);
}
@media only screen and (min-width: 1240px) {
  #header {
    will-change: auto;
  }
  #header.fixed {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

#header .redes a span {
  height: 2rem;
  width: 1.5rem;
  line-height: 2rem;
  font-size: 0.9rem;
  background: transparent;
  color: var(--c-primary);
  border: none;
}
#header .redes a span:hover {
  background: transparent;
  color: var(--c-primary-light);
}

#header #logo {
  margin: auto 0;
}

#header #menu + #idiomas {
  margin-left: 10rem;
}

#header.simple .derecha {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#header.simple .derecha #idiomas {
  margin-left: 2rem;
}

#menu {
  width: 100%;
  text-align: center;
}

@media only screen and (min-width: 1240px) {
  #nav {
    list-style: none;
    position: relative;
    z-index: 1200;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #nav li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    margin-left: 3rem;
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1440px) {
  #nav li {
    margin-left: 4rem;
  }
}
@media only screen and (min-width: 1240px) {
  #nav li.primero, #nav li:first-of-type {
    margin-left: 0;
  }
  #nav li a {
    display: inline-block;
    position: relative;
    text-decoration: none;
    font-family: "Outfit";
    color: var(--text-color);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 0.8rem;
    padding: 0;
    line-height: inherit;
    white-space: nowrap;
  }
  #nav li a.boton, #nav li a.boton-borde, #nav li a.boton-grande, #nav li a.boton-medio {
    background: var(--button-background);
    color: var(--button-color);
    padding: 0.65rem 1.25rem;
    line-height: 1.2;
  }
  #nav li a.boton:hover, #nav li a.boton-borde:hover, #nav li a.boton-grande:hover, #nav li a.boton-medio:hover {
    background: var(--c-primary);
    color: #fff;
  }
  #nav li a.boton-borde {
    color: var(--title-color);
    background: transparent;
    outline-color: var(--title-color);
  }
  #nav li a.boton-borde:hover {
    outline-color: var(--c-primary);
  }
  #nav li a.boton:after, #nav li a.boton-borde:after, #nav li a.boton-grande:after, #nav li a.boton-medio:after {
    content: none;
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1240px) {
  #nav li a {
    font-size: 0.9rem;
    line-height: 3rem;
    height: 5rem;
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1440px) {
  #nav li a {
    font-size: 1rem;
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1240px) {
  #nav li a:after {
    position: absolute;
    content: "";
    display: block;
    bottom: 0;
    left: 0;
    -webkit-transform-origin: right top;
            transform-origin: right top;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    width: 100%;
    background: var(--c-primary-light);
    height: 1px;
  }
  #nav li a:hover {
    text-decoration: none;
    color: var(--c-primary-20);
    background: transparent;
  }
  #nav li a:hover:after {
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1);
            transform: scale(1);
    background: var(--c-primary-light);
  }
  #nav li a.activo, #nav li a.activo:hover {
    color: var(--title-color);
    background: transparent;
  }
  #nav li a.activo:after, #nav li a.activo:hover:after {
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1);
            transform: scale(1);
    background: var(--text-color);
  }
}
@media only screen and (min-width: 1240px) {
  #nav li.ultimo {
    margin-left: auto;
  }
  #nav li#ultimo a:after {
    content: none;
  }
  #nav li #logo {
    margin: auto;
  }
  #nav li #logo a {
    padding: 0;
  }
  #nav li #logo a:after {
    content: none;
  }
  #nav li #logo a img {
    height: 95px;
    margin-top: 1rem;
  }
}
@media only screen and (max-width: 1239px) {
  #menu {
    display: none;
  }
  #menu.abierto {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media only screen and (min-width: 1240px) {
  #menu_movil {
    display: none;
  }
}
@media only screen and (min-width: 1240px) {
  #header.header #nav {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #header.header #nav li {
    margin: 0;
  }
  #header.header #nav li a {
    line-height: 5rem;
    padding: 0 1rem;
    white-space: nowrap;
  }
  #header.header #nav li.ultimo {
    margin-left: auto;
  }
  #header.header #nav li a.boton, #header.header #nav li a.boton-borde, #header.header #nav li a.boton-grande, #header.header #nav li a.boton-medio {
    line-height: 1;
    padding: 1rem;
  }
  #header.header #nav li a span {
    position: relative;
    right: 0;
  }
  #header.header #nav li:hover > ul,
  #header.header #nav li ul:hover {
    margin-top: 5rem;
  }
  #header.header #nav li ul a {
    line-height: 1;
    padding: 1rem;
  }
}
#nav li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
#nav li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: auto;
}
#nav li a span {
  display: inline-block;
  position: absolute;
  right: -0.25rem;
  width: 0.25rem;
  height: 1rem;
}
#nav li a span:after {
  position: absolute;
  font-family: "infotelecom";
  content: "\e81b";
  font-size: 0.5rem;
}
@media only screen and (max-width: 1239px) {
  #nav li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #nav li ul {
    margin-top: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media only screen and (min-width: 1240px) {
  #nav li ul {
    visibility: hidden;
    opacity: 0;
    width: auto;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    margin-top: 0;
    left: -1rem;
    display: none;
    position: absolute;
    min-width: 10rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: #fff;
    padding: 1rem;
    border: 1px solid #c2c1c1;
    -webkit-box-shadow: 0 5px 10px -5px rgba(var(--c-black-alpha), 0.6);
            box-shadow: 0 5px 10px -5px rgba(var(--c-black-alpha), 0.6);
    border-radius: 0;
  }
  #nav li ul:before {
    position: absolute;
    content: "";
    top: -0.3rem;
    left: 3rem;
    width: 0.5rem;
    height: 0.5rem;
    background: #fff;
    border: solid #c2c1c1;
    border-width: 1px 1px 0 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  #nav li ul li {
    display: block;
    margin: 0;
    text-align: left;
  }
  #nav li ul li:first-child {
    display: block;
  }
  #nav li ul li:first-of-type, #nav li ul li:last-of-type {
    margin-left: 0;
  }
  #nav li ul a {
    display: block;
    white-space: nowrap;
    text-align: left;
    font-size: 0.8rem;
    font-family: "Outfit";
    color: var(--c-black);
    padding: 0.3rem 1rem 0.3rem 0;
    line-height: 1.6;
  }
  #nav li ul a:after {
    content: none;
  }
  #nav li ul a:hover {
    text-decoration: none;
    color: var(--c-primary-20);
    background: transparent;
  }
  #nav li ul a.activo, #nav li ul a.activo:hover {
    color: var(--c-primary-20);
    background: transparent;
  }
  #nav li:hover > ul, #nav li ul:hover {
    visibility: visible;
    opacity: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 3rem;
    z-index: 2;
  }
  #nav li:hover > a {
    color: var(--c-primary-20);
    background: transparent;
  }
  #nav li:hover > a:after {
    width: 100%;
    background: var(--c-primary-light);
    bottom: 0;
  }
}

#nav li li a span::after {
  content: "\e81d";
  top: 0.25rem;
}

#nav li ul li ul {
  margin: -2rem !important;
  left: calc(100% + 1rem);
  top: 0;
}
#nav li ul li ul:before {
  border-width: 1px 0 0 1px;
  top: 2.5rem;
  left: -0.5rem;
}

#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown,
#nav li ul.dropdown {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 50rem;
}
@media only screen and (min-width: 1240px) {
  #header.centrado-logo .menu_principal.centrar #nav li ul.dropdown,
  #nav li ul.dropdown {
    left: -20rem;
  }
  #header.centrado-logo .menu_principal.centrar #nav li ul.dropdown:before,
  #nav li ul.dropdown:before {
    left: 22rem;
  }
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown li.columna,
#nav li ul.dropdown li.columna {
  border-right: 1px solid #c2c1c1;
  padding-right: 1rem;
  margin-right: 1rem;
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown li.columna a,
#nav li ul.dropdown li.columna a {
  font-family: "Outfit SemiBold";
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown li.columna a span,
#nav li ul.dropdown li.columna a span {
  display: none;
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown li.columna ul li a,
#nav li ul.dropdown li.columna ul li a {
  font-family: "Outfit";
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown li.columna:last-of-type,
#nav li ul.dropdown li.columna:last-of-type {
  border: none;
  padding-right: 0;
  margin-right: 0;
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown h3,
#nav li ul.dropdown h3 {
  color: var(--title-color);
  margin: 0;
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown h3 a,
#nav li ul.dropdown h3 a {
  color: inherit;
  font-family: inherit;
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown ul,
#nav li ul.dropdown ul {
  position: relative;
  left: 0;
  margin: 0 !important;
  visibility: visible;
  opacity: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: none;
  padding: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}
#header.centrado-logo .menu_principal.centrar #nav li ul.dropdown ul:before,
#nav li ul.dropdown ul:before {
  content: none;
}

/* menú móvil sin js*/
.button_container {
  position: relative;
  height: 2.25rem;
  width: 2.25rem;
  cursor: pointer;
  z-index: 15000;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  outline: 1px solid transparent;
}
.button_container.activo {
  outline-color: var(--text-color);
}
.button_container:hover {
  opacity: 0.7;
}
.button_container.activo .top {
  -webkit-transform: translateY(0.5rem) translateX(0) rotate(45deg);
          transform: translateY(0.5rem) translateX(0) rotate(45deg);
  width: 100%;
}
.button_container.activo .middle {
  opacity: 0;
  background: transparent;
}
.button_container.activo .bottom {
  -webkit-transform: translateY(-0.5rem) translateX(0) rotate(-45deg);
          transform: translateY(-0.5rem) translateX(0) rotate(-45deg);
  width: 100%;
}
.button_container span {
  background: var(--text-color);
  border: none;
  height: 0.15rem;
  width: 100%;
  position: absolute;
  top: 0.5rem;
  right: 0;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
  cursor: pointer;
  border-radius: 0.25rem;
}
.button_container.activo span {
  background: var(--title-color);
}
.button_container span.middle {
  top: 1rem;
}
.button_container span.bottom {
  top: 1.5rem;
}
.button_container strong {
  display: none;
}
.button_container.activo strong {
  color: #fff;
}
@media only screen and (min-width: 1240px) {
  .button_container {
    display: none;
  }
}

@media only screen and (max-width: 1239px) {
  #menu {
    display: none;
    position: fixed;
    background: #fff;
    top: 0;
    left: -110vw;
    width: 100vw;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    z-index: 13000;
    margin: 0;
    padding: 3rem;
  }
  #menu.abierto {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    opacity: 1;
    left: 0;
    visibility: visible;
    height: 100%;
    overflow-y: auto;
    -webkit-animation: fadeInRight 0.5s ease forwards;
            animation: fadeInRight 0.5s ease forwards;
    background-color: #fff;
  }
  #menu.abierto #nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: auto;
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #menu.abierto li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    opacity: 0;
    -webkit-animation: fadeInRight 0.5s ease forwards;
            animation: fadeInRight 0.5s ease forwards;
    margin: 0 0 1rem;
  }
  #menu.abierto li:nth-child(1) {
    -webkit-animation-delay: 0.15s;
            animation-delay: 0.15s;
  }
  #menu.abierto li:nth-child(2) {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #menu.abierto li:nth-child(3) {
    -webkit-animation-delay: 0.45s;
            animation-delay: 0.45s;
  }
  #menu.abierto li:nth-child(4) {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s;
  }
  #menu.abierto li:nth-child(5) {
    -webkit-animation-delay: 0.75s;
            animation-delay: 0.75s;
  }
  #menu.abierto li:nth-child(6) {
    -webkit-animation-delay: 0.9s;
            animation-delay: 0.9s;
  }
  #menu.abierto li:nth-child(7) {
    -webkit-animation-delay: 1.05s;
            animation-delay: 1.05s;
  }
  #menu.abierto li:nth-child(8) {
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;
  }
  #menu.abierto li:nth-child(9) {
    -webkit-animation-delay: 1.35s;
            animation-delay: 1.35s;
  }
  #menu.abierto li a {
    font-family: "Outfit SemiBold";
    font-size: 1.2rem;
    color: var(--text-color);
    padding: 0.225rem 0;
    text-transform: uppercase;
    line-height: 1.2;
    letter-spacing: 2px;
  }
  #menu.abierto li a.activo {
    color: var(--c-primary);
    background: transparent;
  }
  #menu.abierto li a:after {
    content: none;
  }
  #menu.abierto li a.boton, #menu.abierto li a.boton-borde, #menu.abierto li a.boton-grande, #menu.abierto li a.boton-medio {
    padding: 0.65rem 1rem;
    margin-top: 1rem;
    color: var(--text-color);
    outline-color: var(--text-color);
  }
  #menu.abierto li a.boton.activo, #menu.abierto li a.activo.boton-borde, #menu.abierto li a.activo.boton-grande, #menu.abierto li a.activo.boton-medio {
    color: var(--c-primary);
    outline-color: transparent;
  }
  #menu.abierto li a span {
    position: relative;
  }
  #menu.abierto li li a {
    font-family: "Outfit";
  }
}
@media only screen and (max-width: 1239px) and (min-width: 600px) {
  #menu {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media only screen and (max-width: 1239px) and (min-width: 600px) and (max-width: 959px) {
  #menu {
    padding: 3rem;
  }
}
@media only screen and (max-width: 599px) {
  #menu_movil {
    padding: 3rem;
  }
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media only screen and (max-width: 1239px) {
  body.dark #menu {
    background: var(--level-0);
  }
  body.dark #menu.abierto li a:hover {
    opacity: 1;
  }
}
/*COLUMNAS*/
.columnas {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 0rem;
  grid-row-gap: 0rem;
}
.columnas .paginacion, .columnas .paginacion-barra, .columnas .paginacion-rounded, .columnas .paginacion-center, .columnas .titulo_bloque, .columnas .etiquetas_noticias, .columnas .cierre {
  grid-column-start: 1;
  grid-column-end: -1;
}
.columnas .columna {
  margin-bottom: 2rem;
}
.columnas .columna p {
  text-align: justify;
}
.columnas .columna img {
  max-width: 100%;
  margin-bottom: 1rem;
}
.columnas .columna:last-child {
  margin-bottom: 0;
}
.columnas.bordes .columna {
  border: 1px solid;
  padding: 1rem;
}
@media only screen and (min-width: 960px) {
  .columnas {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }
  .columnas .paginacion, .columnas .paginacion-barra, .columnas .paginacion-rounded, .columnas .paginacion-center, .columnas .titulo_bloque, .columnas .etiquetas_noticias, .columnas .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .columnas .columna {
    margin-bottom: 0;
  }
  .columnas.n3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }
  .columnas.n3 .paginacion, .columnas.n3 .paginacion-barra, .columnas.n3 .paginacion-rounded, .columnas.n3 .paginacion-center, .columnas.n3 .titulo_bloque, .columnas.n3 .etiquetas_noticias, .columnas.n3 .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .columnas.bordes .columna {
    padding: 1.25rem;
  }
}
@media only screen and (min-width: 1240px) {
  .columnas {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 0rem;
  }
  .columnas + .columnas {
    padding-top: 0;
  }
  .columnas .paginacion, .columnas .paginacion-barra, .columnas .paginacion-rounded, .columnas .paginacion-center, .columnas .titulo_bloque, .columnas .etiquetas_noticias, .columnas .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .columnas.n3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }
  .columnas.n3 .paginacion, .columnas.n3 .paginacion-barra, .columnas.n3 .paginacion-rounded, .columnas.n3 .paginacion-center, .columnas.n3 .titulo_bloque, .columnas.n3 .etiquetas_noticias, .columnas.n3 .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .columnas.n4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 0rem;
  }
  .columnas.n4 .paginacion, .columnas.n4 .paginacion-barra, .columnas.n4 .paginacion-rounded, .columnas.n4 .paginacion-center, .columnas.n4 .titulo_bloque, .columnas.n4 .etiquetas_noticias, .columnas.n4 .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .columnas.bordes .columna {
    padding: 1.25rem;
  }
}
@media only screen and (min-width: 1440px) {
  .columnas.bordes .columna {
    padding: 1.5rem;
  }
}

/*FOOTER*/
#footer {
  position: relative;
  margin: 0 auto;
  z-index: 5;
}
#footer .bloque {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (min-width: 960px) {
  #footer .bloque {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media only screen and (min-width: 1240px) {
  #footer .bloque {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

#footer .logo {
  text-align: center;
  margin: 0 auto 1rem;
}
#footer .logo img {
  width: 8rem;
}
@media only screen and (min-width: 960px) {
  #footer .logo {
    display: none;
  }
}

#footer .redes {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#footer .redes a {
  margin: 0 0.25rem;
}

#footer {
  background: var(--background-color);
  font-size: inherit;
  color: var(--text-color);
  border: solid;
  border-width: 0;
  border-color: #f7f7f7;
}
#footer a {
  color: var(--title-color);
}
#footer a:hover {
  text-decoration: underline;
  color: var(--c-primary);
}
@media only screen and (min-width: 1240px) {
  #footer {
    font-size: 1.15rem;
  }
}

#footer .redes a span {
  color: var(--title-color);
  background: #fff;
  outline-color: var(--title-color);
}
#footer .redes a:hover span {
  color: #fff;
  background: var(--c-primary-accent);
  outline-color: var(--c-primary-accent);
}

#footer .kit-digital {
  width: 100%;
  text-align: center;
  margin: auto;
}
#footer .kit-digital img {
  width: 100%;
  max-width: 45rem;
  background: #fff;
  padding: 0.5rem 1rem;
}
@media only screen and (min-width: 960px) {
  #footer .kit-digital {
    margin: 0 auto 1.5rem;
  }
  #footer .kit-digital img {
    padding: 0;
  }
}

#footer.dark_theme {
  background: var(--bg-dark-theme);
  color: var(--color-dark-theme);
}
#footer.dark_theme a {
  color: var(--c-primary-10);
}
#footer.dark_theme .redes a span {
  color: var(--title-color-dt);
  border-color: var(--title-color-dt);
  background: transparent;
  line-height: 3rem;
}
#footer.dark_theme .redes a span:hover {
  color: #fff;
  background: var(--c-primary);
  border-color: var(--c-primary);
}
#footer.dark_theme address a {
  color: var(--title-color-dt);
}
#footer.dark_theme address i {
  color: var(--title-color-dt);
}

#footer.dark_theme #cierre {
  background: transparent;
}

#footer .redes a span {
  position: relative;
  outline: 0;
  border: 0;
  background: transparent;
}
#footer .redes a span i {
  position: relative;
  z-index: 2;
}
#footer .redes a span:before {
  position: absolute;
  content: "";
  width: calc(3rem - 0.5rem);
  height: calc(3rem - 0.5rem);
  top: 0.25rem;
  left: 0.25rem;
  display: block;
  z-index: 1;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  background: #fff;
  outline: 1px solid var(--title-color);
}

#footer.dark_theme .redes a span,
#footer.dark_theme .redes a span:before {
  background: transparent;
}

#footer.dark_theme .redes a span:before {
  outline-color: var(--title-color-dt);
}

#footer .redes a:hover,
#footer.dark_theme .redes a:hover {
  background: transparent;
}
#footer .redes a:hover span,
#footer.dark_theme .redes a:hover span {
  background: transparent;
  outline-color: 0;
}
#footer .redes a:hover span:before,
#footer.dark_theme .redes a:hover span:before {
  background: var(--c-primary);
  outline-color: var(--c-primary);
}

#footer #cierre {
  background: transparent;
  color: var(--text-color);
  font-size: 0.9rem;
  border-top: 0 solid;
  border-color: rgba(var(--c-primary-alpha), 0.25);
  padding-top: 1rem;
  padding-bottom: 1rem;
}
#footer #cierre p {
  text-align: center;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  /*
  @media only screen and (min-width: 1240px) {
    display: flex;
    align-items: center;
    width: $def-max-width;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
  }
  */
}
#footer #cierre p a {
  display: inline-block;
  color: var(--text-color);
  border-color: rgba(var(--c-primary-alpha), 0.5);
  margin: 0.35rem 0.25rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  padding-right: 0.75rem;
  position: relative;
}
#footer #cierre p a:hover {
  color: var(--c-primary);
  text-decoration: underline;
}
#footer #cierre p a:after {
  position: absolute;
  content: "|";
  top: 0.125rem;
  right: 0;
  color: var(--title-color);
  font-size: 1rem;
  line-height: 1;
  opacity: 0.25;
}
@media only screen and (min-width: 600px) {
  #footer #cierre p a {
    margin: 0 0.5rem;
    padding-right: 1rem;
  }
}
#footer #cierre p a:first-of-type {
  margin-left: 0;
}
#footer #cierre p a:last-of-type {
  padding: 0;
}
#footer #cierre p a:last-of-type:after {
  content: none;
}
#footer #cierre p #copy {
  color: var(--text-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.25rem;
  margin-top: 0.75rem;
  width: 100%;
  /*
  @media only screen and (min-width: 1240px) {
    width: auto;
    margin: 0 0 0 auto; // separa
    flex-direction: row;

    & a {
      margin: 0 $padd-400 0 0;
    }
  }
    */
}
#footer #cierre p #copy a {
  opacity: 1;
  margin: 0.5rem 0 0;
}
#footer #cierre p #copy img {
  vertical-align: middle;
}
@media only screen and (min-width: 600px) {
  #footer #cierre p #copy {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  #footer #cierre p #copy a {
    margin: 0 0 0 2rem;
  }
}

#footer.dark_theme #cierre {
  color: var(--text-color-dt);
}
#footer.dark_theme #cierre a {
  color: #ececec;
}
#footer.dark_theme #cierre a:after {
  color: #ececec;
}
#footer.dark_theme #cierre a:hover {
  color: #fff;
}
#footer.dark_theme #cierre #copy {
  color: #ececec;
}
#footer.dark_theme #cierre #copy img {
  -webkit-filter: invert(1);
          filter: invert(1);
}

#footer address {
  text-align: center;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 960px) {
  #footer address {
    margin: 0 auto 0 0;
    text-align: left;
  }
}
#footer address span {
  display: block;
  margin-top: 0.5rem;
}
#footer address span a {
  margin: 0;
}
#footer address span a i {
  margin-left: 0;
}
#footer address span i {
  font-size: 0.8rem;
  vertical-align: text-top;
}
@media only screen and (min-width: 960px) {
  #footer address span {
    display: inline-block;
    margin-right: 1rem;
    margin-top: 0;
  }
  #footer address span.movil {
    margin-right: 1rem;
  }
  #footer address span:first-of-type {
    display: block;
    margin-right: 0;
  }
}
#footer address strong {
  font-family: "Outfit";
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--title-color);
}
#footer address strong span {
  font-family: "Outfit";
  display: block;
  margin-top: 0;
}
#footer address a {
  display: inline-block;
  margin: 0.5rem;
}
@media only screen and (min-width: 960px) {
  #footer address a {
    margin: 0 1rem 0 0;
  }
}
#footer address i {
  color: var(--title-color);
}
#footer address a i {
  color: inherit;
  font-size: 0.8rem;
  vertical-align: text-top;
}
@media only screen and (min-width: 960px) {
  #footer address .direccion, #footer address .telefono, #footer address .movil, #footer address .email {
    position: relative;
    padding-left: 1.5rem;
  }
  #footer address .direccion i, #footer address .telefono i, #footer address .movil i, #footer address .email i {
    position: absolute;
    left: 0;
    font-size: 1rem;
    top: 0.125rem;
  }
}
@media only screen and (min-width: 1240px) {
  #footer address span, #footer address span:first-of-type {
    display: inline-block;
    margin-right: 1rem;
  }
}

#footer.dark_theme address strong {
  color: var(--title-color-dt);
}

#header script + a,
#header a.mail,
#footer address script + a,
#footer address a.mail {
  position: relative;
  padding-left: 1.5rem;
}
#header script + a:before,
#header a.mail:before,
#footer address script + a:before,
#footer address a.mail:before {
  position: absolute;
  font-family: "infotelecom";
  content: "\e824";
  font-size: 1rem;
  line-height: 1;
  top: 25%;
  left: 0;
  color: inherit;
}

#header script + a:before,
#header a.mail:before {
  top: 0;
}

#footer.compacto {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#footer.compacto .bloque.simple {
  -webkit-box-ordinal-group: -1;
      -ms-flex-order: -2;
          order: -2;
}
@media only screen and (min-width: 960px) {
  #footer.compacto .bloque.simple {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #footer.compacto .bloque.simple .logo {
    display: none;
  }
}
@media only screen and (min-width: 960px) {
  #footer.compacto {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #footer.compacto address {
    margin: 0;
    width: 66%;
  }
  #footer.compacto address span, #footer.compacto address span:first-of-type {
    display: inline-block;
    margin: 0 1rem 0 0;
  }
  #footer.compacto address span i, #footer.compacto address span:first-of-type i {
    margin-left: 0;
  }
}
@media only screen and (min-width: 1240px) {
  #footer.compacto address {
    width: auto;
    margin: 0 auto 0 0;
  }
}

@media only screen and (min-width: 960px) {
  #footer .submenu + .simple {
    padding-top: 0;
  }
}
#footer.simple .submenu {
  font-size: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media only screen and (min-width: 960px) {
  #footer.simple .submenu {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#footer.simple .submenu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#footer.simple .submenu ul li {
  margin: 0.35rem 0.25rem;
}
#footer.simple .submenu ul li a {
  display: inline-block;
  color: var(--text-color);
  border-color: rgba(var(--c-primary-alpha), 0.5);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  padding-right: 0.75rem;
  position: relative;
}
#footer.simple .submenu ul li a:hover {
  color: var(--c-primary);
  text-decoration: underline;
}
#footer.simple .submenu ul li a:after {
  position: relative;
  content: "|";
  right: -0.75rem;
  color: var(--title-color);
  font-size: 1rem;
  line-height: 1;
  opacity: 0.25;
}
@media only screen and (min-width: 600px) {
  #footer.simple .submenu ul li a {
    padding-right: 1rem;
  }
}
#footer.simple .submenu ul li:first-of-type {
  margin-left: 0;
}
#footer.simple .submenu ul li:last-of-type a {
  padding: 0;
}
#footer.simple .submenu ul li:last-of-type a:after {
  content: none;
}

@media only screen and (min-width: 960px) {
  #footer.simple .simple {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  #footer.simple .simple address {
    margin: 0;
  }
}
#footer.simple.dark_theme .submenu ul li a {
  color: #ececec;
}
#footer.simple.dark_theme .submenu ul li a:after {
  color: #ececec;
}

/* TEXTOS*/
.textos p {
  margin-bottom: 1.65rem;
}

.textos *:last-child,
.textos p:last-child,
.textos p:last-of-type {
  margin-bottom: 0 !important;
}

.textos p + ul,
.textos p + ol {
  margin-top: 1.65rem;
}

/*LISTADOS*/
.textos ul,
.textos ol {
  margin: 0 0 1.65rem 1rem;
  list-style-position: outside;
}

.textos ul li,
.textos ol li {
  margin: 0;
  padding: 0;
}

.textos ul a,
.textos ol a {
  font-weight: normal;
}

.textos ol {
  list-style-type: decimal;
  list-style-position: outside;
  margin-left: 1.5rem;
}

.textos ul li {
  list-style-type: disc;
  padding: 0;
  margin: 0 0 1rem;
}

.textos ol li {
  padding: 0;
  margin: 0 0 1rem;
}

.textos ul ul,
.textos ol ul {
  list-style-type: circle;
  margin: 1rem 0 0 1rem;
}

.textos dl dt {
  padding-bottom: 0;
  font-style: normal;
}

.textos dl dd {
  padding-bottom: 1rem;
}

/*RULER / SEPARADOR */
.textos hr {
  display: block;
  position: relative;
  width: 100%;
  margin: 0 auto 2rem;
  border: 0;
  height: 0.25rem;
}
.textos hr:before {
  content: "";
  position: absolute;
  width: 8rem;
  height: 0.25rem;
  left: 0;
  background-color: var(--c-primary);
}

/*FLORITURAS*/
.first:first-letter {
  font-size: 4rem;
  float: left;
  display: block;
  margin: 0.5rem 1rem 0 0;
  font-family: "Outfit";
  line-height: 0.8;
}

/*TEXTO COLUMNAS*/
.textos p.columnado {
  -webkit-column-count: 2;
     -moz-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
  -webkit-column-rule: 1px outset #c2c1c1;
     -moz-column-rule: 1px outset #c2c1c1;
          column-rule: 1px outset #c2c1c1;
  margin: 3rem 0;
}
@media only screen and (max-width: 767px) {
  .textos p.columnado {
    -webkit-column-count: 1 !important;
       -moz-column-count: 1 !important;
            column-count: 1 !important;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    -webkit-column-rule: 0 none;
       -moz-column-rule: 0 none;
            column-rule: 0 none;
  }
}

/*TEXTOS + FOTOS*/
.textos .texto_imagen {
  display: block;
  margin: 0 0 2rem;
  max-width: 900px !important;
  width: 100%;
  position: relative;
}
.textos .texto_imagen .caption {
  font-size: 0.9rem;
  color: #444;
  width: calc(100% - 1.5rem);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
@media only screen and (min-width: 960px) {
  .textos .texto_imagen .caption {
    position: absolute;
    left: 0;
    bottom: -1.5rem;
  }
}
.textos .texto_imagen img {
  position: relative;
  width: 100%;
  max-width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
}
.textos.formato_centrado .texto_imagen {
  margin-left: auto;
  margin-right: auto;
}

.foto_flotada_izquierda_portada,
.foto_flotada_derecha_portada {
  width: 100% !important;
  padding: 0;
  position: relative;
}
.foto_flotada_izquierda_portada .texto_columna,
.foto_flotada_derecha_portada .texto_columna {
  width: calc(100% - 2rem);
  margin: 0 auto;
  padding-bottom: 3rem;
}
@media only screen and (min-width: 340px) {
  .foto_flotada_izquierda_portada .texto_columna,
  .foto_flotada_derecha_portada .texto_columna {
    width: calc(100% - 4rem);
    padding-bottom: 4rem;
  }
}
.foto_flotada_izquierda_portada .texto_imagen,
.foto_flotada_derecha_portada .texto_imagen {
  position: relative;
  max-width: 100% !important;
  width: 100%;
}
.foto_flotada_izquierda_portada .texto_imagen .caption,
.foto_flotada_derecha_portada .texto_imagen .caption {
  font-size: 0.95rem;
  position: absolute;
  bottom: 1rem;
  left: 1rem;
}

.foto_flotada_derecha_portada .texto_imagen .caption {
  left: 2rem;
}
@media only screen and (min-width: 340px) {
  .foto_flotada_derecha_portada .texto_imagen .caption {
    left: 3rem;
  }
}
@media only screen and (min-width: 960px) {
  .foto_flotada_derecha_portada .texto_imagen .caption {
    left: 4rem;
  }
}
@media only screen and (min-width: 1240px) {
  .foto_flotada_derecha_portada .texto_imagen .caption {
    left: 6rem;
  }
}
@media only screen and (min-width: 1440px) {
  .foto_flotada_derecha_portada .texto_imagen .caption {
    left: 7rem;
  }
}

.formato_centrado,
.formato_titulo_seccion {
  text-align: center;
}
.formato_centrado p,
.formato_titulo_seccion p {
  text-align: center;
}

.formato_titulo_seccion,
#principal .formato_titulo_seccion {
  background-color: inherit;
}

.textos ~ .formato_titulo_seccion,
#principal .formato_titulo_seccion ~ .textos {
  padding-bottom: 0;
}

#principal .formato_titulo_seccion {
  text-align: left;
}
#principal .formato_titulo_seccion p {
  text-align: left;
}

@media only screen and (min-width: 960px) {
  .foto_flotada_derecha,
  .foto_flotada_izquierda,
  .formato_centrado {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .foto_flotada_derecha {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
  .formato_centrado {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .formato_centrado .texto_imagen {
    margin-bottom: 1.5rem;
    width: 100%;
  }
  .formato_centrado .texto_columna,
  .textos .texto_columna {
    margin: 0 auto;
    width: 100%;
    max-width: 45rem;
  }
}
@media only screen and (min-width: 960px) and (min-width: 1240px) {
  .formato_centrado .texto_columna,
  .textos .texto_columna {
    max-width: 56rem;
  }
}
@media only screen and (min-width: 960px) {
  .foto_flotada_derecha .texto_imagen,
  .foto_flotada_izquierda .texto_imagen {
    margin-bottom: 0;
    width: 50%;
  }
  .foto_flotada_derecha .texto_columna,
  .foto_flotada_izquierda .texto_columna {
    margin: 0;
    width: 50%;
    padding: 0 0 0 3rem;
  }
  .foto_flotada_derecha .texto_columna {
    padding: 0 3rem 0 0;
  }
  .foto_flotada_derecha .texto_imagen img,
  .foto_flotada_izquierda .texto_imagen img {
    width: 100%;
  }
  #principal .foto_flotada_derecha, #principal .foto_flotada_izquierda, #principal .formato_centrado {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #principal .foto_flotada_derecha .texto_imagen, #principal .foto_flotada_derecha .texto_columna, #principal .foto_flotada_izquierda .texto_imagen, #principal .foto_flotada_izquierda .texto_columna, #principal .formato_centrado .texto_imagen, #principal .formato_centrado .texto_columna {
    width: 100%;
    padding: 0;
  }
  #principal .foto_flotada_derecha .texto_imagen, #principal .foto_flotada_izquierda .texto_imagen, #principal .formato_centrado .texto_imagen {
    margin-bottom: 3rem;
  }
  .foto_flotada_izquierda_portada,
  .foto_flotada_derecha_portada {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    padding: 3rem 0;
  }
  .foto_flotada_izquierda_portada .texto_columna,
  .foto_flotada_derecha_portada .texto_columna {
    padding: 3rem;
    margin: 0;
    width: 50%;
  }
  .foto_flotada_izquierda_portada .texto_imagen,
  .foto_flotada_derecha_portada .texto_imagen {
    width: 50%;
    -ms-flex-item-align: stretch;
        align-self: stretch;
    margin: 0;
    max-height: calc(100vh - 4.5rem);
    position: sticky;
    top: 4.5rem;
  }
}
@media only screen and (min-width: 960px) and (min-width: 1240px) {
  .foto_flotada_izquierda_portada .texto_imagen,
  .foto_flotada_derecha_portada .texto_imagen {
    max-height: calc(100vh - 5rem);
    top: 5rem;
  }
}
@media only screen and (min-width: 960px) {
  .foto_flotada_izquierda_portada .texto_imagen img,
  .foto_flotada_derecha_portada .texto_imagen img {
    width: 100%;
    max-width: 100% !important;
    -o-object-position: center;
       object-position: center;
  }
  .foto_flotada_derecha_portada {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
}
@media only screen and (min-width: 1240px) {
  .foto_flotada_derecha,
  .foto_flotada_izquierda,
  .formato_centrado {
    width: 100%;
  }
  .foto_flotada_izquierda .texto_columna {
    padding: 0 0 0 4rem;
  }
  .foto_flotada_derecha .texto_columna {
    padding: 0 4rem 0 0;
  }
  .foto_flotada_izquierda_portada,
  .foto_flotada_derecha_portada {
    padding: 0;
  }
  .foto_flotada_izquierda_portada .texto_columna,
  .foto_flotada_derecha_portada .texto_columna {
    padding: 4rem;
    max-width: 50% !important;
  }
}
@media only screen and (min-width: 1440px) {
  .foto_flotada_izquierda .texto_columna {
    padding: 0 0 0 6rem;
  }
  .foto_flotada_derecha .texto_columna {
    padding: 0 6rem 0 0;
  }
  .foto_flotada_izquierda_portada,
  .foto_flotada_derecha_portada {
    padding: 0;
  }
  .foto_flotada_izquierda_portada .texto_columna {
    padding: 6rem;
    padding-right: calc((100% - 1200px) / 2);
  }
  .foto_flotada_derecha_portada .texto_columna {
    padding-right: 6rem;
    padding-left: calc((100% - 1200px) / 2);
  }
}
@media only screen and (min-width: 1600px) {
  .foto_flotada_derecha .texto_columna,
  .foto_flotada_izquierda .texto_columna {
    padding: 0 6rem 0 0;
  }
  .foto_flotada_izquierda .texto_columna {
    padding: 0 0 0 6rem;
  }
  .foto_flotada_izquierda_portada .texto_columna {
    padding-right: calc((100% - 1356px) / 2);
  }
  .foto_flotada_derecha_portada .texto_columna {
    padding-left: calc((100% - 1356px) / 2);
  }
}
@media only screen and (min-width: 1600px) {
  #principal .foto_flotada_derecha .texto_imagen img, #principal .foto_flotada_izquierda .texto_imagen img {
    width: 100%;
    left: 0;
  }
}

@media only screen and (min-width: 960px) {
  .formato_titulo_seccion .texto_columna {
    width: 100%;
  }
}
.texto_columna.contacto a.red {
  margin-right: 2rem;
  font-size: 1rem;
  display: inline-block;
}

@media only screen and (min-width: 960px) {
  .bloque.textos .texto_columna {
    margin: 0 auto;
  }
}
@media only screen and (min-width: 960px) {
  .bloque.textos + .bloque.dark_theme,
  .bloque.textos + .bloque.foto_flotada_izquierda_portada,
  .bloque.textos + .bloque.foto_flotada_derecha_portada,
  .bloque.dark_theme + .bloque.textos {
    padding-top: 3rem;
  }
}
@media only screen and (min-width: 960px) and (min-width: 1240px) {
  .bloque.textos + .bloque.dark_theme,
  .bloque.textos + .bloque.foto_flotada_izquierda_portada,
  .bloque.textos + .bloque.foto_flotada_derecha_portada,
  .bloque.dark_theme + .bloque.textos {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 960px) and (min-width: 1440px) {
  .bloque.textos + .bloque.dark_theme,
  .bloque.textos + .bloque.foto_flotada_izquierda_portada,
  .bloque.textos + .bloque.foto_flotada_derecha_portada,
  .bloque.dark_theme + .bloque.textos {
    padding-top: 6rem;
  }
}
.nota p {
  color: #8a8988;
}

.texto_columna {
  position: relative;
}
.texto_columna .icono {
  position: absolute;
  top: -6rem;
}
.texto_columna .icono img {
  width: 5rem;
}
@media only screen and (min-width: 960px) {
  .texto_columna .icono {
    position: relative;
    top: 0;
    margin-top: -2rem;
  }
  .texto_columna .icono img {
    width: 6rem;
  }
}
@media only screen and (min-width: 1440px) {
  .texto_columna .icono {
    margin-top: -4rem;
  }
}

.separa {
  display: block;
  height: 1rem;
  margin: 0;
  background: var(--c-black);
}

blockquote {
  font-family: "Outfit SemiBold";
  margin: 3rem 0;
  padding: 1.5rem 0 1.5rem 2rem;
  text-indent: 0;
  letter-spacing: 0;
  position: relative;
  color: var(--title-color);
}
blockquote:before {
  content: "“";
  position: absolute;
  font-style: normal;
  font-size: 10rem;
  line-height: 1;
  top: 0;
  padding: 0 0.5rem;
  height: 4rem;
  opacity: 0.25;
  left: -3.5rem;
}
@media only screen and (min-width: 480px) {
  blockquote:before {
    left: 0;
  }
}
blockquote strong {
  font-family: "Outfit SemiBold";
  font-weight: normal;
}
@media only screen and (min-width: 480px) {
  blockquote {
    padding-left: 6rem;
  }
}

/* TABLAS */
table {
  max-width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.tabla {
  width: 100%;
  margin-bottom: 2rem;
  overflow-x: scroll;
}

.tabla th,
.tabla td {
  padding: 0.5rem;
  line-height: 1.2;
  text-align: left;
  border-top: 1px solid;
  border-color: var(--form-borde-input-color);
}

.tabla th {
  font-family: "Outfit SemiBold";
  font-weight: normal;
  vertical-align: bottom;
}

.tabla td {
  vertical-align: top;
}

.tabla thead:first-child tr th,
.tabla thead:first-child tr td {
  border-top: 0;
}

.tabla tbody + tbody {
  border-top: 2px solid;
  border-color: var(--form-borde-input-color);
}

.tabla-condensada tbody tr:nth-child(odd) td,
.tabla-condensada tbody tr:nth-child(odd) th {
  background-color: var(--gris-claro);
}

.tabla-bordes {
  border: 1px solid;
  border-color: var(--form-borde-input-color);
  border-collapse: separate;
  *border-collapse: collapsed;
  border-radius: 0.5rem;
}

.tabla-bordes th + th,
.tabla-bordes td + td,
.tabla-bordes th + td,
.tabla-bordes td + th {
  border-left: 1px solid;
  border-color: var(--form-borde-input-color);
}

.tabla-bordes thead:first-child tr:first-child th,
.tabla-bordes tbody:first-child tr:first-child th,
.tabla-bordes tbody:first-child tr:first-child td {
  border-top: 0;
}

.tabla-bordes thead:first-child tr:first-child th:first-child,
.tabla-bordes tbody:first-child tr:first-child td:first-child {
  border-radius: 0.5rem 0 0 0;
}

.tabla-bordes thead:first-child tr:first-child th:last-child,
.tabla-bordes tbody:first-child tr:first-child td:last-child {
  border-radius: 0 0.5rem 0 0;
}

.tabla-bordes thead:last-child tr:last-child th:first-child,
.tabla-bordes tbody:last-child tr:last-child td:first-child {
  border-radius: 0 0 0 0.5rem;
}

.tabla-bordes thead:last-child tr:last-child th:last-child,
.tabla-bordes tbody:last-child tr:last-child td:last-child {
  border-radius: 0 0 0.5rem 0;
}

.tabla-cabeceras thead th,
.tabla-cabeceras tbody tr td:first-child {
  background-color: var(--gris-claro);
}

.tabla-puntos thead th {
  background: #2191fb;
  border-color: #2191fb;
  color: #fff;
}
.tabla-puntos thead:last-of-type th {
  background: #038841;
  border-color: #038841;
}

/*banner*/
.banner {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
}
.banner.parallax {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}
@media only screen and (max-width: 599px) {
  .banner.parallax .enlace-reservas {
    position: relative;
    min-height: 50vh;
  }
}

.banner .tinta {
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  overflow: auto;
  position: absolute;
  z-index: 1;
}

.banner.sin_foto {
  height: auto;
}

.enlace-reservas {
  text-align: center;
  position: relative;
  z-index: 2;
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem;
  min-height: 100vw;
  height: auto;
}
.enlace-reservas :last-child {
  margin-bottom: 0;
}

.enlace-reservas h3 {
  width: 100%;
  max-width: 56rem;
}
.enlace-reservas h3 span {
  font-size: inherit;
  line-height: inherit;
  display: block;
  line-height: 1.2;
}

.enlace-reservas a {
  margin-top: 2rem;
}

.banner .progressive {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100vw;
}

.banner img,
.banner .progressive img {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

@media only screen and (min-width: 600px) {
  .cabecera,
  .banner img,
  .banner .progressive img {
    min-height: 33vw;
  }
  .enlace-reservas {
    min-height: 33vw;
  }
  .banner.sin_foto .cabecera,
  .banner.sin_foto .enlace-reservas {
    min-height: 20vw;
  }
}
@media only screen and (min-width: 600px) and (orientation: portrait) {
  .cabecera,
  .banner img,
  .banner .progressive img {
    min-height: 50vw;
  }
  .enlace-reservas {
    min-height: 50vw;
  }
}
@media only screen and (min-width: 1240px) {
  .enlace-reservas {
    padding: 4rem;
  }
  .banner.sin_foto .enlace-reservas {
    padding: 4rem;
  }
  .banner.sin_foto .cabecera,
  .banner.sin_foto .enlace-reservas {
    min-height: 15rem;
  }
  .cabecera,
  .banner img,
  .banner .progressive img {
    min-height: 3vw;
  }
  .enlace-reservas {
    min-height: 3vw;
  }
}
@media only screen and (min-width: 1440px) {
  .enlace-reservas,
  .banner.sin_foto .enlace-reservas {
    padding: 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .enlace-reservas,
  .banner.sin_foto .enlace-reservas {
    padding: 8rem;
  }
}
.banner_externo {
  padding: 1.5rem;
  text-align: center;
}
.banner_externo img {
  width: 6rem;
}
.banner_externo h3 a {
  font-size: 1rem;
  display: inline-block;
}
.banner_externo h3 a strong {
  display: block;
  text-transform: uppercase;
  font-size: 1.15rem;
  color: var(--c-primary-40);
  margin: 0.25rem;
}
@media only screen and (min-width: 600px) {
  .banner_externo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 2rem;
    text-align: left;
  }
  .banner_externo img {
    margin-right: 2rem;
  }
  .banner_externo h3 {
    margin: 0;
  }
}

.enlace-reservas {
  color: #fff;
  text-shadow: 0 0 3px rgba(var(--c-black-alpha), 0.8);
}
.enlace-reservas h3 {
  text-align: center;
  color: #fff;
}
.enlace-reservas h3 span {
  color: inherit;
}
.enlace-reservas a.boton, .enlace-reservas a.boton-borde, .enlace-reservas a.boton-grande, .enlace-reservas a.boton-medio {
  text-shadow: none;
}

.banner.sin_texto {
  height: 100vw;
}
@media only screen and (min-width: 600px) {
  .banner.sin_texto {
    height: 50vw;
  }
}
@media only screen and (min-width: 960px) {
  .banner.sin_texto {
    height: 40vw;
  }
}
@media only screen and (min-width: 1240px) {
  .banner.sin_texto {
    height: 33vw;
  }
}
@media only screen and (min-width: 1440px) {
  .banner.sin_texto {
    height: 25vw;
  }
}

.banner .enlace-reservas {
  background: rgba(var(--c-black-alpha), 0.5);
}

.banner.sin_foto .enlace-reservas {
  background: var(--c-primary-20);
}

.banner .tinta {
  background: var(--c-primary-20);
  opacity: 0;
}

.boton, .boton-borde, .boton-grande, .boton-medio {
  text-decoration: none !important;
  text-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  border: none;
  line-height: 1;
  border-radius: 0;
  padding: 0.75rem 1.5rem;
  font-family: "Outfit";
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 1rem;
  color: var(--button-color);
  background: var(--button-background);
  border-radius: 0;
  outline: solid;
  outline-width: 1px;
  outline-offset: -1px;
  outline-color: var(--button-background);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.boton:hover, .boton-borde:hover, .boton-grande:hover, .boton-medio:hover {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  background: var(--c-primary);
  outline-color: var(--c-primary);
}
.boton:active, .boton-borde:active, .boton-grande:active, .boton-medio:active, .boton:focus, .boton-borde:focus, .boton-grande:focus, .boton-medio:focus {
  outline: none;
}
.boton:disabled, .boton-borde:disabled, .boton-grande:disabled, .boton-medio:disabled {
  cursor: default !important;
  color: #c2c1c1;
  background: #ececec;
  border-color: #c2c1c1;
}
@media only screen and (min-width: 960px) {
  .boton, .boton-borde, .boton-grande, .boton-medio {
    padding: 1rem 1.5rem;
  }
}

.boton-medio {
  padding: 1.25rem 4.5rem;
  font-size: 1.4rem;
}

.boton-grande {
  padding: 1.5rem 5rem;
  font-size: 1.5rem;
}

.boton-borde {
  outline-style: solid;
  outline-width: 1px;
  outline-offset: -1px;
  outline-color: var(--button-background);
  background: transparent;
  color: var(--button-background);
}
.boton-borde:hover {
  outline-color: var(--c-primary);
}

/*Más colores*/
.btn-verde {
  background: #038841;
  color: #fff;
  outline-color: #038841;
}
.btn-verde:hover {
  background: #02602e;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-verde:active {
  background: #000b05;
}

.btn-azul {
  background: #2191fb;
  color: #fff;
  outline-color: #2191fb;
}
.btn-azul:hover {
  background: #047def;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-azul:active {
  background: #03509a;
}

.btn-amarillo {
  background: #FF9F1C;
  color: #fff;
  outline-color: #FF9F1C;
}
.btn-amarillo:hover {
  background: #f28c00;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-amarillo:active {
  background: #9c5a00;
}

.btn-rojo {
  background: #DA2424;
  color: #fff;
  outline-color: #DA2424;
}
.btn-rojo:hover {
  background: #b71e1e;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-rojo:active {
  background: #6d1212;
}

.btn-accent {
  background: var(--c-primary-accent);
  outline-color: var(--c-primary-accent);
}

.radius {
  border-radius: 0;
}

.boton + .boton, .boton-medio + .boton, .boton-grande + .boton, .boton-borde + .boton, .boton + .boton-medio, .boton-medio + .boton-medio, .boton-grande + .boton-medio, .boton-borde + .boton-medio, .boton + .boton-grande, .boton-medio + .boton-grande, .boton-grande + .boton-grande, .boton-borde + .boton-grande, .boton + .boton-borde, .boton-medio + .boton-borde, .boton-grande + .boton-borde, .boton-borde + .boton-borde {
  margin-top: 1rem;
}

.volver-arriba {
  position: fixed;
  right: 0.5rem;
  bottom: 0.5rem;
  text-decoration: none;
  display: none;
  width: 3rem;
  height: 3rem;
  opacity: 0.8;
  background-image: url(/static/graficos/flecha_volver.png);
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: center;
}
.volver-arriba i {
  display: none;
}

#footer a.volver-arriba span {
  display: none;
}

#footer a.volver-arriba {
  color: var(--text-color);
}

.volver-arriba:hover {
  opacity: 1;
}

.buscador {
  display: none;
  background: #fff;
  padding: 1rem;
  margin-bottom: 1.5rem;
  border: 1px solid #c2c1c1;
}
@media only screen and (min-width: 600px) {
  .buscador {
    padding: 1.5rem;
    margin-bottom: 2rem;
  }
}
.buscador.abierto {
  display: block;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5000;
  width: 100vw;
  height: 100vh;
  margin: 0;
  padding: 4rem 2rem 2rem;
}
.buscador.formulario .grupo_campos {
  padding-bottom: 5rem;
}
.buscador.formulario .titulo_campo {
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 0.5px;
}
.buscador.formulario .boton_form {
  position: fixed;
  bottom: 0;
  width: 100vw;
  left: 0;
  padding: 1rem;
  background: #fff;
  -webkit-box-shadow: 0 0 10px rgba(var(--text-color), 0.125);
          box-shadow: 0 0 10px rgba(var(--text-color), 0.125);
  border-top: 1px solid #c2c1c1;
}
@media only screen and (min-width: 340px) {
  .buscador.formulario .boton_form {
    padding: 1rem 2rem;
  }
}
@media only screen and (min-width: 600px) {
  .buscador.formulario .boton_form {
    padding: 1rem 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .buscador.formulario .boton_form {
    position: relative;
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: none;
  }
}
.buscador.formulario .boton, .buscador.formulario .boton-medio, .buscador.formulario .boton-grande, .buscador.formulario .boton-borde {
  margin: 0 auto;
}
@media only screen and (min-width: 600px) {
  .buscador.formulario .grupo_campos {
    min-height: calc(100vh - 8rem);
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 768px) {
  .buscador {
    padding: 2rem;
    grid-column-start: 1;
    grid-column-end: -1;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1240px) {
  .buscador.abierto {
    position: relative;
    height: auto;
    margin: 0;
    z-index: 1;
    padding: 1rem;
    overflow: auto;
    width: 100%;
  }
  .buscador.formulario .grupo_campos {
    min-height: auto;
    height: auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .buscador.formulario .grupo_campos .campo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .buscador.formulario .grupo_campos .campo .titulo_campo {
    text-align: left;
  }
  .buscador.formulario .grupo_campos .campo .titulo_campo, .buscador.formulario .grupo_campos .campo .campo_campo {
    width: auto;
    padding-top: 0;
  }
  .buscador.formulario .grupo_campos .campo .titulo_campo select, .buscador.formulario .grupo_campos .campo .campo_campo select {
    margin: 0;
    min-width: 12rem;
    height: 2.25em;
  }
  .buscador.formulario .grupo_campos .campo .campo_doble {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .buscador.formulario .grupo_campos .campo .campo_doble select {
    margin-bottom: 0.5rem;
    width: 100%;
  }
  .buscador.formulario .boton_form {
    width: auto;
    min-width: 10rem;
  }
  .buscador.formulario .boton, .buscador.formulario .boton-medio, .buscador.formulario .boton-grande, .buscador.formulario .boton-borde {
    margin: 0;
    display: block;
    width: 100%;
  }
}

.volver {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  padding: 0 1rem;
  height: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  -webkit-box-shadow: 0 0 10px rgba(var(--text-color), 0.125);
          box-shadow: 0 0 10px rgba(var(--text-color), 0.125);
  border-bottom: 1px solid #c2c1c1;
}
@media only screen and (min-width: 340px) {
  .volver {
    padding: 1rem 2rem;
  }
}
@media only screen and (min-width: 600px) {
  .volver {
    padding: 1rem 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .volver {
    display: none;
  }
}

.volver a.cierra {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.125rem;
  font-size: 1rem;
  margin-right: auto;
  color: var(--text-color);
}
.volver a.cierra i {
  font-size: 0.5rem;
  margin-right: 0.25rem;
}

.volver a.cerrar {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  line-height: 1.5rem;
  text-align: center;
  color: var(--text-color);
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
}
.volver a.cerrar:before, .volver a.cerrar:after {
  position: absolute;
  content: "";
  width: 20px;
  height: 3px;
  background: var(--text-color);
  top: 1px;
  left: 1px;
  -webkit-transform: translateY(8px) translateX(0) rotate(45deg);
          transform: translateY(8px) translateX(0) rotate(45deg);
}
.volver a.cerrar:after {
  top: 17px;
  -webkit-transform: translateY(-8px) translateX(0) rotate(-45deg);
          transform: translateY(-8px) translateX(0) rotate(-45deg);
}

.volver a.cerrar span {
  display: none;
}

/* COMPARTIR */
.compartir {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.compartir a {
  color: #fff;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 0 0.25rem;
  text-align: center;
  font-size: 0.9rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
@media only screen and (min-width: 600px) {
  .compartir a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial;
    line-height: 2.5rem;
    margin: 0;
  }
  .compartir a + a {
    margin-left: 1.5rem;
  }
  .compartir a i {
    margin-right: 0.25rem;
  }
}
.compartir a:first-of-type {
  margin-left: 0;
}
.compartir a:last-of-type {
  margin-right: 0;
}
.compartir a span {
  display: block;
  text-transform: uppercase;
}
.compartir a:hover {
  color: #fff;
  background: var(--c-primary);
  text-decoration: none;
}
.compartir span.comparte {
  width: 100%;
  margin: 0.25rem 0;
  text-align: left;
}
.compartir span.comparte span {
  font-family: "Outfit SemiBold";
  color: var(--high-contast);
  text-transform: none;
  font-size: inherit;
  letter-spacing: 0.5px;
  text-align: left;
}
.compartir span.comparte i {
  display: none;
}
@media only screen and (min-width: 1240px) {
  .compartir {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

.bloque.compartir a {
  color: var(--title-color);
  background: transparent;
  outline: 0;
}
.bloque.compartir a:hover {
  color: var(--c-primary-20);
  background: transparent;
}

@media only screen and (min-width: 1240px) {
  .bloque.compartir a {
    position: relative;
  }
  .bloque.compartir a:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    left: 0;
    bottom: -1px;
    background: var(--c-primary-light);
    -webkit-transform-origin: right top;
            transform-origin: right top;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  }
  .bloque.compartir a:hover {
    text-decoration: none;
    color: var(--c-primary);
  }
  .bloque.compartir a:hover:after {
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1);
            transform: scale(1);
    background: var(--c-primary);
  }
}
/*DESCARGAS*/
.descargas ul, .descargas_seccion ul {
  list-style: none;
}
.descargas ul li, .descargas_seccion ul li {
  width: 100%;
  display: block;
  margin: 0 0 1rem;
  line-height: 1.3;
}
.descargas a, .descargas_seccion a {
  display: inline-block;
  font-weight: normal;
  color: inherit;
  background: transparent;
  text-decoration: none;
  position: relative;
  z-index: 1;
  padding-left: 1.75rem;
}
.descargas a i, .descargas_seccion a i {
  position: absolute;
  left: 0;
  font-size: 1rem;
}
.descargas a.pdf i, .descargas_seccion a.pdf i {
  color: #EA4C3A;
}
.descargas a.word i, .descargas_seccion a.word i {
  color: #2372BA;
}
.descargas a.image i, .descargas_seccion a.image i {
  color: #6A4197;
}
.descargas a.excel i, .descargas_seccion a.excel i {
  color: #08743B;
}
.descargas a.powerpoint i, .descargas_seccion a.powerpoint i {
  color: #DD5B26;
}
.descargas a.video i, .descargas_seccion a.video i {
  color: #474A55;
}
.descargas a.video, .descargas_seccion a.video {
  display: inline-block;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  padding-left: 2rem !important;
  background: transparent;
}
@media only screen and (min-width: 768px) {
  .descargas ul, .descargas_seccion ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .descargas ul li, .descargas_seccion ul li {
    width: 50%;
    padding-right: 1rem;
  }
}

.descargas_seccion {
  background: #f7f7f7;
  max-width: 45rem;
  margin: 0 auto;
  padding: 1rem;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 340px) {
  .descargas_seccion {
    padding: 1rem 1.5rem;
  }
}
@media only screen and (min-width: 400px) {
  .descargas_seccion {
    padding: 1rem 2rem;
  }
}
@media only screen and (min-width: 960px) {
  .descargas_seccion {
    margin-top: -2rem;
  }
}
.descargas_seccion .titulo_bloque {
  text-align: left;
  margin: 0 0 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid;
}

.cierre .descargas, .cierre .descargas_seccion {
  margin-top: 0;
}

.noticia_ampliada .descargas strong, .noticia_ampliada .descargas_seccion strong {
  display: block;
  margin: 0 0 0.5rem;
  font-family: "Outfit SemiBold";
  color: var(--high-contast);
  text-transform: none;
  font-size: inherit;
  letter-spacing: 0.5px;
}

/*FORMULARIOS*/
/*RESET*/
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=date],
select,
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: rgba(255, 255, 255, 0.025);
  border: none;
  border: solid 2px rgba(var(--text-color), 0.125);
  color: inherit;
  display: block;
  outline: 0;
  padding: 0 1rem;
  text-decoration: none;
  width: 100%;
  margin-bottom: 1rem;
  font-family: inherit;
  font-size: 1rem;
}
@media (min-width: 75em) {
  input[type=text],
  input[type=password],
  input[type=email],
  input[type=tel],
  input[type=date],
  select,
  textarea {
    font-size: 1rem;
  }
}

input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=date],
select {
  height: 2.75em;
}

select option {
  min-height: 2.75em;
  height: auto;
  line-height: 2.75em;
  padding: 5px 0 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  background: #fff;
}
@media (min-width: 75em) {
  select option {
    font-size: 1rem;
  }
}

textarea {
  overflow: auto;
  padding: 1rem 1rem;
}

/*CHROME
body:nth-of-type(1) .formulario span.radios input {
    width: $padd-320;
    margin-right: .5rem;
}

body:nth-of-type(1) .formulario .campo_alt input {
    width: $padd-320;
    height: $padd-320;
}*/
/*FORMA*/
.formulario {
  /*
  & .campo_alt span.check-box,
  & span.radios span.check-box {
      width: $padd-340;
      height: $padd-340;
      border: 0;
      padding: 0;
      margin: 0 .6rem 0 0;
      display: inline-block;
      font-size: 1.2rem;
      line-height: 1;
      cursor: pointer;
      color: $formulario-color-check-box;
  }

  & .campo_alt span.check-box.icon-ok-squared,
  & span.radios span.check-box.icon-ok-circled {
      color: $formulario-color-check-box-checked;
  }
  */
  /*2 columnas*/
}
.formulario .titulo_grupo_campos {
  font-family: "Outfit SemiBold";
  padding-left: 0.5rem;
  margin-bottom: 0.25rem;
}
.formulario .titulo_campo, .formulario.formulario span.radios {
  display: block;
  width: 100%;
  padding-left: 0;
  position: relative;
}
.formulario span.radios {
  margin: 0.5rem 0;
}
.formulario span.radios span, .formulario .campo_alt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-bottom: 0.5rem;
}
.formulario .campo_radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.formulario .campo_radio label {
  margin-bottom: 0.5rem;
}
.formulario .campo_radio input + label {
  -webkit-box-ordinal-group: 101;
      -ms-flex-order: 100;
          order: 100;
}
.formulario .campo_alt {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.formulario .campo_alt .titulo_campo, .formulario span.radios {
  width: calc(100% - 2em);
  padding-left: 0.4rem;
}
.formulario .campo_alt .campo_checkbox, .formulario .campo_alt .campo_campo {
  width: 1.75rem;
  height: 1.75rem;
  text-align: center;
}
.formulario .campo_alt .titulo_campo {
  line-height: 1.2;
}
.formulario .campo_alt label a {
  color: var(--text-color);
  text-decoration: underline;
}
.formulario .campo_alt label a:hover {
  color: var(--c-primary);
}
.formulario .error {
  color: #DA2424;
  display: block;
  margin: -0.75rem 0 0.75rem 0;
  font-size: 0.8rem;
  padding: 0 0 0 1rem;
  padding: 0 0 0 1.25rem;
  position: relative;
}
.formulario .error:before {
  position: absolute;
  left: 0.25rem;
  font-family: "infotelecom";
  content: "\e816";
  font-size: 0.8rem;
}
.formulario .error span {
  white-space: nowrap;
}
.formulario .campo_alt .error {
  padding: 0 0 0 1.5rem;
  width: 100%;
  margin: 0 0 1rem;
}
@media only screen and (min-width: 768px) {
  .formulario .grupo_campos .campo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .formulario .grupo_campos .campo .titulo_campo {
    width: 30%;
    padding: 0.5rem 1rem 0 0;
    text-align: right;
  }
  .formulario .grupo_campos .campo legend.titulo_campo {
    float: left;
  }
  .formulario .grupo_campos .campo .campo_campo {
    width: 40%;
  }
  .formulario .error {
    width: 100%;
  }
  .formulario .campo_alt .error {
    padding-left: 1.5rem;
  }
  .formulario .campo_alt .error:before {
    left: 0.25rem;
  }
  .formulario .obliga, .formulario .titulo_grupo_campos, .formulario .campo_alt {
    padding-left: 30%;
  }
  .formulario .boton, .formulario .boton-medio, .formulario .boton-grande, .formulario .boton-borde {
    margin: 1rem 0 3rem;
    margin-left: 30%;
    width: 40%;
  }
}

/*FORMULARIO ESTILOS*/
.formulario {
  /* SELECT */
}
.formulario input:not([type=button]):not([type=reset]):not([type=submit]):not([type=image]), .formulario select, .formulario textarea {
  background: var(--form-fondo-input);
  color: var(--form-color-input);
  border: solid;
  border-color: var(--form-borde-input-color);
  border-width: 1px;
  border-radius: 0;
  letter-spacing: 0.5px;
  font-family: inherit;
  font-size: 1rem;
}
.formulario input:not([type=button]):not([type=reset]):not([type=submit]):not([type=image]) input[type=button], .formulario select input[type=button], .formulario textarea input[type=button] {
  border-radius: 0;
}
@media only screen and (min-width: 768px) {
  .formulario input:not([type=button]):not([type=reset]):not([type=submit]):not([type=image]), .formulario select, .formulario textarea {
    font-size: 1rem;
  }
}
.formulario input:not([type=button]):not([type=reset]):not([type=submit]):not([type=image]):focus, .formulario select:focus, .formulario textarea:focus {
  border-color: rgb(0, 116, 189);
  -webkit-box-shadow: 0 0 5px rgba(0, 116, 189, 0.7);
          box-shadow: 0 0 5px rgba(0, 116, 189, 0.7);
}
.formulario .campo_menu {
  text-decoration: none;
  display: block;
  position: relative;
}
.formulario .campo_menu:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}
.formulario .campo_menu select {
  background-image: url(/static/graficos/arrow.png);
  background-position: calc(100% - 1rem);
  background-repeat: no-repeat;
  background-size: 0.5rem;
}
.formulario .campo_menu.campo_doble {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.formulario .campo_menu.campo_doble select {
  width: calc(50% - 0.5rem);
}
.formulario .obliga, .formulario .obligatorio {
  color: #DA2424;
  padding-right: 0.25rem;
}
.formulario .boton, .formulario .boton-medio, .formulario .boton-grande, .formulario .boton-borde {
  font-size: 1rem;
  display: block;
  padding: 0;
  line-height: 2.5rem;
}
@media only screen and (min-width: 768px) {
  .formulario .boton, .formulario .boton-medio, .formulario .boton-grande, .formulario .boton-borde {
    font-size: 1.1rem;
  }
}
@media only screen and (min-width: 960px) {
  .formulario .boton, .formulario .boton-medio, .formulario .boton-grande, .formulario .boton-borde {
    font-size: 1.25rem;
    line-height: 3rem;
  }
}

.bloque.gracias {
  min-height: 60vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.gracias,
.gracias p {
  text-align: center;
}

/*CLAUSULA LEGAL*/
.formulario span.info_datos {
  display: block;
  font-size: 0.9rem;
  text-align: justify;
  color: var(--form-color-clausula);
  background: var(--form-fondo-clausula);
  border: 1px solid var(--form-borde-clausula);
  padding: 1rem;
  margin: 1.5rem auto 0;
  width: calc(100% + 2rem);
  margin-left: -1rem;
  line-height: 1.4;
}

.formulario span.info_datos strong {
  font-size: 0.95rem;
  text-align: left;
  display: block;
}

@media only screen and (min-width: 768px) {
  .formulario span.info_datos {
    max-width: 96%;
    margin: 0 auto;
  }
}
.formulario.placeholder .campo {
  padding-top: 2rem;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .formulario.placeholder .campo {
    padding-top: 1.5rem;
  }
}
.formulario.placeholder .seleccion {
  padding-top: 1rem;
}
.formulario.placeholder .seleccion .titulo_campo {
  padding: 0;
  margin: 0 0 0.5rem;
}
.formulario.placeholder .campo_input, .formulario.placeholder .campo_textarea {
  position: relative;
  display: block;
}
.formulario.placeholder input, .formulario.placeholder textarea {
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  outline: 0;
}
.formulario.placeholder input, .formulario.placeholder select {
  margin-bottom: 0;
}
.formulario.placeholder .campo_input input, .formulario.placeholder .campo_textarea textarea, .formulario.placeholder .campo_menu select {
  font-size: 1rem;
}
.formulario.placeholder .campo_input input:focus + label, .formulario.placeholder .campo_textarea textarea:focus + label, .formulario.placeholder .campo_menu select:focus + label {
  background: var(--c-primary);
  color: #fff;
  z-index: 2;
  text-transform: uppercase;
  opacity: 1;
  top: -1.25rem;
  left: 0;
}
.formulario.placeholder .campo_input label, .formulario.placeholder .campo_textarea label, .formulario.placeholder .campo_menu label {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  position: absolute;
  color: #999;
  top: 0;
  line-height: 1;
  opacity: 0;
  font-size: 0.7rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 0.25rem 0.5rem;
  white-space: nowrap;
}
.formulario.placeholder textarea {
  display: block;
  resize: vertical;
}
.formulario.placeholder ::-webkit-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--text-color);
  opacity: 0.75;
  /* Firefox */
}
.formulario.placeholder ::-moz-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--text-color);
  opacity: 0.75;
  /* Firefox */
}
.formulario.placeholder :-ms-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--text-color);
  opacity: 0.75;
  /* Firefox */
}
.formulario.placeholder ::-ms-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--text-color);
  opacity: 0.75;
  /* Firefox */
}
.formulario.placeholder ::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: var(--text-color);
  opacity: 0.75;
  /* Firefox */
}
.formulario.placeholder .obliga {
  width: 100%;
  display: block;
  font-size: 1rem;
}
.formulario.placeholder .obligatorio {
  padding-right: 0;
}
.formulario.placeholder .error {
  margin-top: 0.25rem !important;
  margin-bottom: 0;
  color: #DA2424;
}
.formulario.placeholder .campo_input input:-moz-placeholder-shown {
  border-color: red;
}
.formulario.placeholder .campo_input input:-ms-input-placeholder {
  border-color: red;
}
.formulario.placeholder .campo_input input:placeholder-shown {
  border-color: red;
}
.formulario.placeholder .campo_input input:not(:-moz-placeholder-shown), .formulario.placeholder .campo_textarea textarea:not(:-moz-placeholder-shown) {
  border-color: green !important;
}
.formulario.placeholder .campo_input input:not(:-ms-input-placeholder), .formulario.placeholder .campo_textarea textarea:not(:-ms-input-placeholder) {
  border-color: green !important;
}
.formulario.placeholder .campo_input input:not(:placeholder-shown), .formulario.placeholder .campo_textarea textarea:not(:placeholder-shown) {
  border-color: green !important;
}
.formulario.placeholder .campo_input input:not(:-moz-placeholder-shown) + label, .formulario.placeholder .campo_textarea textarea:not(:-moz-placeholder-shown) + label {
  background: transparent;
  color: var(--title-color);
  z-index: 2;
  opacity: 1;
  top: -1.2rem;
  left: 0;
  padding: 0.25rem 0;
}
.formulario.placeholder .campo_input input:not(:-ms-input-placeholder) + label, .formulario.placeholder .campo_textarea textarea:not(:-ms-input-placeholder) + label {
  background: transparent;
  color: var(--title-color);
  z-index: 2;
  opacity: 1;
  top: -1.2rem;
  left: 0;
  padding: 0.25rem 0;
}
.formulario.placeholder .campo_input input:not(:placeholder-shown) + label, .formulario.placeholder .campo_textarea textarea:not(:placeholder-shown) + label {
  background: transparent;
  color: var(--title-color);
  z-index: 2;
  opacity: 1;
  top: -1.2rem;
  left: 0;
  padding: 0.25rem 0;
}
.formulario.placeholder span.radios {
  padding: 0 0 0 0.5rem;
  margin: 0;
}
.formulario.placeholder span.radios span {
  font-size: 1rem;
}
.formulario.placeholder span.radios span span.icon {
  font-size: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .formulario.placeholder .titulo_bloque, .formulario.placeholder .obliga {
    padding: 0 calc((100% - 32rem) / 2);
  }
  .formulario.placeholder .titulo_grupo_campos {
    width: 100%;
    padding: 0;
  }
  .formulario.placeholder .grupo_campos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 calc((100% - 32rem) / 2);
  }
  .formulario.placeholder .grupo_campos .titulo_campo {
    width: 100%;
    text-align: left;
  }
  .formulario.placeholder .grupo_campos .campo_alt .titulo_campo {
    width: auto;
  }
  .formulario.placeholder .grupo_campos .campo {
    width: calc(50% - 0.5rem);
  }
  .formulario.placeholder .grupo_campos .campo.doble {
    width: 100%;
  }
  .formulario.placeholder .grupo_campos .campo:has(> .campo_radio), .formulario.placeholder .grupo_campos .campo:has(> .campo_menu), .formulario.placeholder .grupo_campos .campo.seleccion {
    width: 100%;
  }
  .formulario.placeholder .grupo_campos .campo.triple {
    width: calc(33.33% - 0.66rem);
  }
  .formulario.placeholder .grupo_campos .campo .campo_campo {
    width: 100%;
  }
  .formulario.placeholder .campo_input label, .formulario.placeholder .campo_textarea label {
    top: -1rem;
  }
  .formulario.placeholder .campo_alt {
    padding-left: 0;
  }
  .formulario.placeholder .boton, .formulario.placeholder .boton-medio, .formulario.placeholder .boton-grande, .formulario.placeholder .boton-borde {
    width: 32rem;
    margin: 1rem auto 3rem;
  }
}

.formulario select {
  background-image: url(/static/graficos/arrow.png);
  background-position: calc(100% - 1rem);
  background-repeat: no-repeat;
  background-size: 0.5rem;
}

.formulario .grupo_campos .campo fieldset .titulo_campo {
  padding: 0 0 0.5rem;
  line-height: 1.3;
}
.formulario .grupo_campos .campo fieldset .radios span:last-of-type {
  margin-bottom: 0;
}
.formulario .grupo_campos .campo fieldset .radios span label {
  margin: 0;
}
.formulario .grupo_campos .campo fieldset .radios span input {
  cursor: pointer;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e") !important;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0 0.5rem 0 0;
  border: 2px solid var(--form-borde-input-color);
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
}
.formulario .grupo_campos .campo fieldset .radios span input:checked {
  background-color: #2CA966;
}
.formulario .grupo_campos .campo fieldset .radios span input:focus {
  border-color: rgb(0, 116, 189);
}
.formulario .grupo_campos .campo fieldset .radios span input:disabled {
  background-color: var(--pagination-link-inactive-bg);
  background-image: none;
}
.formulario .grupo_campos .campo fieldset .radios span input:disabled:checked {
  background-color: var(--pagination-link-inactive-bg);
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e") !important;
}

.formulario .campo_checkbox input[type=checkbox] {
  cursor: pointer;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e") !important;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0 0.5rem 0 0;
  border: 2px solid var(--form-borde-input-color);
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
}
.formulario .campo_checkbox input[type=checkbox]:checked {
  background-color: #2CA966 !important;
}

/*CABECERA*/
.cabecera_foto {
  width: 100%;
  overflow: hidden;
}

.cabecera_foto {
  /*ojo breadcrumb, sino 0*/
  margin: 0 auto;
  /* - MENU*/
  position: relative;
}
.cabecera_foto:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 3rem;
  bottom: 0;
  left: 0;
  z-index: 3;
}

.cabecera_foto img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.cabecera_foto img,
.cabecera_foto .progressive img {
  position: absolute;
  top: 0;
  left: 0;
}

.cabecera_foto,
.cabecera_foto img,
.cabecera_foto .progressive,
.cabecera_foto .progressive img,
.titulo_seccion {
  height: calc(100vh - 4.5rem);
}

body.hero .cabecera_foto,
body.hero .cabecera_foto img,
body.hero .cabecera_foto .progressive,
body.hero .cabecera_foto .progressive img,
body.hero .titulo_seccion {
  height: 100vh;
}
body.hero .titulo_seccion {
  max-height: 100vh;
}

.titulo_seccion {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  width: 100vw;
  top: 0;
  overflow: hidden;
  z-index: 2;
}
.titulo_seccion .texto_columna :last-child {
  margin-bottom: 0 !important;
}

@media only screen and (min-width: 319px) {
  .titulo_seccion {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.centrado-inferior {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

@media only screen and (min-width: 600px) {
  .titulo_seccion {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media only screen and (min-width: 768px) {
  .cabecera_foto-portada {
    margin-bottom: 0;
  }
  .cabecera_foto-portada img {
    width: auto !important;
  }
}
@media only screen and (min-width: 600px) {
  .cabecera_foto,
  .cabecera_foto img,
  .cabecera_foto .progressive,
  .cabecera_foto .progressive img,
  .titulo_seccion {
    height: 100vh;
  }
}
@media only screen and (min-width: 960px) {
  .cabecera_foto,
  .cabecera_foto img,
  .cabecera_foto .progressive,
  .cabecera_foto .progressive img,
  .titulo_seccion {
    height: 100vh;
  }
  .cabecera_foto.en_seccion {
    height: 100vh;
  }
  .cabecera_foto.en_seccion img, .cabecera_foto.en_seccion .progressive, .cabecera_foto.en_seccion .progressive img, .cabecera_foto.en_seccion .titulo_seccion {
    height: 100vh;
  }
}
@media only screen and (min-width: 960px) and (orientation: landscape) {
  .cabecera_foto,
  .cabecera_foto img,
  .cabecera_foto .progressive,
  .cabecera_foto .progressive img,
  .titulo_seccion {
    height: 100vh;
  }
}
@media only screen and (min-width: 1240px) {
  .cabecera_foto {
    height: auto;
    overflow: hidden;
  }
  .titulo_seccion {
    position: relative;
    height: calc(100vh - (5rem + 0rem));
    max-height: 50rem;
  }
  .titulo_seccion .bloque {
    padding: 4rem;
  }
  .cabecera_foto .progressive {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
  }
  .cabecera_foto img,
  .cabecera_foto .progressive img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  .cabecera_foto.en_seccion {
    height: 30rem;
  }
  .cabecera_foto.en_seccion img, .cabecera_foto.en_seccion .progressive, .cabecera_foto.en_seccion .progressive img, .cabecera_foto.en_seccion .titulo_seccion {
    height: 30rem;
  }
  /*
  body.hero {
      .cabecera_foto.en_seccion {
          height: calc(30rem + (5rem + 0rem));

          & img,
          & .progressive,
          & .progressive img,
          & .titulo_seccion {
              height: calc(30rem + (5rem + 0rem));
          }
      }
  }
  */
}
@media only screen and (min-width: 1440px) {
  .titulo_seccion .bloque {
    padding: 6rem calc((100% - 1200px) / 2);
  }
  .cabecera_foto.en_seccion {
    height: 30rem;
  }
  .cabecera_foto.en_seccion img, .cabecera_foto.en_seccion .progressive, .cabecera_foto.en_seccion .progressive img, .cabecera_foto.en_seccion .titulo_seccion {
    height: 30rem;
  }
  /*
  body.hero {
      .cabecera_foto.en_seccion {
          height: calc(30rem + (5rem + 0rem));

          & img,
          & .progressive,
          & .progressive img,
          & .titulo_seccion {
              height: calc(30rem + (5rem + 0rem));
          }
      }
  }
      */
}
@media only screen and (min-width: 1600px) {
  .cabecera_foto.en_seccion {
    height: 36rem;
  }
  .cabecera_foto.en_seccion img, .cabecera_foto.en_seccion .progressive, .cabecera_foto.en_seccion .progressive img, .cabecera_foto.en_seccion .titulo_seccion {
    height: 36rem;
  }
  /*
  body.hero {
      .cabecera_foto.en_seccion {
          height: calc(36rem + (5rem + 0rem));

          & img,
          & .progressive,
          & .progressive img,
          & .titulo_seccion {
              height: calc(36rem + (5rem + 0rem));
          }
      }
  }
  */
}
.titulo_seccion {
  text-align: center;
}

.titulo_seccion h1 {
  max-width: 40rem;
  margin: auto;
  font-family: "Outfit";
  color: #fff;
}
.titulo_seccion h1 strong {
  font-family: "Outfit";
  display: block;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 3px;
  color: inherit;
  padding-bottom: 0.5rem;
}

.titulo_seccion h2 {
  font-style: normal;
  font-size: 1.1rem;
  display: inline-block;
  margin: 0.5rem auto 1rem;
  color: #fff;
}
@media only screen and (min-width: 1240px) {
  .titulo_seccion h2 {
    font-size: 1.4rem;
  }
}

.titulo_seccion .boton, .titulo_seccion .boton-medio, .titulo_seccion .boton-grande, .titulo_seccion .boton-borde {
  margin-top: 2rem;
  background: var(--primary-color--complement);
  text-shadow: none;
}
.titulo_seccion .boton:hover, .titulo_seccion .boton-medio:hover, .titulo_seccion .boton-grande:hover, .titulo_seccion .boton-borde:hover {
  background: var(--c-primary);
}

.cabecera_foto.en_seccion #ancla {
  display: none;
}

.cabecera_foto #ancla {
  position: absolute;
  bottom: 1rem;
  left: calc(50% - 1rem);
  z-index: 3;
}
.cabecera_foto #ancla a {
  width: 2rem;
  height: 2rem;
  display: inline-block;
  position: relative;
}
.cabecera_foto #ancla a i, .cabecera_foto #ancla a span {
  display: none;
}
.cabecera_foto #ancla a:before {
  position: absolute;
  inset: 0;
  content: "";
  width: 2rem;
  height: 2rem;
  display: inline-block;
  background-image: url(/static/graficos/flecha_volver.png);
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-filter: invert(1);
          filter: invert(1);
}

.cabecera_foto + .bloque.textos:before {
  content: none;
}

/*.cabecera_foto .titulo_seccion {
    background-image: linear-gradient(135deg, rgba($negro, 0.8) 0%, rgba($negro, 0.5) 30%, rgba($negro, 0.5) 60%, rgba($negro, 0.8) 100%),
        repeating-linear-gradient(135deg, transparent, transparent 2px, rgba(0, 0, 0, 0.4) 2px, rgba(0, 0, 0, 0.4) 4px);
    background-size: 100%, auto auto;
}*/
.titulo_seccion {
  background: rgba(var(--c-black-alpha), 0.5);
  color: #fff;
  text-shadow: 0 0 5px rgba(var(--c-black-alpha), 0.5);
}

body.dark .titulo_seccion {
  background: rgba(var(--c-primary-60-alpha), 0.9);
}

.titulo_seccion .boton, .titulo_seccion .boton-medio, .titulo_seccion .boton-grande, .titulo_seccion .boton-borde,
.banner .boton,
.banner .boton-medio,
.banner .boton-grande,
.banner .boton-borde {
  background: #fff;
  color: var(--title-color);
  outline-color: #fff;
}
.titulo_seccion .boton.boton-borde, .titulo_seccion .boton-borde,
.banner .boton.boton-borde,
.banner .boton-borde {
  background: transparent;
  color: #fff;
  outline-color: #fff;
}
.titulo_seccion .boton:hover, .titulo_seccion .boton-medio:hover, .titulo_seccion .boton-grande:hover, .titulo_seccion .boton-borde:hover,
.banner .boton:hover,
.banner .boton-medio:hover,
.banner .boton-grande:hover,
.banner .boton-borde:hover {
  color: #fff;
  background: var(--c-primary);
  outline-color: var(--c-primary);
}

#menu .idiomas {
  position: absolute;
  top: 1.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(100vw - 6rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#menu .idiomas li {
  margin: 0 1rem 0 0;
}
#menu .idiomas li:last-child {
  margin: 0;
}
#menu .idiomas li a {
  font-size: 0.75rem;
  color: var(--text-color);
  text-transform: uppercase;
}
#menu .idiomas li a.activo {
  color: var(--c-primary);
}
@media only screen and (min-width: 600px) {
  #menu .idiomas {
    top: 3rem;
  }
}

#idiomas {
  display: none;
}

@media only screen and (min-width: 1240px) {
  #menu .idiomas {
    display: none;
  }
  #idiomas {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
    z-index: 12000;
    position: relative;
    display: block;
  }
  #idiomas li {
    margin: 0;
  }
  #idiomas ul {
    width: 3rem;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    left: -9999px;
    top: -9999px;
    z-index: 10000;
    background: #fff;
    border: 1px solid;
    border-color: var(--title-color);
  }
  #idiomas ul:before {
    position: absolute;
    content: "";
    top: -0.3rem;
    left: 1rem;
    width: 0.5rem;
    height: 0.5rem;
    background: #fff;
    border: solid;
    border-color: var(--title-color);
    border-width: 1px 1px 0 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  #idiomas :hover ul {
    left: 0;
    top: 2rem;
  }
  #idiomas a:hover ul {
    left: 0;
  }
  #idiomas ul li {
    margin: 0;
    position: relative;
  }
  #idiomas a {
    display: block;
    margin: 0;
    font-size: 0.9rem;
    font-style: normal;
    text-align: center;
    height: 2rem;
    line-height: 2rem;
    color: var(--title-color);
    text-transform: uppercase;
  }
  #idiomas a:hover {
    color: var(--c-primary-20);
    background: transparent;
  }
  #idiomas a.activo {
    color: var(--text-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 1rem 0 0;
  }
  #idiomas a.activo:hover {
    background: transparent;
    color: var(--text-color);
  }
  #idiomas a.activo img {
    width: 1rem;
    margin-right: 0.25rem;
    opacity: 0.75;
  }
  #idiomas a.activo i {
    color: inherit;
    display: inline-block;
    margin-right: 0.25rem;
    opacity: 0.75;
  }
  #idiomas li:hover > a {
    text-decoration: none;
  }
  #idiomas:before {
    font-family: "infotelecom";
    content: "\e81b";
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    font-size: 0.5rem;
    position: absolute;
    top: 0;
    right: 4px;
    line-height: 2rem;
  }
}
#submenus #idiomas:before {
  color: var(--text-color);
  opacity: 0.7;
}
#submenus #idiomas a.activo {
  color: var(--text-color);
}

.marquee {
  width: 100%;
  margin: 0 auto;
  white-space: nowrap;
  overflow: hidden;
}

.marquee p {
  display: inline-block;
  padding-left: 100%;
  /* show the marquee just outside the paragraph */
  will-change: transform;
  -webkit-animation: marquee 15s linear infinite;
          animation: marquee 15s linear infinite;
}
.marquee p span {
  color: var(--c-primary);
  display: inline-block;
  margin: 0 2rem;
}

.marquee:hover p {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}

@-webkit-keyframes marquee {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(-100%, 0);
            transform: translate(-100%, 0);
  }
}

@keyframes marquee {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(-100%, 0);
            transform: translate(-100%, 0);
  }
}
/* Respect user preferences about animations */
@media (prefers-reduced-motion: reduce) {
  .marquee {
    white-space: normal;
  }
  .marquee span {
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
    -webkit-animation-duration: 0.01s;
            animation-duration: 0.01s;
    /* instead of animation: none, so an animationend event is 
     * still available, if previously attached.
     */
    padding-left: 0;
  }
}
.redes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.redes li {
  margin: 0 0.25rem;
}
.redes li:first-of-type {
  margin-left: 0;
}
.redes li:last-of-type {
  margin-right: 0;
}
.redes a {
  display: inline-block;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  text-align: left;
  color: var(--text-color);
}
.redes a span {
  display: inline-block;
  height: 3rem;
  width: 3rem;
  line-height: calc(3rem - 1px * 2);
  border-style: solid;
  border-width: 1px;
  border-color: var(--title-color);
  background: var(--c-primary);
  color: #fff;
  font-size: 1.1rem;
  text-align: center;
  border-radius: 0;
}
.redes a span.nombre-red {
  display: none;
}
.redes a span strong, .redes a span span {
  display: none;
}
.redes span.sigue {
  display: inline;
  padding-right: 1rem;
}
.redes a:hover span {
  color: #fff;
  background: var(--c-primary-accent);
  border-color: var(--c-primary-accent);
}

.noticia_ampliada .compartir span.comparte span {
  font-family: "Outfit SemiBold";
  color: var(--high-contast);
  text-transform: none;
  font-size: inherit;
  letter-spacing: 0.5px;
}

#menu .redes,
#menu .redes-movil strong {
  display: none;
}

@media (max-width: 1239px) {
  #menu .redes {
    display: block;
  }
  #menu .redes a, #menu .redes a span {
    color: var(--text-color);
  }
}
#submenus .redes a span {
  height: 2rem;
  width: 2rem;
  line-height: 2rem;
  font-size: 0.8rem;
}
#submenus .redes a:hover span {
  background: transparent;
}

.redes a.facebook span {
  background: #306199;
}

.redes a.twitter span {
  background: #26C4F1;
}

.redes a.youtube span {
  background: #FF0000;
}

.redes .pinterest span {
  background: #B81621;
}

.redes .linkedin span {
  background: #007BB6;
}

.redes .whatsapp span {
  background: #189D0E;
}

.redes .instagram span {
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}

.titulo_bloque {
  margin: 0 auto;
  width: 100%;
  text-align: left;
  position: relative;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 340px) {
  .titulo_bloque {
    margin-bottom: 1.5rem;
  }
}
@media only screen and (min-width: 400px) {
  .titulo_bloque {
    margin-bottom: 2rem;
  }
}
.titulo_bloque :last-child {
  margin-bottom: 0;
}
.titulo_bloque h2, .titulo_bloque p {
  margin: 0;
  max-width: 45rem;
}
@media only screen and (min-width: 1240px) {
  .titulo_bloque h2, .titulo_bloque p {
    max-width: 45rem;
    margin: 0;
  }
}
.titulo_bloque h2 {
  margin-bottom: 0.5em;
}
.titulo_bloque.izq {
  text-align: left;
}

#columna .titulo_bloque,
.ultimas_noticias_normal .titulo_bloque,
.ultimas_noticias_relacionadas .titulo_bloque {
  margin-bottom: 1rem;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  #columna .titulo_bloque,
  .ultimas_noticias_normal .titulo_bloque,
  .ultimas_noticias_relacionadas .titulo_bloque {
    text-align: left;
  }
}
#columna .titulo_bloque h4,
.ultimas_noticias_normal .titulo_bloque h4,
.ultimas_noticias_relacionadas .titulo_bloque h4 {
  font-family: "Outfit";
  font-size: 1.25rem;
}
#columna .titulo_bloque h2,
.ultimas_noticias_normal .titulo_bloque h2,
.ultimas_noticias_relacionadas .titulo_bloque h2 {
  font-family: "Outfit";
  color: var(--c-primary-40);
}

@media only screen and (min-width: 768px) {
  .grupo_fichas.fichas_banners .titulo_bloque {
    margin-bottom: 1rem;
  }
}
.titulo_bloque h2 {
  letter-spacing: 0.5px;
  color: var(--c-title-color);
}
@media only screen and (min-width: 1240px) {
  .titulo_bloque h2 {
    font-size: 1.953rem;
  }
}
.titulo_bloque p {
  font-size: inherit;
}
.titulo_bloque strong {
  color: var(--c-primary);
}

#principal .titulo_bloque {
  margin-bottom: 2rem;
}

#principal .listado_noticias .titulo_bloque {
  margin-bottom: 0;
}

/* GALERIA DE FOTOS */
.galeria ul {
  /* display: grid;
  grid-template-columns: 1fr;  // en fr para que gap funcioni sin overflow
  grid-gap: 1rem; */
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-auto-flow: dense;
}
.galeria ul .paginacion, .galeria ul .paginacion-barra, .galeria ul .paginacion-rounded, .galeria ul .paginacion-center, .galeria ul .titulo_bloque, .galeria ul .etiquetas_noticias, .galeria ul .cierre {
  grid-column-start: 1;
  grid-column-end: -1;
}
@media only screen and (min-width: 600px) {
  .galeria ul {
    /*  grid-template-columns: repeat(2, 1fr);
    // en fr para que gap funcioni sin overflow */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }
  .galeria ul .paginacion, .galeria ul .paginacion-barra, .galeria ul .paginacion-rounded, .galeria ul .paginacion-center, .galeria ul .titulo_bloque, .galeria ul .etiquetas_noticias, .galeria ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
@media only screen and (min-width: 960px) {
  .galeria ul {
    /* grid-template-columns: repeat(3, 1fr);
    // en fr para que gap funcioni sin overflow */
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }
  .galeria ul .paginacion, .galeria ul .paginacion-barra, .galeria ul .paginacion-rounded, .galeria ul .paginacion-center, .galeria ul .titulo_bloque, .galeria ul .etiquetas_noticias, .galeria ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
@media only screen and (min-width: 1240px) {
  .galeria ul {
    /* grid-template-columns: repeat(4, 1fr);
    // en fr para que gap funcioni sin overflow */
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }
  .galeria ul .paginacion, .galeria ul .paginacion-barra, .galeria ul .paginacion-rounded, .galeria ul .paginacion-center, .galeria ul .titulo_bloque, .galeria ul .etiquetas_noticias, .galeria ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
.galeria ul li {
  display: blocK;
  width: 100%;
}
.galeria ul li img {
  width: 100%;
  max-width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 1;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.galeria ul li:hover {
  cursor: pointer;
}
.galeria ul li:hover img {
  opacity: 0.5;
}

.galeria.no-gap ul {
  grid-gap: 0;
}

.bloque.vw {
  padding-left: 0;
  padding-right: 0;
}
@media only screen and (min-width: 340px) {
  .bloque.vw .titulo_bloque {
    padding: 0 1.5rem;
  }
}
@media only screen and (min-width: 400px) {
  .bloque.vw .titulo_bloque {
    padding: 0 2rem;
  }
}
@media only screen and (min-width: 960px) {
  .bloque.vw .titulo_bloque {
    padding: 0 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .bloque.vw .titulo_bloque {
    padding: 0 calc((100% - 1200px) / 2);
  }
}

@supports (display: grid) {
  .galeria.metro {
    background: var(--level-1);
  }
  .galeria.metro ul {
    /*  grid-template-columns: repeat(2, 1fr);
    // en fr para que gap funcioni sin overflow */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 0.5rem;
    grid-row-gap: 0.5rem;
    grid-auto-flow: dense;
  }
  .galeria.metro ul .paginacion, .galeria.metro ul .paginacion-barra, .galeria.metro ul .paginacion-rounded, .galeria.metro ul .paginacion-center, .galeria.metro ul .titulo_bloque, .galeria.metro ul .etiquetas_noticias, .galeria.metro ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .galeria.metro ul li:nth-child(6n+1), .galeria.metro ul li:first-child {
    grid-row-end: span 2;
    grid-column-end: span 2;
  }
  .galeria.metro ul li img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
  @media only screen and (min-width: 768px) {
    .galeria.metro ul {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-column-gap: 0.5rem;
      grid-row-gap: 0.5rem;
    }
    .galeria.metro ul .paginacion, .galeria.metro ul .paginacion-barra, .galeria.metro ul .paginacion-rounded, .galeria.metro ul .paginacion-center, .galeria.metro ul .titulo_bloque, .galeria.metro ul .etiquetas_noticias, .galeria.metro ul .cierre {
      grid-column-start: 1;
      grid-column-end: -1;
    }
  }
  @media only screen and (min-width: 1240px) {
    .galeria.metro ul {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      grid-column-gap: 0.5rem;
      grid-row-gap: 0.5rem;
    }
    .galeria.metro ul .paginacion, .galeria.metro ul .paginacion-barra, .galeria.metro ul .paginacion-rounded, .galeria.metro ul .paginacion-center, .galeria.metro ul .titulo_bloque, .galeria.metro ul .etiquetas_noticias, .galeria.metro ul .cierre {
      grid-column-start: 1;
      grid-column-end: -1;
    }
  }
}
@supports (display: grid) {
  .galeria.instagram {
    background: var(--level-1);
  }
  .galeria.instagram ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 0.5rem;
    grid-row-gap: 0.5rem;
    grid-auto-flow: dense;
  }
  .galeria.instagram ul .paginacion, .galeria.instagram ul .paginacion-barra, .galeria.instagram ul .paginacion-rounded, .galeria.instagram ul .paginacion-center, .galeria.instagram ul .titulo_bloque, .galeria.instagram ul .etiquetas_noticias, .galeria.instagram ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .galeria.instagram ul li:first-child {
    grid-row-end: span 2;
    grid-column-end: span 2;
  }
  .galeria.instagram ul li img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
  @media only screen and (min-width: 768px) {
    .galeria.instagram ul {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      grid-column-gap: 0.5rem;
      grid-row-gap: 0.5rem;
    }
    .galeria.instagram ul .paginacion, .galeria.instagram ul .paginacion-barra, .galeria.instagram ul .paginacion-rounded, .galeria.instagram ul .paginacion-center, .galeria.instagram ul .titulo_bloque, .galeria.instagram ul .etiquetas_noticias, .galeria.instagram ul .cierre {
      grid-column-start: 1;
      grid-column-end: -1;
    }
  }
}
@supports (display: grid) {
  .galeria.square {
    background: var(--level-2);
  }
  .galeria.square ul li {
    position: relative;
    padding-top: 100%;
    overflow: hidden;
  }
  .galeria.square ul li img {
    position: absolute;
    top: 0;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
@media only screen and (min-width: 400px) {
  .galeria.masonry ul {
    display: block;
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
  }
  .galeria.masonry ul li {
    margin-bottom: 1rem;
    width: 100%;
  }
}
@media only screen and (min-width: 960px) {
  .galeria.masonry ul {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
  }
}

.masonry.no-gap ul {
  -webkit-column-gap: 0;
     -moz-column-gap: 0;
          column-gap: 0;
}
.masonry.no-gap ul li {
  margin-bottom: 0;
}

.grupo_fichas {
  width: 100%;
  margin: 0 auto;
  clear: both;
}

.grupo_fichas .cierre {
  text-align: center;
}

.grupo_fichas .ficha {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.grupo_fichas .ficha .foto {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  width: 100%;
  margin-bottom: 1.5rem;
  margin-bottom: 0;
  position: relative;
}
.grupo_fichas .ficha .foto img {
  width: 100%;
  position: absolute;
  top: 0;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.grupo_fichas .ficha .texto {
  padding: 1.5rem 0 0.5rem;
}
@media only screen and (max-width: 449px) {
  .grupo_fichas .ficha .texto h3 {
    font-size: 1.563rem;
  }
}
.grupo_fichas .ficha .texto h4 {
  font-size: 1.25rem;
  color: var(--title-color);
}
.grupo_fichas .ficha .texto p {
  display: block;
}
.grupo_fichas .ficha .texto ul {
  display: block;
  gap: 0;
}

.fichas_normal .ficha {
  width: 100%;
  margin: 0 0 2rem;
}
.fichas_normal .ficha .texto {
  padding: 1rem 0;
  padding-bottom: 1.5rem;
  position: relative;
}
@media only screen and (min-width: 370px) {
  .fichas_normal .ficha .texto {
    padding: 1.5rem 0;
    padding-bottom: 2rem;
  }
}
@media only screen and (min-width: 600px) {
  .fichas_normal .ficha .texto {
    padding: 2rem 0;
  }
}
.fichas_normal .ficha .texto h3, .fichas_normal .ficha .texto h3 a {
  font-size: 1.563rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.fichas_normal .ficha .texto h3 strong, .fichas_normal .ficha .texto h3 a strong {
  font-size: 0.8em;
}
.fichas_normal .ficha .texto h3 a, .fichas_normal .ficha .texto h3 a a {
  color: inherit;
  font-family: inherit;
}
.fichas_normal .ficha .texto p {
  display: block;
}
.fichas_normal .ficha .texto p + p {
  margin-top: 1rem;
}
.fichas_normal .ficha .texto .boton, .fichas_normal .ficha .texto .boton-medio, .fichas_normal .ficha .texto .boton-grande, .fichas_normal .ficha .texto .boton-borde {
  margin-top: 1rem;
}
.fichas_normal .ficha .texto .icono + h3 {
  margin-top: 0;
}
.fichas_normal .ficha .texto .icono {
  position: absolute;
  top: -3rem;
}
.fichas_normal .ficha .texto .icono img {
  width: 4rem;
  border-radius: 100%;
}

.ficha .titulo_ficha,
.ficha .cargo {
  display: block;
  font-weight: normal;
  margin-bottom: 0.3rem;
  text-transform: none;
}

.ficha h3 .cargo {
  margin: 0.3rem 0 0;
}

.ficha .titulo_ficha {
  font-size: 1.1rem;
}

@media only screen and (min-width: 768px) {
  .grupo_fichas {
    /*  grid-template-columns: repeat(2, 1fr);
    // en fr para que gap funcioni sin overflow */
  }
  .grupo_fichas ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }
  .grupo_fichas ul .paginacion, .grupo_fichas ul .paginacion-barra, .grupo_fichas ul .paginacion-rounded, .grupo_fichas ul .paginacion-center, .grupo_fichas ul .titulo_bloque, .grupo_fichas ul .etiquetas_noticias, .grupo_fichas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .grupo_fichas .titulo_bloque {
    width: 100%;
    margin-bottom: 2rem;
  }
  .fichas_normal .ficha {
    margin: 0;
  }
  .fichas_normal .ficha .texto {
    position: relative;
    height: 100%;
  }
  .fichas_normal .ficha.enlace .texto {
    padding-bottom: 5rem;
  }
  .fichas_normal .ficha.enlace .texto a.mas {
    position: absolute;
    left: 2rem;
    bottom: 2rem;
  }
}
@media only screen and (min-width: 960px) {
  .grupo_fichas {
    /*  grid-template-columns: repeat(2, 1fr);
    // en fr para que gap funcioni sin overflow */
  }
  .grupo_fichas ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }
  .grupo_fichas ul .paginacion, .grupo_fichas ul .paginacion-barra, .grupo_fichas ul .paginacion-rounded, .grupo_fichas ul .paginacion-center, .grupo_fichas ul .titulo_bloque, .grupo_fichas ul .etiquetas_noticias, .grupo_fichas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .grupo_fichas .titulo_bloque {
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .grupo_fichas {
    /*  grid-template-columns: repeat(2, 1fr);
    // en fr para que gap funcioni sin overflow */
  }
  .grupo_fichas ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }
  .grupo_fichas ul .paginacion, .grupo_fichas ul .paginacion-barra, .grupo_fichas ul .paginacion-rounded, .grupo_fichas ul .paginacion-center, .grupo_fichas ul .titulo_bloque, .grupo_fichas ul .etiquetas_noticias, .grupo_fichas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  #principal .grupo_fichas.fichas_normal ul,
  #principal .grupo_fichas.fichas_destacadas ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }
  #principal .grupo_fichas.fichas_normal ul .paginacion, #principal .grupo_fichas.fichas_normal ul .paginacion-barra, #principal .grupo_fichas.fichas_normal ul .paginacion-rounded, #principal .grupo_fichas.fichas_normal ul .paginacion-center, #principal .grupo_fichas.fichas_normal ul .titulo_bloque, #principal .grupo_fichas.fichas_normal ul .etiquetas_noticias, #principal .grupo_fichas.fichas_normal ul .cierre,
  #principal .grupo_fichas.fichas_destacadas ul .paginacion,
  #principal .grupo_fichas.fichas_destacadas ul .paginacion-barra,
  #principal .grupo_fichas.fichas_destacadas ul .paginacion-rounded,
  #principal .grupo_fichas.fichas_destacadas ul .paginacion-center,
  #principal .grupo_fichas.fichas_destacadas ul .titulo_bloque,
  #principal .grupo_fichas.fichas_destacadas ul .etiquetas_noticias,
  #principal .grupo_fichas.fichas_destacadas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .grupo_fichas.row {
    /*  grid-template-columns: repeat(2, 1fr);
    // en fr para que gap funcioni sin overflow */
  }
  .grupo_fichas.row ul {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }
  .grupo_fichas.row ul .paginacion, .grupo_fichas.row ul .paginacion-barra, .grupo_fichas.row ul .paginacion-rounded, .grupo_fichas.row ul .paginacion-center, .grupo_fichas.row ul .titulo_bloque, .grupo_fichas.row ul .etiquetas_noticias, .grupo_fichas.row ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .grupo_fichas.row .ficha {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .grupo_fichas.row .ficha:nth-child(2n+1) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .grupo_fichas.row .ficha .texto {
    padding: 0 4rem;
    height: auto;
    width: 66%;
  }
  .grupo_fichas.row .ficha .texto h3 {
    margin-bottom: 2rem;
  }
  .grupo_fichas.row .ficha .foto {
    width: 33%;
  }
  .grupo_fichas.row .ficha .foto img {
    border-radius: 50%;
  }
}
.fichas_normal .ficha {
  background: var(--card-background);
  -webkit-box-shadow: var(--card-shadow);
          box-shadow: var(--card-shadow);
  border-radius: var(--card-border-radius);
  overflow: hidden;
}
.fichas_normal .ficha .foto {
  padding-top: 100%;
}
.fichas_normal .ficha.variante {
  border-radius: 0;
  border: 1px solid;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.fichas_normal a.mas {
  padding: 0.5rem 1rem;
  margin-top: 1rem;
  -ms-flex-item-align: start;
      align-self: flex-start;
  text-transform: uppercase;
  font-size: 0.75rem;
}
@media only screen and (min-width: 370px) {
  .fichas_normal a.mas {
    font-size: 0.9rem;
  }
}

@media only screen and (min-width: 1240px) {
  .grupo_fichas.fichas_fondo {
    padding-right: 33.33%;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(70%, rgb(255, 255, 255)), color-stop(70%, transparent)), url(../graficos/noticias/2v.jpg);
    background-image: linear-gradient(90deg, rgb(255, 255, 255) 70%, transparent 70%), url(../graficos/noticias/2v.jpg);
    background-repeat: no-repeat, no-repeat;
    background-position: right;
    background-size: contain;
  }
  .grupo_fichas.fichas_fondo.fichas_destacadas ul {
    grid-column-start: 1;
    grid-column-end: -1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }
  .grupo_fichas.fichas_fondo.fichas_destacadas ul .paginacion, .grupo_fichas.fichas_fondo.fichas_destacadas ul .paginacion-barra, .grupo_fichas.fichas_fondo.fichas_destacadas ul .paginacion-rounded, .grupo_fichas.fichas_fondo.fichas_destacadas ul .paginacion-center, .grupo_fichas.fichas_fondo.fichas_destacadas ul .titulo_bloque, .grupo_fichas.fichas_fondo.fichas_destacadas ul .etiquetas_noticias, .grupo_fichas.fichas_fondo.fichas_destacadas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}

.bloque.fichas_destacadas {
  margin: 0;
}

.fichas_destacadas .ficha {
  padding: 1.5rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 3rem 0;
  margin: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.fichas_destacadas .ficha:last-of-type {
  border-bottom: none;
}
.fichas_destacadas .ficha.sin-foto .texto {
  padding: 0;
}
.fichas_destacadas .ficha.sin-foto .texto strong {
  color: var(--c-primary);
}
.fichas_destacadas .ficha .texto {
  padding: 0;
  width: calc(100% - 3.5rem);
  text-align: left;
}
.fichas_destacadas .ficha .texto p + p {
  margin-top: 1rem;
}
.fichas_destacadas .ficha .texto ul {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 1rem;
}
.fichas_destacadas .ficha .boton, .fichas_destacadas .ficha .boton-medio, .fichas_destacadas .ficha .boton-grande, .fichas_destacadas .ficha .boton-borde {
  width: auto;
  margin: 2rem auto 0;
}
@media only screen and (min-width: 768px) {
  .fichas_destacadas .ficha {
    padding: 2rem 0;
  }
}
.fichas_destacadas .ficha .foto {
  padding: 0;
  width: 2.5rem;
}
.fichas_destacadas .ficha .foto img {
  position: relative;
  width: 100%;
  height: auto;
  -webkit-filter: var(--icon-filter);
          filter: var(--icon-filter);
}

@media only screen and (min-width: 768px) {
  .grupo_fichas.fichas_destacadas ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }
  .grupo_fichas.fichas_destacadas ul .paginacion, .grupo_fichas.fichas_destacadas ul .paginacion-barra, .grupo_fichas.fichas_destacadas ul .paginacion-rounded, .grupo_fichas.fichas_destacadas ul .paginacion-center, .grupo_fichas.fichas_destacadas ul .titulo_bloque, .grupo_fichas.fichas_destacadas ul .etiquetas_noticias, .grupo_fichas.fichas_destacadas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .grupo_fichas.fichas_destacadas .ficha:last-of-type {
    border-bottom: none;
  }
}
@media only screen and (min-width: 1240px) {
  .grupo_fichas.fichas_destacadas ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 3rem;
    grid-row-gap: 5rem;
  }
  .grupo_fichas.fichas_destacadas ul .paginacion, .grupo_fichas.fichas_destacadas ul .paginacion-barra, .grupo_fichas.fichas_destacadas ul .paginacion-rounded, .grupo_fichas.fichas_destacadas ul .paginacion-center, .grupo_fichas.fichas_destacadas ul .titulo_bloque, .grupo_fichas.fichas_destacadas ul .etiquetas_noticias, .grupo_fichas.fichas_destacadas ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .grupo_fichas.fichas_destacadas .ficha {
    border: none;
    padding: 0;
  }
}
.fichas_destacadas .ficha {
  border-bottom: 1px solid;
  border-color: var(--form-borde-input-color);
}
@media only screen and (min-width: 768px) {
  .fichas_destacadas .ficha {
    border: 0;
  }
}
.fichas_destacadas .ficha .texto {
  width: 100%;
}
.fichas_destacadas .ficha .texto h3 {
  font-size: 1.5rem;
  font-family: "Outfit";
}
.fichas_destacadas .ficha .texto h3 strong {
  font-family: "Outfit";
}
.fichas_destacadas .ficha .foto {
  width: 12rem;
  margin: 0 0 1.5rem;
}

/*
.fichas_destacadas.fichas_fondo {

    // pasa a 2 columnas
    @media only screen and (min-width: 1240px) {
        @include grid-normal(2, 3, 3);
        padding-right: 33.33%;
        // fondo
        //background-image: url(/static/graficos/noticias/5.jpg); // horizontal
        //background-image: url(/static/graficos/noticias/1sq.jpg); // square
        //background-image: url(/static/graficos/noticias/2v.jpg); // vertical
        //background-position: right center;
        //background-repeat: no-repeat;
        //background-size: calc(33.33% - 4rem); // tamaño igual a espacio - gapX2
        // para altura 100% + empieza al final del grupo de fichas
        // el degradado tapa la imagen, puede sustituirse rgba por c-primary-alpha
        // para cms añdir la imagene en bloque oculto
        background-image: linear-gradient(to right, rgba(255, 255, 255, 1) 0%,rgba(255, 255, 255,1) calc(66% + 4rem) ,rgba(255, 255, 255,0) calc(66% + 4rem)),
                          url(/static/graficos/noticias/2v.jpg) ; // vertical
        background-size: contain;
        background-repeat: no-repeat;
        background-position: left center,
                             100% center; //ancho de la imagen + padding

        & .titulo_bloque {
            text-align: left;
            //margin-bottom: $padd-400; // igual que gap

            & p {
                margin: 0;
            }
        }
        & .ficha{
            text-align: left;
            & .foto{
                margin: 0 0 $padd-320;
            }
        }
    }
}
*/
/*MARCAS*/
.fichas_marcas {
  margin: 0 auto;
  display: block;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media only screen and (min-width: 960px) {
  .fichas_marcas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
  }
}
.fichas_marcas ul {
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.fichas_marcas ul li {
  width: calc(50% - 0.5rem);
  margin-bottom: 1rem;
  text-align: center;
}
.fichas_marcas ul li:last-of-type {
  margin-bottom: 0;
}
.fichas_marcas ul li a {
  display: block;
}
.fichas_marcas ul li img {
  width: 100%;
  max-width: 180px;
}
.fichas_marcas .titulo_bloque {
  width: 100%;
  margin-bottom: 1rem;
  text-align: center;
}
.fichas_marcas .titulo_bloque h2, .fichas_marcas .titulo_bloque h3 {
  font-size: 1.25rem;
  font-family: "Outfit";
}
@media only screen and (min-width: 960px) {
  .fichas_marcas .titulo_bloque {
    width: calc(33.33% - 2rem);
    margin: 0 2rem 0 0;
    text-align: left;
  }
}
@media only screen and (min-width: 960px) {
  .fichas_marcas ul {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .fichas_marcas ul li {
    width: calc(25% - 0.5rem);
    margin: 0 0.5rem;
  }
  .fichas_marcas ul li:first-of-type {
    margin-left: 0;
  }
  .fichas_marcas ul li:last-of-type {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_marcas ul li {
    width: calc(25% - 0.5rem);
  }
}

/*TESTIMONIOS*/
.grupo_fichas.fichas_testimonios ul {
  display: block;
  gap: 0;
}

.fichas_testimonios {
  text-align: center;
}
.fichas_testimonios .titulo_bloque {
  padding-top: 1rem;
  margin: 0 auto 1rem;
}
@media only screen and (min-width: 400px) {
  .fichas_testimonios .titulo_bloque {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_testimonios .titulo_bloque {
    padding: 0;
  }
}
.fichas_testimonios ul {
  width: 100%;
  margin: 0;
}
.fichas_testimonios ul li {
  display: block;
}
.fichas_testimonios ul li blockquote {
  display: block;
  font-style: normal;
  border: 0;
  margin: 0;
  padding: 1rem 1.5rem;
}
.fichas_testimonios ul li blockquote:before {
  content: none;
}
.fichas_testimonios ul li blockquote p {
  margin: 2rem 0;
  text-align: center;
  font-size: inherit;
  font-family: "Outfit";
}
.fichas_testimonios ul li blockquote strong {
  font-family: "Outfit";
  font-weight: normal;
}
.fichas_testimonios ul li blockquote img {
  width: 6rem;
  height: 6rem;
  margin: 0 auto;
  border-radius: 100%;
}
.fichas_testimonios ul li blockquote cite {
  font-size: 1rem;
  font-style: normal;
}
.fichas_testimonios ul li blockquote cite strong {
  display: block;
  margin: 1rem 0 0;
  font-size: 1.1rem;
}
.fichas_testimonios ul li blockquote cite p {
  margin: 0 0 1rem;
  text-align: center;
  font-size: 1rem;
  padding: 0;
  background: transparent;
}

@media only screen and (min-width: 600px) {
  .fichas_testimonios {
    display: block;
  }
  .fichas_testimonios ul {
    margin: 0;
  }
  .fichas_testimonios ul li {
    display: inline;
    margin: 0;
  }
  .fichas_testimonios ul li blockquote {
    margin: 0 0 1rem;
    padding: 1.5rem 3rem;
  }
  .fichas_testimonios ul li blockquote cite p {
    font-size: 1rem;
  }
}
@media only screen and (min-width: 960px) {
  .fichas_testimonios ul li blockquote {
    padding: 2rem 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .fichas_testimonios ul li blockquote p {
    width: 60%;
    margin: 0;
  }
  .fichas_testimonios ul li blockquote footer {
    width: 40%;
    border-left: 1px solid rgba(var(--c-primary-20), 0.25);
    margin-left: 2rem;
    position: relative;
    -ms-flex-item-align: stretch;
        align-self: stretch;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .fichas_testimonios ul li blockquote cite {
    margin: auto;
  }
  .fichas_testimonios ul li blockquote cite p {
    width: 100%;
    font-size: 1rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_testimonios {
    padding-left: calc((100% - 56rem) / 2);
    padding-right: calc((100% - 56rem) / 2);
  }
  .fichas_testimonios ul li blockquote {
    padding: 3rem 4rem;
  }
}
/*testimonios controls*/
.fichas_testimonios .lSAction > .lSPrev,
.fichas_testimonios .lSAction > .lSNext {
  opacity: 1;
}

.fichas_testimonios ul li blockquote {
  background: var(--card-background);
  color: var(--text-color);
  border: solid;
  border-width: 3px;
  border-color: var(--c-primary);
  border-radius: 0;
}
.fichas_testimonios blockquote cite strong {
  font-family: "Outfit";
  font-weight: normal;
}
.fichas_testimonios blockquote cite span {
  font-family: "Outfit";
  font-weight: normal;
}
.fichas_testimonios blockquote cite p {
  opacity: 0.8;
}

.fichas_testimonios blockquote.una_columna {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.fichas_testimonios blockquote.una_columna p {
  font-size: 1.25rem;
}
@media only screen and (min-width: 960px) {
  .fichas_testimonios blockquote.una_columna p {
    margin: 2rem 0;
    width: 90%;
  }
}
.fichas_testimonios blockquote.una_columna footer {
  margin: 0 auto 2rem;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.fichas_testimonios blockquote.una_columna footer img {
  margin: auto;
  height: 5rem;
  width: 5rem;
}
.fichas_testimonios blockquote.una_columna footer cite p {
  font-size: 0.9rem;
}
@media only screen and (min-width: 960px) {
  .fichas_testimonios blockquote.una_columna footer cite p {
    text-align: left;
    margin: 0;
  }
}

.fichas_testimonios li.columna footer img {
  margin: 0 1rem 0 0;
  height: 4rem;
  width: 4rem;
}

@media only screen and (min-width: 960px) {
  .fichas_testimonios li.columna {
    display: inline-block;
    width: 50%;
  }
  .fichas_testimonios li.columna blockquote {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .fichas_testimonios li.columna blockquote p {
    width: 100%;
    text-align: left;
  }
  .fichas_testimonios li.columna blockquote footer {
    width: 100%;
    text-align: left;
    margin: 2rem 0 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .fichas_testimonios li.columna blockquote footer cite {
    margin: 0;
  }
  .fichas_testimonios li.columna blockquote footer cite strong, .fichas_testimonios li.columna blockquote footer cite p {
    margin: 0;
  }
}
.fichas_testimonios img.imagen {
  margin: 0;
  display: inline-block;
  -ms-flex-item-align: start;
      align-self: flex-start;
  width: 4rem;
}
@media only screen and (min-width: 960px) {
  .fichas_testimonios img.imagen {
    margin: 0 0 1rem;
  }
}

.fichas_testimonios.dark_theme ul li blockquote {
  background: var(--c-primary);
  color: #fff;
}

/*Catálogo portada*/
.fichas_catalogo {
  margin: 0 auto;
  padding: 0.1rem 0;
}
.fichas_catalogo .ficha {
  position: relative;
  margin-bottom: 0.1rem;
  /*
  // efecto hover móvil
  // hovers con boton a.mas
  // esconder botón para no lanzar sección
  & a.mas{
      background: rgba(255,12,35,.5);
      display: none;
  }
  &:active a.mas {
      display: none;

  }
  //&:hover .texto,
  &:active .texto {

      background: var(--bg-tint-hover); //tinta

      //hereda hover
      & a.boton {
          color: $blanco; // $boton-hover-background;
          background: transparent; // $boton-hover-color;
          border-color: $blanco; //$boton-border-hover-color;
          outline-color: $blanco; //$boton-border-hover-color;
      }

  }

  //&:hover .texto h3,
  &:active .texto h3 {
      display: none;
  }

  // &:hover .texto p,
  &:active .texto p {
      display: block;
      opacity: 1;
  } */
}
.fichas_catalogo .ficha .foto {
  position: absolute;
  z-index: 1;
  padding: 0;
  height: 100%;
  top: 0;
}
.fichas_catalogo .ficha .foto img {
  position: relative;
}
.fichas_catalogo .ficha .texto {
  position: relative;
  z-index: 2;
  padding: 2rem;
  padding-bottom: 4rem;
  min-height: 100vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: var(--bg-tint);
  text-shadow: 0 0 5px var(--bg-tint);
  text-align: center;
}
.fichas_catalogo .ficha .texto h3 {
  color: #fff;
  margin-bottom: 0.5rem;
  margin-top: auto;
}
.fichas_catalogo .ficha .texto h3 a {
  color: inherit;
  font-family: inherit;
}
.fichas_catalogo .ficha .texto .destacado {
  color: #fff;
  opacity: 0.7;
  -webkit-box-ordinal-group: -1;
      -ms-flex-order: -2;
          order: -2;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 1px;
  font-family: "Outfit";
}
.fichas_catalogo .ficha .texto p {
  display: none;
  color: #fff;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.25, 0, 0.25, 1);
  transition: all 0.25s cubic-bezier(0.25, 0, 0.25, 1);
}
.fichas_catalogo .ficha .texto a.boton, .fichas_catalogo .ficha .texto a.boton-medio, .fichas_catalogo .ficha .texto a.boton-grande, .fichas_catalogo .ficha .texto a.boton-borde {
  position: relative;
  z-index: 2;
  -ms-flex-item-align: center;
      align-self: center;
  margin-top: auto;
  text-shadow: none;
  opacity: 0;
}
@media only screen and (min-width: 600px) {
  .fichas_catalogo .ficha .texto {
    min-height: 66vw;
  }
}
.fichas_catalogo .ficha a.mas {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: -9999px;
}
@media only screen and (min-width: 768px) {
  .fichas_catalogo ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 0.1rem;
    grid-row-gap: 0.1rem;
  }
  .fichas_catalogo ul .paginacion, .fichas_catalogo ul .paginacion-barra, .fichas_catalogo ul .paginacion-rounded, .fichas_catalogo ul .paginacion-center, .fichas_catalogo ul .titulo_bloque, .fichas_catalogo ul .etiquetas_noticias, .fichas_catalogo ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .fichas_catalogo .ficha {
    margin: 0;
  }
  .fichas_catalogo .ficha .texto {
    min-height: 50vw;
    height: 100%;
  }
}
@media only screen and (min-width: 960px) {
  .fichas_catalogo {
    padding: 0.1rem 0;
  }
  .fichas_catalogo ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 0.1rem;
    grid-row-gap: 0.1rem;
    grid-auto-flow: dense;
  }
  .fichas_catalogo ul .paginacion, .fichas_catalogo ul .paginacion-barra, .fichas_catalogo ul .paginacion-rounded, .fichas_catalogo ul .paginacion-center, .fichas_catalogo ul .titulo_bloque, .fichas_catalogo ul .etiquetas_noticias, .fichas_catalogo ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .fichas_catalogo .ficha {
    margin: 0;
  }
  .fichas_catalogo .ficha .texto {
    min-height: calc(50vw - 2rem);
    height: 100%;
  }
  .fichas_catalogo .ficha:hover .texto {
    background: var(--bg-tint-hover);
  }
  .fichas_catalogo .ficha:hover .texto a.boton, .fichas_catalogo .ficha:hover .texto a.boton-medio, .fichas_catalogo .ficha:hover .texto a.boton-grande, .fichas_catalogo .ficha:hover .texto a.boton-borde {
    color: #fff;
    background: transparent;
    border-color: #fff;
    outline-color: #fff;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_catalogo {
    padding: 0.1rem 0;
  }
  .fichas_catalogo ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 0.1rem;
    grid-row-gap: 0.1rem;
  }
  .fichas_catalogo ul .paginacion, .fichas_catalogo ul .paginacion-barra, .fichas_catalogo ul .paginacion-rounded, .fichas_catalogo ul .paginacion-center, .fichas_catalogo ul .titulo_bloque, .fichas_catalogo ul .etiquetas_noticias, .fichas_catalogo ul .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .fichas_catalogo .ficha:hover a.boton, .fichas_catalogo .ficha:hover a.boton-medio, .fichas_catalogo .ficha:hover a.boton-grande, .fichas_catalogo .ficha:hover a.boton-borde, .fichas_catalogo .ficha:hover .texto p {
    display: block;
    opacity: 1;
  }
}
@media only screen and (min-width: 1600px) {
  .fichas_catalogo .ficha .texto {
    min-height: calc(33vw - 2rem);
  }
}

.fichas_catalogo .titulo_bloque {
  padding: 1.5rem 1.5rem 0;
}
@media only screen and (min-width: 600px) {
  .fichas_catalogo .titulo_bloque {
    padding: 1.5rem 2rem 0;
  }
}
@media only screen and (min-width: 768px) {
  .fichas_catalogo .titulo_bloque {
    padding: 1.5rem 2rem 0;
  }
}
@media only screen and (min-width: 960px) {
  .fichas_catalogo .titulo_bloque {
    padding: 1.5rem 3rem 0;
  }
  .fichas_catalogo .titulo_bloque h2 {
    text-align: center;
    margin: 0 auto;
  }
  .fichas_catalogo .titulo_bloque h2:after {
    left: calc(50% - 2rem);
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_catalogo .titulo_bloque {
    padding: 2rem 3rem 0;
  }
}

.fichas_faq {
  background: #f7f7f7;
}
@media only screen and (min-width: 1240px) {
  .fichas_faq {
    padding-top: 2rem;
  }
}
.fichas_faq .ficha .textos {
  max-height: 0;
  overflow: hidden;
  padding: 0;
  margin: 0;
  -webkit-transition: max-height 0.3s ease-out;
  transition: max-height 0.3s ease-out;
}
.fichas_faq .ficha .textos p, .fichas_faq .ficha .textos ul, .fichas_faq .ficha .textos ol {
  padding: 0 0 0 2rem;
  margin-bottom: 0;
}
.fichas_faq .ficha .textos p:last-of-type, .fichas_faq .ficha .textos ul:last-of-type, .fichas_faq .ficha .textos ol:last-of-type {
  padding-bottom: 0.5rem !important;
}
.fichas_faq .ficha .textos p + p {
  padding-top: 0.5rem;
}
.fichas_faq .ficha .textos ul, .fichas_faq .ficha .textos ol {
  margin-top: 0.5rem;
}
.fichas_faq .ficha + .ficha {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(var(--c-primary-40-alpha), 0.25);
}
@media only screen and (min-width: 1240px) {
  .fichas_faq .ficha + .ficha {
    margin-top: 1.5rem;
  }
}
.fichas_faq .ficha h3 {
  margin: 0;
  padding: 0 0 0.5rem 2rem;
  cursor: pointer;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-size: 1.15rem;
}
@media only screen and (min-width: 1240px) {
  .fichas_faq .ficha h3 {
    font-size: 1.5rem;
  }
}
.fichas_faq .ficha h3 strong {
  color: inherit;
}
.fichas_faq .ficha h3:before {
  font-family: "infotelecom";
  content: "\f13a";
  position: absolute;
  font-style: normal;
  font-size: 1.25rem;
  line-height: 1;
  left: 2px;
  top: 0.25rem;
  color: rgba(var(--c-primary-40-alpha), 0.25);
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  will-change: auto;
}
.fichas_faq .ficha h3:hover {
  cursor: pointer;
  color: var(--c-primary);
}
.fichas_faq .ficha h3:hover:before {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  color: var(--c-primary);
}
.fichas_faq .ficha h3.actual:before {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  color: var(--c-primary);
}
.fichas_faq .ficha h3.actual,
.fichas_faq .ficha h3.actual:hover {
  color: var(--c-primary-40);
  padding-bottom: 0.5rem;
  border: none;
  margin: 0;
}
.fichas_faq .ficha h3.actual strong,
.fichas_faq .ficha h3.actual:hover strong {
  color: inherit;
}
@media only screen and (min-width: 768px) {
  .fichas_faq {
    display: block;
  }
  .fichas_faq .titulo_bloque {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_faq {
    padding-left: calc((100% - 56rem) / 2);
    padding-right: calc((100% - 56rem) / 2);
  }
  .fichas_faq .titulo_bloque {
    margin-bottom: 3rem;
  }
}

.grupo_fichas.fichas_faq ul {
  display: block;
}

/*MAPA*/
.mapa, .mapa_grande, .mapa_medio {
  padding: 0.5rem !important;
  border: 1px solid #c2c1c1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.mapa iframe, .mapa_grande iframe, .mapa_medio iframe {
  height: 20em;
  width: 100%;
}
.mapa_grande, .mapa_medio {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
}
@media only screen and (min-width: 960px) {
  .mapa, .mapa_grande, .mapa_medio {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
@media only screen and (min-width: 1240px) {
  .mapa, .mapa_grande, .mapa_medio {
    max-width: 1200px;
    margin: auto;
  }
  .mapa iframe, .mapa_grande iframe, .mapa_medio iframe {
    height: 20em;
  }
}

.mapa_medio {
  border: none;
}
.mapa_medio .contacto_mapa {
  width: 100%;
  padding: 3rem 2rem;
  text-align: center;
}
@media only screen and (min-width: 600px) {
  .mapa_medio .contacto_mapa {
    padding: 3rem;
  }
}
@media only screen and (min-width: 960px) {
  .mapa_medio .contacto_mapa {
    padding: 4rem 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .mapa_medio .contacto_mapa {
    width: 50%;
    padding: 4rem;
  }
}
.mapa_medio .contacto_mapa img {
  width: 10rem;
  margin: 0 auto 1rem;
}
.mapa_medio .contacto_mapa h3 {
  font-family: "Outfit";
}
.mapa_medio .contacto_mapa address strong {
  color: var(--title-color);
}
.mapa_medio .contacto_mapa p {
  margin: 0 0 1rem;
  text-align: center;
}
.mapa_medio .contacto_mapa .movil a {
  display: inline-block;
  margin-left: 0.5rem;
}
.mapa_medio .contacto_mapa p.horario strong {
  color: #8a8988;
}
.mapa_medio .contacto_mapa .boton, .mapa_medio .contacto_mapa .boton-medio, .mapa_medio .contacto_mapa .boton-grande, .mapa_medio .contacto_mapa .boton-borde {
  margin-top: 1rem;
}
@media only screen and (min-width: 960px) {
  .mapa_medio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mapa_medio .contacto_mapa {
    width: 40%;
  }
  .mapa_medio iframe {
    min-height: 20em;
    height: auto;
    -ms-flex-item-align: stretch;
        align-self: stretch;
    width: 60%;
  }
}
@media only screen and (min-width: 1240px) {
  .mapa_medio .contacto_mapa, .mapa_medio iframe {
    width: 50%;
  }
}

.mapa_medio.dark_theme address strong {
  color: var(--title-color-dt);
}

/*SITEMAP*/
.sitemap dt {
  min-height: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
}
.sitemap dt a {
  display: inline-block;
  font-style: normal;
  text-transform: none;
  text-decoration: none;
  font-family: "Outfit";
  color: var(--title-color);
  font-size: 1rem;
  line-height: 1.3;
}
.sitemap dt a:hover {
  text-decoration: underline;
  text-decoration-color: var(--c-primary);
}
.sitemap dt + dt {
  margin-top: 1.5rem;
}
.sitemap dd {
  padding: 0;
  margin: 0 0 1.5rem;
}
.sitemap dd strong {
  display: inline-block;
  line-height: 1.3;
  margin: 0.25rem 0;
}
@media only screen and (min-width: 1240px) {
  .sitemap {
    width: 100%;
    padding: 4rem calc((100% - 45rem) / 2) !important;
  }
}

/*SITEMAP SECCION*/
.sitemap_seccion {
  padding: 0.125rem 0 0;
  position: sticky;
  top: 4.5rem;
  z-index: 2;
  background: var(--level-1);
  border: 1px solid #c2c1c1;
  border-width: 1px 0;
}

.sitemap_seccion dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0.25rem 0.125rem;
}

.sitemap_seccion dt {
  display: inline-block;
  margin: 0.125rem;
  padding: 0;
  background-image: none !important;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.sitemap_seccion dt + dt {
  margin-top: 0.125rem;
}

.sitemap_seccion dt a {
  display: block;
  text-align: center;
  padding: 0.5rem;
  margin: 0;
  text-transform: uppercase;
  font-size: 0.7rem;
  border: none;
  background: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-family: "Outfit";
  color: var(--text-color);
  position: relative;
  cursor: pointer;
  white-space: nowrap;
  border: 1px solid #c2c1c1;
}

.sitemap_seccion dt a:hover {
  background: var(--c-primary);
  color: #fff;
  text-decoration: none;
  border-color: var(--c-primary);
}

.sitemap_seccion dt a.activo:hover,
.sitemap_seccion dt a.activo {
  background: var(--text-color);
  color: #fff;
  text-decoration: none;
  border-color: var(--text-color);
}

@media only screen and (max-width: 599px) {
  .sitemap_seccion.no_movil dl {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    overflow-x: scroll;
  }
  .sitemap_seccion.no_movil dl a {
    padding: 0.5rem 1rem;
  }
}
@media only screen and (min-width: 600px) {
  .sitemap_seccion {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .sitemap_seccion dt a {
    padding: 0.5rem;
  }
}
@media only screen and (min-width: 1240px) {
  .sitemap_seccion {
    margin: 0 auto;
    padding: 0 calc((100% - 1200px) / 2) !important;
  }
  .sitemap_seccion dt a {
    font-size: 0.9rem;
  }
}
@media only screen and (min-width: 1440px) {
  .sitemap_seccion {
    padding: 0 calc((100% - 1356px) / 2) !important;
  }
}
@media only screen and (min-width: 1600px) {
  .sitemap_seccion dt a {
    padding: 0.5rem 1rem;
  }
}
.sitemap_seccion.mapa_seccion {
  position: sticky;
  bottom: 0;
  z-index: 10;
}
.sitemap_seccion.mapa_seccion dl {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  overflow-x: scroll;
}
.sitemap_seccion.mapa_seccion dt a {
  line-height: 1.2;
}
@media only screen and (min-width: 1240px) {
  .sitemap_seccion.mapa_seccion dt a {
    font-size: 0.8rem;
  }
}

.buscador_sitemap {
  position: relative;
}
.buscador_sitemap + dl {
  margin-top: 2rem;
}
.buscador_sitemap form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.buscador_sitemap form label {
  white-space: nowrap;
  margin-right: 1.5rem;
}
.buscador_sitemap form input {
  border: solid;
  border-width: 1px;
  border-color: var(--form-borde-input-color);
  margin: 0;
  color: var(--form-color-input);
  background: var(--form-fondo-input);
  font-size: inherit;
}
.buscador_sitemap form input:focus {
  border-color: rgb(0, 116, 189);
}
.buscador_sitemap a {
  position: absolute;
  right: 0;
  width: 2.5rem;
  height: 2rem;
  line-height: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-left: 1px solid var(--form-borde-input-color);
  color: var(--title-color);
}
.buscador_sitemap a span {
  display: none;
}
@media only screen and (min-width: 600px) {
  .buscador_sitemap a {
    width: auto;
    padding: 0 0.5rem;
  }
  .buscador_sitemap a span {
    display: inline-block;
    margin-left: 0.25rem;
  }
}
@media only screen and (min-width: 1240px) {
  .buscador_sitemap a:hover {
    color: var(--c-primary);
    text-decoration: none;
  }
}

.busqueda {
  margin: 1.5rem 0;
  border-bottom: 1px solid;
  padding-bottom: 1.5rem;
  font-family: "Outfit SemiBold";
}
.busqueda span {
  font-family: "Outfit";
}

.centrar_video {
  width: 100%;
  margin: 0 auto 5rem;
}
@media only screen and (min-width: 1240px) {
  .centrar_video {
    max-width: 1200px;
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .centrar_video {
    max-width: 1356px;
  }
}
.centrar_video.actividad {
  margin: 0 auto;
  padding: 1rem 0;
  background: var(--c-black);
}
@media only screen and (min-width: 1240px) {
  .centrar_video.actividad {
    max-width: 100%;
    padding: 1rem calc((100% - 1200px) / 2);
  }
}

.video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  clear: both;
}
.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

p.video {
  width: 100%;
}

.contenedor_video {
  margin-bottom: 2rem;
  background: var(--c-black);
}
@media only screen and (min-width: 1240px) {
  .contenedor_video {
    margin-bottom: 4rem;
    background: transparent;
  }
}
.contenedor_video .centrar_video {
  position: relative;
  height: auto;
  padding-top: 56.25%;
  overflow: hidden;
  margin: 0 auto;
}
@media only screen and (min-width: 1240px) {
  .contenedor_video .centrar_video {
    height: 675px;
    padding: 0;
  }
}
@media only screen and (min-width: 1440px) {
  .contenedor_video .centrar_video {
    height: 763px;
  }
}
.contenedor_video .enlace, .contenedor_video .foto_video, .contenedor_video iframe {
  position: absolute;
  top: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
}
.contenedor_video .enlace {
  z-index: 3;
}
.contenedor_video iframe {
  z-index: 1;
  background-color: #000;
}
.contenedor_video .enlace, .contenedor_video .foto_video {
  display: block;
  opacity: 1;
  -webkit-transition: 1s all;
  transition: 1s all;
}
.contenedor_video .enlace.abierto, .contenedor_video .foto_video.abierto {
  display: none;
  opacity: 0;
  pointer-events: none;
}
.contenedor_video .enlace a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.contenedor_video .enlace a:hover {
  background: rgba(0, 0, 0, 0.25);
}
.contenedor_video .enlace a span {
  display: none;
}
.contenedor_video .enlace a img {
  position: relative;
  width: 4rem;
  height: 4rem;
  min-height: 4rem;
}
@media only screen and (min-width: 768px) {
  .contenedor_video .enlace a img {
    width: 8rem;
    height: 8rem;
    min-height: 8rem;
  }
}
.contenedor_video .foto_video img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

/* ETIQUETAS */
.etiquetas {
  margin: 2rem 0;
}
.etiquetas strong {
  display: block;
  margin: 0;
  position: relative;
}
.etiquetas li {
  display: inline;
}
.etiquetas li a {
  display: inline-block;
  padding: 0.15rem 0;
  margin: 0.5rem 0.5rem 0 0;
  position: relative;
}
.etiquetas li a:hover {
  text-decoration: none;
}

/* ESTILOS ETIQUETAS */
.etiquetas strong {
  font-family: "Outfit SemiBold";
  color: var(--high-contast);
  text-transform: none;
  font-size: inherit;
  letter-spacing: 0.5px;
}
.etiquetas li a {
  border: solid;
  border-width: 0 0 1px;
  border-radius: 0;
  color: var(--pagination-link-color);
  background: var(--pagination-link-bg);
  border-color: transparent;
  font-size: 0.9rem;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}
.etiquetas li a:hover {
  color: var(--pagination-link-hover-color);
  background: var(--pagination-link-hover-bg);
  border-color: var(--pagination-link-hover-color);
}

.bloque.enlaces {
  margin: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.bloque.enlaces strong {
  font-family: "Outfit SemiBold";
  color: var(--high-contast);
  text-transform: none;
  font-size: inherit;
  letter-spacing: 0.5px;
}

.breadcrumb {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.breadcrumb.hero {
  position: absolute;
  z-index: 20;
  width: 100vw;
}
.breadcrumb ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.breadcrumb ol li {
  margin-right: 0.5rem;
}
.breadcrumb ol li a {
  position: relative;
  padding-right: 0.75rem;
}
.breadcrumb ol li a:after {
  position: absolute;
  color: inherit;
  margin: 0 -0.5rem 0 0.5rem;
  font-family: inherit;
  content: "/";
}
.breadcrumb ol li a:hover {
  opacity: 1;
}
.breadcrumb ol li a:hover:after {
  text-decoration: none;
}
.breadcrumb ol li:last-child {
  margin-right: 0;
}
.breadcrumb ol li:last-child a {
  padding-right: 0;
}
.breadcrumb ol li:last-child a:after {
  content: none;
}

.breadcrumb {
  font-family: "Outfit";
  font-size: 1rem;
  color: var(--text-color);
  background: #fff;
  text-transform: none;
  border: solid;
  border-width: 1px 0;
  border-color: #c2c1c1;
}
.breadcrumb ol li a {
  color: var(--text-color);
  line-height: 1;
}
.breadcrumb ol li a:after {
  bottom: 0.125rem;
}
.breadcrumb ol li:last-child a {
  font-family: "Outfit";
  color: var(--title-color);
  opacity: 0.8;
}

.breadcrumb.hero {
  color: #fff;
  background: transparent;
  border: none;
  top: 0.5rem;
}
.breadcrumb.hero ol li a {
  color: #fff;
  opacity: 0.7;
}
.breadcrumb.hero ol li a:after {
  opacity: 0.5;
}
.breadcrumb.hero ol li:last-child a {
  color: #fff;
  opacity: 0.9;
}

#contenido.con-breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#contenido.con-breadcrumb .breadcrumb {
  width: 100vw;
  -webkit-box-ordinal-group: 101;
      -ms-flex-order: 100;
          order: 100;
}

@media only screen and (min-width: 960px) {
  #contenido.cabecera .breadcrumb {
    width: 100vw;
    -webkit-box-ordinal-group: -99;
        -ms-flex-order: -100;
            order: -100;
    position: absolute;
    background: transparent;
  }
  #contenido.cabecera .breadcrumb ol li a {
    color: var(--text-color-dt);
    font-size: 0.9rem;
  }
  #contenido.cabecera .breadcrumb ol li a:hover:after {
    text-decoration: none !important;
  }
  #contenido.cabecera .breadcrumb ol li:last-child a {
    opacity: 1;
  }
}

#contenido .breadcrumb {
  -webkit-box-ordinal-group: 101;
      -ms-flex-order: 100;
          order: 100;
}

.breadcrumb.dark_theme ol li a {
  color: var(--text-color-dt) !important;
}
.breadcrumb.dark_theme ol li a:hover {
  text-decoration: underline;
}

/* PAGINACION */
.paginacion, .paginacion-barra, .paginacion-rounded, .paginacion-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 1rem 0;
  width: 100% !important;
}
.paginacion a, .paginacion-barra a, .paginacion-rounded a, .paginacion-center a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  width: 2.5rem;
  height: 2.5rem;
  text-align: center;
  margin-right: 0.5rem;
  font-family: "Outfit SemiBold";
  color: var(--pagination-link-color);
  background: var(--pagination-link-bg);
  border: solid;
  border-color: transparent;
  border-width: 0 0 1px;
  border-radius: 0;
}
.paginacion a i, .paginacion-barra a i, .paginacion-rounded a i, .paginacion-center a i {
  font-size: 0.75rem;
  line-height: 1;
}
.paginacion a:hover, .paginacion-barra a:hover, .paginacion-rounded a:hover, .paginacion-center a:hover {
  text-decoration: none;
  color: var(--pagination-link-hover-color);
  background: var(--pagination-link-hover-bg);
  border-color: var(--pagination-link-hover-color);
}
.paginacion a:active, .paginacion-barra a:active, .paginacion-rounded a:active, .paginacion-center a:active, .paginacion a.activo, .paginacion-barra a.activo, .paginacion-rounded a.activo, .paginacion-center a.activo, .paginacion a.activo:hover {
  font-family: "Outfit SemiBold";
  color: var(--pagination-link-active-color);
  background: var(--pagination-link-active-bg);
  border-color: var(--pagination-link-active-color);
}
.paginacion a.inactivo, .paginacion-barra a.inactivo, .paginacion-rounded a.inactivo, .paginacion-center a.inactivo, .paginacion a.inactivo:hover {
  cursor: default;
  color: var(--pagination-link-inactive-color);
  background: var(--pagination-link-inactive-bg);
  border-color: var(--pagination-link-inactive-bg);
}

/* ESTILOS*/
.paginacion-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.paginacion-rounded {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.paginacion-rounded a {
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  text-align: center;
  padding: 0;
  line-height: 2.5rem;
  /* alto - padding normal */
  margin: 0 0.25rem;
}

.paginacion-barra a {
  padding: 0.15rem 0.75rem;
  margin-left: -2px;
  margin-right: 0;
}
.paginacion-barra a:first-child {
  border-radius: 0.5rem 0 0 0.5rem;
  margin-left: 0;
}
.paginacion-barra a:last-child {
  border-radius: 0 0.5rem 0.5rem 0;
}

.titulo_categoria {
  position: relative;
  height: auto;
}
.titulo_categoria .titulo_seccion {
  position: relative;
  height: auto;
  background: transparent;
  color: var(--text-color);
  text-align: left;
  text-shadow: none;
  width: 100%;
}
@media only screen and (min-width: 1240px) {
  .titulo_categoria .titulo_seccion .bloque {
    padding: 2rem 3rem;
  }
}
@media only screen and (min-width: 1440px) {
  .titulo_categoria .titulo_seccion .bloque {
    padding: 2rem calc((100% - 1356px) / 2);
  }
}
.titulo_categoria .titulo_seccion h1 {
  color: var(--title-color);
  font-size: 1.563rem;
  margin: 0;
  max-width: 100%;
}
.titulo_categoria .titulo_seccion h1 + p {
  margin-top: 0.5rem;
}

.titulo_categoria + .fichas_productos {
  padding-top: 0;
}

.breadcrumb + .fichas_productos {
  padding-top: 0;
}

.titulo_categoria.hombre .bloque {
  padding-bottom: 1rem;
}

.fichas_productos .titulo_bloque {
  width: 100%;
  text-align: left;
}
.fichas_productos .ficha {
  border-radius: 0;
  overflow: visible;
  position: relative;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .fichas_productos .ficha {
    margin: 0;
  }
}
.fichas_productos .ficha .foto {
  margin-bottom: 0;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  aspect-ratio: 0.666666666;
  background-color: #f7f7f7;
}
.fichas_productos .ficha .foto:hover {
  background-color: #fbfbfb;
}
.fichas_productos .ficha .foto img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  left: 0;
  mix-blend-mode: normal;
}
.fichas_productos .ficha .foto .etiqueta {
  position: absolute;
  top: 0;
  z-index: 1;
  background: var(--c-primary-10);
  color: #fff;
  line-height: 1;
  padding: 0.15rem 0.25rem;
  font-size: 0.7rem;
  text-transform: uppercase;
  font-family: "Outfit";
}
@media only screen and (min-width: 960px) {
  .fichas_productos .ficha .foto .etiqueta {
    font-size: 0.9rem;
  }
}
.fichas_productos .ficha .foto .etiqueta.roja {
  background: #E21E22;
}
.fichas_productos .ficha .foto img {
  -o-object-position: center;
     object-position: center;
}
@media only screen and (min-width: 1240px) {
  .fichas_productos .ficha .foto img.principal {
    will-change: auto;
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
    opacity: 1;
  }
  .fichas_productos .ficha:hover .foto img.principal {
    opacity: 0;
    z-index: 1;
  }
  .fichas_productos .ficha:hover .foto img.secundaria {
    display: block !important;
    z-index: 2;
  }
}
.fichas_productos .ficha .texto {
  position: relative;
  padding: 0.5rem;
  padding-bottom: 1rem;
}
@media only screen and (min-width: 600px) {
  .fichas_productos .ficha .texto {
    padding: 0.5rem 0;
    padding-bottom: 1rem;
  }
}
.fichas_productos .ficha .texto h3 {
  font-size: 1rem;
  font-family: "Outfit";
}
@media only screen and (min-width: 960px) {
  .fichas_productos .ficha .texto h3 {
    font-size: 1.1rem;
  }
}
.fichas_productos .ficha .texto h3 a {
  color: var(--text-color);
  font-family: inherit;
  font-size: inherit;
}
.fichas_productos .ficha .texto h3 span {
  display: block;
  margin-top: 0.25rem;
  font-family: "Outfit";
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.fichas_productos .ficha .texto p.precio {
  font-size: 0.95rem;
  line-height: 1;
  color: var(--title-color);
  display: block;
}
@media only screen and (min-width: 960px) {
  .fichas_productos .ficha .texto p.precio {
    font-size: 1.1rem;
  }
}
.fichas_productos .ficha .texto p.precio span {
  display: none;
}
.fichas_productos .ficha .texto p.precio strong {
  display: inline-block;
  margin-right: 0.5rem;
}
.fichas_productos .ficha .texto p.precio strong.anterior {
  text-decoration: line-through;
  font-family: "Outfit";
  font-size: 1rem;
}
.fichas_productos .ficha .texto p.precio strong.oferta {
  color: #E21E22;
}
.fichas_productos .ficha .texto p.precio strong.oferta span {
  display: none;
  /*color: $rojo;
  display: inline-block;
  text-transform: uppercase;
  font-size: .7rem;
  border: 1px solid;
  margin-left: .5rem;
  padding: 0 .25rem;*/
}
.fichas_productos .ficha .texto .colores {
  display: inline-block;
}
.fichas_productos .ficha .texto .colores p {
  margin: 0;
}
.fichas_productos .ficha .texto .colores p a {
  font-size: 0.7rem;
  text-transform: uppercase;
  color: var(--title-color);
  cursor: pointer;
}
.fichas_productos .ficha .texto .colores p.activos {
  display: none;
}
.fichas_productos .ficha .texto .colores ul {
  display: none;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.9rem;
  margin: 0.75rem 0 0;
}
.fichas_productos .ficha .texto .colores ul li {
  margin: 0 0.25rem 0.25rem 0;
  line-height: 1;
}
.fichas_productos .ficha .texto .colores ul li:last-of-type {
  margin: 0;
}
.fichas_productos .ficha .texto .colores ul li span {
  display: none;
}
.fichas_productos .ficha .texto .colores ul li img {
  width: 1rem;
  height: 1rem;
  border-radius: 100%;
  border: 1px solid var(--gris-bordes);
}
.fichas_productos .ficha .texto .colores.abiertos ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.fichas_productos .ficha .texto .tallas {
  display: none;
  text-align: center;
}
.fichas_productos .ficha .texto .tallas p {
  display: block;
  line-height: 1;
  font-size: 0.9rem;
  text-transform: uppercase;
}
.fichas_productos .ficha .texto .tallas ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.fichas_productos .ficha .texto .tallas ul li {
  margin: 0 0.25rem;
}
.fichas_productos .ficha .texto .tallas ul a, .fichas_productos .ficha .texto .tallas ul span {
  display: block;
  height: 1.5rem;
  line-height: 1.5rem;
  padding: 0 0.25rem;
}
.fichas_productos .ficha .texto .tallas ul span {
  color: #8a8988;
  position: relative;
}
.fichas_productos .ficha .texto .tallas ul span:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
  background: #8a8988;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.fichas_productos .ficha .texto .tallas ul a {
  color: var(--title-color);
  font-family: "Outfit";
}
.fichas_productos .ficha .texto .tallas ul a:hover {
  color: var(--c-primary);
}
.fichas_productos .ficha .texto .tallas ul span:hover {
  cursor: default;
}
.fichas_productos .ficha .texto .oferta {
  color: #E21E22;
}
.fichas_productos .ficha .texto a:hover {
  text-decoration: none;
}
@media (hover: hover) and (min-width: 1240px) {
  .fichas_productos .ficha:hover .texto .tallas {
    position: absolute;
    z-index: 2;
    top: -5.5rem;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 1rem;
    width: calc(100% - 2rem);
    padding: 1rem;
    background: rgba(255, 255, 255, 0.75);
    -webkit-backdrop-filter: blur(20px);
            backdrop-filter: blur(20px);
  }
  .fichas_productos .ficha:hover .texto .tallas ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .fichas_productos .ficha:hover .texto .tallas ul li a, .fichas_productos .ficha:hover .texto .tallas ul li span {
    font-size: 1rem;
  }
}

.fichas_productos {
  padding: 1rem 0.5rem 2rem;
}
.fichas_productos .productos {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 0.5rem;
  grid-row-gap: 1.5rem;
}
.fichas_productos .productos .paginacion, .fichas_productos .productos .paginacion-center, .fichas_productos .productos .paginacion-rounded, .fichas_productos .productos .paginacion-barra, .fichas_productos .productos .titulo_bloque, .fichas_productos .productos .etiquetas_noticias, .fichas_productos .productos .cierre {
  grid-column-start: 1;
  grid-column-end: -1;
}
@media only screen and (min-width: 600px) {
  .fichas_productos {
    padding: 1.5rem;
    padding-bottom: 2rem;
  }
  .fichas_productos .productos {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 0.75rem;
    grid-row-gap: 1.5rem;
  }
  .fichas_productos .productos .paginacion, .fichas_productos .productos .paginacion-center, .fichas_productos .productos .paginacion-rounded, .fichas_productos .productos .paginacion-barra, .fichas_productos .productos .titulo_bloque, .fichas_productos .productos .etiquetas_noticias, .fichas_productos .productos .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
@media only screen and (min-width: 768px) {
  .fichas_productos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0;
  }
  .fichas_productos .productos {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1rem;
    grid-row-gap: 2rem;
  }
  .fichas_productos .productos .paginacion, .fichas_productos .productos .paginacion-center, .fichas_productos .productos .paginacion-rounded, .fichas_productos .productos .paginacion-barra, .fichas_productos .productos .titulo_bloque, .fichas_productos .productos .etiquetas_noticias, .fichas_productos .productos .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
@media only screen and (min-width: 960px) {
  .fichas_productos {
    padding: 3rem 8rem;
  }
  .fichas_productos .productos {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1.5rem;
    grid-row-gap: 3rem;
  }
  .fichas_productos .productos .paginacion, .fichas_productos .productos .paginacion-center, .fichas_productos .productos .paginacion-rounded, .fichas_productos .productos .paginacion-barra, .fichas_productos .productos .titulo_bloque, .fichas_productos .productos .etiquetas_noticias, .fichas_productos .productos .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_productos {
    padding: 3rem;
  }
  .fichas_productos .productos {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 2rem;
    grid-row-gap: 3rem;
  }
  .fichas_productos .productos .paginacion, .fichas_productos .productos .paginacion-center, .fichas_productos .productos .paginacion-rounded, .fichas_productos .productos .paginacion-barra, .fichas_productos .productos .titulo_bloque, .fichas_productos .productos .etiquetas_noticias, .fichas_productos .productos .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}
@media only screen and (min-width: 1440px) {
  .fichas_productos {
    padding: 4rem calc((100% - 1356px) / 2);
  }
}

@media only screen and (min-width: 960px) {
  .fichas_productos.en_seccion {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 0rem;
    grid-row-gap: 1rem;
  }
  .fichas_productos.en_seccion .paginacion, .fichas_productos.en_seccion .paginacion-center, .fichas_productos.en_seccion .paginacion-rounded, .fichas_productos.en_seccion .paginacion-barra, .fichas_productos.en_seccion .titulo_bloque, .fichas_productos.en_seccion .etiquetas_noticias, .fichas_productos.en_seccion .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .fichas_productos.en_seccion .ficha .texto h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_productos.en_seccion {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 0rem;
    grid-row-gap: 3rem;
  }
  .fichas_productos.en_seccion .paginacion, .fichas_productos.en_seccion .paginacion-center, .fichas_productos.en_seccion .paginacion-rounded, .fichas_productos.en_seccion .paginacion-barra, .fichas_productos.en_seccion .titulo_bloque, .fichas_productos.en_seccion .etiquetas_noticias, .fichas_productos.en_seccion .cierre {
    grid-column-start: 1;
    grid-column-end: -1;
  }
}

.fichas_productos .cierre {
  width: 100%;
}
.fichas_productos .cierre .boton, .fichas_productos .cierre .boton-medio, .fichas_productos .cierre .boton-grande, .fichas_productos .cierre .boton-borde {
  margin-top: 2rem;
}
@media only screen and (min-width: 1240px) {
  .fichas_productos .cierre .boton, .fichas_productos .cierre .boton-medio, .fichas_productos .cierre .boton-grande, .fichas_productos .cierre .boton-borde {
    font-size: inherit;
  }
}

.fichas_productos.relacionados {
  background: #f7f7f7;
  border: none;
  border-color: transparent;
  border-width: 0;
}
@media only screen and (min-width: 960px) {
  .fichas_productos.relacionados {
    padding: 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_productos.relacionados {
    padding: 3rem calc((100% - 1200px) / 2);
  }
}
@media only screen and (min-width: 1440px) {
  .fichas_productos.relacionados {
    padding: 4rem calc((100% - 1356px) / 2);
  }
}
.fichas_productos.relacionados .titulo_bloque {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.fichas_productos.relacionados .titulo_bloque h2 {
  font-size: 1.25rem;
}
@media only screen and (min-width: 960px) {
  .fichas_productos.relacionados .titulo_bloque h2 {
    font-size: 1.5rem;
  }
}
.fichas_productos.relacionados .productos {
  display: block;
  min-width: 100%;
}
.fichas_productos.relacionados .ficha .foto {
  padding-top: 0;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  aspect-ratio: 0.666666666;
  background-color: #fff;
}
.fichas_productos.relacionados .ficha .foto img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  left: 0;
  mix-blend-mode: normal;
}
.fichas_productos.relacionados .ficha .texto {
  margin-bottom: 1rem;
}
.fichas_productos.relacionados .ficha .texto h3 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media only screen and (min-width: 600px) {
  .fichas_productos.relacionados .ficha .texto {
    padding: 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .fichas_productos.relacionados .ficha .texto {
    padding: 0.5rem 1rem;
  }
}
.fichas_productos.relacionados .relacionados_slide {
  display: block;
}
.fichas_productos.relacionados .cierre {
  margin-top: 0;
}
.fichas_productos.relacionados .lSSlideOuter {
  width: 100%;
}

.fichas_productos.comprimido {
  padding-left: 0;
  padding-right: 0;
}
@media only screen and (min-width: 1240px) {
  .fichas_productos.comprimido {
    padding-left: calc((100% - 1356px) / 2);
    padding-right: calc((100% - 1356px) / 2);
  }
}
.fichas_productos.comprimido .productos {
  grid-column-gap: 0.5rem;
  grid-row-gap: 1.5rem;
}
.fichas_productos.comprimido .productos .ficha .texto {
  padding: 0.5rem 0.5rem 1rem;
}
.fichas_productos.comprimido .productos .ficha .texto h3 {
  font-size: 1.05rem;
}
.fichas_productos.comprimido .productos .ficha .texto p.precio {
  font-size: 1rem;
}
@media only screen and (min-width: 600px) {
  .fichas_productos.comprimido .productos .ficha .texto h3 {
    font-size: 1.1rem;
  }
  .fichas_productos.comprimido .productos .ficha .texto p.precio {
    font-size: 1.05rem;
  }
}
@media only screen and (min-width: 768px) {
  .fichas_productos.comprimido .productos .ficha .texto {
    padding: 0.75rem 0.75rem 1.5rem;
  }
  .fichas_productos.comprimido .productos .ficha .texto h3 {
    font-size: 1.2rem;
  }
  .fichas_productos.comprimido .productos .ficha .texto p.precio {
    font-size: 1.1rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_productos.comprimido .productos .ficha .texto {
    padding: 1rem 1rem 2rem;
  }
}

.fichas_productos .ficha .nostock,
.titulo_producto .nostock {
  pointer-events: none;
  background: var(--c-primary);
  color: #fff;
  line-height: 1;
  text-transform: uppercase;
}

.fichas_productos .ficha .nostock {
  position: absolute;
  z-index: 5;
  top: -1.8rem;
  left: 0;
  font-size: 0.8rem;
  letter-spacing: 1px;
  padding: 0.5rem;
  width: 100%;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .fichas_productos .ficha .nostock {
    font-size: 1rem;
    top: -2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_productos .ficha .nostock {
    top: -2.15rem;
    letter-spacing: 2px;
  }
}

.titulo_producto .nostock {
  display: inline-block;
  font-size: 1rem;
  letter-spacing: 2px;
  padding: 0.75rem;
}

.fichas_productos .ficha .texto h3 a.nombre_modelo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.fichas_productos .ficha .texto h3 a.nombre_modelo span.modelo {
  -webkit-box-ordinal-group: -1;
      -ms-flex-order: -2;
          order: -2;
  margin: 0 0 0.25rem;
}

.ficha_producto {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.ficha_producto .titulo_producto {
  position: relative;
}
.ficha_producto .titulo_producto h1 {
  font-size: 1.25rem;
  font-family: "Outfit";
}
@media only screen and (min-width: 370px) {
  .ficha_producto .titulo_producto h1 {
    font-size: 1.35rem;
  }
}
@media only screen and (min-width: 600px) {
  .ficha_producto .titulo_producto h1 {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 1240px) {
  .ficha_producto .titulo_producto h1 {
    font-size: 1.75rem;
  }
}
.ficha_producto .titulo_producto h1 a {
  color: var(--c-black);
}
.ficha_producto .titulo_producto h1 span {
  font-family: "Outfit";
  font-size: 0.9rem;
  text-transform: uppercase;
  display: block;
}
@media only screen and (min-width: 370px) {
  .ficha_producto .titulo_producto h1 span {
    font-size: 1rem;
  }
}
.ficha_producto .titulo_producto p.precio {
  font-size: 1.1rem;
  color: var(--title-color);
  margin-top: 1rem;
}
@media only screen and (min-width: 960px) {
  .ficha_producto .titulo_producto p.precio {
    font-size: 1.35rem;
  }
}
.ficha_producto .titulo_producto p.precio span {
  display: none;
  /*display: inline-block;
  color: var(--text-color); //var(--gris-medio); // igual que label
  //margin-right: .25rem;// igual que label
  text-transform: uppercase;
  font-size: .8rem;
  font-family: $font-regular;
  letter-spacing: 1px; // igual que label
  width: 6rem; // igual que label*/
}
.ficha_producto .titulo_producto p.precio strong {
  display: inline-block;
  margin-right: 0.5rem;
}
.ficha_producto .titulo_producto p.precio strong.anterior {
  text-decoration: line-through;
  font-family: "Outfit";
  font-size: 1rem;
}
.ficha_producto .titulo_producto p.precio strong.oferta {
  color: #E21E22;
}
.ficha_producto .titulo_producto p.precio strong.oferta span {
  display: inline-block;
  text-transform: uppercase;
  font-size: 0.7rem;
  border: 1px solid;
  margin-left: 0.5rem;
  padding: 0.125rem 0.25rem;
}
.ficha_producto .titulo_producto p.precio .oferta, .ficha_producto .titulo_producto p.precio .oferta span {
  color: #E21E22;
}
.ficha_producto .titulo_producto p.precio em {
  font-style: normal;
}
.ficha_producto .precio + .formulario {
  margin-top: 1rem;
}
.ficha_producto .formulario_producto {
  margin-top: 2rem;
}
@media only screen and (min-width: 960px) {
  .ficha_producto .formulario_producto {
    margin-top: 3rem;
  }
}
.ficha_producto .formulario_producto fieldset {
  margin-bottom: 1rem;
}
.ficha_producto .formulario_producto legend {
  font-size: 1rem;
  line-height: 1;
}
.ficha_producto .formulario_producto label {
  width: 6rem;
  margin: 0;
  font-size: 0.9rem;
  font-family: "Outfit";
  text-transform: uppercase;
  letter-spacing: 0.25px;
}
.ficha_producto .formulario_producto span {
  font-size: 1rem;
}
.ficha_producto .formulario_producto select {
  width: 5rem;
  margin: 0;
  height: 2.25em;
  padding: 0 0.5rem;
  background-image: url(/static/graficos/arrow.png);
  background-position: calc(100% - 1rem);
  background-repeat: no-repeat;
  background-size: 0.5rem;
}
.ficha_producto .formulario_producto span.radios {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.ficha_producto .formulario_producto span.radios span {
  position: relative;
  width: auto;
  margin: 0 0.5rem 0.5rem 0;
}
.ficha_producto .formulario_producto span.radios input[type=radio] {
  position: relative;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
  margin: 0;
  width: 2.5rem !important;
  height: 2.5rem !important;
  display: block;
  z-index: 2;
  cursor: pointer;
  background: transparent !important;
  border-radius: 0 !important;
}
.ficha_producto .formulario_producto span.radios input[type=radio]:hover {
  background: rgba(var(--c-black-alpha), 0.015) !important;
  border-color: var(--c-primary);
}
.ficha_producto .formulario_producto span.radios input[type=radio]:focus, .ficha_producto .formulario_producto span.radios input[type=radio]:checked {
  outline: 1px solid var(--c-primary) !important;
  background-color: var(--title-color) !important;
}
.ficha_producto .formulario_producto span.radios input[type=radio]:focus + label, .ficha_producto .formulario_producto span.radios input[type=radio]:checked + label {
  color: #fff;
}
.ficha_producto .formulario_producto span.radios input[type=radio]#id_talla-54558:hover, .ficha_producto .formulario_producto span.radios input[type=radio]#id_talla-54570:hover, .ficha_producto .formulario_producto span.radios input[type=radio]#id_talla-54558:focus, .ficha_producto .formulario_producto span.radios input[type=radio]#id_talla-54570:focus, .ficha_producto .formulario_producto span.radios input[type=radio]#id_talla-54558:checked, .ficha_producto .formulario_producto span.radios input[type=radio]#id_talla-54570:checked, .ficha_producto .formulario_producto span.radios input[type=radio].tallaunica:hover, .ficha_producto .formulario_producto span.radios input[type=radio].tallaunica:checked, .ficha_producto .formulario_producto span.radios input[type=radio].tallaunica:checked {
  outline: 0 !important;
  border: 0 !important;
  background: transparent !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: default;
}
.ficha_producto .formulario_producto span.radios input[type=radio]:disabled {
  background: rgba(255, 255, 255, 0.75) !important;
  border-color: rgba(var(--gris-bordes-alpha), 0.5);
  cursor: default;
}
.ficha_producto .formulario_producto span.radios input[type=radio]:disabled + label {
  color: var(--pagination-link-inactive-color);
}
.ficha_producto .formulario_producto span.radios label, .ficha_producto .formulario_producto span.radios strong {
  position: absolute;
  left: 0;
  width: 2.5rem !important;
  text-align: center;
  z-index: 2;
  white-space: nowrap;
  pointer-events: none;
}
.ficha_producto .formulario_producto span.radios.colores input[type=radio] {
  border-color: rgba(var(--gris-bordes-alpha), 0.75);
}
.ficha_producto .formulario_producto span.radios.colores input[type=radio]:hover {
  border-color: var(--c-primary);
}
.ficha_producto .formulario_producto span.radios.colores input[type=radio]:disabled, .ficha_producto .formulario_producto span.radios.colores input[type=radio]:disabled:hover {
  border-color: rgba(var(--gris-bordes-alpha), 0.5);
}
.ficha_producto .formulario_producto span.radios.colores label {
  text-indent: -9999px;
  height: 2.5rem;
  border: 4px solid #fff;
  border-radius: 0 !important;
}
.ficha_producto .formulario_producto span.radios.colores label img {
  position: absolute;
  left: 0;
  width: 100%;
  border-radius: 0 !important;
}
.ficha_producto .formulario_producto span.radios.colores .color {
  font-size: 0.8rem;
  margin-left: 0.5rem;
  line-height: 2rem;
}
@media only screen and (min-width: 600px) {
  .ficha_producto .formulario_producto span.radios.colores .color {
    font-size: 1rem;
  }
}
.ficha_producto .formulario_producto a#guia_tallas {
  display: inline-block;
  font-size: 0.9rem;
  color: var(--title-color);
  text-decoration: underline;
  cursor: pointer;
}
@media only screen and (min-width: 600px) {
  .ficha_producto .formulario_producto a#guia_tallas {
    font-size: 1rem;
  }
}
.ficha_producto .formulario_producto a#guia_tallas:hover {
  color: var(--c-primary);
}
.ficha_producto .formulario_producto .anadir {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (min-width: 370px) {
  .ficha_producto .formulario_producto .anadir {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.ficha_producto .formulario_producto .anadir legend {
  display: none;
}
.ficha_producto .formulario_producto .anadir .boton, .ficha_producto .formulario_producto .anadir .boton-medio, .ficha_producto .formulario_producto .anadir .boton-grande, .ficha_producto .formulario_producto .anadir .boton-borde {
  margin: 0;
  padding: 0 1rem;
  line-height: 3rem;
  white-space: nowrap;
}
@media only screen and (min-width: 370px) {
  .ficha_producto .formulario_producto .anadir .boton, .ficha_producto .formulario_producto .anadir .boton-medio, .ficha_producto .formulario_producto .anadir .boton-grande, .ficha_producto .formulario_producto .anadir .boton-borde {
    padding: 0 1.5rem;
  }
}
.ficha_producto .formulario_producto span.valor {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  width: auto !important;
}
@media only screen and (min-width: 370px) {
  .ficha_producto .formulario_producto span.valor {
    margin-right: 1rem;
  }
}
.ficha_producto .formulario_producto span.valor button, .ficha_producto .formulario_producto span.valor input {
  width: 2.5rem;
  height: 3rem;
  padding: 0;
  text-align: center;
}
.ficha_producto .formulario_producto span.valor input#cantidad {
  border-width: 1px 0;
  margin: 0;
  width: 2.5rem;
  border-radius: 0;
}
.ficha_producto .formulario_producto span.valor button {
  position: relative;
  display: block;
  border: none;
  outline: 1px solid var(--form-borde-input-color);
  outline-offset: -1px;
  background: #f7f7f7;
  cursor: pointer;
}
.ficha_producto .formulario_producto span.valor button:after {
  content: "-";
  position: absolute;
  font-size: 1.5rem;
  top: 0;
  left: 0;
  width: 2.5rem;
  line-height: 3rem;
  text-align: center;
  color: var(--title-color);
}
.ficha_producto .formulario_producto span.valor button.restar {
  border-radius: 0;
}
.ficha_producto .formulario_producto span.valor button.sumar {
  border-radius: 0;
}
.ficha_producto .formulario_producto span.valor button.sumar:after {
  content: "+";
}
.ficha_producto .formulario_producto .boton, .ficha_producto .formulario_producto .boton-medio, .ficha_producto .formulario_producto .boton-grande, .ficha_producto .formulario_producto .boton-borde {
  line-height: 3rem;
  margin-top: 2rem;
  border-radius: 0;
  padding: 0 2rem;
}
.ficha_producto .formulario_producto .boton span, .ficha_producto .formulario_producto .boton-medio span, .ficha_producto .formulario_producto .boton-grande span, .ficha_producto .formulario_producto .boton-borde span {
  font-size: 0.9rem;
}
@media only screen and (min-width: 500px) {
  .ficha_producto .formulario_producto .boton, .ficha_producto .formulario_producto .boton-medio, .ficha_producto .formulario_producto .boton-grande, .ficha_producto .formulario_producto .boton-borde {
    width: auto;
    margin: 0;
    display: inline-block;
    padding: 0 4rem;
  }
}
@media only screen and (min-width: 960px) {
  .ficha_producto .formulario_producto .boton, .ficha_producto .formulario_producto .boton-medio, .ficha_producto .formulario_producto .boton-grande, .ficha_producto .formulario_producto .boton-borde {
    margin-top: 1rem;
  }
}
.ficha_producto .formulario_producto .error_stock {
  background: #DA2424;
  color: #fff;
  display: block;
  padding: 0.25rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1;
  padding-left: 1.5rem;
  position: absolute;
  top: -0.5rem;
}
.ficha_producto .formulario_producto .error_stock:before {
  position: absolute;
  font-family: "infotelecom";
  content: "\e816";
  font-size: 0.8rem;
  left: 0.25rem;
  top: 0.35rem;
}
@media only screen and (min-width: 960px) {
  .ficha_producto .formulario_producto .error_stock {
    top: 0;
  }
}
.ficha_producto .formulario_producto .campo.talla .color {
  display: none;
}
@media only screen and (max-width: 1127px) {
  .ficha_producto .titulo_producto {
    z-index: 1000;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }
  .ficha_producto .posicion_sticky {
    display: block;
    height: 0;
    -webkit-box-ordinal-group: -8;
        -ms-flex-order: -9;
            order: -9;
  }
}
.ficha_producto .imagen-producto, .ficha_producto .galeria_responsive {
  position: relative;
  -webkit-box-ordinal-group: -9;
      -ms-flex-order: -10;
          order: -10;
  padding: 0;
  width: 100%;
  margin: auto;
  border-bottom: 1px solid var(--gris-bordes);
}
.ficha_producto .imagen-producto #slider_producto, .ficha_producto .galeria_responsive #slider_producto {
  min-height: 135vw;
  height: 100%;
  width: 100%;
}
.ficha_producto .imagen-producto #slider_producto .lightSlider li, .ficha_producto .galeria_responsive #slider_producto .lightSlider li {
  height: 135vw;
  width: 100%;
  background: #f7f7f7;
}
.ficha_producto .imagen-producto #slider_producto .lightSlider li img, .ficha_producto .galeria_responsive #slider_producto .lightSlider li img {
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100% !important;
  mix-blend-mode: normal;
}
.ficha_producto .imagen-producto #slider_producto .lSSlideOuter .lSPager.lSpg, .ficha_producto .galeria_responsive #slider_producto .lSSlideOuter .lSPager.lSpg {
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 2;
}
@media (min-width: 960px) {
  .ficha_producto .imagen-producto, .ficha_producto .galeria_responsive {
    padding: 0;
    width: 25rem;
    border: none;
    /*& #slider2 .lightSlider li,*/
  }
  .ficha_producto .imagen-producto #slider_producto, .ficha_producto .galeria_responsive #slider_producto {
    min-height: 33.313rem !important;
    height: auto !important;
  }
  .ficha_producto .imagen-producto #slider_producto .lightSlider li, .ficha_producto .galeria_responsive #slider_producto .lightSlider li {
    height: 33.313rem !important;
  }
}
@media (min-width: 1240px) {
  .ficha_producto .imagen-producto, .ficha_producto .galeria_responsive {
    width: 36rem;
    /*& #slider2 .lSAction,*/
  }
  .ficha_producto .imagen-producto #slider_producto, .ficha_producto .galeria_responsive #slider_producto {
    min-height: 48rem !important;
    height: auto !important;
  }
  .ficha_producto .imagen-producto #slider_producto .lightSlider li, .ficha_producto .galeria_responsive #slider_producto .lightSlider li {
    height: 48rem !important;
  }
}
@media (min-width: 1600px) {
  .ficha_producto .imagen-producto, .ficha_producto .galeria_responsive {
    width: 40rem;
    /* & #slider2 .lSAction,*/
  }
  .ficha_producto .imagen-producto #slider_producto, .ficha_producto .galeria_responsive #slider_producto {
    min-height: 53.313rem !important;
    height: auto !important;
  }
  .ficha_producto .imagen-producto #slider_producto .lightSlider li, .ficha_producto .galeria_responsive #slider_producto .lightSlider li {
    height: 53.313rem !important;
  }
}
.ficha_producto .imagen-producto img, .ficha_producto .galeria_responsive img {
  width: 100%;
}
.ficha_producto .imagen-producto .numero_fotos, .ficha_producto .galeria_responsive .numero_fotos {
  position: absolute;
  z-index: 2;
  bottom: 0.5rem;
  right: 0.5rem;
  background: rgba(255, 255, 255, 0.6);
  font-family: "Outfit SemiBold";
  color: var(--c-primary-20);
  font-size: 0.9rem;
  padding: 0.125rem;
  text-align: center;
  min-width: 4em;
}
.ficha_producto .imagen-producto .etiqueta, .ficha_producto .galeria_responsive .etiqueta {
  position: absolute;
  top: 0.5rem;
  right: 0;
  z-index: 3;
  background: var(--c-primary-20);
  color: #fff;
  padding: 0.15rem 1rem;
  font-size: 0.9rem;
  text-transform: uppercase;
  font-family: "Outfit";
}
.ficha_producto .imagen-producto .etiqueta.roja, .ficha_producto .galeria_responsive .etiqueta.roja {
  background: #E21E22;
}
.ficha_producto .galeria_responsive {
  padding-left: 0;
  padding-right: 0;
}
.ficha_producto .galeria_responsive #imageGallery:hover {
  cursor: cell;
}
.ficha_producto .caracteristicas {
  font-size: 1rem;
}
.ficha_producto .caracteristicas h3 {
  font-size: 0.8rem;
  text-transform: uppercase;
  margin-top: 2rem;
  font-family: "Outfit SemiBold";
  letter-spacing: 1px;
}
.ficha_producto .caracteristicas h3:first-of-type {
  margin-top: 0;
}
@media only screen and (min-width: 960px) {
  .ficha_producto .caracteristicas {
    font-size: 1rem;
  }
  .ficha_producto .caracteristicas h3 {
    font-size: 0.8rem;
  }
}
.ficha_producto .caracteristicas dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.ficha_producto .caracteristicas dl dt, .ficha_producto .caracteristicas dl dd {
  width: 50%;
  border-bottom: 1px solid var(--gris-bordes);
  padding: 0.125rem 0;
}
.ficha_producto .caracteristicas dl dt {
  color: #444;
}
.ficha_producto .caracteristicas dl dd {
  color: #8a8988;
}
.ficha_producto .caracteristicas.formato_faq + .formato_faq {
  padding-top: 0;
}
.ficha_producto .caracteristicas.formato_faq h3 {
  padding: 0 2.5rem 0 0;
  margin: -1px 0 0;
  line-height: 2.5rem;
  font-size: 0.9rem;
  font-family: "Outfit SemiBold";
  border: solid;
  border-width: 1px 0 0;
  border-color: var(--form-borde-input-color);
  text-transform: uppercase;
  position: relative;
}
.ficha_producto .caracteristicas.formato_faq h3 i {
  position: absolute;
  right: 0.5rem;
}
.ficha_producto .caracteristicas.formato_faq h3:first-of-type {
  border-width: 0;
}
.ficha_producto .caracteristicas.formato_faq h3:last-of-type {
  border-width: 1px 0;
}
.ficha_producto .caracteristicas.formato_faq h3:hover {
  cursor: pointer;
}
.ficha_producto .caracteristicas.formato_faq h3:before {
  content: none;
}
.ficha_producto .caracteristicas.formato_faq p {
  padding: 0 0 1rem;
  border: none;
}
.ficha_producto .caracteristicas.formato_faq p strong {
  font-family: "Outfit";
}
.ficha_producto .caracteristicas.formato_faq .plegar {
  padding: 0 0 1rem;
}
.ficha_producto .compartir {
  width: 100%;
  margin-bottom: 3rem;
  padding-top: 0;
  padding-bottom: 0;
}
@media only screen and (min-width: 960px) {
  .ficha_producto .compartir {
    padding: 1.5rem 0 0;
    margin: 0;
  }
}
@media only screen and (min-width: 1240px) {
  .ficha_producto .compartir {
    padding: 0;
  }
}
.ficha_producto .compartir span.comparte {
  font-size: 1rem;
  text-transform: uppercase;
}
.ficha_producto .compartir a {
  background: #fff;
  color: var(--c-primary-60);
  margin: 0 0.5rem 0 0;
  border-radius: 0;
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.ficha_producto .compartir a span {
  display: none;
}
.ficha_producto .compartir a:hover {
  color: var(--c-primary);
}
.ficha_producto .contacto_movil {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  background: #fff;
}
@media only screen and (max-width: 1279px) {
  .ficha_producto .contacto_movil {
    position: sticky;
    bottom: 0;
    z-index: 20;
    width: 100vw;
    -webkit-box-shadow: 0 -5px 10px rgba(var(--text-color), 0.125);
            box-shadow: 0 -5px 10px rgba(var(--text-color), 0.125);
    border-top: 1px solid var(--c-primary-20);
  }
}
@media only screen and (max-width: 1280px) {
  .ficha_producto .contacto_movil {
    margin-top: 2rem;
  }
}
.ficha_producto .contacto_movil a {
  white-space: nowrap;
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 2.5rem;
  line-height: 2.5rem;
  border-left: 1px solid;
}
.ficha_producto .contacto_movil a:hover {
  text-decoration: none;
}
@media only screen and (min-width: 1280px) {
  .ficha_producto .contacto_movil a {
    border: 1px solid;
    border-radius: 50px;
  }
  .ficha_producto .contacto_movil a:nth-child(2) {
    margin: 0 1rem;
  }
}
.ficha_producto .contacto_movil a i {
  font-size: 1.25rem;
}
.ficha_producto .contacto_movil a span {
  display: none;
}
@media only screen and (min-width: 600px) {
  .ficha_producto .contacto_movil a span {
    display: inline-block;
    font-size: 1rem;
    margin-left: 0.125rem;
  }
}
.ficha_producto .contacto_movil a.boton, .ficha_producto .contacto_movil a.boton-medio, .ficha_producto .contacto_movil a.boton-grande, .ficha_producto .contacto_movil a.boton-borde {
  font-size: 1rem;
  padding: 0 0.5rem;
  border: none;
  border-radius: 0;
}
@media only screen and (min-width: 1280px) {
  .ficha_producto .contacto_movil a.boton, .ficha_producto .contacto_movil a.boton-medio, .ficha_producto .contacto_movil a.boton-grande, .ficha_producto .contacto_movil a.boton-borde {
    border-radius: 50px;
  }
}
.ficha_producto .bloque.enlaces {
  border: none;
}
.ficha_producto .cierre {
  width: 100%;
  text-align: center;
  margin: 2rem 0;
}

@media only screen and (min-width: 960px) {
  .ficha_producto {
    padding: 3rem;
    padding-top: 1rem;
    display: grid;
    grid-template-columns: 25rem 1fr;
    grid-template-areas: "foto titulo" "foto texto" "compartir compartir";
    grid-gap: 0;
    grid-column-gap: 3rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: start;
        align-content: start;
    grid-template-rows: auto auto 6rem;
  }
  .ficha_producto .bloque {
    padding-left: 0;
    padding-right: 0;
  }
  .ficha_producto .titulo_producto {
    grid-area: titulo;
    padding-top: 0;
    padding-bottom: 0;
  }
  .ficha_producto .posicion_sticky {
    grid-area: titulo;
  }
  .ficha_producto .imagen-producto, .ficha_producto .galeria_responsive {
    grid-area: foto;
    margin-top: 0;
  }
  .ficha_producto .caracteristicas {
    grid-area: texto;
  }
  .ficha_producto .contacto_movil {
    grid-area: contactar;
    align-self: center;
  }
  .ficha_producto .compartir {
    grid-area: compartir;
    align-self: flex-start;
  }
}
@media only screen and (min-width: 1128px) and (max-width: 1239px) {
  .ficha_producto .titulo_producto, .ficha_producto .caracteristicas {
    padding-right: 3rem;
  }
  .ficha_producto .imagen-producto, .ficha_producto .galeria_responsive, .ficha_producto .compartir {
    padding-left: 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .ficha_producto {
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "foto titulo" "foto texto" "foto compartir";
    padding: 3rem calc((100% - 1200px) / 2) 4rem;
    grid-column-gap: 4rem;
  }
  .ficha_producto .titulo_producto {
    grid-area: titulo;
    align-self: center;
  }
  .ficha_producto .posicion_sticky {
    grid-area: titulo;
  }
  .ficha_producto .imagen-producto, .ficha_producto .galeria_responsive {
    grid-area: foto;
  }
  .ficha_producto .caracteristicas {
    grid-area: texto;
    padding: 3rem 0;
  }
  .ficha_producto .contacto_movil {
    grid-area: contactar;
  }
  .ficha_producto .compartir {
    grid-area: compartir;
  }
}
@media only screen and (min-width: 1440px) {
  .ficha_producto {
    padding: 3rem calc((100% - 1356px) / 2) 4rem;
  }
}
.ficha_producto .formulario_producto span.radios.colores input[type=radio]:hover + .tooltip {
  display: block !important;
  position: absolute;
  top: -1.5rem;
  background: var(--c-primary-40);
  color: #fff;
  font-size: 0.9rem;
  white-space: nowrap;
  padding: 0.125rem;
  z-index: 100;
}

@media only screen and (min-width: 1240px) {
  .ficha_producto .galeria_responsive #slider2 .lightSlider li img {
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
  }
}
/*
.ficha_producto #slider2 .lSSlideOuter .lSPager{
position: relative;
background: #0cc;
}
*/
/*
@media only screen and (min-width: 810px) {
    .ficha_producto .galeria_responsive #slider2 .lSSlideOuter {
         // ipad vertical
        @media only screen and (max-width: 1079px) { 
        padding-left: 64px !important;
        }
        // ipad horizontal
        @media only screen and (min-width: 1080px) {
            padding-left: 32px !important;
        }
        // pc
        @media only screen and (min-width: 1240px) {
            padding-left: 52px !important;
        }
    }

    // contenedor miniaturas, posición vertical forzada
    .ficha_producto .galeria_responsive #slider2 .lSSlideOuter .lSPager {
        // display: none !important;
        top: 0 !important;
        left: 0 !important;
        min-height: 100%;
        margin-top: 0 !important;
        transform: none !important; // para evitar desplazamiento horizontal en caso de muchas miniaturas
        // ipad vertical
        @media only screen and (max-width: 1079px) { 
        width: 64px !important;
        //background: #fc0;
        }
        // ipad horizontal
        @media only screen and (min-width: 1080px) {
        width: 32px !important;
        //background: #0cc;
        }
        @media only screen and (min-width: 1240px) {
        width: 52px !important;
        //background: #f60;
        }

        & li {
            margin: 0 0 .25rem 0 !important;
        }
    }
}
 */
p.precio strong {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  line-height: 1;
  font-family: "Outfit";
  font-weight: normal;
}
p.precio strong span.decimal {
  display: none;
}
p.precio strong span.decimales {
  font-size: 0.8rem;
  display: inline-block;
  font-family: "Outfit";
  font-weight: normal;
  line-height: 1;
  margin: 0.125rem;
  margin-right: 0.25rem;
}

.ficha_producto .titulo_producto h1.nombre_modelo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.ficha_producto .titulo_producto h1.nombre_modelo span {
  margin-top: 0.25rem;
  font-size: 0.9rem;
  letter-spacing: 0.5px;
}
.ficha_producto .titulo_producto h1.nombre_modelo span.modelo {
  -webkit-box-ordinal-group: -1;
      -ms-flex-order: -2;
          order: -2;
  margin: 0;
  color: var(--title-color);
}

.lightbox_producto {
  display: none;
}
.lightbox_producto.abierto {
  position: fixed;
  z-index: 1001;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-transition: all 0.5s cubic-bezier(0.25, 0, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.25, 0, 0.25, 1);
}
@media only screen and (min-width: 1240px) {
  .lightbox_producto.abierto {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.lightbox_producto.abierto, .lightbox_producto.abierto .fondo {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
}
.lightbox_producto.abierto .fondo {
  position: absolute;
  background: rgba(255, 255, 255, 0.5);
}
.lightbox_producto .titulo_bloque {
  text-align: left;
}
.lightbox_producto .textos {
  font-size: 1rem;
}
.lightbox_producto.abierto .textos {
  position: relative;
  z-index: 1003;
  width: 100vw;
  background: var(--level-3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 1.5rem;
  padding-top: calc(3rem * 2);
  will-change: auto;
  right: -100vw;
  -webkit-animation: fromRight 0.5s ease forwards;
          animation: fromRight 0.5s ease forwards;
  overflow-y: scroll;
}
.lightbox_producto.abierto .textos h3 {
  font-size: 1.25rem;
}
.lightbox_producto.abierto .textos ul li {
  margin-bottom: 0.5rem;
}
.lightbox_producto.abierto .textos ul.cuidados {
  margin: 0;
}
.lightbox_producto.abierto .textos ul.cuidados li {
  list-style-type: none;
}
.lightbox_producto.abierto .textos ul.cuidados li i {
  display: inline-block;
  margin-right: 0.5rem;
}
.lightbox_producto.abierto .textos img {
  width: 10rem;
}
@media only screen and (min-width: 600px) {
  .lightbox_producto.abierto .textos {
    padding: 3rem;
    padding-top: calc(3rem * 2);
  }
}
@media only screen and (min-width: 960px) {
  .lightbox_producto.abierto .textos {
    width: 50vw;
  }
}
@media only screen and (min-width: 1240px) {
  .lightbox_producto.abierto .textos {
    width: 36rem;
    height: 100vh;
    -ms-flex-item-align: center;
        align-self: center;
    -webkit-box-shadow: 0 0 20px 10px rgba(0, 0, 0, 0.15);
            box-shadow: 0 0 20px 10px rgba(0, 0, 0, 0.15);
  }
}
.lightbox_producto.abierto .textos table.tallas {
  border: 1px solid;
  font-size: 1rem;
  margin-bottom: 2rem;
}
.lightbox_producto.abierto .textos table.tallas th, .lightbox_producto.abierto .textos table.tallas td {
  text-align: center;
  padding: 0.125rem 0.5rem;
  font-family: "Outfit";
  font-weight: normal;
  border-top: 1px solid #ececec;
}
@media only screen and (min-width: 600px) {
  .lightbox_producto.abierto .textos table.tallas th, .lightbox_producto.abierto .textos table.tallas td {
    text-align: center;
  }
}
.lightbox_producto.abierto .textos table.tallas tr:first-child th {
  font-family: "Outfit SemiBold";
  font-weight: normal;
  border: 0;
  line-height: 1.3;
}
.lightbox_producto .cerrar {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1005;
  height: 3rem;
  padding: 0 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  will-change: auto;
  right: -100vw;
  -webkit-animation: fromRight 0.5s ease forwards;
          animation: fromRight 0.5s ease forwards;
}
@media only screen and (min-width: 960px) {
  .lightbox_producto .cerrar {
    width: 50vw;
    right: 0;
  }
}
@media only screen and (min-width: 1240px) {
  .lightbox_producto .cerrar {
    width: 36rem;
  }
}
.lightbox_producto .cerrar button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 0;
}
.lightbox_producto .cerrar button, .lightbox_producto .cerrar a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.9rem;
  font-family: "Outfit SemiBold";
  text-transform: uppercase;
  color: var(--title-color);
  cursor: pointer;
  width: 1.5rem;
  height: 1.5rem;
  position: relative;
}
.lightbox_producto .cerrar button:before, .lightbox_producto .cerrar a:before {
  position: absolute;
  font-family: "infotelecom";
  content: "\e86d";
  line-height: 1.5rem;
  font-size: 1.5rem;
}
.lightbox_producto .cerrar button span, .lightbox_producto .cerrar a span {
  display: none;
}
.lightbox_producto .cerrar button:hover, .lightbox_producto .cerrar a:hover {
  text-decoration: none;
  color: var(--title-color);
}
.lightbox_producto .cerrar button i, .lightbox_producto .cerrar a i {
  display: inline-block;
  font-size: 0.7rem;
  margin-right: 0.25rem;
}

@-webkit-keyframes fromRight {
  0% {
    right: -40vw;
  }
  100% {
    right: 0;
  }
}

@keyframes fromRight {
  0% {
    right: -40vw;
  }
  100% {
    right: 0;
  }
}
.botones .carrito, .botones .usuario {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 2rem;
  width: 2rem;
  font-family: "Outfit SemiBold";
  position: relative;
}
.botones .carrito span, .botones .usuario span {
  display: none;
}
.botones .carrito:before, .botones .usuario:before {
  font-family: "infotelecom";
  font-size: 1.6rem;
  color: var(--text-color);
}

.botones .carrito:before {
  content: "\e872";
}

.botones .usuario:before {
  position: absolute;
  bottom: 0.125rem;
  content: "\e869";
  pointer-events: none;
}

.botones .carrito {
  margin-right: 0.5rem;
}

.botones .carrito strong {
  display: none;
}
.botones .carrito strong.articulos {
  position: absolute;
  right: -0.5rem;
  top: -0.125rem;
  display: block;
  width: 1.5rem;
  line-height: 1.5rem;
  text-align: center;
  color: #fff;
  font-size: 0.9rem;
  background: var(--c-primary);
  -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
          clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
.botones .carrito span {
  display: none;
}
@media only screen and (min-width: 600px) {
  .botones .carrito span {
    font-family: "Outfit";
    line-height: 1.2;
  }
}

/*@media only screen and (min-width: 1200px) { 
    #header.fixed .botones .carrito{
        position: absolute;
        top: 5.5rem;
        z-index: 100;
    }
}*/
.carrito .titulo_bloque {
  text-align: left;
}
@media only screen and (min-width: 960px) {
  .carrito .titulo_bloque {
    padding: 0 calc((100% - 45rem) / 2);
  }
}
.carrito .titulo_bloque h1 {
  font-size: 1.56rem;
}
@media (min-width: 960px) {
  .carrito .titulo_bloque h1 {
    font-size: 1.953rem;
  }
}
.carrito .titulo_bloque h3 {
  margin-bottom: 0;
}

.carrito .productos {
  display: block;
}
.carrito .productos .ficha {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  padding: 0.5rem;
  margin-bottom: 1rem;
  background: #fff;
  border: 1px solid var(--gris-bordes);
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha {
    padding: 1rem;
  }
}
.carrito .productos .ficha .texto {
  padding: 0 0 1rem 1rem;
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha .texto {
    padding: 0 0 0 2rem;
  }
}
.carrito .productos .ficha .texto h3 {
  margin: 0.5rem 0 0;
  padding-right: 2rem;
  font-size: 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.carrito .productos .ficha .texto h3 a {
  color: inherit;
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha .texto h3 {
    font-size: 1.15rem;
  }
}
.carrito .productos .ficha .texto p {
  font-size: 0.9rem;
  line-height: 1.3;
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha .texto p {
    font-size: 1rem;
  }
}
.carrito .productos .ficha .texto p.precio {
  color: inherit;
  font-size: 1rem;
  margin: 0.25rem 0;
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha .texto p.precio {
    font-size: 1.1rem;
  }
}
.carrito .productos .ficha .texto p.precio strong.anterior {
  text-decoration: line-through;
}
.carrito .productos .ficha .texto p.precio strong.oferta {
  color: inherit;
}
.carrito .productos .ficha .foto {
  -webkit-box-ordinal-group: -1;
      -ms-flex-order: -2;
          order: -2;
  padding: 0;
  position: relative;
  border: none;
  background: transparent;
}
.carrito .productos .ficha .foto img {
  position: relative;
  width: 6rem;
  left: 0;
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha .foto img {
    width: 8rem;
  }
}
.carrito .productos .ficha.anadir .texto h3 {
  padding-right: 0;
  font-size: 1.1rem;
}
.carrito .productos .ficha.anadir .foto img {
  width: 8rem;
}
.carrito .productos .ficha a.eliminar {
  position: absolute;
  right: 0;
  top: 0;
  width: 2rem;
  height: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.carrito .productos .ficha a.eliminar span {
  display: none;
}
.carrito .productos .ficha a.eliminar:before {
  font-family: "infotelecom";
  content: "\e821";
  font-size: 1.25rem;
  color: var(--text-color);
}
@media only screen and (min-width: 960px) {
  .carrito .productos .ficha a.eliminar {
    top: 0.5rem;
    right: 0.5rem;
  }
}
.carrito .productos .ficha a.eliminar:hover:before {
  color: #DA2424;
}
@media only screen and (min-width: 960px) {
  .carrito .productos {
    padding: 0 calc((100% - 45rem) / 2);
  }
}

.carrito .cierre dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  color: var(--title-color);
}
.carrito .cierre dl dt, .carrito .cierre dl dd {
  width: 50%;
  padding: 0 0 0.5rem;
}
.carrito .cierre dl dd {
  text-align: right;
}
.carrito .cierre dl dt em {
  display: block;
  font-size: 0.8rem;
  font-style: normal;
  font-family: "Outfit Light";
}
.carrito .cierre dl dt:last-of-type, .carrito .cierre dl dd:last-of-type {
  border-top: 1px solid;
  padding-top: 0.5rem;
  font-family: "Outfit SemiBold";
}
@media only screen and (min-width: 960px) {
  .carrito .cierre {
    padding: 0 calc((100% - 45rem) / 2);
  }
}

.carrito .botones {
  width: 100%;
  margin-top: 1.5rem;
}
@media only screen and (min-width: 960px) {
  .carrito .botones {
    padding: 0 calc((100% - 45rem) / 2);
  }
}
.carrito .botones .boton, .carrito .botones .boton-medio, .carrito .botones .boton-grande, .carrito .botones .boton-borde {
  width: 100%;
  margin-bottom: 1.5rem;
}
.carrito .botones .boton:last-of-type, .carrito .botones .boton-medio:last-of-type, .carrito .botones .boton-grande:last-of-type, .carrito .botones .boton-borde:last-of-type {
  margin: 0;
}
@media only screen and (min-width: 600px) {
  .carrito .botones {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 2rem;
  }
  .carrito .botones .boton, .carrito .botones .boton-medio, .carrito .botones .boton-grande, .carrito .botones .boton-borde {
    width: calc(50% - 1rem);
    margin: 0;
  }
}

#contenido .pedido .titulo_pedido {
  width: 100%;
  margin: 0;
  padding: 1.5rem;
  text-align: center;
}
@media only screen and (min-width: 600px) {
  #contenido .pedido .titulo_pedido {
    text-align: center;
  }
}
@media only screen and (min-width: 960px) {
  #contenido .pedido .titulo_pedido {
    padding: 3rem;
    padding-bottom: 1.5rem;
  }
}
#contenido .pedido .titulo_pedido h1 {
  font-size: 1.563rem;
}
@media (min-width: 1240px) {
  #contenido .pedido .titulo_pedido h1 {
    font-size: 1.953rem;
  }
}
#contenido .pedido .titulo_pedido p {
  margin: auto;
}
@media only screen and (min-width: 1240px) {
  #contenido .pedido .titulo_bloque h2 {
    font-size: 1.56rem;
  }
}
#contenido .pedido .carrito {
  border: solid;
  border-color: var(--gris-claro);
  border-width: 0;
  background: #fff;
  padding: 1rem 1.5rem;
}
#contenido .pedido .carrito .productos .ficha .texto h3 {
  padding-right: 0;
}
@media only screen and (min-width: 600px) {
  #contenido .pedido .carrito {
    width: 32rem;
    padding: 2rem;
    margin: auto;
  }
}
@media only screen and (min-width: 600px) and (min-width: 1240px) {
  #contenido .pedido .carrito {
    margin: 0;
    background: transparent;
  }
  #contenido .pedido .carrito .titulo_bloque, #contenido .pedido .carrito .productos, #contenido .pedido .carrito .cierre {
    padding: 2rem;
    border: 1px solid var(--gris-bordes);
    border-color: var(--gris-medio);
  }
  #contenido .pedido .carrito .titulo_bloque {
    margin: 0;
    padding-bottom: 1rem;
    border-bottom: 0;
  }
  #contenido .pedido .carrito .titulo_bloque h2 {
    margin: 0;
  }
  #contenido .pedido .carrito .productos {
    border-width: 0 1px;
  }
  #contenido .pedido .carrito .cierre {
    padding-top: 0;
    border-top: 0;
  }
}
#contenido .pedido .carrito + .formulario {
  margin: 2rem auto;
  border: 1px solid var(--gris-bordes);
  border-color: var(--gris-medio);
  border-width: 1px 0 0;
  /*
  @media only screen and (min-width: 1240px) {
      margin: $padd-960 0 0; // 0;
      border-width: 1px 0 0 1px;
      padding-top: $padd-400; // iguala h2
      padding-left: $padd-400; // forma cuadrada
  }
  */
}
@media only screen and (min-width: 1240px) {
  #contenido .pedido .carrito + .formulario {
    margin: 3rem 0;
    border-width: 1px;
    width: 32rem;
    padding: 2rem;
  }
}

@media only screen and (min-width: 1240px) {
  #contenido .pedido {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1440px) {
  #contenido .pedido {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media only screen and (min-width: 1240px) {
  #contenido .pedido .carrito, #contenido .pedido .formulario {
    display: block;
    width: 50%;
  }
}
@media only screen and (min-width: 1240px) {
  #contenido .pedido .carrito, #contenido .pedido .formulario {
    padding: 3rem;
  }
  #contenido .pedido .carrito {
    padding-left: calc((50% - 32rem) / 2);
    padding-right: calc((50% - 32rem) / 2);
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1440px) {
  #contenido .pedido .carrito {
    width: 36rem;
    padding-left: 0;
    padding-right: 4rem;
  }
}
@media only screen and (min-width: 1240px) {
  #contenido .pedido .formulario {
    padding-right: calc((50% - 32rem) / 2);
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1600px) {
  #contenido .pedido .formulario {
    padding-right: calc((100% - 1356px) / 2);
  }
}
#carrito {
  display: none;
}
#carrito.abierto {
  position: fixed;
  z-index: 1001;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.5s cubic-bezier(0.25, 0, 0.25, 1);
  transition: all 0.5s cubic-bezier(0.25, 0, 0.25, 1);
}
#carrito.abierto .carrito {
  position: relative;
  z-index: 1003;
  width: 100vw;
  background: var(--level-3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 1.5rem;
  padding-top: 3rem;
  will-change: auto;
  right: -100vw;
  -webkit-animation: fromRight 0.5s ease forwards;
          animation: fromRight 0.5s ease forwards;
}
@media only screen and (min-width: 600px) {
  #carrito.abierto .carrito {
    padding: 3rem;
  }
}
@media only screen and (min-width: 960px) {
  #carrito.abierto .carrito {
    width: 50vw;
  }
}
@media only screen and (min-width: 1240px) {
  #carrito.abierto .carrito {
    width: 40vw;
  }
}
#carrito a.cerrar {
  position: absolute;
  top: 1rem;
  right: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#carrito a.cerrar i {
  display: inline-block;
  font-size: 0.7rem;
  margin-right: 0.25rem;
}

@keyframes fromRight {
  0% {
    right: -40vw;
  }
  100% {
    right: 0;
  }
}
.pedido .formulario .botones {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .pedido .formulario .botones {
    width: 28rem;
    margin: 0 auto 1.5rem;
  }
}
.pedido .formulario .botones a, .pedido .formulario .botones span.boton, .pedido .formulario .botones span.boton-medio, .pedido .formulario .botones span.boton-grande, .pedido .formulario .botones span.boton-borde {
  white-space: nowrap;
  padding: 0 1rem;
  margin: 0;
  font-size: 0.8rem;
  line-height: 2.5rem;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.pedido .formulario .botones a.boton-borde, .pedido .formulario .botones span.boton.boton-borde, .pedido .formulario .botones span.boton-borde {
  line-height: calc(2.5rem - 4px);
}
@media only screen and (min-width: 600px) {
  .pedido .formulario .botones a, .pedido .formulario .botones span.boton, .pedido .formulario .botones span.boton-medio, .pedido .formulario .botones span.boton-grande, .pedido .formulario .botones span.boton-borde {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: calc(50% - 1rem);
  }
}
.pedido .formulario .botones span.boton:hover, .pedido .formulario .botones span.boton-medio:hover, .pedido .formulario .botones span.boton-grande:hover, .pedido .formulario .botones span.boton-borde:hover {
  cursor: default;
  background: var(--button-background);
  outline-color: var(--button-background);
}
.pedido .formulario .botones span.nombre {
  line-height: 2.5rem;
}

@media only screen and (min-width: 600px) {
  .pedido .formulario .botones .boton.logout, .pedido .formulario .botones .logout.boton-medio, .pedido .formulario .botones .logout.boton-grande, .pedido .formulario .botones .logout.boton-borde {
    background-color: #fff;
    background-image: url(/static/graficos/logout.png);
    background-repeat: no-repeat;
    background-position: 1rem center;
    background-size: 1rem auto;
  }
  .pedido .formulario .botones .boton.logout:hover, .pedido .formulario .botones .logout.boton-medio:hover, .pedido .formulario .botones .logout.boton-grande:hover, .pedido .formulario .botones .logout.boton-borde:hover {
    color: var(--c-primary);
    border-color: var(--c-primary);
  }
}
.marquee {
  overflow: hidden;
  border: none;
  border-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: var(--c-primary);
  color: #fff;
}

.marquee h3 {
  height: 0rem;
  margin: 0;
  font-size: 0.9rem;
  padding: 0.5rem 3rem;
  white-space: nowrap;
  text-transform: uppercase;
  font-family: "Outfit";
  color: #fff;
}
.marquee h3 span {
  color: #fff;
  font-family: "Outfit SemiBold";
  display: inline-block;
  border: 1px solid;
  padding: 0.25rem 0.5rem;
  margin-right: 0.5rem;
}

.text-stroke-black {
  font-family: "Outfit SemiBold";
}

/*
@media (min-width: 1240px) {
    .marquee  {
        width: 1200px;
        border: none;
    }
}*/
/*@keyframes marqueeAnimation {
    100% {
        transform: translateX(-4600px);
    }
}

@media (min-width: 600px) {
    .marquee h3 {
        font-size: 1.25rem;
        padding: .5rem;
    }
}

@media (min-width: 960px) {
    .marquee h3 {
        font-size: 1.5rem;
        padding: .5rem;
    }
}*/
.logo_impresion {
  font-size: 0.9rem;
  border: solid;
  border-width: 0 0 1px;
  border-color: var(--form-borde-input-color);
  display: none;
}
@media only screen and (min-width: 768px) {
  .logo_impresion {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
    display: none;
  }
}
.logo_impresion img {
  width: 250px;
  margin-bottom: 0.5rem;
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .logo_impresion img {
    margin-bottom: 0;
  }
}

.textos.resumen {
  border: solid;
  border-width: 0 0 1px;
  border-color: var(--gris-claro);
}
@media only screen and (min-width: 960px) {
  .textos.resumen {
    padding-top: 3rem !important;
  }
  .textos.resumen .texto_columna {
    max-width: 45rem;
  }
}

.fichas_productos.resumen .titulo_bloque {
  text-align: left;
}

.fichas_productos.resumen .cierre,
.textos.datos {
  border: solid;
  border-width: 0 0 1px;
  border-color: var(--gris-claro);
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}

.textos.datos {
  width: 100%;
  font-size: 1rem;
}

@media only screen and (min-width: 960px) {
  .fichas_productos.resumen,
  .textos.datos,
  .textos.resumen,
  .logo_impresion {
    padding: 3rem calc((100% - 45rem) / 2);
  }
  .fichas_productos.resumen .titulo_bloque,
  .fichas_productos.resumen .productos,
  .fichas_productos.resumen .cierre {
    padding-left: 0;
    padding-right: 0;
  }
  .textos.resumen {
    padding-bottom: 0;
    border: none;
  }
  .textos.datos {
    padding-top: 0;
  }
}
.carrito.resumen .titulo_bloque, .carrito.resumen .productos, .carrito.resumen .cierre, .carrito.resumen .textos.datos {
  background: #fff;
  padding: 1rem;
}
@media only screen and (min-width: 600px) {
  .carrito.resumen .titulo_bloque, .carrito.resumen .productos, .carrito.resumen .cierre, .carrito.resumen .textos.datos {
    padding: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .carrito.resumen .titulo_bloque, .carrito.resumen .productos, .carrito.resumen .cierre, .carrito.resumen .textos.datos {
    padding: 2rem;
  }
}
@media only screen and (min-width: 1240px) {
  .carrito.resumen .titulo_bloque, .carrito.resumen .productos, .carrito.resumen .cierre, .carrito.resumen .textos.datos {
    padding: 3rem;
  }
}
.carrito.resumen .titulo_bloque {
  margin: 0;
  padding-bottom: 1rem;
}
.carrito.resumen .cierre {
  padding-top: 0;
}

.formularios_login {
  width: 100%;
}

.pedido .formulario,
.pedido.login .formulario,
.zona_cliente .formulario {
  background: #fff;
  padding: 1.5rem;
}
.pedido .formulario .campo,
.pedido.login .formulario .campo,
.zona_cliente .formulario .campo {
  padding: 0;
}
.pedido .formulario .campo .campo_campo,
.pedido.login .formulario .campo .campo_campo,
.zona_cliente .formulario .campo .campo_campo {
  width: 100%;
}
.pedido .formulario .titulo_grupo_campos, .pedido .formulario .campo_alt,
.pedido.login .formulario .titulo_grupo_campos,
.pedido.login .formulario .campo_alt,
.zona_cliente .formulario .titulo_grupo_campos,
.zona_cliente .formulario .campo_alt {
  padding-left: 0;
}
.pedido .formulario .obliga,
.pedido.login .formulario .obliga,
.zona_cliente .formulario .obliga {
  display: block;
  padding: 0;
  margin-bottom: 1rem;
  color: var(--text-color);
  font-size: 1rem;
}
.pedido .formulario .boton, .pedido .formulario .boton-medio, .pedido .formulario .boton-grande, .pedido .formulario .boton-borde,
.pedido.login .formulario .boton,
.zona_cliente .formulario .boton,
.zona_cliente .formulario .boton-medio,
.zona_cliente .formulario .boton-grande,
.zona_cliente .formulario .boton-borde {
  width: 100%;
  margin: 0;
}
@media only screen and (min-width: 600px) {
  .pedido .formulario,
  .pedido.login .formulario,
  .zona_cliente .formulario {
    width: 32rem;
    padding: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .pedido .formulario .boton, .pedido .formulario .boton-medio, .pedido .formulario .boton-grande, .pedido .formulario .boton-borde,
  .pedido.login .formulario .boton,
  .zona_cliente .formulario .boton,
  .zona_cliente .formulario .boton-medio,
  .zona_cliente .formulario .boton-grande,
  .zona_cliente .formulario .boton-borde {
    margin: 1rem auto;
  }
}

.pedido.login .formulario {
  border: 1px solid var(--text-color);
  background: #fff;
  border-top: 0;
  margin-top: -1px;
  padding: 1.5rem;
}
@media only screen and (min-width: 600px) {
  .pedido.login .formulario {
    border-width: 0 1px 1px;
    width: 32rem;
    margin: -2px auto 0;
    padding: 2rem;
  }
}
.pedido.login .formulario.oculto {
  display: none;
}
.pedido.login .formulario .titulo_bloque h2 {
  display: none;
}

.formulario.placeholder .campo.captcha_imagen {
  margin-bottom: 0;
}

.formulario .contrasena {
  margin-top: 1rem;
  text-align: center;
}

@media only screen and (min-width: 1240px) {
  #contenido .pedido.login .formulario {
    width: 32rem;
    padding: 2rem;
    margin: -2px auto 0;
  }
  #contenido .pedido.login .formulario.oculto {
    display: none;
  }
}
ul.seleccion_formulario {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 600px) {
  ul.seleccion_formulario {
    width: 32rem;
    margin: 0 auto;
  }
}
ul.seleccion_formulario li {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border: solid var(--text-color);
  border-width: 1px;
}
@media only screen and (min-width: 600px) {
  ul.seleccion_formulario li {
    border-width: 1px;
  }
}
ul.seleccion_formulario li + li {
  border-left: 0;
}
ul.seleccion_formulario li.activo {
  border-bottom-color: transparent;
}
ul.seleccion_formulario li.activo a {
  background: #fff;
  color: var(--title-color);
}
ul.seleccion_formulario li.activo:hover {
  cursor: default;
}
ul.seleccion_formulario li a {
  display: block;
  text-align: center;
  background: #f7f7f7;
  line-height: 2.5rem;
  color: var(--text-color);
}
@media only screen and (min-width: 960px) {
  ul.seleccion_formulario li a {
    line-height: 3rem;
  }
}
ul.seleccion_formulario li a:hover {
  text-decoration: none;
  background: #fff;
  color: var(--c-primary);
  border-top-color: var(--text-color);
  cursor: pointer;
}

.captcha {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.captcha img {
  max-width: 100%;
  height: auto !important;
}

.captcha .ayuda_captcha {
  padding-bottom: 0.5rem;
  font-size: 0.8rem;
}

.captcha .codigo {
  font-size: 1rem;
  display: block;
}

.captcha .codigo img {
  display: inline-block;
  margin: 0;
  width: 1.5rem;
}

@media only screen and (min-width: 600px) {
  .captcha img {
    margin: 0 1rem 1rem 0;
  }
}
.zona_cliente {
  position: relative;
}

.bloque.datos_cliente {
  border-bottom: 1px solid var(--gris-bordes);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
}
.bloque.datos_cliente .titulo_bloque {
  margin: 0 auto 0 0;
  width: auto;
}
.bloque.datos_cliente .titulo_bloque h2 {
  font-size: 1.5rem;
}
@media only screen and (min-width: 960px) {
  .bloque.datos_cliente {
    padding: 2rem 3rem;
  }
}
@media only screen and (min-width: 1240px) {
  .bloque.datos_cliente {
    padding: 2rem calc((100% - 56rem) / 2);
  }
}

#boton_desconectar .boton, #boton_desconectar .boton-medio, #boton_desconectar .boton-grande, #boton_desconectar .boton-borde {
  padding: 0.5rem;
  padding-left: 1.5rem;
  background-color: #fff;
  background-image: url(/static/graficos/logout.png);
  background-repeat: no-repeat;
  background-position: 0.5rem center;
  background-size: 0.75rem auto;
  font-size: 0.8rem;
}
#boton_desconectar .boton:hover, #boton_desconectar .boton-medio:hover, #boton_desconectar .boton-grande:hover, #boton_desconectar .boton-borde:hover {
  color: var(--c-primary);
  border-color: var(--c-primary);
}

.zona_cliente .formulario + .formulario {
  border-top: 2px solid var(--gris-bordes);
}
@media only screen and (min-width: 600px) {
  .zona_cliente .formulario + .formulario {
    border: 0;
  }
}

@media only screen and (min-width: 600px) {
  .zona_cliente .formulario {
    margin: 2rem auto;
  }
}
@media only screen and (min-width: 1240px) {
  .zona_cliente .formulario .titulo_bloque, .zona_cliente .formulario .grupo_campos, .zona_cliente .formulario .obliga {
    padding: 0 calc((100% - 32rem) / 2);
  }
  .zona_cliente .formulario .boton, .zona_cliente .formulario .boton-medio, .zona_cliente .formulario .boton-grande, .zona_cliente .formulario .boton-borde {
    width: 32rem;
    margin: 1rem auto;
  }
}

.zona_cliente .formulario .titulo_grupo_campos {
  font-family: "Outfit SemiBold";
  text-transform: uppercase;
  color: var(--title-color);
  font-size: 1rem;
}

.formulario.placeholder .obliga .obliga, .formulario.placeholder .obliga .obligatorio,
.zona_cliente .formulario .titulo_grupo_campos .obliga,
.zona_cliente .formulario .titulo_grupo_campos .obligatorio {
  color: var(--text-color);
}
.formulario.placeholder .obliga .obligatorio,
.zona_cliente .formulario .titulo_grupo_campos .obligatorio {
  font-size: 1rem;
}

.formulario.placeholder .obliga {
  color: var(--text-color);
  font-size: 1rem;
}

@media only screen and (min-width: 1240px) {
  .zona_cliente .formulario span.info_datos {
    max-width: 45rem;
  }
}
/* CLIENTE */
#header.centrado-logo .izquierda {
  display: none;
}

.botones.cliente {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 6.5rem;
}
@media only screen and (min-width: 960px) {
  .botones.cliente {
    width: 16rem;
  }
}

@media only screen and (min-width: 600px) {
  #header.centrado-logo .botones.cliente {
    margin-right: 2rem;
  }
}

@media only screen and (min-width: 960px) {
  #header.centrado-logo .izquierda {
    display: block;
    width: 16rem;
  }
  #header.centrado-logo .botones.cliente {
    width: 20rem;
  }
}
@media only screen and (min-width: 1240px) {
  #header.centrado-logo .botones.cliente,
  #header.centrado-logo .izquierda {
    width: 25rem;
  }
}
#cliente {
  display: none;
}

@media only screen and (min-width: 960px) {
  .botones .usuario.logged {
    display: block;
    font-size: 1rem;
    padding-left: 0;
    background-position: left center;
    width: auto;
    max-width: 12rem;
  }
}
@media only screen and (min-width: 1240px) {
  .botones .usuario.logged {
    display: none;
  }
  #cliente {
    display: block;
    font-size: 1rem;
    padding-left: 0;
    background-position: left center;
    width: auto;
    max-width: 12rem;
  }
  #cliente a {
    color: var(--text-color);
  }
}
#header.centrado-logo .botones #cliente li.activo a {
  margin-right: 0;
  display: block;
}

#cliente li.activo span,
.botones .usuario.logged span {
  display: inline-block;
  font-family: "Outfit";
  line-height: 2rem;
  cursor: pointer;
  padding-left: 2rem;
  white-space: nowrap;
  max-width: 12rem;
  overflow: hidden;
  text-overflow: ellipsis;
}

#cliente ul {
  width: auto;
  padding: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  left: -9999px;
  top: -9999px;
  z-index: 10000;
  background: #fff;
  -webkit-box-shadow: 1px 6px 10px rgba(var(--c-black-alpha), 0.6);
          box-shadow: 1px 6px 10px rgba(var(--c-black-alpha), 0.6);
}

#cliente ul li {
  margin: 0;
  position: relative;
  border-bottom: 1px solid rgba(var(--c-black-alpha), 0.2);
}

#cliente ul li:last-of-type {
  border: 0;
}

#cliente ul li a {
  display: block;
  font-family: "Outfit";
  padding: 0.25rem;
  line-height: 1.5rem;
  padding-left: 1.5rem;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 1rem auto;
  color: var(--text-color);
  white-space: nowrap;
}
#cliente ul li a:before {
  font-family: "infotelecom";
  position: absolute;
  left: 0;
}

.sitemap_seccion.cliente {
  border: none;
  background: var(--background-color);
  top: 4.5rem;
}
@media only screen and (min-width: 1240px) {
  .sitemap_seccion.cliente {
    top: 0rem;
  }
}

@media only screen and (min-width: 600px) {
  .sitemap_seccion.cliente dt a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sitemap_seccion.cliente dt a span {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    margin-right: 0.5rem;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
  }
  .sitemap_seccion.cliente dt a span:before {
    font-family: "infotelecom";
    color: inherit;
  }
}
@media only screen and (min-width: 1240px) {
  .sitemap_seccion.cliente dl {
    padding: 0.25rem 0;
  }
}
.sitemap_seccion.cliente dt a.pedidos span:before,
#cliente ul li a.pedidos:before {
  content: "\e870";
}

.sitemap_seccion.cliente dt a.fav span:before,
#cliente ul li a.fav:before {
  content: "\e80d";
}

.sitemap_seccion.cliente dt a.datos span:before,
#cliente ul li a.datos:before {
  content: "\e871";
}

.sitemap_seccion.cliente dt a.logout span:before,
#cliente ul li a.logout:before {
  content: "\e874";
}

#cliente ul li a:hover {
  color: var(--c-primary);
  text-decoration: none;
}

#cliente :hover ul {
  left: auto;
  right: 0;
  top: 2rem;
}

#cliente a:hover ul {
  left: auto;
  right: 0;
}

/*
.pedidos ul li {
    margin: 0 0 $padd-320;
}
.pedidos ul li a {
    display: block;
    padding: .5rem $padd-320;
    border: 1px solid var(--gris-bordes);
}
.pedidos ul li a span {
    display: inline-block;
    margin-left: $padd-340;
    font-family: $font-regular;
    font-size: 1rem;
    color: var(--text-color);
}
.pedidos ul li a:hover {
    text-decoration: none;
    background: rgba(var(--c-primary-light-alpha), .1);
    border-color: rgba(var(--c-primary-light-alpha), .5);
}
.pedidos ul+table {
    margin-top: $padd-960;
}


//pendiente_pago
//procesando
//completado
//cancelado
//reembolsado
//fallo
en_espera 

*/
.pedidos .estado {
  position: relative;
  padding-left: 1.75rem;
}
.pedidos .estado:before {
  position: absolute;
  left: 0.5rem;
  font-family: "infotelecom";
  content: "\e804";
  /*.icon-ok-circled*/
  font-size: 1rem;
}
@media only screen and (min-width: 960px) {
  .pedidos .estado {
    padding-left: 1.25rem;
  }
  .pedidos .estado:before {
    left: 0;
  }
}

.pedidos .estado.proceso,
.pedidos .estado.completado {
  color: #038841;
}
.pedidos .estado.proceso:before,
.pedidos .estado.completado:before {
  content: "\e804";
  /*.icon-ok-circled*/
}

.pedidos .estado.pendiente_pago,
.pedidos .estado.procesando,
.pedidos .estado.parado,
.pedidos .estado.en_espera {
  color: #216697;
}
.pedidos .estado.pendiente_pago:before,
.pedidos .estado.procesando:before,
.pedidos .estado.parado:before,
.pedidos .estado.en_espera:before {
  content: "\e816";
  /*.icon-attention*/
  font-size: 0.9rem;
}

.pedidos .estado.fallo,
.pedidos .estado.cancelado,
.pedidos .estado.reembolsado {
  color: #DA2424;
}
.pedidos .estado.fallo:before,
.pedidos .estado.cancelado:before,
.pedidos .estado.reembolsado:before {
  content: "\e807";
  /*.icon-cancel-circled*/
}

.pedidos table tbody tr {
  border: 1px solid var(--gris-bordes);
  background: #fff;
  padding: 0.5rem;
}

.pedidos table tbody tr.noborde {
  border: 0;
  background: transparent;
  height: 1rem;
}

.pedidos table tbody tr.noborde td {
  padding: 0;
}

.pedidos table td {
  font-size: 1rem;
  line-height: 1.2;
  padding: 0.5rem;
}

.pedidos table td a {
  color: var(--title-color);
}

@media only screen and (min-width: 960px) {
  .pedidos table td span {
    display: block;
  }
}
.pedidos table td .boton,
.pedidos table td .enlace-reservas a,
.enlace-reservas .pedidos table td a,
.pedidos table td .boton-medio,
.pedidos table td .boton-grande,
.pedidos table td .boton-borde,
.pedidos table td .textos p strong em,
.textos p strong .pedidos table td em,
.pedidos table td .fichas_normal a.mas,
.fichas_normal .pedidos table td a.mas {
  padding: 0.25rem 1rem;
}

.pedidos table td .boton-borde {
  outline: 1px solid;
  font-size: 0.8rem;
  line-height: 2rem;
  padding: 0 1rem;
}

@media only screen and (max-width: 959px) {
  .pedidos table thead {
    display: none;
  }
  .pedidos table tbody tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .pedidos table tbody tr td {
    width: 100%;
  }
  .pedidos table tbody tr td:not(.estado):before {
    content: attr(data-title) " ";
    display: inline-block;
    width: 6rem;
    text-transform: uppercase;
    color: var(--title-color);
    font-size: 0.9rem;
  }
  .pedidos table tbody tr td.der:before {
    content: "";
  }
}
@media only screen and (min-width: 960px) {
  .pedidos table th {
    text-align: left;
    font-family: "Outfit";
    font-weight: normal;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding-left: 0.75rem;
  }
  .pedidos table th.der {
    text-align: right;
  }
  .pedidos table tbody tr td {
    padding: 0.75rem;
  }
  .pedidos table tbody tr td.der {
    text-align: right;
  }
}
@media only screen and (min-width: 1240px) {
  .bloque.pedidos {
    padding: 3rem calc((100% - 56rem) / 2);
  }
  .bloque.pedidos h1 {
    font-size: 2.441rem;
  }
}
.fichas_productos .ficha .texto p.precio {
  position: relative;
}
.fichas_productos .ficha .texto p.precio a.favorito {
  position: absolute;
  top: -0.5rem;
  right: -0.5rem;
  z-index: 3;
}
@media only screen and (min-width: 600px) {
  .fichas_productos .ficha .texto p.precio a.favorito {
    right: 0.5rem;
  }
}
@media only screen and (min-width: 1240px) {
  .fichas_productos .ficha .texto p.precio a.favorito {
    display: none;
  }
}

a.favorito {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 2rem;
  height: 2rem;
  text-align: center;
}

a.favorito i {
  font-size: 0.9rem;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: center top;
          transform-origin: center top;
}

@media only screen and (min-width: 960px) {
  a.favorito i {
    font-size: 1.1rem;
    line-height: 1;
  }
  a.favorito:hover {
    text-decoration: none;
  }
  a.favorito:hover i {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  a.favorito.anadido:hover i {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.ficha_producto .titulo_producto a.favorito {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: auto;
  position: relative;
  padding-left: 1.5rem;
}
.ficha_producto .titulo_producto a.favorito i {
  position: absolute;
  left: 0;
}
.ficha_producto .titulo_producto a.favorito span {
  color: var(--text-color);
  font-size: 1rem;
}
@media only screen and (min-width: 960px) {
  .ficha_producto .titulo_producto a.favorito {
    padding-left: 2rem;
  }
}

@media only screen and (min-width: 1240px) {
  .fichas_productos.favoritos .ficha .texto p.precio a.favorito {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .fichas_productos.favoritos .ficha .tallas a.favorito {
    display: none;
  }
}
@media only screen and (min-width: 1240px) {
  #contenido .zona_cliente .formulario {
    padding-right: 3rem;
    padding-left: calc((50% - 32rem) / 2);
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1440px) {
  #contenido .zona_cliente .formulario {
    padding-left: calc((100% - 1356px) / 2);
  }
}
@media only screen and (min-width: 1240px) {
  #contenido .zona_cliente .formulario + .formulario {
    padding-left: 3rem;
    padding-right: calc((50% - 32rem) / 2);
  }
}
@media only screen and (min-width: 1240px) and (min-width: 1440px) {
  #contenido .zona_cliente .formulario + .formulario {
    padding-right: calc((100% - 1356px) / 2);
  }
}
.mm-spn li.usuario a {
  padding-left: 3.25rem;
  background-image: url(/static/graficos/usuario.svg);
  background-position: 1.5rem center;
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
}

.menu_cliente .titulo_bloque p {
  margin: auto;
}

.menu_cliente .sitemap_seccion.cliente {
  position: relative;
  top: 0;
  padding: 0 1.5rem 1.5rem;
}
@media only screen and (min-width: 768px) {
  .menu_cliente .sitemap_seccion.cliente {
    padding: 0 calc((100% - 45rem) / 2) 3rem !important;
  }
}
.menu_cliente .sitemap_seccion.cliente dl {
  padding: 0;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0.5rem;
}
@media only screen and (min-width: 600px) {
  .menu_cliente .sitemap_seccion.cliente dl {
    gap: 1rem;
  }
}
@media only screen and (min-width: 960px) {
  .menu_cliente .sitemap_seccion.cliente dl {
    grid-template-columns: repeat(3, 1fr);
  }
}
.menu_cliente .sitemap_seccion.cliente dt {
  margin: 0;
}
.menu_cliente .sitemap_seccion.cliente dt a {
  padding: 1rem;
  font-size: 0.9rem;
}
@media only screen and (min-width: 600px) {
  .menu_cliente .sitemap_seccion.cliente dt a {
    padding: 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.menu_cliente .sitemap_seccion.cliente dt a span {
  display: block;
  width: 1rem;
  height: 1rem;
  margin: 0 auto 0.25rem;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.menu_cliente .sitemap_seccion.cliente dt a span:before {
  font-family: "infotelecom";
}

#header.simple .derecha,
#header.submenu .derecha {
  margin-left: auto;
}
#header.simple .derecha .botones.cliente,
#header.submenu .derecha .botones.cliente {
  margin-right: 2rem;
}
@media (min-width: 960px) {
  #header.simple .derecha .botones.cliente,
  #header.submenu .derecha .botones.cliente {
    width: auto;
  }
}
@media (min-width: 1240px) {
  #header.simple .derecha .botones.cliente,
  #header.submenu .derecha .botones.cliente {
    margin-right: 0;
    margin-left: 3rem;
  }
}

@media (min-width: 1240px) {
  #header .logo_centrado_menu #nav li.ultimo,
  #header .logo_centrado_menu #nav li:last-of-type {
    margin-left: 3rem;
  }
  #header .logo_centrado_menu #menu {
    margin-left: 8rem;
    margin-right: 8rem;
  }
  #header .logo_centrado_menu .derecha {
    width: 8rem;
  }
}
@media (min-width: 1240px) {
  #header.submenu #nav li:first-of-type {
    display: inline;
  }
}
.pedido .formulario .obliga {
  margin-bottom: 0.5rem;
  color: #DA2424;
}
.pedido .formulario label {
  display: inline-block;
  font-size: 0.9rem;
  margin-bottom: 0.25rem;
}
@media (min-width: 1240px) {
  .pedido .formulario label {
    font-size: 1rem;
  }
}

.textos p,
.textos ol,
.textos ul {
  text-align: left;
}

@media only screen and (min-width: 1240px) {
  .bloque.textos {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
#footer.centrado.submenus .submenu ul.horario li:first-of-type {
  margin-bottom: 0;
}

@media only screen and (min-width: 1240px) {
  #footer.centrado.submenus .submenu ul.horario {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
  #footer.centrado.submenus .submenu ul.horario li {
    padding-right: 2rem;
  }
  #footer.centrado.submenus .submenu ul.horario li:first-of-type {
    -webkit-column-span: all;
       -moz-column-span: all;
            column-span: all;
  }
  #footer.centrado.submenus .submenu ul.horario li:first-of-type h4 {
    margin: 0;
  }
}
/*
.foto_flotada_izquierda_portada,
.foto_flotada_derecha_portada {
    &+.banner {
        margin-top: 2rem;

        @media only screen and (min-width: 1240px) {
            margin-top: 4rem;
        }
    }
}
*/
.foto_flotada_izquierda_portada .texto_columna h2 strong,
.foto_flotada_derecha_portada .texto_columna h2 strong {
  display: block;
  color: var(--c-primary);
  font-family: "Outfit";
  font-size: 1.1rem;
  margin-bottom: 0.5rem !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.bloque.foto_flotada_izquierda_portada .texto_imagen:before, .bloque.foto_flotada_izquierda_portada .texto_imagen:after,
.bloque.foto_flotada_derecha_portada .texto_imagen:before,
.bloque.foto_flotada_derecha_portada .texto_imagen:after {
  border-color: #fff;
}

@media only screen and (min-width: 960px) {
  .bloque.foto_flotada_izquierda_portada,
  .bloque.foto_flotada_derecha_portada {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media only screen and (min-width: 1240px) {
  .foto_flotada_izquierda_portada {
    padding: 4rem 0;
  }
  .foto_flotada_izquierda_portada .texto_imagen {
    padding-left: 4rem;
  }
  .foto_flotada_derecha_portada {
    padding: 4rem 0;
  }
  .foto_flotada_derecha_portada .texto_imagen {
    padding-right: 4rem;
  }
  .foto_flotada_izquierda_portada .texto_columna,
  .foto_flotada_derecha_portada .texto_columna {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1440px) {
  .foto_flotada_izquierda_portada,
  .foto_flotada_derecha_portada {
    padding: 6rem 0;
  }
}
@media only screen and (min-width: 1800px) {
  .foto_flotada_izquierda_portada .texto_imagen {
    padding-left: calc((100% - 1600px) / 2);
  }
  .foto_flotada_derecha_portada .texto_imagen {
    padding-right: calc((100% - 1600px) / 2);
  }
}
.titulo_bloque h2,
#columna .titulo_bloque h4 {
  position: relative;
  margin-bottom: 2rem;
}
.titulo_bloque h2:after,
#columna .titulo_bloque h4:after {
  content: "";
  position: absolute;
  display: block;
  width: 4rem;
  height: 1px;
  background: var(--text-color);
  bottom: -1rem;
}
@media only screen and (min-width: 960px) {
  .titulo_bloque h2,
  #columna .titulo_bloque h4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    white-space: nowrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.titulo_bloque h2 {
  display: block;
}
.titulo_bloque h2:after {
  left: 0;
}

.titulo_bloque h2:last-child {
  margin-bottom: 2rem;
}

.texto_columna p a:not(.boton):not(.boton-medio):not(.boton-grande):not(.boton-borde),
#footer address a,
#footer .redes.enlaces a,
.bloque.navegacion a,
.etiquetas_noticias a {
  display: inline-block;
  position: relative;
}
.texto_columna p a:not(.boton):not(.boton-medio):not(.boton-grande):not(.boton-borde):after,
#footer address a:after,
#footer .redes.enlaces a:after,
.bloque.navegacion a:after,
.etiquetas_noticias a:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0.125rem;
  background: var(--c-primary-light);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
}
.texto_columna p a:not(.boton):not(.boton-medio):not(.boton-grande):not(.boton-borde):hover,
#footer address a:hover,
#footer .redes.enlaces a:hover,
.bloque.navegacion a:hover,
.etiquetas_noticias a:hover {
  text-decoration: none;
  color: var(--c-primary);
}
.texto_columna p a:not(.boton):not(.boton-medio):not(.boton-grande):not(.boton-borde):hover:after,
#footer address a:hover:after,
#footer .redes.enlaces a:hover:after,
.bloque.navegacion a:hover:after,
.etiquetas_noticias a:hover:after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1);
          transform: scale(1);
  background: var(--c-primary);
}

#footer address strong img {
  display: none;
}
@media only screen and (min-width: 960px) {
  #footer address strong {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #footer address strong img {
    display: inline-block;
    width: 1rem;
    margin-right: 0.125rem;
  }
}

.descargas a:hover,
.descargas_seccion a:hover {
  text-decoration: underline;
  color: var(--c-primary);
}

.textos .texto_imagen img {
  border-radius: 0;
}

.textos .texto_imagen .caption {
  display: none;
}

@media only screen and (min-width: 960px) {
  .textos .texto_imagen {
    position: sticky;
    top: calc(4.5rem + 3rem);
  }
}
@media only screen and (min-width: 960px) and (min-width: 1240px) {
  .textos .texto_imagen {
    top: calc(5rem + 3rem);
  }
}
.fichas_normal .ficha .foto {
  padding-top: 66.66%;
}

.fichas_normal .ficha .texto {
  color: var(--c-primary-20);
}
.fichas_normal .ficha .texto + strong {
  display: block;
  margin: -0.5rem 0 0.5rem;
}

@media only screen and (min-width: 1240px) {
  #nav li.destacado {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .fichas_normal .ficha .texto.con_boton {
    padding-bottom: 6rem;
  }
  .fichas_normal .ficha .texto.con_boton .boton, .fichas_normal .ficha .texto.con_boton .boton-medio, .fichas_normal .ficha .texto.con_boton .boton-grande, .fichas_normal .ficha .texto.con_boton .boton-borde {
    position: absolute;
    bottom: 2rem;
  }
}

@media only screen and (min-width: 1240px) {
  #nav li.penultimo {
    margin-left: auto;
    margin-right: 0;
  }
  #nav li.ultimo {
    margin-left: auto;
  }
}
.fichas_catalogo .ficha {
  border-radius: 0;
  overflow: hidden;
}

.fichas_normal .ficha,
.fichas_normal .ficha.variante {
  border-radius: 0;
}

.fichas_normal .ficha.variante {
  border-width: 2px;
  border-color: var(--c-primary);
}

.mapa_grande, .mapa_medio {
  border-radius: 0;
}

.bloque.fichas_destacadas .ficha .foto {
  width: 5rem;
}
@media only screen and (min-width: 600px) {
  .bloque.fichas_destacadas .ficha {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .bloque.fichas_destacadas .ficha .foto {
    width: 4rem;
    margin: 0 1.5rem 0 0;
  }
  .bloque.fichas_destacadas .ficha .texto {
    text-align: left;
  }
}

.fenie .bloque {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #c2c1c1;
}

.fichas_testimonios {
  background-image: url(/static/graficos/fondo.png);
  background-position: center;
}

#header.centrado-logo #submenu-logo .centrar .enlaces a img,
#nav li.fenie a img {
  height: 2rem;
}

.galeria.metro {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.galeria.metro .titulo_bloque {
  text-align: center;
}
.galeria.metro .titulo_bloque h2 {
  margin-bottom: 3rem;
}
.galeria.metro .titulo_bloque h2:after {
  left: calc(50% - 2rem);
}

script + .galeria.metro {
  border-top: 1px dashed;
}

#menu.abierto li#ultimo + li {
  margin-top: 3rem;
}
#menu.abierto li#ultimo + li img {
  width: 11rem;
}

/*
.bloque.textos,
.bloque.grupo_fichas {
    margin: 0;
    // separa
    border: solid;
    border-width: 1px 0 0;
    border-color: $gris-bordes; //  var(--c-primary);// var(--form-borde-input-color);
    // decora
    position: relative;

    & .cierre {
        padding-top: $padd-340;
    }
}
    */
.separador_bloques {
  display: block;
  margin: 0;
  border: solid;
  border-width: 0 0 1px;
  border-color: #c2c1c1;
  position: relative;
}
.separador_bloques:after {
  position: absolute;
  content: "";
  z-index: 3;
  left: calc(50% - 0.75rem);
  bottom: -0.75rem;
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  background: #fff;
  border: 1px solid #c2c1c1;
  outline: 4px solid #fff;
}
.separador_bloques .cierre {
  padding-top: 1.5rem;
}

.separador_bloques.dark_theme {
  border-color: #444;
}
.separador_bloques.dark_theme:after {
  background: var(--bg-dark-theme);
  border-color: #444;
  outline-color: var(--bg-dark-theme);
}

.bloque.fichas_productos {
  border: 0;
}

#footer .redes.enlaces {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (min-width: 960px) {
  #footer .redes.enlaces {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

#footer .redes.enlaces a {
  text-transform: uppercase;
  font-size: 0.9rem;
}

@media only screen and (min-width: 960px) {
  #footer .redes.enlaces {
    margin-top: auto;
  }
}
.cierre .boton-borde,
.textos .boton-borde,
.contacto .boton-borde,
.ficha .boton-borde {
  background: transparent;
  outline: 0;
  padding: 0;
  line-height: 2rem;
  position: relative;
  color: var(--title-color);
  text-transform: none;
  font-size: 1.125rem;
  padding-bottom: 0.25rem;
}
.cierre .boton-borde:after,
.textos .boton-borde:after,
.contacto .boton-borde:after,
.ficha .boton-borde:after {
  position: absolute;
  content: "";
  display: block;
  bottom: 0;
  left: 0;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0ms;
  width: 100%;
  background: var(--title-color);
  height: 1px;
}
.cierre .boton-borde:hover,
.textos .boton-borde:hover,
.contacto .boton-borde:hover,
.ficha .boton-borde:hover {
  background: transparent;
  color: var(--c-primary-20);
}
.cierre .boton-borde:hover:after,
.textos .boton-borde:hover:after,
.contacto .boton-borde:hover:after,
.ficha .boton-borde:hover:after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1);
          transform: scale(1);
  background: var(--c-primary-light);
}

.cierre .boton-borde i {
  font-size: 0.6rem;
}

#slider2 .lslide .caption,
#slider2.clone .caption {
  background: rgba(var(--c-black-alpha), 0.5) !important;
  position: absolute;
  inset: 0;
  padding-bottom: 3rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
#slider2 .lslide .caption .texto_columna,
#slider2.clone .caption .texto_columna {
  display: block;
  padding: 0 1.5rem;
}
@media only screen and (min-width: 600px) {
  #slider2 .lslide .caption .texto_columna,
  #slider2.clone .caption .texto_columna {
    padding: 0 2rem;
  }
}
@media only screen and (min-width: 960px) {
  #slider2 .lslide .caption .texto_columna,
  #slider2.clone .caption .texto_columna {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 0 3rem;
  }
}
@media only screen and (min-width: 1440px) {
  #slider2 .lslide .caption .texto_columna,
  #slider2.clone .caption .texto_columna {
    padding: 0 calc((100% - 1356px) / 2);
  }
}
#slider2 .lslide .caption .texto_columna h2, #slider2 .lslide .caption .texto_columna h3, #slider2 .lslide .caption .texto_columna h2 a, #slider2 .lslide .caption .texto_columna h3 a, #slider2 .lslide .caption .texto_columna p, #slider2 .lslide .caption .texto_columna p a,
#slider2.clone .caption .texto_columna h2,
#slider2.clone .caption .texto_columna h3,
#slider2.clone .caption .texto_columna h2 a,
#slider2.clone .caption .texto_columna h3 a,
#slider2.clone .caption .texto_columna p,
#slider2.clone .caption .texto_columna p a {
  font-family: "Outfit";
  text-align: left;
  color: #fff;
  text-shadow: 0 0 5px rgba(var(--c-black-alpha), 0.5);
}
@media only screen and (min-width: 1240px) {
  #slider2 .lslide .caption,
  #slider2.clone .caption {
    padding-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  #slider2 .lslide .caption,
  #slider2.clone .caption {
    padding-bottom: 6rem;
  }
}

.formato_titulo_seccion {
  -webkit-box-ordinal-group: 99;
      -ms-flex-order: 98;
          order: 98;
  border-width: 0 !important;
  text-align: left;
}
@media only screen and (min-width: 1240px) {
  .formato_titulo_seccion {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}
.formato_titulo_seccion:before, .formato_titulo_seccion:after {
  content: none !important;
}
.formato_titulo_seccion .texto_columna {
  max-width: 100%;
}
.formato_titulo_seccion h1 {
  font-size: 1rem;
}
.formato_titulo_seccion h1 strong {
  display: block;
}

.banner {
  -webkit-box-ordinal-group: 100;
      -ms-flex-order: 99;
          order: 99;
}
.banner.sin_texto {
  -webkit-box-ordinal-group: initial;
      -ms-flex-order: initial;
          order: initial;
}

.seccion.contacto .bloque.textos {
  text-align: center;
  border-bottom: 1px solid #c2c1c1;
}
.seccion.contacto .bloque.textos img {
  width: 12rem;
  margin-bottom: 1rem;
  margin-top: 1.5rem;
}
.seccion.contacto .bloque.textos a {
  color: var(--text-color);
}
.seccion.contacto .bloque.textos .boton, .seccion.contacto .bloque.textos .boton-medio, .seccion.contacto .bloque.textos .boton-grande, .seccion.contacto .bloque.textos .boton-borde {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem !important;
}
@media only screen and (min-width: 960px) {
  .seccion.contacto .bloque.textos {
    width: 40%;
    border-width: 0;
    -ms-flex-item-align: stretch;
        align-self: stretch;
    padding-left: 0;
  }
}
.seccion.contacto .formulario .titulo_campo {
  padding-left: 0.25rem;
}
.seccion.contacto .formulario .obligatorio {
  position: absolute;
  left: -0.5rem;
}
.seccion.contacto .formulario .campo_alt .obligatorio {
  position: relative;
  left: 0.125rem;
}
.seccion.contacto .formulario.placeholder {
  background: #fff;
}
@media only screen and (min-width: 768px) {
  .seccion.contacto .formulario .obliga,
  .seccion.contacto .formulario .titulo_grupo_campos,
  .seccion.contacto .formulario .campo_alt {
    padding-left: 0;
  }
  .seccion.contacto .formulario.placeholder .obliga {
    padding: 0 calc((100% - 32rem) / 2);
  }
  .seccion.contacto .formulario .grupo_campos .campo .titulo_campo {
    width: 100%;
    text-align: left;
  }
  .seccion.contacto .formulario .grupo_campos .campo .campo_campo {
    width: 100%;
  }
  .seccion.contacto .formulario .boton, .seccion.contacto .formulario .boton-medio, .seccion.contacto .formulario .boton-grande, .seccion.contacto .formulario .boton-borde {
    margin-left: 0;
    width: 100%;
  }
  .seccion.contacto .formulario.placeholder .boton, .seccion.contacto .formulario.placeholder .boton-medio, .seccion.contacto .formulario.placeholder .boton-grande, .seccion.contacto .formulario.placeholder .boton-borde {
    width: 100%;
    max-width: 32rem;
    margin: 1rem auto 1.5rem;
  }
  .seccion.contacto .formulario span.info_datos {
    max-width: 100%;
    margin: 0 auto;
  }
  .seccion.contacto .formulario .error {
    width: 100%;
    padding-left: 1.25rem;
    margin-top: 0.25rem;
    font-size: 1rem;
    line-height: 1.2;
  }
  .seccion.contacto .formulario .error:before {
    left: 0;
  }
}
@media only screen and (min-width: 960px) {
  .seccion.contacto {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 3rem;
  }
  .seccion.contacto .bloque.textos,
  .seccion.contacto .formulario {
    width: 100%;
  }
  .seccion.contacto .bloque.textos {
    -ms-flex-item-align: start;
        align-self: flex-start;
    padding-bottom: 3rem;
    margin-bottom: 3rem;
  }
  .seccion.contacto .bloque.textos:after {
    content: none;
  }
  .seccion.contacto .mapa_grande, .seccion.contacto .mapa_medio {
    margin-bottom: 3rem;
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .seccion.contacto .formulario {
    grid-row: span 2;
    padding-bottom: 4rem;
  }
  .seccion.contacto .formulario.placeholder {
    border-left: 1px solid #c2c1c1;
  }
}
@media only screen and (min-width: 960px) and (max-width: 1239px) {
  .seccion.contacto .formulario.placeholder {
    padding-right: 0;
  }
}
@media only screen and (min-width: 1240px) {
  .seccion.contacto .formulario {
    padding-left: 4rem;
    padding-right: 4rem;
  }
  .seccion.contacto .formulario .grupo_campos .campo .campo_campo,
  .seccion.contacto .formulario .boton,
  .seccion.contacto .formulario .boton-medio,
  .seccion.contacto .formulario .boton-grande,
  .seccion.contacto .formulario .boton-borde {
    width: 32rem;
  }
}
@media only screen and (min-width: 1440px) {
  .seccion.contacto .formulario {
    padding-left: 6rem;
  }
}

.formulario.placeholder .obliga {
  display: none;
}

.formulario span.info_datos {
  display: none;
  height: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.formulario span.info_datos.activo {
  display: block;
  height: auto;
}

.portada_tienda {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.portada_tienda .fichas_catalogo .ficha .texto {
  height: 50vh;
}
@media only screen and (min-width: 960px) {
  .portada_tienda .fichas_catalogo .ficha .texto {
    height: 100vh;
  }
  .portada_tienda .fichas_catalogo .ficha .texto a.boton, .portada_tienda .fichas_catalogo .ficha .texto a.boton-medio, .portada_tienda .fichas_catalogo .ficha .texto a.boton-grande, .portada_tienda .fichas_catalogo .ficha .texto a.boton-borde {
    margin: 3rem auto auto;
  }
}

.portada_tienda .textos {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.portada_tienda .textos .texto_columna {
  max-width: 100%;
}
.portada_tienda .textos h1 {
  color: var(--title-color);
  font-size: 1rem;
  margin: 0;
  max-width: 100%;
}
.portada_tienda .textos h1 strong {
  font-family: "Outfit";
  display: block;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 1px;
  padding-bottom: 0.25rem;
}

/* no añadir en exportación final, está en inline.css
@font-face {
  font-family: 'infotelecom';
  src: url('/static/fonts/infotelecom.woff2?98110325') format('woff2'),
       url('/static/fonts/infotelecom.woff?98110325') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
*/
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'infotelecom';
    src: url('../font/infotelecom.svg?98110325#infotelecom') format('svg');
  }
}
*/
[class^=icon-]:before, [class*=" icon-"]:before {
  font-family: "infotelecom";
  font-style: normal;
  font-weight: normal;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap 
  line-height: 1em; */
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed 
  margin-left: .2em; */
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.icon-th-large:before {
  content: "\e800";
} /* '' */
.icon-video:before {
  content: "\e801";
} /* '' */
.icon-th-list:before {
  content: "\e802";
} /* '' */
.icon-ok:before {
  content: "\e803";
} /* '' */
.icon-ok-circled:before {
  content: "\e804";
} /* '' */
.icon-ok-circled2:before {
  content: "\e805";
} /* '' */
.icon-cancel:before {
  content: "\e806";
} /* '' */
.icon-cancel-circled:before {
  content: "\e807";
} /* '' */
.icon-cancel-circled2:before {
  content: "\e808";
} /* '' */
.icon-plus-circled:before {
  content: "\e809";
} /* '' */
.icon-eye:before {
  content: "\e80a";
} /* '' */
.icon-eye-off:before {
  content: "\e80b";
} /* '' */
.icon-heart:before {
  content: "\e80c";
} /* '' */
.icon-heart-empty:before {
  content: "\e80d";
} /* '' */
.icon-star:before {
  content: "\e80e";
} /* '' */
.icon-star-empty:before {
  content: "\e80f";
} /* '' */
.icon-star-half:before {
  content: "\e810";
} /* '' */
.icon-user:before {
  content: "\e811";
} /* '' */
.icon-users:before {
  content: "\e812";
} /* '' */
.icon-thumbs-up:before {
  content: "\e813";
} /* '' */
.icon-thumbs-down:before {
  content: "\e814";
} /* '' */
.icon-location:before {
  content: "\e815";
} /* '' */
.icon-attention:before {
  content: "\e816";
} /* '' */
.icon-attention-circled:before {
  content: "\e817";
} /* '' */
.icon-comment:before {
  content: "\e818";
} /* '' */
.icon-chat:before {
  content: "\e819";
} /* '' */
.icon-calendar:before {
  content: "\e81a";
} /* '' */
.icon-down-open:before {
  content: "\e81b";
} /* '' */
.icon-left-open:before {
  content: "\e81c";
} /* '' */
.icon-right-open:before {
  content: "\e81d";
} /* '' */
.icon-up-open:before {
  content: "\e81e";
} /* '' */
.icon-zoom-in:before {
  content: "\e81f";
} /* '' */
.icon-phone:before {
  content: "\e820";
} /* '' */
.icon-trash-empty:before {
  content: "\e821";
} /* '' */
.icon-cog:before {
  content: "\e822";
} /* '' */
.icon-off:before {
  content: "\e823";
} /* '' */
.icon-mail:before {
  content: "\e824";
} /* '' */
.icon-search:before {
  content: "\e825";
} /* '' */
.icon-blogger:before {
  content: "\e826";
} /* '' */
.icon-export:before {
  content: "\e827";
} /* '' */
.icon-check:before {
  content: "\e828";
} /* '' */
.icon-lupa:before {
  content: "\e829";
} /* '' */
.icon-compartir:before {
  content: "\e82c";
} /* '' */
.icon-categoria:before {
  content: "\e82d";
} /* '' */
.icon-discord:before {
  content: "\e860";
} /* '' */
.icon-tiktok:before {
  content: "\e861";
} /* '' */
.icon-enlace:before {
  content: "\e863";
} /* '' */
.icon-otros:before {
  content: "\e864";
} /* '' */
.icon-web:before {
  content: "\e865";
} /* '' */
.icon-filtros:before {
  content: "\e868";
} /* '' */
.icon-usuario:before {
  content: "\e869";
} /* '' */
.icon-calculadora:before {
  content: "\e86a";
} /* '' */
.icon-mapa:before {
  content: "\e86b";
} /* '' */
.icon-camara:before {
  content: "\e86c";
} /* '' */
.icon-cerrar:before {
  content: "\e86d";
} /* '' */
.icon-impresora:before {
  content: "\e86e";
} /* '' */
.icon-envio:before {
  content: "\e870";
} /* '' */
.icon-usuario-2:before {
  content: "\e871";
} /* '' */
.icon-cesta-compra:before {
  content: "\e872";
} /* '' */
.icon-cinta-metrica:before {
  content: "\e873";
} /* '' */
.icon-logout:before {
  content: "\e874";
} /* '' */
.icon-zona:before {
  content: "\e876";
} /* '' */
.icon-boligrafo:before {
  content: "\e87b";
} /* '' */
.icon-editar:before {
  content: "\e87c";
} /* '' */
.icon-guardar:before {
  content: "\e87d";
} /* '' */
.icon-descripcion:before {
  content: "\e87e";
} /* '' */
.icon-contratar:before {
  content: "\e87f";
} /* '' */
.icon-descuento:before {
  content: "\e880";
} /* '' */
.icon-precio:before {
  content: "\e881";
} /* '' */
.icon-horario:before {
  content: "\e882";
} /* '' */
.icon-informacion:before {
  content: "\e883";
} /* '' */
.icon-ordenar:before {
  content: "\e884";
} /* '' */
.icon-orden-ascendente:before {
  content: "\e885";
} /* '' */
.icon-altavoz:before {
  content: "\e886";
} /* '' */
.icon-ahorro:before {
  content: "\e887";
} /* '' */
.icon-carrito-de-compras:before {
  content: "\e888";
} /* '' */
.icon-youtube:before {
  content: "\e88b";
} /* '' */
.icon-bluesky:before {
  content: "\e88c";
} /* '' */
.icon-no-lavar:before {
  content: "\e88d";
} /* '' */
.icon-no-usar-lejia:before {
  content: "\e88e";
} /* '' */
.icon-no-planchar:before {
  content: "\e88f";
} /* '' */
.icon-no-lavar-en-seco:before {
  content: "\e890";
} /* '' */
.icon-no-usar-secadora:before {
  content: "\e891";
} /* '' */
.icon-move:before {
  content: "\f047";
} /* '' */
.icon-check-empty:before {
  content: "\f096";
} /* '' */
.icon-twitter:before {
  content: "\f099";
  font-size: 1.1em;
} /* '' */
.icon-facebook:before {
  content: "\f09a";
} /* '' */
.icon-rss:before {
  content: "\f09e";
} /* '' */
.icon-certificate:before {
  content: "\f0a3";
} /* '' */
.icon-menu:before {
  content: "\f0c9";
} /* '' */
.icon-mail-alt:before {
  content: "\f0e0";
} /* '' */
.icon-linkedin:before {
  content: "\f0e1";
} /* '' */
.icon-comment-empty:before {
  content: "\f0e5";
} /* '' */
.icon-chat-empty:before {
  content: "\f0e6";
} /* '' */
.icon-sitemap:before {
  content: "\f0e8";
} /* '' */
.icon-doc-text:before {
  content: "\f0f6";
} /* '' */
.icon-plus-squared:before {
  content: "\f0fe";
} /* '' */
.icon-angle-double-left:before {
  content: "\f100";
} /* '' */
.icon-angle-double-right:before {
  content: "\f101";
} /* '' */
.icon-angle-double-up:before {
  content: "\f102";
} /* '' */
.icon-angle-double-down:before {
  content: "\f103";
} /* '' */
.icon-mobile:before {
  content: "\f10b";
} /* '' */
.icon-circle-empty:before {
  content: "\f10c";
} /* '' */
.icon-quote-left:before {
  content: "\f10d";
} /* '' */
.icon-quote-right:before {
  content: "\f10e";
} /* '' */
.icon-code:before {
  content: "\f121";
} /* '' */
.icon-star-half-alt:before {
  content: "\f123";
} /* '' */
.icon-calendar-empty:before {
  content: "\f133";
} /* '' */
.icon-angle-circled-left:before {
  content: "\f137";
} /* '' */
.icon-angle-circled-right:before {
  content: "\f138";
} /* '' */
.icon-angle-circled-up:before {
  content: "\f139";
} /* '' */
.icon-angle-circled-down:before {
  content: "\f13a";
} /* '' */
.icon-rss-squared:before {
  content: "\f143";
} /* '' */
.icon-ok-squared:before {
  content: "\f14a";
} /* '' */
.icon-doc-text-inv:before {
  content: "\f15c";
} /* '' */
.icon-thumbs-up-alt:before {
  content: "\f164";
} /* '' */
.icon-thumbs-down-alt:before {
  content: "\f165";
} /* '' */
.icon-youtube-o:before {
  content: "\f167";
} /* '' */
.icon-instagram:before {
  content: "\f16d";
} /* '' */
.icon-tumblr:before {
  content: "\f173";
} /* '' */
.icon-plus-squared-alt:before {
  content: "\f196";
} /* '' */
.icon-wordpress:before {
  content: "\f19a";
} /* '' */
.icon-file-pdf:before {
  content: "\f1c1";
} /* '' */
.icon-file-word:before {
  content: "\f1c2";
} /* '' */
.icon-file-excel:before {
  content: "\f1c3";
} /* '' */
.icon-file-powerpoint:before {
  content: "\f1c4";
} /* '' */
.icon-file-image:before {
  content: "\f1c5";
} /* '' */
.icon-file-archive:before {
  content: "\f1c6";
} /* '' */
.icon-file-audio:before {
  content: "\f1c7";
} /* '' */
.icon-file-video:before {
  content: "\f1c8";
} /* '' */
.icon-file-code:before {
  content: "\f1c9";
} /* '' */
.icon-trash:before {
  content: "\f1f8";
} /* '' */
.icon-street-view:before {
  content: "\f21d";
} /* '' */
.icon-pinterest:before {
  content: "\f231";
} /* '' */
.icon-whatsapp:before {
  content: "\f232";
} /* '' */
.icon-user-plus:before {
  content: "\f234";
} /* '' */
.icon-user-times:before {
  content: "\f235";
} /* '' */
.icon-vimeo:before {
  content: "\f27d";
} /* '' */
.progressive {
  position: relative;
  display: block;
  overflow: hidden;
  outline: none;
}

.progressive img {
  display: block;
  width: 100%;
  max-width: none;
  height: inherit;
  border: 0 none;
}

.progressive img.preview {
  -webkit-filter: blur(2vw);
          filter: blur(2vw);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.progressive img.reveal {
  position: absolute;
  left: 0;
  top: 0;
  will-change: transform, opacity;
  -webkit-animation: progressiveReveal 1s ease-out;
          animation: progressiveReveal 1s ease-out;
}

@-webkit-keyframes progressiveReveal {
  0% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}

@keyframes progressiveReveal {
  0% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
/*! lightgallery - v1.2.14 - 2016-01-18

* http://sachinchoolur.github.io/lightGallery/

* Copyright (c) 2016 Sachin N; Licensed Apache 2.0 */
@font-face {
  font-family: "lg";
  src: url("/static/lightgallery/lg.eot?n1z373");
  src: url("/static/lightgallery/lg.eot?#iefixn1z373") format("embedded-opentype"), url("/static/lightgallery/lg.woff?n1z373") format("woff"), url("/static/lightgallery/lg.ttf?n1z373") format("truetype"), url("/static/lightgallery/lg.svg?n1z373#lg") format("svg");
  font-weight: normal;
  font-style: normal;
}
.lg-icon {
  font-family: "lg";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lg-actions .lg-next,
.lg-actions .lg-prev {
  background-color: rgba(0, 0, 0, 0.45);
  border-radius: 2px;
  color: #999;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 1080;
}

.lg-actions .lg-next.disabled,
.lg-actions .lg-prev.disabled {
  pointer-events: none;
  opacity: 0.5;
}

.lg-actions .lg-next:hover,
.lg-actions .lg-prev:hover {
  color: #FFF;
}

.lg-actions .lg-next {
  right: 20px;
}

.lg-actions .lg-next:before {
  content: "\e095";
}

.lg-actions .lg-prev {
  left: 20px;
}

.lg-actions .lg-prev:after {
  content: "\e094";
}

@-webkit-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
.lg-outer.lg-right-end .lg-object {
  -webkit-animation: lg-right-end 0.3s;
          animation: lg-right-end 0.3s;
  position: relative;
}

.lg-outer.lg-left-end .lg-object {
  -webkit-animation: lg-left-end 0.3s;
          animation: lg-left-end 0.3s;
  position: relative;
}

.lg-toolbar {
  z-index: 1080;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.45);
}

.lg-toolbar .lg-icon {
  color: #999;
  cursor: pointer;
  float: right;
  font-size: 24px;
  height: 47px;
  line-height: 27px;
  padding: 10px 0;
  text-align: center;
  width: 50px;
  text-decoration: none !important;
  outline: medium none;
}

.lg-toolbar .lg-icon:hover {
  color: #FFF;
}

.lg-toolbar .lg-close:after {
  content: "\e070";
}

.lg-toolbar .lg-download:after {
  content: "\e0f2";
}

.lg-sub-html {
  background-color: rgba(0, 0, 0, 0.45);
  bottom: 0;
  color: #EEE;
  font-size: 16px;
  left: 0;
  padding: 10px 40px;
  position: fixed;
  right: 0;
  text-align: center;
  z-index: 1080;
}

.lg-sub-html h4 {
  margin: 0;
  font-size: 13px;
  font-weight: bold;
}

.lg-sub-html p {
  font-size: 12px;
  margin: 5px 0 0;
}

#lg-counter {
  color: #999;
  display: inline-block;
  font-size: 16px;
  padding-left: 20px;
  padding-top: 12px;
  vertical-align: middle;
}

.lg-toolbar,
.lg-prev,
.lg-next {
  opacity: 1;
  -webkit-transition: opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, -webkit-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, -webkit-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, -webkit-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-hide-items .lg-prev {
  opacity: 0;
  -webkit-transform: translate3d(-10px, 0, 0);
          transform: translate3d(-10px, 0, 0);
}

.lg-hide-items .lg-next {
  opacity: 0;
  -webkit-transform: translate3d(10px, 0, 0);
          transform: translate3d(10px, 0, 0);
}

.lg-hide-items .lg-toolbar {
  opacity: 0;
  -webkit-transform: translate3d(0, -10px, 0);
          transform: translate3d(0, -10px, 0);
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object {
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
          transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
  -webkit-transition: opacity 250ms, -webkit-transform 250ms ease 0s !important;
  transition: opacity 250ms, -webkit-transform 250ms ease 0s !important;
  transition: transform 250ms ease 0s, opacity 250ms !important;
  transition: transform 250ms ease 0s, opacity 250ms, -webkit-transform 250ms ease 0s !important;
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object {
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  opacity: 1;
}

.lg-outer .lg-thumb-outer {
  background-color: #0D0A0A;
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 1080;
  max-height: 350px;
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0);
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  cursor: -webkit-grab;
  cursor: grab;
}

.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
  -webkit-transition-duration: 0s !important;
          transition-duration: 0s !important;
}

.lg-outer.lg-thumb-open .lg-thumb-outer {
  -webkit-transform: translate3d(0, 0%, 0);
          transform: translate3d(0, 0%, 0);
}

.lg-outer .lg-thumb {
  padding: 10px 0;
  height: 100%;
  margin-bottom: -5px;
}

.lg-outer .lg-thumb-item {
  border-radius: 5px;
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border: 2px solid #FFF;
  border-radius: 4px;
  margin-bottom: 5px;
}

@media (min-width: 1025px) {
  .lg-outer .lg-thumb-item {
    -webkit-transition: border-color 0.25s ease;
    transition: border-color 0.25s ease;
  }
}
.lg-outer .lg-thumb-item.active,
.lg-outer .lg-thumb-item:hover {
  border-color: #a90707;
}

.lg-outer .lg-thumb-item img {
  width: 100%;
  height: 100%;
}

.lg-outer.lg-has-thumb .lg-item {
  padding-bottom: 120px;
}

.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0;
}

.lg-outer.lg-pull-caption-up .lg-sub-html {
  -webkit-transition: bottom 0.25s ease;
  transition: bottom 0.25s ease;
}

.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html {
  bottom: 100px;
}

.lg-outer .lg-toogle-thumb {
  background-color: #0D0A0A;
  border-radius: 2px 2px 0 0;
  color: #999;
  cursor: pointer;
  font-size: 24px;
  height: 39px;
  line-height: 27px;
  padding: 5px 0;
  position: absolute;
  right: 20px;
  text-align: center;
  top: -39px;
  width: 50px;
}

.lg-outer .lg-toogle-thumb:after {
  content: "\e1ff";
}

.lg-outer .lg-toogle-thumb:hover {
  color: #FFF;
}

.lg-outer .lg-video-cont {
  display: inline-block;
  vertical-align: middle;
  max-width: 1140px;
  max-height: 100%;
  width: 100%;
  padding: 0 5px;
}

.lg-outer .lg-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative;
}

.lg-outer .lg-video .lg-object {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.lg-outer .lg-video .lg-video-play {
  width: 84px;
  height: 59px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -42px;
  margin-top: -30px;
  z-index: 1080;
  cursor: pointer;
}

.lg-outer .lg-has-vimeo .lg-video-play {
  background: url("/static/lightgallery/vimeo-play.png") no-repeat scroll 0 0 transparent;
}

.lg-outer .lg-has-vimeo:hover .lg-video-play {
  background: url("/static/lightgallery/vimeo-play.png") no-repeat scroll 0 -58px transparent;
}

.lg-outer .lg-has-html5 .lg-video-play {
  background: transparent url("/static/lightgallery/video-play.png") no-repeat scroll 0 0;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  width: 64px;
  opacity: 0.8;
}

.lg-outer .lg-has-html5:hover .lg-video-play {
  opacity: 1;
}

.lg-outer .lg-has-youtube .lg-video-play {
  background: url("/static/lightgallery/youtube-play.png") no-repeat scroll 0 0 transparent;
}

.lg-outer .lg-has-youtube:hover .lg-video-play {
  background: url("/static/lightgallery/youtube-play.png") no-repeat scroll 0 -60px transparent;
}

.lg-outer .lg-video-object {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

.lg-outer .lg-has-video .lg-video-object {
  visibility: hidden;
}

.lg-outer .lg-has-video.lg-video-palying .lg-object,
.lg-outer .lg-has-video.lg-video-palying .lg-video-play {
  display: none;
}

.lg-outer .lg-has-video.lg-video-palying .lg-video-object {
  visibility: visible;
}

.lg-progress-bar {
  background-color: #333;
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1080;
  opacity: 0;
  -webkit-transition: opacity 0.08s ease 0s;
  transition: opacity 0.08s ease 0s;
}

.lg-progress-bar .lg-progress {
  background-color: #a90707;
  height: 5px;
  width: 0;
}

.lg-progress-bar.lg-start .lg-progress {
  width: 100%;
}

.lg-show-autoplay .lg-progress-bar {
  opacity: 1;
}

.lg-autoplay-button:after {
  content: "\e01d";
}

.lg-show-autoplay .lg-autoplay-button:after {
  content: "\e01a";
}

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap,
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transition: -webkit-transform 0.3s ease 0s;
  transition: -webkit-transform 0.3s ease 0s;
  transition: transform 0.3s ease 0s;
  transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transition: opacity 0.15s, -webkit-transform 0.3s ease 0s !important;
  transition: opacity 0.15s, -webkit-transform 0.3s ease 0s !important;
  transition: transform 0.3s ease 0s, opacity 0.15s !important;
  transition: transform 0.3s ease 0s, opacity 0.15s, -webkit-transform 0.3s ease 0s !important;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

#lg-zoom-in:after {
  content: "\e311";
}

#lg-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}

#lg-zoom-out:after {
  content: "\e312";
}

.lg-zoomed #lg-zoom-out {
  opacity: 1;
  pointer-events: auto;
}

.lg-outer .lg-pager-outer {
  bottom: 60px;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: 1080;
  height: 10px;
}

.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
  overflow: visible;
}

.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px;
}

.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
  -webkit-box-shadow: 0 0 0 2px white inset;
          box-shadow: 0 0 0 2px white inset;
}

.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #FFF;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  -webkit-transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  -webkit-transform: translate3d(0, 5px, 0);
          transform: translate3d(0, 5px, 0);
}

.lg-outer .lg-pager-thumb-cont img {
  width: 100%;
  height: 100%;
}

.lg-outer .lg-pager {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  -webkit-box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
          box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
  display: block;
  height: 12px;
  -webkit-transition: -webkit-box-shadow 0.3s ease 0s;
  transition: -webkit-box-shadow 0.3s ease 0s;
  transition: box-shadow 0.3s ease 0s;
  transition: box-shadow 0.3s ease 0s, -webkit-box-shadow 0.3s ease 0s;
  width: 12px;
}

.lg-outer .lg-pager:hover,
.lg-outer .lg-pager:focus {
  -webkit-box-shadow: 0 0 0 8px white inset;
          box-shadow: 0 0 0 8px white inset;
}

.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

.lg-fullscreen:after {
  content: "\e20c";
}

.lg-fullscreen-on .lg-fullscreen:after {
  content: "\e20d";
}

.group {
  *zoom: 1;
}

.group:before,
.group:after {
  display: table;
  content: "";
  line-height: 0;
}

.group:after {
  clear: both;
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lg-outer.lg-visible {
  opacity: 1;
}

.lg-outer.lg-css3 .lg-item.lg-prev-slide,
.lg-outer.lg-css3 .lg-item.lg-next-slide,
.lg-outer.lg-css3 .lg-item.lg-current {
  -webkit-transition-duration: inherit !important;
          transition-duration: inherit !important;
  -webkit-transition-timing-function: inherit !important;
          transition-timing-function: inherit !important;
}

.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide,
.lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide,
.lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
          transition-duration: 0s !important;
  opacity: 1;
}

.lg-outer.lg-grab img.lg-object {
  cursor: -webkit-grab;
  cursor: grab;
}

.lg-outer.lg-grabbing img.lg-object {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.lg-outer .lg {
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  max-height: 100%;
}

.lg-outer .lg-inner {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
}

.lg-outer .lg-item {
  background: url("/static/lightgallery/loading.gif") no-repeat scroll center center transparent;
  display: none !important;
}

.lg-outer.lg-css3 .lg-prev-slide,
.lg-outer.lg-css3 .lg-current,
.lg-outer.lg-css3 .lg-next-slide {
  display: inline-block !important;
}

.lg-outer.lg-css .lg-current {
  display: inline-block !important;
}

.lg-outer .lg-item,
.lg-outer .lg-img-wrap {
  display: inline-block;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
}

.lg-outer .lg-item:before,
.lg-outer .lg-img-wrap:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

.lg-outer .lg-img-wrap {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 5px;
}

.lg-outer .lg-item.lg-complete {
  background-image: none;
}

.lg-outer .lg-item.lg-current {
  z-index: 1060;
}

.lg-outer .lg-image {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto !important;
  height: auto !important;
}

.lg-outer.lg-show-after-load .lg-item .lg-object,
.lg-outer.lg-show-after-load .lg-item .lg-video-play {
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object,
.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play {
  opacity: 1;
}

.lg-outer .lg-empty-html {
  display: none;
}

.lg-outer.lg-hide-download #lg-download {
  display: none;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-backdrop.in {
  opacity: 1;
}

.lg-css3.lg-no-trans .lg-prev-slide,
.lg-css3.lg-no-trans .lg-next-slide,
.lg-css3.lg-no-trans .lg-current {
  -webkit-transition: none 0s ease 0s !important;
  transition: none 0s ease 0s !important;
}

.lg-css3.lg-use-css3 .lg-item {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.lg-css3.lg-use-left .lg-item {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.lg-css3.lg-fade .lg-item {
  opacity: 0;
}

.lg-css3.lg-fade .lg-item.lg-current {
  opacity: 1;
}

.lg-css3.lg-fade .lg-item.lg-prev-slide,
.lg-css3.lg-fade .lg-item.lg-next-slide,
.lg-css3.lg-fade .lg-item.lg-current {
  -webkit-transition: opacity 0.1s ease 0s;
  transition: opacity 0.1s ease 0s;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
  -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
  -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide,
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide,
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transition: opacity 0.1s ease 0s, -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: opacity 0.1s ease 0s, -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s, -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-css3.lg-slide.lg-use-left .lg-item {
  opacity: 0;
  position: absolute;
  left: 0;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide {
  left: -100%;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide {
  left: 100%;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
  left: 0;
  opacity: 1;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide,
.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide,
.lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
  -webkit-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}

@media only screen and (max-width: 767px) {
  .lg-has-iframe {
    height: 80vh;
  }
  .lg-has-iframe .lg-video {
    top: 0;
    padding-bottom: 80vh;
  }
}
@media only screen and (min-width: 1600px) {
  .lg-has-iframe {
    max-width: 1600px !important;
  }
}
/** /!!! core css Should not edit !!!/**/
.lSSlideOuter {
  overflow: hidden;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.lightSlider:before,
.lightSlider:after {
  content: " ";
  display: table;
}

.lightSlider {
  overflow: hidden;
}

.lSSlideWrapper {
  max-width: 100%;
  overflow: hidden;
  position: relative;
}

.lSSlideWrapper ul {
  margin-bottom: 0;
}

.lSSlideWrapper > .lightSlider:after {
  clear: both;
}

.lSSlideWrapper .lSSlide {
  -webkit-transform: translate(0px, 0px);
          transform: translate(0px, 0px);
  -webkit-transition: all 1s;
  transition: all 1s;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
  -webkit-transition-duration: inherit;
          transition-duration: inherit;
  -webkit-transition-timing-function: inherit;
          transition-timing-function: inherit;
}

.lSSlideWrapper .lSFade {
  position: relative;
}

.lSSlideWrapper .lSFade > * {
  position: absolute !important;
  top: 0;
  left: 0;
  z-index: 9;
  margin-right: 0;
  width: 100%;
}

.lSSlideWrapper.usingCss .lSFade > * {
  opacity: 0;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-duration: inherit;
          transition-duration: inherit;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-timing-function: inherit;
          transition-timing-function: inherit;
}

.lSSlideWrapper .lSFade > *.active {
  z-index: 10;
}

.lSSlideWrapper.usingCss .lSFade > *.active {
  opacity: 1;
}

/** /!!! End of core css Should not edit !!!/**/
.lSSlideOuter .lSPager.lSpg {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 0 1rem;
  gap: 0;
}

.lSSlideOuter .lSPager.lSpg > li {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.lSSlideOuter .lSPager.lSpg > li a {
  border-radius: 0;
  display: inline-block;
  overflow: hidden;
  text-indent: -999em;
  position: relative;
  z-index: 99;
  -webkit-transition: all 0.5s linear 0s;
  transition: all 0.5s linear 0s;
  margin: auto;
}

.lSSlideOuter .media {
  opacity: 0.8;
}

.lSSlideOuter .media.active {
  opacity: 1;
}

/* End of pager */
/** Gallery */
.lSSlideOuter .lSPager.lSGallery {
  list-style: none outside none;
  padding-left: 0;
  margin: 0;
  overflow: hidden;
  -webkit-transform: translate3d(0px, 0px, 0px);
          transform: translate3d(0px, 0px, 0px);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.lSSlideOuter .lSPager.lSGallery li {
  opacity: 0.7;
  overflow: hidden;
  -webkit-transition: opacity 0.35s linear 0s;
  transition: opacity 0.35s linear 0s;
}

.lSSlideOuter .lSPager.lSGallery li.active,
.lSSlideOuter .lSPager.lSGallery li:hover {
  opacity: 1;
}

.lSSlideOuter .lSPager.lSGallery img {
  display: block;
  height: auto;
  max-width: 100%;
}

.lSSlideOuter .lSPager.lSGallery:before,
.lSSlideOuter .lSPager.lSGallery:after {
  content: " ";
  display: table;
}

.lSSlideOuter .lSPager.lSGallery:after {
  clear: both;
}

/* End of Gallery*/
.lSAction > a {
  width: 2rem;
  height: 2rem;
  display: block;
  top: 50%;
  background-image: url("/static/lightgallery/controles.png");
  background-size: 4rem 2rem;
  cursor: pointer;
  position: absolute;
  z-index: 2;
  margin-top: -1rem;
  opacity: 0.5;
  -webkit-transition: opacity 0.35s linear 0s;
  transition: opacity 0.35s linear 0s;
}

.lSAction > a:hover {
  opacity: 1;
}

.lSAction > .lSPrev {
  background-position: 0 center;
  left: 0;
}

.lSAction > .lSNext {
  background-position: -2rem center;
  right: 0;
}

.lSAction > a.disabled {
  pointer-events: none;
}

.cS-hidden {
  height: 1px;
  opacity: 0;
  filter: alpha(opacity=0);
  overflow: hidden;
}

@media only screen and (min-width: 960px) {
  .lSAction > a {
    width: 2.5rem;
    height: 2.5rem;
    background-size: 5rem 2.5rem;
    margin-top: -1.25rem;
  }
  .lSAction > .lSNext {
    background-position: -3rem center;
  }
}
.lSSlideOuter.vertical {
  position: relative;
}

.lSSlideOuter.vertical.noPager {
  padding-right: 0 !important;
}

.lSSlideOuter.vertical .lSGallery {
  position: absolute !important;
  right: 0;
  top: 0;
}

.lSSlideOuter.vertical .lightSlider > * {
  width: 100% !important;
  max-width: none !important;
}

/* Rtl */
.lSSlideOuter.lSrtl {
  direction: rtl;
}

.lSSlideOuter .lightSlider,
.lSSlideOuter .lSPager {
  padding-left: 0;
  list-style: none outside none;
}

.lSSlideOuter.lSrtl .lightSlider,
.lSSlideOuter.lSrtl .lSPager {
  padding-right: 0;
}

.lSSlideOuter .lightSlider > *,
.lSSlideOuter .lSGallery li {
  float: left;
  list-style-type: none;
  padding-left: 0;
  margin: 0;
}

.lSSlideOuter.lSrtl .lightSlider > *,
.lSSlideOuter.lSrtl .lSGallery li {
  float: right !important;
}

/* Rtl */
@-webkit-keyframes rightEnd {
  0% {
    left: 0;
  }
  50% {
    left: -15px;
  }
  100% {
    left: 0;
  }
}
@keyframes rightEnd {
  0% {
    left: 0;
  }
  50% {
    left: -15px;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes topEnd {
  0% {
    top: 0;
  }
  50% {
    top: -15px;
  }
  100% {
    top: 0;
  }
}
@keyframes topEnd {
  0% {
    top: 0;
  }
  50% {
    top: -15px;
  }
  100% {
    top: 0;
  }
}
@-webkit-keyframes leftEnd {
  0% {
    left: 0;
  }
  50% {
    left: 15px;
  }
  100% {
    left: 0;
  }
}
@keyframes leftEnd {
  0% {
    left: 0;
  }
  50% {
    left: 15px;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes bottomEnd {
  0% {
    bottom: 0;
  }
  50% {
    bottom: -15px;
  }
  100% {
    bottom: 0;
  }
}
@keyframes bottomEnd {
  0% {
    bottom: 0;
  }
  50% {
    bottom: -15px;
  }
  100% {
    bottom: 0;
  }
}
.lSSlideOuter .rightEnd {
  -webkit-animation: rightEnd 0.3s;
          animation: rightEnd 0.3s;
  position: relative;
}

.lSSlideOuter .leftEnd {
  -webkit-animation: leftEnd 0.3s;
          animation: leftEnd 0.3s;
  position: relative;
}

.lSSlideOuter.vertical .rightEnd {
  -webkit-animation: topEnd 0.3s;
          animation: topEnd 0.3s;
  position: relative;
}

.lSSlideOuter.vertical .leftEnd {
  -webkit-animation: bottomEnd 0.3s;
          animation: bottomEnd 0.3s;
  position: relative;
}

.lSSlideOuter.lSrtl .rightEnd {
  -webkit-animation: leftEnd 0.3s;
          animation: leftEnd 0.3s;
  position: relative;
}

.lSSlideOuter.lSrtl .leftEnd {
  -webkit-animation: rightEnd 0.3s;
          animation: rightEnd 0.3s;
  position: relative;
}

.lightSlider li img {
  max-width: 100%;
}

.galeria-minis .lightSlider li img {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.lSSlideOuter .lSPager.lSpg > li a {
  background-color: var(--gris-claro);
  border: 0 solid;
  border-color: #fff;
}

.lSSlideOuter .lSPager.lSpg > li:hover a {
  background-color: var(--c-primary-20);
  border-color: var(--c-primary-20);
}

.lSSlideOuter .lSPager.lSpg > li.active:hover a,
.lSSlideOuter .lSPager.lSpg > li.active a {
  background-color: var(--title-color);
  border-color: var(--title-color);
}

.lSAction > a {
  background-color: rgba(255, 255, 255, 0.5);
  border: 0;
  border-color: transparent;
  border-radius: 0;
  background-image: "/static/lightgallery/controles.png";
}

.lSAction > a:hover {
  background-color: rgba(255, 255, 255, 0.5);
  border-color: transparent;
  -webkit-filter: invert(1);
          filter: invert(1);
}

body.dark .lSAction > a,
html[data-theme=dark] .lSAction > a {
  background-color: var(--c-primary-60);
  border-color: var(--c-primary-60);
}
body.dark .lSAction > a:hover,
html[data-theme=dark] .lSAction > a:hover {
  background-color: var(--c-primary);
  border-color: var(--c-primary-60);
}

#slider .lightSlider li img {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.imagenes {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1240px) {
  .imagenes {
    margin-bottom: 0;
  }
}

/*SLIDER SUPERIOR*/
#slider2 {
  position: relative;
  background-color: rgba(0, 0, 0, 0.05);
  height: calc(70vh - 4.5rem) !important;
}

#slider2 #imageGallery {
  z-index: 4;
}

#slider2 .lSAction > a {
  z-index: 5;
}

#slider2 .lSSlideOuter .lSPager.lSpg > li a {
  width: 1rem;
  height: 0.25rem;
}

#slider2 .lSSlideOuter .lSPager {
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 100;
}

#slider2 .lightSlider li img,
#slider2 img.imagen {
  width: 100% !important;
  height: calc(70vh - 4.5rem) !important;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

/*portada*/
/*SLIDER PORTADA*/
.lslide,
.clone {
  position: relative;
}

.lslide .caption,
.clone .caption {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: 30vh;
  background: var(--c-primary-20);
  color: #fff;
  text-align: center;
}

.lslide .caption .texto_columna,
.clone .caption .texto_columna {
  padding: 0 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.lslide .caption p,
.clone .caption p {
  text-transform: none;
  display: block;
  font-size: 1rem;
  text-align: center;
}
.lslide .caption * + h2, .lslide .caption * + h3, .lslide .caption * + h4, .lslide .caption * + h5, .lslide .caption * + h6, .lslide .caption :first-child,
.clone .caption * + h2,
.clone .caption * + h3,
.clone .caption * + h4,
.clone .caption * + h5,
.clone .caption * + h6,
.clone .caption :first-child {
  margin-top: 0;
}
.lslide .caption :last-child,
.clone .caption :last-child {
  margin-bottom: 0;
}
.lslide .caption h1, .lslide .caption h2, .lslide .caption h3, .lslide .caption h4, .lslide .caption h5, .lslide .caption h6, .lslide .caption p,
.clone .caption h1,
.clone .caption h2,
.clone .caption h3,
.clone .caption h4,
.clone .caption h5,
.clone .caption h6,
.clone .caption p {
  color: #fff;
}
.lslide .caption .boton, .lslide .caption .boton-medio, .lslide .caption .boton-grande, .lslide .caption .boton-borde,
.clone .caption .boton,
.clone .caption .boton-medio,
.clone .caption .boton-grande,
.clone .caption .boton-borde {
  -ms-flex-item-align: center;
      align-self: center;
  margin-top: 1.5rem;
}

@media only screen and (min-width: 600px) {
  .lslide .caption,
  .clone .caption {
    min-height: 30vh;
    height: auto;
  }
}
@media screen and (orientation: landscape) {
  .lslide .caption,
  .clone .caption {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: transparent !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .lslide .caption .texto_columna,
  .clone .caption .texto_columna {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1rem;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-item-align: end;
        align-self: flex-end;
    margin-bottom: 5rem;
  }
  .lslide .caption p:last-child,
  .clone .caption p:last-child {
    margin-bottom: 0;
  }
  .lslide .caption h1,
  .clone .caption h1,
  .lslide .caption h2,
  .clone .caption h2,
  .lslide .caption h3,
  .clone .caption h3,
  .lslide .caption p,
  .clone .caption p {
    text-shadow: 2px 2px #111;
    color: #fff;
  }
}
@media only screen and (min-width: 1440px) {
  .lslide .caption .texto_columna,
  .clone .caption .texto_columna {
    -ms-flex-item-align: center;
        align-self: center;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 960px) {
  .galeria_responsive.borde_bajo,
  #slider2,
  #slider2 #imageGallery {
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
  }
  .lslide .caption,
  .clone .caption,
  #slider2 .lightSlider li img,
  #slider2 img.imagen {
    height: 100vh !important;
  }
}
@media only screen and (min-width: 1240px) {
  .galeria_responsive.borde_bajo,
  #slider2,
  #slider2 #imageGallery {
    min-height: 100vh;
    height: 100vh;
  }
  .lslide .caption,
  .clone .caption,
  #slider2 .lightSlider li img,
  #slider2 img.imagen {
    height: 100vh !important;
  }
}
/*@media only screen and (min-width: 1240px) {
	.galeria_responsive.borde_bajo,
	#slider2,
	#slider2 #imageGallery{
		min-height: calc(100vh - 8rem); // 100% - 6 header - 2
		height: calc(100vh - 8rem);
		overflow: hidden;
	}

	.lslide .caption,
	.clone .caption,
	#slider2 .lightSlider li img, 
	#slider2 img.imagen{
		height: calc(100vh - 8rem) !important;
	}
}

@media only screen and (min-width:1440px) {

	.galeria_responsive.borde_bajo,
	#slider2,
	#slider2 #imageGallery{
		min-height: 45rem;
		height: 45rem !important;
	}

	.lslide .caption,
	.clone .caption,
	#slider2 .lightSlider li img, 
	#slider2 img.imagen{
		height: 45rem !important;
	}

	.lslide .caption .texto_columna,
	.clone .caption .texto_columna {
		align-self: center;
		margin-bottom: 0;
	}
}*/
@media only screen and (min-width: 1800px) {
  .galeria_responsive.borde_bajo,
  #slider2,
  #slider2 #imageGallery {
    min-height: 67.5rem;
    height: 67.5rem !important;
  }
  .lslide .caption,
  .clone .caption,
  #slider2 .lightSlider li img,
  #slider2 img.imagen {
    height: 67.5rem !important;
  }
}