@charset "UTF-8";
/* latin-ext */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(KFOmCnqEu92Fr1Mu7GxKKTU1Kvnz.woff2) format("woff2");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(KFOlCnqEu92Fr1MmWUlfChc4AMP6lbBP.woff2) format("woff2");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(KFOlCnqEu92Fr1MmWUlfBBc4AMP6lQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(KFOlCnqEu92Fr1MmYUtfChc4AMP6lbBP.woff2) format("woff2");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(KFOlCnqEu92Fr1MmYUtfBBc4AMP6lQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/*

  VARIABLES

*/
/*
	Theme Name: Estudio228 2024 V1
	Theme URI: https://www.loygorri.com
	Description: Tailored WordPress Theme
	Version: 1.0
	Author: Gabriel García Loygorri
	Author URI: https://www.loygorri.com
	Tags: TAILORED, HTML5, CSS3, SASS

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

:root, :root.light {
  --crema: rgba(255,255,255,1);
  --crema_menu: rgba(255,255,255,0.5);
  --crema_aside: rgba(255,255,255,0.8);
  --oscuro: rgba(52,58,66,1);
  --oscuro_0: rgba(52,58,66,0);
  --oscuro_sutil: rgba(52,58,66,0.05);
  --blanco: rgba(255,255,255,1);
  --blanco_75: rgba(255,255,255,0.75);
  --blanco_25: rgba(255,255,255,0.25);
  --blanco_0: rgba(255,255,255,0);
  --crema_siempre: rgba(249,246,239,1);
  --oscuro_siempre: rgba(52,58,66,1);
  --blanco_siempre: rgba(255,255,255,1);
  --negro: rgba(0,0,0,1);
  --color_secundario: rgba(229,75,75,1);
  --naranja_oscuro: rgba(255,206,71,1);
  --oscuro_naranja: rgba(52,58,66,1);
  --blanco_naranja: rgba(249,246,239,1);
  --ancho_maximo: 1200px;
  --familia: "Roboto", sans-serif;
  --gosha: "Roboto", sans-serif;
  --texto_boton_clean: var(--blanco);
  --size_texto_boton_clean: 25px;
  --size_texto_boton_clean_movil: 18px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --crema: rgba(31,32,32,1);
    --oscuro: rgba(249,246,239,1);
    --crema_menu: rgba(52,58,66,0.5);
    --crema_aside: rgba(52,58,66,0.8);
    --blanco: rgba(0,0,0,1);
    --blanco_75: rgba(0,0,0,0.75);
    --naranja_oscuro: rgba(52,58,66,1);
    --blanco_naranja: rgba(255,206,71.1);
    --oscuro_naranja: rgba(255,206,71.1);
    --blanco_siempre: rgba(255,255,255,1);
  }
  :root .kit {
    -webkit-filter: invert(100%);
            filter: invert(100%);
  }
}
:root.dark {
  --crema: rgba(31,32,32,1);
  --oscuro: rgba(249,246,239,1);
  --crema_menu: rgba(52,58,66,0.5);
  --crema_aside: rgba(52,58,66,0.8);
  --blanco: rgba(0,0,0,1);
  --blanco_75: rgba(0,0,0,0.75);
  --naranja_oscuro: rgba(52,58,66,1);
  --blanco_naranja: rgba(255,206,71.1);
  --oscuro_naranja: rgba(255,206,71.1);
  --blanco_siempre: rgba(255,255,255,1);
}
:root.dark .kit {
  -webkit-filter: invert(100%);
          filter: invert(100%);
}

@media (prefers-contrast: more) {
  :root {
    --crema: #0f2560;
    --oscuro: #ffca57;
  }
  :root .kit {
    -webkit-filter: brightness(5.5) sepia(15) saturate(3) hue-rotate(10deg);
            filter: brightness(5.5) sepia(15) saturate(3) hue-rotate(10deg);
  }
}
h1 {
  font-family: var(--titulares);
}

hr {
  display: none;
}

body {
  font-family: var(--familia);
  font-size: 100%;
  background-color: var(--crema);
}
body .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
}

.clean {
  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;
  width: 100%;
  height: 100%;
  min-height: 100svh;
}
.clean svg#logo {
  position: absolute;
  top: 20px;
  right: 20px;
  height: 30px;
  fill: var(--oscuro);
}
.clean svg#clean {
  max-width: 500px;
  margin: 5%;
}
.clean svg#clean #arco {
  fill: var(--naranja);
}
.clean svg#clean #texto {
  fill: var(--oscuro);
}
.clean a.boton {
  background-color: var(--oscuro);
  color: var(--texto_boton_clean);
  text-decoration: none;
  border-radius: 20px;
  padding: 10px 20px;
  font-size: var(--size_texto_boton_clean);
  font-weight: 300;
  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;
  text-align: center;
  margin: 5%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
@media only screen and (max-width: 550px) {
  .clean a.boton {
    font-size: var(--size_texto_boton_clean_movil);
  }
}

/*

	VARIABLES

*/
header {
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 40px;
  padding-right: 40px;
  position: absolute;
  top: 0px;
  z-index: 3;
  width: 100%;
}
@media only screen and (max-width: 550px) {
  header {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
  }
}
header .centrado {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  justify-items: center;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
header .centrado .logo {
  margin-left: 0px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 550px) {
  header .centrado .logo {
    margin-left: 0px;
  }
}
header .centrado .logo span {
  display: none;
}
header .centrado .logo svg {
  height: 75px;
}
@media only screen and (max-width: 550px) {
  header .centrado .logo svg {
    height: 50px;
  }
}
header .centrado .logo svg #uno {
  opacity: 1;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
header .centrado .logo svg #dos {
  opacity: 0;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
header .centrado .logo svg rect, header .centrado .logo svg path, header .centrado .logo svg polygon {
  fill: white;
}
header .centrado .logo h1 {
  font-size: 32px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header .centrado .logo a {
  font-size: 32px;
  font-weight: 700;
  font-family: var(--titulares);
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header .centrado .logo a span {
  display: none;
}
header .centrado hr {
  display: none;
}
header .centrado .bars {
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30px;
  cursor: pointer;
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
header .centrado .bars svg {
  width: 30px;
  fill: var(--oscuro);
}
@media only screen and (max-width: 550px) {
  header .centrado .bars {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
header .centrado .nav {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  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;
  padding-left: 20px;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
}
header .centrado .nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 0px;
  list-style: none;
  gap: 10px 30px;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 550px) {
  header .centrado .nav ul {
    display: none;
  }
}
header .centrado .nav ul li {
  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;
}
header .centrado .nav ul li.current-menu-item a, header .centrado .nav ul li.current-menu-parent a {
  color: var(--naranja);
}
header .centrado .nav ul li 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;
  height: 100%;
  text-align: center;
  font-size: 22px;
  color: var(--blanco);
  font-family: var(--gosha);
  font-weight: bold;
  line-height: 0.8em;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  border-radius: 4px;
  border: 1px solid var(--blanco_0);
  padding: 5px 10px;
}
header .centrado .nav ul li a:hover {
  border: 1px solid var(--blanco);
}
header .centrado .nav ul li ul {
  display: none;
}

.home-228 .wrapper header,
.proyectos-228 .wrapper header,
.proyecto-228 .wrapper header {
  z-index: 2;
  height: 100vh;
}
.home-228 .wrapper header .centrado .logo,
.proyectos-228 .wrapper header .centrado .logo,
.proyecto-228 .wrapper header .centrado .logo {
  position: relative;
  z-index: 2;
}
.home-228 .wrapper header .centrado nav ul,
.proyectos-228 .wrapper header .centrado nav ul,
.proyecto-228 .wrapper header .centrado nav ul {
  width: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100vh;
  z-index: 1;
}
.home-228 .wrapper header .centrado nav ul li.menu_servicios,
.proyectos-228 .wrapper header .centrado nav ul li.menu_servicios,
.proyecto-228 .wrapper header .centrado nav ul li.menu_servicios {
  position: absolute;
  top: 40px;
  right: 40px;
}
.home-228 .wrapper header .centrado nav ul li.menu_about,
.proyectos-228 .wrapper header .centrado nav ul li.menu_about,
.proyecto-228 .wrapper header .centrado nav ul li.menu_about {
  position: absolute;
  bottom: 40px;
  left: 40px;
}
.home-228 .wrapper header .centrado nav ul li.menu_proyectos,
.proyectos-228 .wrapper header .centrado nav ul li.menu_proyectos,
.proyecto-228 .wrapper header .centrado nav ul li.menu_proyectos {
  position: absolute;
  bottom: 40px;
  left: calc(50% - 100px);
  width: 200px;
}
.home-228 .wrapper header .centrado nav ul li.menu_contacto,
.proyectos-228 .wrapper header .centrado nav ul li.menu_contacto,
.proyecto-228 .wrapper header .centrado nav ul li.menu_contacto {
  position: absolute;
  bottom: 40px;
  right: 40px;
}

@media only screen and (max-width: 550px) {
  .home-228 .wrapper header {
    height: initial;
    height: 70px;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.45)), to(rgba(0, 0, 0, 0)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 100%);
  }
}
.home-228 .wrapper header .centrado {
  height: 50px;
}
.home-228 .wrapper header .centrado .logo {
  position: fixed;
}
.home-228 .wrapper header .centrado .nav svg {
  fill: var(--crema);
}

.proyectos-228 .wrapper header .centrado .logo a svg rect, .proyectos-228 .wrapper header .centrado .logo a svg path, .proyectos-228 .wrapper header .centrado .logo a svg polygon,
.legal-228 .wrapper header .centrado .logo a svg rect,
.legal-228 .wrapper header .centrado .logo a svg path,
.legal-228 .wrapper header .centrado .logo a svg polygon {
  fill: var(--oscuro);
}
.proyectos-228 .wrapper header .centrado nav ul li a,
.legal-228 .wrapper header .centrado nav ul li a {
  color: var(--oscuro);
}
.proyectos-228 .wrapper header .centrado nav ul li a:hover,
.legal-228 .wrapper header .centrado nav ul li a:hover {
  border-color: var(--oscuro);
}

.proyecto-228 .wrapper header {
  height: initial;
  width: 50%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.proyecto-228 .wrapper header .centrado .logo a svg rect, .proyecto-228 .wrapper header .centrado .logo a svg path, .proyecto-228 .wrapper header .centrado .logo a svg polygon {
  fill: var(--oscuro);
}
.proyecto-228 .wrapper header .centrado nav {
  display: none;
}
.proyecto-228 .wrapper header .centrado nav ul li a {
  color: var(--oscuro);
}
.proyecto-228 .wrapper header .centrado nav ul li a:hover {
  border-color: var(--oscuro);
}

/*

	VARIABLES

*/
.menu-desplegable {
  position: fixed;
  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;
  right: -100%;
  width: 100%;
  background-color: var(--oscuro);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  z-index: 5;
  opacity: 0.5;
  overflow: scroll;
  height: 100dvh;
}
.menu-desplegable .logo {
  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;
  width: 100%;
  background-color: var(--oscuro);
  padding: 10px;
}
.menu-desplegable .logo svg {
  height: 50px;
  fill: var(--blanco);
}
.menu-desplegable .logo svg .oscuro, .menu-desplegable .logo svg .morado, .menu-desplegable .logo svg .cian {
  fill: var(--blanco);
}
.menu-desplegable .logo .cierre svg {
  fill: var(--blanco);
  height: 35px;
}
.menu-desplegable > ul {
  background-color: var(--oscuro);
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  padding: 10px;
  padding-top: 0px;
}
.menu-desplegable > ul li {
  font-size: 20px;
  list-style: none;
}
.menu-desplegable > ul li a {
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: var(--blanco);
  text-decoration: none;
}
.menu-desplegable > ul li.current-menu-item a, .menu-desplegable > ul li:where(body.aurrera) a {
  color: var(--blanco);
  font-weight: bold;
}
.menu-desplegable > ul li:last-child a {
  border-bottom: 0px solid var(--gris);
}
.menu-desplegable > ul li.menor {
  font-size: 16px;
}
.menu-desplegable > ul li.menor a {
  padding: 10px;
}
.menu-desplegable > ul li.again {
  cursor: pointer;
}
.menu-desplegable > ul li.interruptor a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}
.menu-desplegable > ul li.interruptor a:hover {
  text-decoration: none;
}
.menu-desplegable > ul li.interruptor a::after {
  content: "off";
  text-transform: uppercase;
  width: 40px;
  height: 20px;
  border-radius: 10px;
  margin-left: 10px;
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0em;
  padding-left: 0px;
  padding-right: 0px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid var(--oscuro);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (max-width: 550px) {
  .menu-desplegable > ul li.interruptor a::after {
    border: 1px solid var(--crema);
  }
}
.menu-desplegable > ul li.interruptor.dark a::after {
  content: "on";
  border: 1px solid var(--crema);
  background-color: var(--naranja);
  color: var(--oscuro_siempre);
}
.menu-desplegable .botonera {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  background-color: var(--morado);
  padding: 20px;
}
.menu-desplegable .botonera .telefono {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  border-radius: 10px;
  border: 1px solid var(--blanco);
  padding: 10px;
  color: var(--blanco);
  text-decoration: none;
}
.menu-desplegable .botonera .telefono svg {
  height: 25px;
  fill: var(--blanco);
}
.menu-desplegable .botonera .contacta {
  background-color: var(--cian);
  color: var(--oscuro);
  border-radius: 10px;
  width: 100%;
  max-width: 140px;
  line-height: 35px;
  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;
  text-decoration: none;
}
.menu-desplegable.activo {
  top: 0px;
  right: 0px;
  width: 100%;
  opacity: 1;
}
@media only screen and (max-width: 550px) {
  .menu-desplegable.activo {
    right: 0px;
    top: 0px;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
  }
}

.single .menu-desplegable ul li.articulo a {
  color: var(--morado);
}

.cierre-menu-desplegable {
  position: fixed;
  top: 0px;
  left: 100%;
  width: 100%;
  height: 100vh;
  z-index: 4;
  background-color: rgb(0, 0, 0);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  cursor: pointer;
}

.cierre-menu-desplegable.activo {
  left: 0px;
  top: 0px;
}
.sub-menu {
  display: none;
}

/* FIRMA */
.firma {
  background-color: rgb(10, 10, 10);
  color: rgb(255, 255, 255);
  padding: 10px;
  font-size: 11px;
  text-transform: uppercase;
}

.firma a {
  color: rgb(255, 255, 255);
}

.firma a:hover {
  font-weight: 700;
}

.enlace_firma {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  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-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-bottom: 75px;
  max-width: 200px;
  margin-top: 20px;
}

.enlace_firma span {
  color: rgb(255, 255, 255);
  padding: 0px 10px;
  font-size: 11px;
  text-transform: uppercase;
}

.enlace_firma span a {
  color: rgb(255, 255, 255);
  font-weight: 700;
}

.enlace_firma a {
  height: 30px;
  font-weight: 700;
}

.enlace_firma a svg {
  height: 30px;
}

/*

	VARIABLES
	--color_fondo_footer




*/
footer {
  position: relative;
  margin-top: 240px;
  z-index: 2;
}
footer .centrado {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  max-width: var(--ancho_maximo);
  margin-left: auto;
  margin-right: auto;
  padding-top: 40px;
  padding-bottom: 20px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
@media only screen and (max-width: 1200px) {
  footer .centrado {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (max-width: 550px) {
  footer .centrado {
    padding-left: 10px;
    padding-right: 10px;
  }
}
footer .centrado ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
  margin: 0px;
}
@media only screen and (max-width: 550px) {
  footer .centrado ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
  }
}
footer .centrado ul li {
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer .centrado ul li.again {
  cursor: pointer;
}
footer .centrado ul li.interruptor a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}
footer .centrado ul li.interruptor a:hover {
  text-decoration: none;
}
footer .centrado ul li.interruptor a::after {
  content: "off";
  text-transform: uppercase;
  width: 40px;
  height: 20px;
  border-radius: 10px;
  margin-left: 10px;
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0em;
  padding-left: 0px;
  padding-right: 0px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid var(--oscuro);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (max-width: 550px) {
  footer .centrado ul li.interruptor a::after {
    border: 1px solid var(--crema);
  }
}
footer .centrado ul li.interruptor.dark a::after {
  content: "on";
  border: 1px solid var(--naranja);
  background-color: var(--naranja);
  color: var(--oscuro_siempre);
}
footer .centrado ul li a {
  text-transform: uppercase;
  text-decoration: none;
  color: var(--oscuro);
}
footer .centrado ul li a:hover {
  text-decoration: underline;
}

.home-228 footer {
  margin-top: 0px;
}

.proyecto-228 footer {
  margin-top: 0px;
}

.legal-228 footer {
  margin-top: 0px;
}

.wpcf7 .screen-reader-response {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  word-wrap: normal !important;
}

.wpcf7 form .wpcf7-response-output {
  margin: 2em 0.5em 1em;
  padding: 0.2em 1em;
  border: 2px solid #00a0d2;
}

.wpcf7 form.init .wpcf7-response-output, .wpcf7 form.resetting .wpcf7-response-output, .wpcf7 form.submitting .wpcf7-response-output {
  display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
  border-color: #46b450;
}

.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output {
  border-color: #dc3232;
}

.wpcf7 form.spam .wpcf7-response-output {
  border-color: #f56e28;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ffb900;
}

.wpcf7-form-control-wrap {
  position: relative;
}

.wpcf7-not-valid-tip {
  color: #dc3232;
  font-size: 1em;
  font-weight: 400;
  display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
  position: relative;
  top: -2ex;
  left: 1em;
  z-index: 100;
  border: 1px solid #dc3232;
  background: #fff;
  padding: 0.2em 0.8em;
  width: 24em;
}

.wpcf7-list-item {
  display: inline-block;
  margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before, .wpcf7-list-item-label::after {
  content: " ";
}

.wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  background-color: #23282d;
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 0 24px;
  position: relative;
}

form.submitting .wpcf7-spinner {
  visibility: visible;
}

.wpcf7-spinner::before {
  content: "";
  position: absolute;
  background-color: #fbfbfc;
  top: 4px;
  left: 4px;
  width: 6px;
  height: 6px;
  border: none;
  border-radius: 100%;
  -webkit-transform-origin: 8px 8px;
          transform-origin: 8px 8px;
  -webkit-animation-name: spin;
          animation-name: spin;
  -webkit-animation-duration: 1000ms;
          animation-duration: 1000ms;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
  .wpcf7-spinner::before {
    -webkit-animation-name: blink;
            animation-name: blink;
    -webkit-animation-duration: 2000ms;
            animation-duration: 2000ms;
  }
}
@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes blink {
  from {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes blink {
  from {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.wpcf7 input[type=file] {
  cursor: pointer;
}

.wpcf7 input[type=file]:disabled {
  cursor: default;
}

.wpcf7 .wpcf7-submit:disabled {
  cursor: not-allowed;
}

.wpcf7 input[type=url], .wpcf7 input[type=email], .wpcf7 input[type=tel] {
  direction: ltr;
}

.wpcf7-reflection > output {
  display: list-item;
  list-style: none;
}

form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 100%;
    gap: 10px;
    padding: 20px 0px;
  }
}
@media only screen and (max-width: 550px) {
  form {
    padding: 0px;
  }
}
form > div.medios {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  max-width: 100%;
  gap: 10px;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  padding-bottom: 10px;
}
@media only screen and (max-width: 1024px) {
  form > div.medios {
    max-width: 100%;
  }
}
form > div.primera {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  -ms-flex-line-pack: justify;
      align-content: space-between;
}
form > div.primera label:first-child {
  width: 100%;
}
@media only screen and (max-width: 768px) and (min-width: 429px) {
  form > div.primera label:first-child {
    max-width: 100%;
  }
}
@media only screen and (max-width: 428px) {
  form > div.primera label:first-child {
    max-width: 100%;
  }
}
@media only screen and (max-width: 768px) and (min-width: 429px) {
  form > div.primera label:nth-child(2) {
    max-width: 100%;
  }
}
@media only screen and (max-width: 428px) {
  form > div.primera label:nth-child(2) {
    max-width: 100%;
  }
}
form label {
  display: block;
  width: 100%;
}
form input {
  font-family: var(--family);
  font-size: var(--dieciocho);
}
form input:not([type=checkbox]),
form textarea {
  width: 100%;
  padding: 10px 10px;
  font-family: var(--family);
  font-size: var(--dieciocho);
  background-color: var(--color_principal_light);
  border: 0px;
}
form select {
  width: 100%;
  padding: 10px 10px;
  font-family: var(--family);
  font-size: var(--dieciocho);
  background-color: var(--color_principal_light);
  border: 0px;
}
form input[type=submit] {
  -webkit-appearance: none;
  -webkit-border-radius: none;
  margin-top: 10px;
  background-color: var(--color_secundario);
  font-size: var(--veinticuatro);
  color: var(--color_blanco_siempre);
  text-transform: uppercase;
  text-decoration: none;
  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;
  padding: 10px 15px;
  border-radius: var(--radio_boton);
  white-space: nowrap;
  width: 100%;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  form input[type=submit] {
    white-space: normal;
    text-align: center;
  }
}
form a {
  color: var(--color_principal);
}
form .wpcf7-form-control-wrap {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
}
form .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
  position: absolute;
  right: 5px;
  top: 5px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
}
form .wpcf7-spinner {
  position: absolute;
  top: calc(50% - 12px);
  left: calc(50% - 12px);
  display: block;
  margin: 0px;
}
form .wpcf7-response-output {
  position: absolute;
  bottom: -75px;
  left: 0px;
  border: 0px;
  margin: 0px;
  padding: 10px;
  width: 100%;
  border-radius: 5px;
}
form.invalid .wpcf7-response-output, form.unaccepted .wpcf7-response-output {
  background-color: #ffb900;
  color: black;
}
form.sent .wpcf7-response-output {
  background-color: #46b450;
  color: black;
}

.wpcf7.no-js, .wpcf7.js {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.wpcf7.no-js p, .wpcf7.js p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  gap: 20px;
  width: 100%;
}
.wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item, .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 0px;
  margin: 0px;
}
.wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item label, .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  gap: 10px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox], .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox] {
  margin-top: 3px;
}
.wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox], .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox] {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  vertical-align: middle;
  border: 1px solid var(--oscuro);
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  outline: none;
  cursor: pointer;
  position: relative;
}
@media only screen and (max-width: 550px) {
  .wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox], .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox] {
    width: 24px;
  }
}
.wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox]:checked, .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item label input[type=checkbox]:checked {
  background-color: var(--oscuro);
}
.wpcf7.no-js p .wpcf7-form-control-wrap .wpcf7-list-item label a, .wpcf7.js p .wpcf7-form-control-wrap .wpcf7-list-item label a {
  color: var(--oscuro);
}
.wpcf7.no-js p label, .wpcf7.js p label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.wpcf7.no-js p label span, .wpcf7.js p label span {
  font-size: 17px;
}
.wpcf7.no-js p label span a, .wpcf7.js p label span a {
  color: var(--oscuro);
}
.wpcf7.no-js p label input:not([type=checkbox]), .wpcf7.no-js p label textarea, .wpcf7.js p label input:not([type=checkbox]), .wpcf7.js p label textarea {
  width: 100%;
  background-color: transparent;
  border: 0px;
  border-bottom: 1px solid var(--oscuro);
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  font-size: 17px;
  font-weight: 400;
  font-family: var(--gosha);
  color: var(--oscuro);
}
.wpcf7.no-js p .wpcf7-submit, .wpcf7.js p .wpcf7-submit {
  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%;
  max-width: 125px;
  text-align: center;
  font-size: 18px;
  color: var(--verde);
  font-family: var(--gosha);
  text-decoration: none;
  background-color: var(--oscuro);
  border: 1px solid var(--oscuro);
  color: var(--blanco);
  border-radius: 5px;
  padding: 5px 10px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
}
.wpcf7.no-js p .wpcf7-submit:hover, .wpcf7.js p .wpcf7-submit:hover {
  background-color: var(--verde);
  color: var(--oscuro);
}

/*

	VARIABLES

*/
.home-228 .wrapper main {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  height: calc(100vh - 120px - 120px);
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 1;
  position: relative;
  top: 0px;
  width: 100%;
  overflow: hidden;
  background-color: var(--oscuro);
}
.home-228 .wrapper main .la_capa {
  width: 100%;
  height: 100vh;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.35)), color-stop(15%, rgba(0, 0, 0, 0)), color-stop(85%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.35)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 15%, rgba(0, 0, 0, 0) 85%, rgba(0, 0, 0, 0.35) 100%);
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
}
@media only screen and (max-width: 550px) {
  .home-228 .wrapper main .la_capa {
    display: none;
  }
}
.home-228 .wrapper main .owl-galeria {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: var(--padding-bloque);
  position: relative;
}
.home-228 .wrapper main .owl-galeria .owl-dots.disabled {
  display: none;
}
.home-228 .wrapper main .owl-galeria .owl-nav.disabled {
  display: none;
}
.home-228 .wrapper main .owl-galeria .owl-nav .owl-prev {
  position: absolute;
  left: 0px;
  top: 50%;
  width: 30px;
  height: 30px;
  background-color: transparent;
  border: 0;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  cursor: pointer;
}
.home-228 .wrapper main .owl-galeria .owl-nav .owl-prev svg {
  width: 30px;
  height: 30px;
}
.home-228 .wrapper main .owl-galeria .owl-nav .owl-next {
  position: absolute;
  right: 0px;
  top: 50%;
  width: 30px;
  height: 30px;
  background-color: transparent;
  border: 0;
  cursor: pointer;
}
.home-228 .wrapper main .owl-galeria .owl-nav .owl-next svg {
  width: 30px;
  height: 30px;
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item {
  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;
  position: relative;
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item img {
  height: 100vh;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  background-color: black;
  z-index: 1;
}
@media only screen and (max-width: 550px) {
  .home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item img.home_desktop {
    display: none;
  }
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item img.home_movil {
  display: none;
}
@media only screen and (max-width: 550px) {
  .home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item img.home_movil {
    display: block;
  }
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item p {
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-size: 45px;
  font-weight: 300;
  text-align: center;
  padding-left: 5%;
  padding-right: 5%;
  padding-bottom: 10%;
  color: black;
}
.home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item p.blanco {
  color: white;
}
@media only screen and (max-width: 550px) {
  .home-228 .wrapper main .owl-galeria .owl-stage-outer .owl-stage .owl-item .item p {
    font-size: 30px;
    padding-bottom: 20%;
  }
}
.home-228 .wrapper main .owl-dots.disabled {
  display: none;
}
@media only screen and (max-width: 550px) {
  .home-228 .wrapper main .owl-dots {
    width: 100%;
    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;
    gap: 10px;
    padding-top: 20px;
    position: absolute;
    bottom: 20px;
    z-index: 3;
  }
  .home-228 .wrapper main .owl-dots .owl-dot {
    width: 15px;
    height: 15px;
    border: 1px solid var(--oscuro);
    background-color: var(--crema);
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 10px;
  }
  .home-228 .wrapper main .owl-dots .owl-dot.active {
    background-color: var(--oscuro);
  }
}

/*

	VARIABLES

*/
.proyectos-228 .wrapper main {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  height: calc(100vh - 120px - 120px);
  height: calc(100vh - 120px - 60px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 3;
  position: relative;
  top: 120px;
}
@media only screen and (max-width: 550px) {
  .proyectos-228 .wrapper main {
    height: initial;
    top: 100px;
  }
}
.proyectos-228 .wrapper main h1 {
  text-align: center;
  width: 100%;
  padding-bottom: 20px;
  font-weight: 300;
  color: var(--oscuro);
}
@media only screen and (max-width: 550px) {
  .proyectos-228 .wrapper main h1 {
    display: none;
  }
}
.proyectos-228 .wrapper main .owl-proyectos {
  width: calc(100% - 80px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: var(--padding-bloque);
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-dots.disabled {
  display: none;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-nav.disabled {
  display: none;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-nav .owl-prev {
  position: absolute;
  left: 20px;
  top: 50%;
  width: 50px;
  height: 50px;
  background-color: transparent;
  border: 0;
  cursor: pointer;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-nav .owl-prev svg {
  width: 50px;
  height: 50px;
  fill: white;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-nav .owl-next {
  position: absolute;
  right: 20px;
  top: 50%;
  width: 50px;
  height: 50px;
  background-color: transparent;
  border: 0;
  cursor: pointer;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-nav .owl-next svg {
  width: 50px;
  height: 50px;
  fill: white;
}
@media only screen and (max-width: 550px) {
  .proyectos-228 .wrapper main .owl-proyectos .owl-dots {
    width: 100%;
    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;
    gap: 10px;
    padding-top: 20px;
  }
  .proyectos-228 .wrapper main .owl-proyectos .owl-dots .owl-dot {
    width: 15px;
    height: 15px;
    border: 1px solid var(--oscuro);
    background-color: var(--crema);
    border-radius: 10px;
  }
  .proyectos-228 .wrapper main .owl-proyectos .owl-dots .owl-dot.active {
    background-color: var(--oscuro);
  }
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item {
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item a {
  text-decoration: none;
  font-size: 29px;
  font-weight: bold;
  color: var(--oscuro);
  text-transform: uppercase;
  position: relative;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item a:has(img) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  margin-bottom: 20px;
  overflow: hidden;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item a:has(img):hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item a:has(img):hover ul {
  opacity: 1;
  bottom: 0px;
  left: 0px;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item img {
  height: 50vh;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item ul {
  position: absolute;
  bottom: 0px;
  left: 0px;
  background-color: rgba(0, 0, 0, 0.75);
  color: white;
  font-size: 15px;
  font-weight: 300;
  width: 100%;
  padding: 10px;
  z-index: 1;
  list-style: none;
  opacity: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
.proyectos-228 .wrapper main .owl-proyectos .owl-stage-outer .owl-stage .owl-item .item p {
  padding-top: 0px;
  font-size: 23px;
  color: var(--oscuro);
}

/*

	VARIABLES

*/
.proyecto-228 .wrapper main {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  height: calc(100vh - 120px - 120px);
  height: calc(100vh - 120px);
  height: initial;
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  z-index: 1;
  position: relative;
  top: 120px;
  top: 0px;
  padding-left: 40px;
  padding-right: 40px;
}
@media only screen and (max-width: 550px) {
  .proyecto-228 .wrapper main {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.proyecto-228 .wrapper main .info {
  width: 50%;
  padding-right: 20px;
  padding: 40px;
  padding-top: 170px;
  padding-left: 0px;
  position: relative;
}
@media only screen and (max-width: 550px) {
  .proyecto-228 .wrapper main .info {
    width: 100%;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 100px;
  }
}
.proyecto-228 .wrapper main .info .destacada {
  display: none;
}
@media only screen and (max-width: 550px) {
  .proyecto-228 .wrapper main .info .destacada {
    display: block;
    width: 100%;
    margin-bottom: 20px;
    margin-top: 20px;
  }
  .proyecto-228 .wrapper main .info .destacada img {
    width: 100%;
  }
}
.proyecto-228 .wrapper main .info .destacada:has(span) {
  border-radius: 5px;
  border: 1px solid var(--oscuro);
  padding: 5px 10px;
  color: var(--oscuro);
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  font-size: 20px;
}
.proyecto-228 .wrapper main .info h1 {
  padding-bottom: 10px;
  color: var(--oscuro);
}
.proyecto-228 .wrapper main .info h2 {
  padding-bottom: 0px;
  color: var(--oscuro);
  text-transform: uppercase;
  font-weight: 500;
  font-size: 18px;
}
.proyecto-228 .wrapper main .info h3 {
  padding-bottom: 10px;
  color: var(--oscuro);
  opacity: 0.75;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 18px;
}
.proyecto-228 .wrapper main .info p {
  font-size: 18px;
  padding-bottom: 10px;
  line-height: 1.5em;
  color: var(--oscuro);
}
.proyecto-228 .wrapper main .info p:last-child {
  padding-bottom: 0px;
}
.proyecto-228 .wrapper main .info .ficha {
  padding-bottom: 10px;
}
.proyecto-228 .wrapper main .info .ficha p {
  padding-bottom: 0px;
}
.proyecto-228 .wrapper main .info .volver {
  position: absolute;
  top: 40px;
  right: 40px;
  text-transform: uppercase;
  font-size: 20px;
  cursor: pointer;
  -webkit-transition: all 0.4s ease-in-out 0.4s;
  transition: all 0.4s ease-in-out 0.4s;
  opacity: 1;
  text-decoration: none;
  color: var(--oscuro);
}
@media only screen and (max-width: 550px) {
  .proyecto-228 .wrapper main .info .volver {
    right: 0px;
  }
}
.proyecto-228 .wrapper main .images {
  width: 50%;
  position: relative;
  padding-right: 0px;
}
@media only screen and (max-width: 550px) {
  .proyecto-228 .wrapper main .images {
    width: 100%;
    padding-right: 0px;
  }
}
.proyecto-228 .wrapper main .images .anclado {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  position: sticky;
  top: 0px;
  height: 100vh;
  overflow-y: scroll;
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
  scroll-behavior: smooth;
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}
@media only screen and (max-width: 550px) {
  .proyecto-228 .wrapper main .images .anclado {
    position: relative;
    height: initial;
    -ms-scroll-snap-type: none;
        scroll-snap-type: none;
  }
}
.proyecto-228 .wrapper main .images .anclado::-webkit-scrollbar {
  display: none; /* Safari and Chrome */
}
.proyecto-228 .wrapper main .images .anclado div {
  position: relative;
  max-height: 90vh;
}
.proyecto-228 .wrapper main .images .anclado div img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  max-height: 89vh;
}
.proyecto-228 .wrapper main .images .anclado div:hover a.enlace-siguiente {
  opacity: 0;
}
.proyecto-228 .wrapper main .images .anclado div .enlace-siguiente {
  position: absolute;
  bottom: 20px;
  left: calc(50% - 25px);
  z-index: 2;
  width: 40px;
  display: block;
  opacity: 0;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.proyecto-228 .wrapper main .images .anclado div .ampliar {
  position: relative;
}
.proyecto-228 .wrapper main .images .anclado div a:not(.enlace-siguiente, .ampliar) {
  display: block;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.proyecto-228 .wrapper main .images .anclado div a:not(.enlace-siguiente, .ampliar) span {
  display: none;
}
.proyecto-228 .wrapper main .images .anclado div:hover a:not(.enlace-siguiente, .ampliar) {
  opacity: 1;
  display: block;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
}
.proyecto-228 .wrapper main .images .anclado div:hover a:not(.enlace-siguiente, .ampliar) span {
  display: none;
}
.proyecto-228 .wrapper main .images .anclado div p {
  position: absolute;
  bottom: 20px;
  left: 20px;
  z-index: 2;
  font-size: 20px;
  color: var(--oscuro);
}

.el_panel {
  position: fixed;
  width: 50%;
  max-width: 600px;
  height: 100vh;
  z-index: 5;
  overflow: hidden;
  display: block;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 5vh;
  padding-top: 10vh;
  padding-bottom: 5vh;
  overflow-y: scroll;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  color: var(--oscuro);
  /*
  &:after{
  	content: "";
  	height: 100px;
  	width: 100%;
  	position: sticky;
  	background: linear-gradient(180deg, rgba(0,0,0,0) 0%, var(--crema) 75%);
  	z-index: 6;
  	bottom: 0px;
  	left: 0px;
  	display: block;
  }
  */
}
.el_panel .enlace_cerrar {
  position: absolute;
  top: 20px;
  right: -20px;
  text-transform: uppercase;
  font-size: 20px;
  cursor: pointer;
  -webkit-transition: all 0.4s ease-in-out 0.4s;
  transition: all 0.4s ease-in-out 0.4s;
  opacity: 0;
}
.el_panel::-webkit-scrollbar {
  display: none; /* Safari and Chrome */
}
.el_panel.panel_servicios {
  top: 0px;
  right: -50%;
  background-color: var(--oscuro_siempre);
}
@media only screen and (max-width: 550px) {
  .el_panel.panel_servicios {
    right: -100%;
  }
}
.el_panel.panel_servicios.activo {
  right: 0px;
  background-color: var(--crema);
}
.el_panel.panel_servicios.activo .enlace_cerrar {
  right: 20px;
  opacity: 1;
  background-color: transparent;
  border: 0px;
}
.el_panel.panel_about {
  top: 0px;
  left: -50%;
  background-color: var(--oscuro_siempre);
}
@media only screen and (max-width: 550px) {
  .el_panel.panel_about {
    left: -100%;
  }
}
.el_panel.panel_about.activo {
  left: 0px;
  background-color: var(--crema);
}
.el_panel.panel_about.activo .enlace_cerrar {
  right: 20px;
  opacity: 1;
  background-color: transparent;
  border: 0px;
}
.el_panel.panel_contact {
  top: 0px;
  right: -50%;
  background-color: var(--oscuro_siempre);
}
@media only screen and (max-width: 550px) {
  .el_panel.panel_contact {
    right: -100%;
  }
}
.el_panel.panel_contact.activo {
  right: 0px;
  background-color: var(--crema);
}
.el_panel.panel_contact.activo .enlace_cerrar {
  right: 20px;
  opacity: 1;
  background-color: transparent;
  border: 0px;
}
@media only screen and (max-width: 550px) {
  .el_panel {
    width: 100%;
  }
}
.el_panel img {
  width: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border: 1px solid var(--oscuro);
}
@media only screen and (max-width: 550px) {
  .el_panel img {
    width: 100%;
    margin-top: 20px;
  }
}
.el_panel p {
  padding-bottom: 10px;
  font-size: 18px;
}
.el_panel p:last-child {
  padding-bottom: 0px;
}
.el_panel .fila {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.el_panel .fila > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media only screen and (max-width: 550px) {
  .el_panel .fila > div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.el_panel .fila > div > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.cerrar {
  background-color: black;
  opacity: 0;
  position: fixed;
  top: 0px;
  left: -100%;
  z-index: 4;
  width: 100%;
  height: 100vh;
  -webkit-transition: all 0.4s ease-in-out 0.1s;
  transition: all 0.4s ease-in-out 0.1s;
  cursor: pointer;
}
.cerrar.activo {
  left: 0px;
  opacity: 0.75;
}

/*

	VARIABLES
	--color_fondo_footer

*/
.legal-228 main {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 120px;
}
.legal-228 main .centrado {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
}
.legal-228 main .centrado .panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  max-width: var(--ancho_maximo);
  margin: auto;
  padding: 40px 0px;
}
@media only screen and (max-width: 550px) {
  .legal-228 main .centrado .panel {
    padding: 0px;
  }
}
.legal-228 main .centrado .panel h1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 40px;
  color: var(--oscuro);
  font-family: var(--gosha);
  line-height: 0.8em;
  font-weight: 300;
  padding-bottom: 20px;
}
@media only screen and (max-width: 550px) {
  .legal-228 main .centrado .panel h1 {
    font-size: 30px;
  }
}
.legal-228 main .centrado .panel h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 20px;
  font-family: var(--gosha);
  font-size: 30px;
  line-height: 0.8em;
  color: var(--oscuro);
  font-weight: 300;
}
.legal-228 main .centrado .panel h2 span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.legal-228 main .centrado .panel h2 span.number {
  border-radius: 100px;
  padding: 15px;
  background-color: var(--oscuro);
  color: white;
  border-radius: 100px;
  margin-bottom: 20px;
  font-size: 23px;
  font-family: var(--gosha);
  line-height: 0.8em;
  letter-spacing: -0.05em;
  width: 60px;
  aspect-ratio: 1/1;
  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;
}
.legal-228 main .centrado .panel p {
  padding-bottom: 20px;
  font-family: var(--familia);
  font-size: 17px;
  line-height: 1.5em;
  color: var(--oscuro);
}
.legal-228 main .centrado .panel ol, .legal-228 main .centrado .panel ul {
  padding-bottom: 20px;
  padding-left: 20px;
}
.legal-228 main .centrado .panel ol li, .legal-228 main .centrado .panel ul li {
  color: var(--oscuro);
  font-family: var(--familia);
  line-height: 1.5em;
  font-size: 17px;
}
.legal-228 main .centrado .panel ol li strong, .legal-228 main .centrado .panel ul li strong {
  font-weight: 400;
  color: var(--azul_aliot);
}
.legal-228 main .centrado .panel ol li a, .legal-228 main .centrado .panel ul li a {
  color: var(--azul_aliot);
}

/*

	VARIABLES
	--color_fondo_footer

*/
.legal main {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.legal main .centrado {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
}
.legal main .centrado .panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  max-width: var(--ancho_maximo);
  margin: auto;
  padding: 40px 25px;
}
@media only screen and (max-width: 550px) {
  .legal main .centrado .panel {
    padding: 0px;
  }
}
.legal main .centrado .panel h1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 60px;
  color: var(--azul_aliot);
  font-family: var(--gosha);
  line-height: 0.8em;
  font-weight: 300;
  padding-bottom: 20px;
}
@media only screen and (max-width: 550px) {
  .legal main .centrado .panel h1 {
    font-size: 50px;
  }
}
.legal main .centrado .panel h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 20px;
  font-family: var(--gosha);
  font-size: 30px;
  line-height: 0.8em;
  color: var(--oscuro);
  font-weight: 300;
}
.legal main .centrado .panel h2 span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.legal main .centrado .panel h2 span.number {
  border-radius: 100px;
  padding: 15px;
  background-color: var(--oscuro);
  color: white;
  border-radius: 100px;
  margin-bottom: 20px;
  font-size: 23px;
  font-family: var(--gosha);
  line-height: 0.8em;
  letter-spacing: -0.05em;
  width: 60px;
  aspect-ratio: 1/1;
  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;
}
.legal main .centrado .panel p {
  padding-bottom: 20px;
  font-family: var(--familia);
  font-size: 17px;
  line-height: 1.5em;
  color: var(--oscuro);
}
.legal main .centrado .panel ol, .legal main .centrado .panel ul {
  padding-bottom: 20px;
  padding-left: 20px;
}
.legal main .centrado .panel ol li, .legal main .centrado .panel ul li {
  color: var(--oscuro);
  font-family: var(--familia);
  line-height: 1.5em;
  font-size: 17px;
}
.legal main .centrado .panel ol li strong, .legal main .centrado .panel ul li strong {
  font-weight: 400;
  color: var(--azul_aliot);
}
.legal main .centrado .panel ol li a, .legal main .centrado .panel ul li a {
  color: var(--azul_aliot);
}

.kit {
  padding: 20px;
  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-bottom: 20px;
  z-index: 2;
  position: relative;
}
.kit .kit_1 {
  width: 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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.kit .kit_1 img {
  display: block;
  width: auto;
  height: 100%;
  max-height: 50px;
}
.kit .kit_2 {
  width: 100%;
  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: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.kit .kit_2 img {
  display: block;
  width: auto;
  height: 100%;
  max-height: 50px;
}
@media only screen and (max-width: 550px) {
  .kit .kit_2 img {
    height: 50px;
  }
}

/*

	VARIABLES
	--color_fondo_footer

*/
#imageContainer {
  background-color: pink;
  position: fixed;
  top: 0px;
  height: 100vh;
  width: 100%;
  padding-left: 5vh;
  padding-right: 5vh;
  z-index: 3;
  display: none;
}
#imageContainer.visible {
  background-color: rgba(0, 0, 0, 0.7);
  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;
}
#imageContainer #anterior, #imageContainer #siguiente {
  text-transform: uppercase;
  border-radius: 4px;
  z-index: 4;
  cursor: pointer;
  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;
  color: var(--crema);
  padding: 5px 10px;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
@media only screen and (max-width: 550px) {
  #imageContainer #anterior, #imageContainer #siguiente {
    position: absolute;
    bottom: 20px;
  }
}
#imageContainer #anterior svg, #imageContainer #siguiente svg {
  width: 50px;
  height: 50px;
  fill: white;
}
@media only screen and (max-width: 550px) {
  #imageContainer #anterior {
    left: 20px;
  }
}
#imageContainer #anterior span {
  display: none;
}
@media only screen and (max-width: 550px) {
  #imageContainer #siguiente {
    right: 20px;
  }
}
#imageContainer #siguiente span {
  display: none;
}
#imageContainer #largeImage {
  background-color: white;
  max-width: 80%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-height: 80vh;
  position: relative;
  z-index: 3;
}
@media only screen and (max-width: 550px) {
  #imageContainer #largeImage {
    max-width: 100%;
    margin: auto;
  }
}
#imageContainer #closeButton {
  position: absolute;
  top: 20px;
  right: 20px;
  border-radius: 4px;
  z-index: 4;
  cursor: pointer;
  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;
  background-color: var(--oscuro);
  color: var(--crema);
  padding: 5px 10px;
  border: 1px solid var(--crema);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  text-transform: uppercase;
}
#imageContainer #closeButton:hover {
  color: var(--oscuro);
  background-color: var(--crema);
}

/*

	VARIABLES

	--color_fondo_alert
	--color_borde_alert

	--grosor_uno

*/
.alert {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  z-index: 3;
  bottom: -50px;
  left: 0px;
  width: 100%;
  background-color: var(--naranja);
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 1px solid var(--oscuro_siempre);
}
@media only screen and (max-width: 550px) {
  .alert {
    border-top: var(--grosor_uno) solid var(--color_borde_alert);
  }
}
.alert p {
  width: 100%;
  padding: 10px;
  margin: 0px;
  color: black;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media only screen and (max-width: 550px) {
  .alert p {
    padding: 15px 10px;
  }
}
.alert p a {
  font-weight: 700;
  color: black;
  margin-left: 20px;
}
.alert span {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
.alert.dark {
  bottom: 0px;
  text-transform: uppercase;
}

/*

  VARIABLES

  --grosor_uno

*/
.again {
  cursor: pointer;
}

#gdpr-cookie-message {
  position: fixed;
  bottom: 0px;
  z-index: 20;
  background-color: rgba(0, 0, 0, 0.8);
  border-top: 1px solid rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  padding: 20px;
}

#gdpr-cookie-message h4 {
  text-transform: uppercase;
  padding-bottom: 10px;
  font-size: 15px;
}

#gdpr-cookie-message p {
  line-height: 1.3em;
  font-size: 14px;
}

#gdpr-cookie-message a {
  color: rgb(255, 255, 255);
}

#gdpr-cookie-types {
  padding: 20px 0px;
}

#gdpr-cookie-types h5 {
  text-transform: uppercase;
  padding-bottom: 10px;
}

#gdpr-cookie-types ul {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#gdpr-cookie-types ul li {
  padding: 0px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7px;
}
#gdpr-cookie-types ul li input[type=checkbox] {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  vertical-align: middle;
  border: 1px solid var(--crema_siempre);
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  outline: none;
  cursor: pointer;
  position: relative;
}
@media only screen and (max-width: 550px) {
  #gdpr-cookie-types ul li input[type=checkbox] {
    width: 24px;
  }
}
#gdpr-cookie-types ul li input[type=checkbox]:checked {
  background-color: var(--crema_siempre);
}

#gdpr-cookie-message p:last-of-type {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 20px;
}

#gdpr-cookie-message button {
  padding: 10px 20px;
  border-radius: 4px;
  border: 0px;
  text-transform: uppercase;
  font-size: 14px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  cursor: pointer;
  border: 1px solid rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  background-color: rgba(0, 0, 0, 0);
  -webkit-appearance: none;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

#gdpr-cookie-message button:first-of-type:hover {
  background-color: rgba(0, 0, 0, 0);
}

#gdpr-cookie-message button:last-of-type {
  margin-left: 20px;
  padding: 0px;
  border: 0px;
  text-decoration: underline;
  font-size: 12px;
}

#gdpr-cookie-message label {
  cursor: pointer;
}

@media (max-width: 414px) {
  #gdpr-cookie-types {
    padding-bottom: 0px;
  }
  #gdpr-cookie-types h5 {
    margin: 0px;
  }
  #gdpr-cookie-types ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0px;
    padding: 0px;
  }
}