@charset "UTF-8";
/* -------- VARIABLES --------- */
* {
  box-sizing: border-box;
  overscroll-behavior: none; }

html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  scrollbar-width: none;
  font-family: "Poppins", sans-serif;
  color: #2727dc;
  font-size: 16px; }
  @media only screen and (max-width: 1024px) {
    html, body {
      font-size: 20px; } }

body {
  position: relative; }

h4 {
  font-family: "terminal_grotesque", sans-serif;
  font-size: 14px;
  margin: 0;
  font-weight: normal; }

h5 {
  font-family: "terminal_grotesque", sans-serif;
  font-size: 20px;
  line-height: 1.5;
  margin-top: 0; }

h1 {
  font-family: "terminal_grotesque", sans-serif;
  font-weight: normal;
  font-size: 36px; }
  h1.megatitulo {
    text-transform: uppercase;
    font-size: 150px;
    -webkit-font-smoothing: none;
    margin-top: 30px;
    margin-bottom: 5vh; }
    @media only screen and (max-width: 768px) {
      h1.megatitulo {
        margin-bottom: 2vh; } }
    @media (min-width: 768px) and (max-width: 1000px) {
      h1.megatitulo {
        font-size: 120px; } }

.text-center {
  text-align: center; }

.btm {
  margin-bottom: 5vh; }

.bottom-big {
  margin-bottom: 20vh; }

.top {
  margin-top: 10vh; }
  @media only screen and (max-width: 768px) {
    .top {
      margin-top: 5vh; } }

.half-top {
  margin-top: 5vh; }

.align-items-center {
  align-items: center; }

.flecha-nav {
  margin: 40px 70px 40px 40px; }
  @media only screen and (max-width: 576px) {
    .flecha-nav {
      margin: 20px 50px 20px 20px; } }
  .flecha-nav.no-margin {
    margin: 0; }
  .flecha-nav.amarillo {
    background-color: #FFBE33;
    margin: 0;
    height: 100px;
    overflow: hidden;
    padding: 20px 50px 20px 20px; }
  .flecha-nav img {
    width: 65px;
    cursor: pointer; }
    @media only screen and (max-width: 576px) {
      .flecha-nav img {
        width: 40px; } }
    .flecha-nav img.anterior {
      float: left;
      transform: rotate(180deg); }
    .flecha-nav img.siguiente {
      float: right; }

.marquee {
  position: relative;
  overflow: hidden; }
  @media only screen and (max-width: 768px) {
    .marquee {
      height: 32px; }
      .marquee p {
        font-size: 15px;
        margin: 0;
        line-height: 32px;
        text-transform: uppercase;
        letter-spacing: 1.5px; } }
  @media only screen and (min-width: 767px) {
    .marquee {
      height: 42px; }
      .marquee p {
        font-size: 20px;
        margin: 0;
        line-height: 42px;
        text-transform: uppercase;
        letter-spacing: 1.5px; } }
  .marquee .marquee__inner {
    width: fit-content;
    display: flex;
    position: relative; }
  .marquee p {
    white-space: nowrap;
    animation: marquee 120s linear infinite;
    -webkit-animation: marquee 120s linear infinite;
    -moz-animation: marquee 30s linear infinite; }
  @media only screen and (max-width: 1024px) {
    .marquee.big {
      height: 40px; }
      .marquee.big p {
        font-size: 25px;
        line-height: 40px; } }
  @media only screen and (min-width: 1025px) {
    .marquee.big {
      height: 55px; }
      .marquee.big p {
        font-size: 30px;
        line-height: 55px; } }
  .marquee.rojo {
    background-color: #fc4141;
    color: white; }
  .marquee.azul {
    background-color: #2727dc;
    color: white; }
  .marquee.morado {
    background-color: white;
    color: #9466ff;
    border: 1px solid #9466ff; }
  .marquee.verde {
    background-color: white;
    color: #66e3eb;
    border: 1px solid #66e3eb; }
  .marquee.rosa {
    background-color: white;
    color: #ff6656;
    border: 1px solid #ff6656; }
  .marquee.amarillo {
    background-color: white;
    color: #ffc733;
    border: 1px solid #ffc733; }

@keyframes marquee {
  from {
    margin-left: 15%; }
  to {
    margin-left: -120%; } }

.text-morado {
  color: #9466ff; }

.text-morado-oscuro {
  color: #7945ff; }

.text-naranja-oscuro {
  color: #f06723; }

.text-morado-claro {
  color: #b092ff; }

.text-morado-linea {
  color: white;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #9466ff; }
  @media only screen and (max-width: 576px) {
    .text-morado-linea {
      -webkit-text-stroke-width: 0;
      color: #9466ff; } }

.text-naranja-oscuro-linea {
  color: white;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #f06723; }
  @media only screen and (max-width: 576px) {
    .text-naranja-oscuro-linea {
      -webkit-text-stroke-width: 0;
      color: #f06723; } }

.text-blanco-linea {
  color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: white; }
  @media only screen and (max-width: 576px) {
    .text-blanco-linea {
      -webkit-text-stroke-width: 0;
      color: white; } }

.text-amarillo-linea {
  color: white;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #ffc733; }
  @media only screen and (max-width: 576px) {
    .text-amarillo-linea {
      -webkit-text-stroke-width: 0;
      color: #ffc733; } }

.text-rosa-linea {
  color: white;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #ff6656; }
  @media only screen and (max-width: 576px) {
    .text-rosa-linea {
      -webkit-text-stroke-width: 0;
      color: #ff6656; } }

.text-negro-linea {
  color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: black; }
  @media only screen and (max-width: 576px) {
    .text-negro-linea {
      -webkit-text-stroke-width: 0;
      color: black; } }

.text-verde-claro-linea {
  color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #66e3eb; }
  @media only screen and (max-width: 576px) {
    .text-verde-claro-linea {
      -webkit-text-stroke-width: 0;
      color: #66e3eb; } }

.text-negro {
  color: black; }

.text-rosa {
  color: #ff6656; }

.text-rosa-claro {
  color: #ff9193; }

.text-rosa-oscuro {
  color: #d13828; }

.text-azul {
  color: #2727dc; }

.text-rojo {
  color: #fc4141; }

.text-amarillo {
  color: #ffc733; }

.text-verde-claro {
  color: #66e3eb; }

.text-verde {
  color: #0db1cb; }

.text-naranja {
  color: #ff930a; }

.text-blanco {
  color: white; }

.terminal {
  font-family: "terminal_grotesque", sans-serif;
  font-weight: normal; }

.poppins {
  font-family: "Poppins", sans-serif;
  font-weight: normal; }

.grotesque {
  font-family: "Darker Grotesque", sans-serif;
  font-weight: normal; }
  .grotesque.bold {
    font-weight: 700; }

.bg-morado {
  background-color: #9466ff; }

.bg-rosa {
  background-color: #ff6656; }

.bg-rosa-claro {
  background-color: #ff9193; }

.bg-amarillo {
  background-color: #ffc733; }

.bg-verde-claro {
  background-color: #66e3eb; }

.bg-azul {
  background-color: #2727dc; }

.border-morado-dashed {
  border: 2px #9466ff dashed; }

.border-rosa-dashed {
  border: 2px #ff9193 dashed; }

.border-verde-dashed {
  border: 2px #66e3eb dashed; }

.border-amarillo-dashed {
  border: 2px #ffc733 dashed; }

mark {
  background-color: #fff555;
  color: #2727dc; }
  mark.bg-morado {
    background-color: #9466ff;
    color: white; }

.mayus {
  text-transform: uppercase; }

.lowercase {
  text-transform: none; }

/* -------- HOME -------- */
.home {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }
  .home .img-logo {
    width: 100%;
    max-width: 1000px;
    margin: auto;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 20px; }
    .home .img-logo .botones {
      margin-top: 2em;
      text-align: center;
      color: #2727dc;
      font-family: "Darker Grotesque", sans-serif;
      font-weight: 700;
      font-size: 30px; }
      @media only screen and (max-width: 768px) {
        .home .img-logo .botones {
          font-size: 20px;
          font-size: 24px; } }
      .home .img-logo .botones a {
        text-decoration: none;
        color: #2727dc;
        cursor: pointer; }
        .home .img-logo .botones a:hover {
          color: #fc4141; }
    .home .img-logo .cargando {
      margin-top: 2em;
      text-align: center;
      color: #2727dc;
      font-family: "Darker Grotesque", sans-serif;
      font-weight: 700;
      font-size: 30px; }
      .home .img-logo .cargando a {
        text-decoration: none;
        color: #2727dc; }

#menu {
  position: absolute;
  top: 0;
  height: 100%;
  right: 0;
  transition: width 0.6s;
  background-color: white;
  box-shadow: -4px 0px 4px 0px rgba(0, 0, 0, 0.09);
  overflow-y: hidden;
  display: flex;
  flex-direction: row;
  justify-content: space-evenly; }
  @media only screen and (max-width: 768px) {
    #menu {
      flex-direction: column; }
      #menu .bg-img {
        display: none; }
      #menu h1 {
        margin: auto;
        font-size: 39px;
        padding: 20px;
        min-height: auto;
        color: white; }
      #menu section.rojo {
        background: white; }
        #menu section.rojo h1 {
          color: #fc4141; }
      #menu section.morado {
        background: #9466ff; }
        #menu section.morado h1 {
          color: white; }
      #menu section.amarillo {
        background: #ffc733; }
        #menu section.amarillo h1 {
          color: white; }
      #menu section.verde {
        background: #66e3eb; }
        #menu section.verde h1 {
          color: white; }
      #menu section.rosa {
        background: #ff6656; }
        #menu section.rosa h1 {
          color: white; }
      #menu section.azul {
        background: white; }
        #menu section.azul h1 {
          color: #2727dc; } }
  #menu .cerrar {
    position: absolute;
    top: 0;
    right: 0;
    height: 80px;
    width: 70px;
    padding: 20px;
    cursor: pointer; }
    @media only screen and (max-width: 1024px) {
      #menu .cerrar {
        height: 55px;
        width: 40px;
        padding: 5px; } }
  #menu h1 {
    margin: 0;
    text-transform: uppercase; }
  #menu section {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    box-shadow: -8px 0px 13px 0px rgba(0, 0, 0, 0.09);
    cursor: pointer; }
    #menu section h1 {
      margin: 80px 15px 60px 15px;
      background-color: white;
      font-size: 30px; }
      @media only screen and (max-width: 1024px) {
        #menu section h1 {
          font-size: 24px;
          padding: 0;
          margin: 50px 10px 20px 10px; } }
      @media only screen and (max-width: 768px) {
        #menu section h1 {
          background-color: transparent;
          margin: auto 5px;
          text-align: center; } }
    #menu section .bg-img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  #menu.abierto {
    width: 100%; }
    #menu.abierto .sidebar {
      left: -10%; }
  #menu.cerrado {
    width: 30px; }
    #menu.cerrado .cerrar {
      display: none; }
  #menu .sidebar {
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 5vh 0; }
    #menu .sidebar #open-menu {
      flex-grow: 2;
      cursor: pointer; }
      @media only screen and (max-width: 576px) {
        #menu .sidebar #open-menu {
          padding-top: 40px; } }
    #menu .sidebar .texto-menu {
      display: flex;
      flex-direction: column; }
      #menu .sidebar .texto-menu h2 {
        transform: translate(10%, -50%) rotate(90deg);
        font-family: "Darker Grotesque", sans-serif;
        font-size: 18px;
        font-weight: 600;
        margin: 0;
        color: #fc4141; }
        #menu .sidebar .texto-menu h2 a {
          cursor: pointer;
          text-decoration: none; }
          #menu .sidebar .texto-menu h2 a:hover {
            color: #2727dc; }
        #menu .sidebar .texto-menu h2.idioma {
          display: flex; }
          #menu .sidebar .texto-menu h2.idioma a {
            padding: 0 4px; }
          @media only screen and (max-width: 576px) {
            #menu .sidebar .texto-menu h2.idioma {
              margin-bottom: 60px; } }
      #menu .sidebar .texto-menu img {
        height: 12px;
        margin-bottom: 25px; }

#content {
  height: 100vh; }

.contenido {
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  background-color: white;
  transition: left 0.5s;
  -moz-transition: left 10s;
  -webkit-transition: left 0.5s;
  -webkit-box-shadow: -4px 0px 4px 0px rgba(0, 0, 0, 0.09);
  -moz-box-shadow: -4px 0px 4px 0px rgba(0, 0, 0, 0.09);
  box-shadow: -4px 0px 4px 0px rgba(0, 0, 0, 0.09); }
  .contenido.selected {
    left: 0; }
  .contenido.siguiente {
    left: 105%; }
  .contenido.anterior {
    left: 0; }

#content section {
  min-height: 100%;
  display: flex; }

/*-- contenidos --*/
.flex-column {
  display: flex;
  flex-direction: column; }

.flex-row {
  display: flex;
  flex-direction: row; }
  @media only screen and (max-width: 576px) {
    .flex-row.flex-column-small {
      flex-direction: column; } }
  @media only screen and (max-width: 768px) {
    .flex-row.flex-column-md {
      flex-direction: column; } }

.flex-wrap {
  flex-wrap: wrap; }

.container {
  width: 100%;
  max-width: 1400px;
  padding: 20px;
  padding-right: 50px;
  margin: auto;
  display: flex; }
  @media only screen and (max-width: 576px) {
    .container {
      padding: 10px;
      padding-right: 40px; } }
  .container.no-padding {
    padding: 0; }
  .container .col-6 {
    width: 50%;
    padding: 10px; }
    @media only screen and (max-width: 576px) {
      .container .col-6.col-12-sm {
        width: 100%;
        padding: 0; } }
    @media only screen and (max-width: 576px) {
      .container .col-6.col-6-md {
        width: 100%; } }
  .container .col-2 {
    width: 16.66%;
    padding: 10px; }
  .container .col-1 {
    width: 8.33%;
    padding: 10px; }
  .container .col-10 {
    width: 83.33%;
    padding: 10px; }
  .container .col-12 {
    width: 100%;
    padding: 10px; }
  .container .col-7 {
    width: 58.33%;
    padding: 10px; }
    @media only screen and (max-width: 1024px) {
      .container .col-7 {
        width: 100%;
        padding: 5px; } }
  .container .col-8 {
    width: 66.6%;
    padding: 10px; }
    @media only screen and (max-width: 1024px) {
      .container .col-8 {
        width: 100%;
        padding: 5px; } }
  .container .col-4 {
    width: 33.3%; }
    @media only screen and (max-width: 1024px) {
      .container .col-4.col-12-md {
        width: 100%; } }
    @media only screen and (max-width: 768px) {
      .container .col-4.col-12-sm {
        width: 100%; } }
    @media only screen and (max-width: 1024px) {
      .container .col-4.col-6-md {
        width: 50%;
        padding: 10px; } }
    @media only screen and (max-width: 576px) {
      .container .col-4.col-6-md {
        width: 100%; } }
  .container .col-30-p {
    width: 30%; }
    @media only screen and (max-width: 1024px) {
      .container .col-30-p {
        width: 100%; } }
  .container .col-40-p {
    width: 40%; }
    @media only screen and (max-width: 1024px) {
      .container .col-40-p {
        width: 100%; } }
  .container .col-5 {
    width: 40%;
    padding: 10px; }
    @media only screen and (max-width: 1024px) {
      .container .col-5 {
        width: 100%;
        padding: 0; } }
    @media only screen and (max-width: 576px) {
      .container .col-5.col-12-sm {
        width: 100%;
        padding: 0; } }
  .container img {
    width: 100%;
    height: auto; }
  .container p {
    font-size: 18px;
    line-height: 1.5;
    margin-top: 0; }
    @media only screen and (max-width: 576px) {
      .container p {
        font-size: 14px;
        line-height: 1.4; } }

/* ------- INTRODUCCIÓN -------- */
.intro-expo {
  flex-direction: column;
  display: flex; }
  .intro-expo marquee {
    background-color: #2727dc; }
  .intro-expo h2 {
    font-size: 30px;
    line-height: 1.8;
    max-width: 800px; }
    @media only screen and (max-width: 576px) {
      .intro-expo h2 {
        font-size: 20px; } }
  .intro-expo p.texto {
    font-size: 22px;
    color: black;
    max-width: 630px;
    font-family: "Darker Grotesque", sans-serif;
    font-weight: 600;
    margin-top: 1em; }
    @media only screen and (max-width: 576px) {
      .intro-expo p.texto {
        font-size: 18px; } }

.img-en {
  display: none; }

@media only screen and (max-width: 1024px) {
  .hide-md {
    display: none; } }

/* ---infografia---- */
.infografia .pieza-emblematica .title {
  margin: 0; }

.infografia .pieza-emblematica .subtitle {
  font-size: 16px;
  line-height: 1.3; }

.infografia .pieza-emblematica .pieza-mampu {
  max-width: 500px;
  margin: auto; }

.infografia .big-number {
  font-size: 70px;
  margin-bottom: 0;
  margin-right: 10px; }

.infografia .divider {
  padding: 10px;
  margin: 20px;
  border-bottom: solid 2px; }
  .infografia .divider.morado {
    border-color: #9466ff; }
  .infografia .divider.rosa {
    border-color: #ff9193; }
  .infografia .divider.naranja {
    border-color: #ff930a; }
  .infografia .divider.verde {
    border-color: #66e3eb; }

.infografia .border-bottom {
  border-bottom: 2px solid; }
  .infografia .border-bottom.morado {
    border-color: #9466ff; }
  .infografia .border-bottom.naranja {
    border-color: #ff930a; }
  .infografia .border-bottom.verde {
    border-color: #66e3eb; }

.infografia .border-top {
  border-top: 2px solid; }
  .infografia .border-top.morado {
    border-color: #9466ff; }
  .infografia .border-top.naranja {
    border-color: #ff930a; }

.infografia .mod {
  font-size: 15px; }

.infografia .titulo {
  flex-direction: column; }
  .infografia .titulo h1 {
    margin-top: 0; }

.infografia .megatitulo {
  text-align: center;
  font-size: 100px; }
  @media only screen and (min-width: 577px) and (max-width: 768px) {
    .infografia .megatitulo {
      font-size: 60px; } }
  @media only screen and (max-width: 576px) {
    .infografia .megatitulo {
      font-size: 40px; } }
  .infografia .megatitulo.text-morado-linea {
    -webkit-text-stroke-width: 2px; }
    @media only screen and (max-width: 576px) {
      .infografia .megatitulo.text-morado-linea {
        -webkit-text-stroke-width: 0px; } }
  .infografia .megatitulo.text-rosa-linea {
    -webkit-text-stroke-width: 2px; }
    @media only screen and (max-width: 576px) {
      .infografia .megatitulo.text-rosa-linea {
        -webkit-text-stroke-width: 0px; } }
  .infografia .megatitulo.text-naranja-oscuro-linea {
    -webkit-text-stroke-width: 2px; }
    @media only screen and (max-width: 576px) {
      .infografia .megatitulo.text-naranja-oscuro-linea {
        -webkit-text-stroke-width: 0px; } }
  .infografia .megatitulo.text-verde-claro-linea {
    -webkit-text-stroke-width: 2px; }
    @media only screen and (max-width: 576px) {
      .infografia .megatitulo.text-verde-claro-linea {
        -webkit-text-stroke-width: 0px; } }

.infografia .small {
  font-size: 17px;
  font-family: "Darker Grotesque", sans-serif;
  line-height: 1.1; }

.infografia .img-colectivo {
  margin-left: 20px; }
  @media only screen and (max-width: 1024px) {
    .infografia .img-colectivo {
      margin-left: 0; } }

.infografia .contexto {
  font-size: 20px; }
  .infografia .contexto .col-4, .infografia .contexto .col-30-p, .infografia .contexto .col-40-p {
    padding: 0 20px; }
    @media only screen and (max-width: 1024px) {
      .infografia .contexto .col-4, .infografia .contexto .col-30-p, .infografia .contexto .col-40-p {
        padding: 0; } }
  @media only screen and (max-width: 1024px) {
    .infografia .contexto .col-6-md {
      padding: 10px;
      margin-bottom: 20px; } }
  @media only screen and (max-width: 1024px) {
    .infografia .contexto .ubicacion {
      flex-direction: row;
      align-items: center; }
      .infografia .contexto .ubicacion p {
        margin-left: 22px; } }
  @media only screen and (max-width: 576px) {
    .infografia .contexto .ubicacion {
      flex-direction: column;
      align-items: center; }
      .infografia .contexto .ubicacion p {
        margin-left: 0; } }
  @media only screen and (max-width: 1024px) {
    .infografia .contexto .poblacion-todo {
      justify-content: space-around; } }
  @media only screen and (max-width: 576px) {
    .infografia .contexto .poblacion-todo {
      flex-direction: column;
      align-items: center; } }
  .infografia .contexto .poblacion-todo .pie {
    max-width: 300px; }
    @media only screen and (max-width: 576px) {
      .infografia .contexto .poblacion-todo .pie {
        margin-bottom: 30px; } }
  .infografia .contexto .border-right {
    border-right: 2px solid; }
    @media only screen and (max-width: 1024px) {
      .infografia .contexto .border-right {
        border: none; } }
  .infografia .contexto.morado .border-right {
    border-color: #9466ff; }
  .infografia .contexto.amarillo .border-right {
    border-color: #ff930a; }
  .infografia .contexto.rosa .border-right {
    border-color: #d13828; }
  .infografia .contexto.verde .border-right {
    border-color: #66e3eb; }
  .infografia .contexto .mapa {
    margin-bottom: 20px;
    max-width: 300px; }
    @media only screen and (max-width: 576px) {
      .infografia .contexto .mapa {
        margin-top: 30px; } }

.infografia .black-title {
  font-family: "Darker Grotesque", sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 1.2; }

.infografia .black-text {
  font-family: "Darker Grotesque", sans-serif;
  font-weight: 800;
  font-size: 19px;
  line-height: 1.3; }

.infografia .poblacion {
  margin-left: 20px;
  text-transform: uppercase;
  font-family: "terminal_grotesque", sans-serif; }
  @media only screen and (max-width: 576px) {
    .infografia .poblacion {
      margin-left: 0; } }
  .infografia .poblacion p {
    margin-bottom: 0; }
  .infografia .poblacion .border {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 2px solid; }
    .infografia .poblacion .border.morado {
      border-color: #9466ff; }
    .infografia .poblacion .border.rosa {
      border-color: #ff6656; }
  .infografia .poblacion .combined {
    padding-top: 10px; }
    .infografia .poblacion .combined .number {
      font-size: 50px;
      line-height: 1.1; }
    .infografia .poblacion .combined .big {
      font-size: 30px;
      line-height: 1.1; }
    .infografia .poblacion .combined .small {
      font-size: 12px;
      line-height: 1.1; }

.infografia .economia {
  text-transform: uppercase;
  font-family: "terminal_grotesque", sans-serif; }
  .infografia .economia .m-btm {
    margin-bottom: 20px; }
  .infografia .economia .big {
    padding-top: 20px;
    padding-bottom: 20px;
    text-transform: none;
    font-size: 20px;
    line-height: 1.2; }
    .infografia .economia .big.bg-amarillo {
      padding-left: 10px;
      padding-right: 10px;
      margin-bottom: 20px;
      text-transform: uppercase; }
  .infografia .economia .grande {
    font-size: 24px;
    margin-bottom: 0; }
  .infografia .economia .suelos {
    line-height: 1.1;
    margin-bottom: 0; }
  .infografia .economia .padding-top {
    padding-top: 20px; }

.infografia .carac {
  border: 2px solid;
  padding: 40px 0; }
  @media only screen and (max-width: 1024px) {
    .infografia .carac {
      padding: 30px 10px; }
      .infografia .carac .megatitulo {
        font-size: 60px; } }
  @media only screen and (max-width: 576px) {
    .infografia .carac .megatitulo {
      font-size: 30px; } }
  .infografia .carac.morado {
    border-color: #9466ff; }
  .infografia .carac.rosa {
    border-color: #ff6656; }
  .infografia .carac.verde {
    border-color: #66e3eb; }
  .infografia .carac.naranja {
    border-color: #ff930a; }
  .infografia .carac .titulo p {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto; }
  .infografia .carac .actor {
    margin-bottom: 15px; }
    .infografia .carac .actor .title {
      font-size: 24px; }
    .infografia .carac .actor p {
      font-size: 14px; }
  .infografia .carac .pad {
    padding: 30px; }

.infografia .estado {
  align-items: center;
  padding-top: 20px; }
  .infografia .estado .big-number {
    font-size: 50px;
    line-height: 0.8; }
    @media only screen and (max-width: 576px) {
      .infografia .estado .big-number {
        font-size: 35px; } }
  .infografia .estado .big {
    padding-top: 20px;
    padding-bottom: 20px;
    text-transform: none;
    font-size: 20px;
    line-height: 1.2; }

/* --- LIENA DE TIEMPO ----*/
.linea-tiempo {
  display: flex; }
  .linea-tiempo .p-hito {
    font-size: 14px;
    margin-bottom: 1px; }
  .linea-tiempo.bojaya .line {
    border-left: 2px solid #9466ff; }
  .linea-tiempo.bojaya .fecha {
    color: #7945ff; }
  .linea-tiempo.sonson .line {
    border-left: 2px solid #66e3eb; }
  .linea-tiempo.sonson .fecha {
    color: #66e3eb; }
  .linea-tiempo.choiba .line {
    border-left: 2px solid #ff6656; }
  .linea-tiempo.choiba .fecha {
    color: #ff6656; }
  .linea-tiempo.mampujan .line {
    border-left: 2px solid #ff930a; }
  .linea-tiempo.mampujan .fecha {
    color: #ff930a; }
  .linea-tiempo .hito {
    outline: none;
    position: relative;
    height: 250px;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    .linea-tiempo .hito.img {
      justify-content: flex-end;
      margin-bottom: 20px; }
    .linea-tiempo .hito.img-small {
      justify-content: flex-end;
      margin-bottom: 20px; }
      .linea-tiempo .hito.img-small img {
        padding-left: 40px;
        padding-right: 40px; }
    .linea-tiempo .hito:focus {
      outline: none; }
    .linea-tiempo .hito:nth-child(4n) {
      height: 320px; }
    .linea-tiempo .hito:nth-child(2n) {
      height: 300px; }
    .linea-tiempo .hito:nth-child(3n) {
      height: 340px; }
    .linea-tiempo .hito .bottom {
      display: flex;
      flex-direction: column;
      flex-grow: 2; }
      .linea-tiempo .hito .bottom .line {
        border-left: 2px solid;
        flex-grow: 2; }
      .linea-tiempo .hito .bottom .fecha {
        font-size: 13px; }
  .linea-tiempo.arriba .slick-track {
    display: flex;
    align-items: flex-end; }
  .linea-tiempo.abajo .slick-track {
    display: flex;
    align-items: flex-start; }
  .linea-tiempo.abajo .fecha {
    margin-top: 1em; }

.slick-slide {
  margin-left: 30px; }

.slick-list {
  margin-left: -30px; }

.slick-arrow {
  display: none !important; }

/* --- VIDEO ----*/
.video {
  min-height: auto !important; }
  .video .player {
    width: calc(100% - 30px);
    height: 100%; }

.cuadro-titulo {
  width: 100%;
  height: 20px;
  text-align: center;
  text-transform: uppercase;
  color: white; }
  .cuadro-titulo h4 {
    line-height: 20px;
    letter-spacing: 0.3px; }

/* --- PIEZA ---- */
.pieza .megatitulo {
  text-align: center;
  -webkit-text-stroke-width: 2px; }
  @media only screen and (max-width: 1024px) {
    .pieza .megatitulo {
      font-size: 80px; } }
  @media only screen and (max-width: 768px) {
    .pieza .megatitulo {
      font-size: 60px; } }
  @media only screen and (max-width: 576px) {
    .pieza .megatitulo {
      font-size: 45px;
      -webkit-text-stroke-width: 0; } }

@media only screen and (max-width: 1024px) {
  .pieza h3 {
    font-size: 16px; } }

@media only screen and (max-width: 768px) {
  .pieza h3 {
    font-size: 14px; } }

.pieza .descripcion-pieza {
  border-bottom: 2px solid #9466ff; }
  .pieza .descripcion-pieza.amarillo {
    border-color: #ffc733; }
    .pieza .descripcion-pieza.amarillo .ficha-tecnica {
      border-color: #ffc733; }
      .pieza .descripcion-pieza.amarillo .ficha-tecnica .medidas,
      .pieza .descripcion-pieza.amarillo .ficha-tecnica .titulo {
        border-color: #ffc733; }
  .pieza .descripcion-pieza.verde {
    border-color: #66e3eb; }
    .pieza .descripcion-pieza.verde .ficha-tecnica {
      border-color: #66e3eb; }
      .pieza .descripcion-pieza.verde .ficha-tecnica .medidas,
      .pieza .descripcion-pieza.verde .ficha-tecnica .titulo {
        border-color: #66e3eb; }
  .pieza .descripcion-pieza.rosa {
    border-color: #ff6656; }
    .pieza .descripcion-pieza.rosa .ficha-tecnica {
      border-color: #ff6656; }
      .pieza .descripcion-pieza.rosa .ficha-tecnica .medidas,
      .pieza .descripcion-pieza.rosa .ficha-tecnica .titulo {
        border-color: #ff6656; }
  .pieza .descripcion-pieza .ficha-tecnica {
    width: 30%;
    border-right: 2px solid #9466ff;
    justify-content: flex-end; }
    @media only screen and (max-width: 768px) {
      .pieza .descripcion-pieza .ficha-tecnica {
        width: 100%;
        border: none; } }
    .pieza .descripcion-pieza .ficha-tecnica h1 {
      padding: 15px 0;
      text-transform: uppercase;
      margin: 0; }
      .pieza .descripcion-pieza .ficha-tecnica h1.titulo {
        border-bottom: 2px solid #9466ff; }
      .pieza .descripcion-pieza .ficha-tecnica h1.medidas {
        border-bottom: 2px solid #9466ff;
        -webkit-font-smoothing: none; }
      .pieza .descripcion-pieza .ficha-tecnica h1.anio {
        -webkit-font-smoothing: none; }
  .pieza .descripcion-pieza .texto-descripcion {
    margin: 0;
    padding: 0 0 15px 15px;
    color: black;
    font-size: 22px;
    font-family: "Darker Grotesque", sans-serif;
    font-weight: 600;
    width: 70%; }
    @media only screen and (max-width: 768px) {
      .pieza .descripcion-pieza .texto-descripcion {
        width: 100%;
        padding-left: 0;
        border: none;
        font-size: 18px; } }
  @media (min-width: 768px) and (max-width: 1000px) {
    .pieza .descripcion-pieza h1 {
      font-size: 30px; }
    .pieza .descripcion-pieza .texto-descripcion {
      font-size: 18px; } }

.pieza .texto-interaccion {
  margin: 0;
  padding: 20px 0;
  color: black;
  font-size: 22px;
  font-family: "Darker Grotesque", sans-serif;
  font-weight: 600;
  border-bottom: 2px solid #9466ff;
  border-top: 2px solid #9466ff;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px; }
  .pieza .texto-interaccion.amarillo {
    border-color: #ffc733; }

/* ---- PARCHES ----- */
@media only screen and (max-width: 1024px) {
  .parches .intro-parches .megatitulo {
    font-size: 100px; } }

@media only screen and (max-width: 768px) {
  .parches .intro-parches .megatitulo {
    font-size: 80px; } }

@media only screen and (max-width: 768px) {
  .parches .intro-parches .megatitulo {
    font-size: 60px; } }

.parches .intro-parches h1 {
  line-height: 0.8;
  margin-bottom: 20px;
  margin-top: 0; }

.parches .intro-parches p {
  margin: 0;
  padding: 20px 0;
  color: black;
  font-size: 18px;
  font-family: "Darker Grotesque", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.5;
  max-width: 650px; }
  @media only screen and (max-width: 768px) {
    .parches .intro-parches p {
      font-size: 14px; } }

.parches .parche {
  padding: 30px;
  cursor: pointer; }
  @media only screen and (max-width: 1024px) {
    .parches .parche {
      padding: 10px; } }

.parches .parche-container {
  border: solid 2px black;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
  position: relative; }
  .parches .parche-container .img-parche {
    padding: 10px;
    border-bottom: black 2px solid; }
    @media only screen and (max-width: 1024px) {
      .parches .parche-container .img-parche {
        padding: 5px; } }
  .parches .parche-container .play-negro,
  .parches .parche-container .play-color {
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 0;
    right: 0;
    cursor: pointer; }
  .parches .parche-container .des-parches {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    color: black;
    text-transform: uppercase; }
    .parches .parche-container .des-parches .bordado-por {
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 10px;
      border-bottom: black 2px solid;
      flex-grow: 1; }
      @media only screen and (max-width: 1024px) {
        .parches .parche-container .des-parches .bordado-por {
          padding: 10px; } }
      @media only screen and (max-width: 768px) {
        .parches .parche-container .des-parches .bordado-por {
          padding: 5px; } }
    .parches .parche-container .des-parches .pais {
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 10px;
      flex-grow: 1; }
      @media only screen and (max-width: 1024px) {
        .parches .parche-container .des-parches .pais {
          padding: 5px; } }
    .parches .parche-container .des-parches h6 {
      margin: 3px 0;
      font-family: "Darker Grotesque", sans-serif;
      font-size: 15px; }
      @media (min-width: 768px) and (max-width: 1000px) {
        .parches .parche-container .des-parches h6 {
          font-size: 12px; } }
    .parches .parche-container .des-parches h2 {
      margin: 0;
      font-family: "terminal_grotesque", sans-serif;
      font-weight: normal;
      font-size: 36px;
      letter-spacing: 2px; }
      @media only screen and (max-width: 1024px) {
        .parches .parche-container .des-parches h2 {
          font-size: 30px; } }
      @media only screen and (max-width: 768px) {
        .parches .parche-container .des-parches h2 {
          font-size: 24px; } }
  .parches .parche-container .transcripcion {
    background-color: black;
    overflow-y: scroll;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding: 20px;
    padding-right: 40px; }
    @media (min-width: 768px) and (max-width: 1000px) {
      .parches .parche-container .transcripcion {
        padding-right: 15px; } }
    .parches .parche-container .transcripcion p {
      font-family: "Darker Grotesque", sans-serif;
      font-weight: 600;
      font-size: 22px;
      line-height: 1.2;
      color: white; }
      @media (max-width: 1000px) {
        .parches .parche-container .transcripcion p {
          font-size: 18px; } }

/*--------- HACER ----------- */
#background-hacer {
  background-image: url(../img/svg/background_hacer.svg);
  background-position: center bottom;
  background-size: cover; }

#titulo-hacer {
  align-self: center;
  line-height: 120px; }
  @media only screen and (max-width: 1024px) {
    #titulo-hacer {
      font-size: 100px;
      line-height: 100px; } }
  @media only screen and (max-width: 768px) {
    #titulo-hacer {
      font-size: 80px;
      line-height: 80px; } }
  @media only screen and (max-width: 576px) {
    #titulo-hacer {
      font-size: 50px;
      line-height: 50px;
      -webkit-text-stroke-width: 0; } }

#intro-hacer h1 {
  font-weight: 600;
  font-family: "Darker grotesque";
  font-size: 40px; }
  @media only screen and (max-width: 768px) {
    #intro-hacer h1 {
      font-size: 35px; } }
  @media only screen and (max-width: 576px) {
    #intro-hacer h1 {
      font-size: 25px; } }

#intro-hacer {
  align-items: center;
  justify-content: space-between; }

.datos-hacer h2 {
  font-weight: normal;
  font-family: "Darker grotesque";
  font-size: 22px; }

.datos-hacer {
  margin: 0 0 7.5vh 0;
  align-items: center;
  justify-content: space-between; }

.datos-hacer a {
  text-decoration: none; }

#fin-datos-hacer {
  border-top: 1px solid;
  border-bottom: 1px solid;
  padding: 5vh 10vw;
  margin-bottom: 15vh; }

#fin-datos-hacer h2 {
  text-align: center; }

.hacer.cuadro-titulo {
  width: 100vw;
  align-self: center;
  height: 20px;
  text-align: center;
  text-transform: uppercase;
  color: white; }

.hacer.cuadro-titulo h4 {
  line-height: 20px;
  letter-spacing: 0.3px; }

.logo-hacer {
  max-width: 500px; }

.container .col-6.lista-materiales {
  width: 50%;
  padding: 3vw; }
  @media only screen and (max-width: 1024px) {
    .container .col-6.lista-materiales {
      width: 100%;
      padding: 0; } }

#instrucciones-hacer {
  justify-content: space-between;
  margin: 8vh 0 8hv 0; }

#materiales-hacer {
  object-fit: cover;
  width: 100%;
  height: 100%; }

div.lista-materiales > div {
  border: 3px solid;
  height: 100%; }

div.lista-materiales > div > h1 {
  margin: 0;
  padding: 30px;
  text-transform: uppercase;
  background-color: #2727dc; }

#materiales {
  margin: 20px; }

#materiales p {
  transition: 0.1s; }

#materiales p:hover {
  cursor: pointer;
  color: #FFBE33;
  transition: 0.1s; }

#materiales > p {
  margin: 3px; }

#patron-calcar {
  padding: 15vh 0 15vh 0;
  margin: 5vh 0 10vh 0;
  align-items: center;
  justify-content: space-around;
  border-top: 3px solid;
  border-bottom: 3px solid; }

#patron-calcar h1 {
  text-transform: uppercase;
  text-align: center; }

#paso-a-paso {
  padding: 0 -2vw; }

.paso {
  padding: 2vh 2vw; }

.paso img {
  object-fit: cover;
  width: 100%; }

.paso h1 {
  border-bottom: 2px solid;
  margin-bottom: 8px;
  text-transform: uppercase; }

#hashtags {
  padding: 10vh 0 10vh 0;
  margin: 10vh 0 10vh 0;
  align-items: center;
  justify-content: space-around;
  border-top: 3px solid;
  border-bottom: 3px solid; }

#hashtags h1 {
  text-transform: uppercase;
  text-align: center; }
  @media only screen and (max-width: 576px) {
    #hashtags h1 {
      font-size: 25px; } }

#ejemplos-hacer {
  justify-content: center;
  margin: 1vh 10vw 10vh 10vw; }

#ejemplos-hacer img {
  padding: 0.8vw; }

#footer-hacer {
  background-color: #FFBE33; }

#footer-hacer img {
  object-fit: cover;
  width: 100%; }

/* -------- CREDITOS -------- */
.creditos {
  width: 100%;
  flex-direction: row;
  background-color: #2727dc; }
  @media only screen and (max-width: 768px) {
    .creditos {
      flex-direction: column; } }
  .creditos .azul {
    min-height: 100vh;
    height: 100%;
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px; }
    .creditos .azul h1 {
      height: 10%;
      color: white; }
    @media only screen and (max-width: 768px) {
      .creditos .azul {
        width: 100%;
        min-height: 0;
        padding: 0 40px 20px 15px; } }
    .creditos .azul .agradecimientos {
      font-family: "Darker Grotesque", sans-serif;
      font-size: 24px;
      font-weight: 600;
      text-transform: uppercase;
      color: white;
      line-height: 1.5;
      margin-bottom: 3vh; }
      @media only screen and (max-width: 1024px) {
        .creditos .azul .agradecimientos {
          font-size: 20px; } }
      @media only screen and (max-width: 576px) {
        .creditos .azul .agradecimientos {
          font-size: 18px; } }
  .creditos .blanco {
    min-height: 100vh;
    height: 100%;
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background-color: white; }
    @media only screen and (max-width: 768px) {
      .creditos .blanco {
        width: 100%;
        min-height: 0; } }
    .creditos .blanco h1 {
      height: 10%;
      padding: 20px; }
    .creditos .blanco .credito {
      padding: 20px;
      padding-right: 45px;
      border-bottom: 1px solid black;
      text-transform: uppercase; }
      @media only screen and (max-width: 768px) {
        .creditos .blanco .credito {
          padding: 15px;
          padding-right: 40px; } }
      .creditos .blanco .credito h5 {
        font-family: "Darker Grotesque", sans-serif;
        margin: 5px 0;
        font-size: 15px; }
        @media (min-width: 768px) and (max-width: 1000px) {
          .creditos .blanco .credito h5 {
            font-size: 13px; } }
      .creditos .blanco .credito p {
        margin: 0;
        font-family: "Darker Grotesque", sans-serif;
        color: black;
        font-size: 15px; }
        @media (min-width: 768px) and (max-width: 1000px) {
          .creditos .blanco .credito p {
            font-size: 13px; } }
    .creditos .blanco .social {
      display: flex;
      flex-direction: row;
      min-height: 10%;
      justify-content: space-evenly;
      align-items: center;
      padding: 0; }
      @media only screen and (max-width: 576px) {
        .creditos .blanco .social {
          flex-direction: column; } }
      .creditos .blanco .social .boton {
        font-size: 25px;
        font-family: "terminal_grotesque", sans-serif;
        text-align: center;
        border-right: 1px solid black;
        flex-grow: 1;
        height: 90px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        cursor: pointer; }
        @media only screen and (max-width: 576px) {
          .creditos .blanco .social .boton {
            border-right: none;
            border-bottom: 1px solid black;
            height: auto;
            min-height: 70px;
            width: 100%; } }
        @media (min-width: 768px) and (max-width: 1000px) {
          .creditos .blanco .social .boton {
            font-size: 20px; } }
        .creditos .blanco .social .boton:hover a {
          color: white; }
        .creditos .blanco .social .boton a {
          color: black;
          text-decoration: none; }
        .creditos .blanco .social .boton:hover {
          background-color: #2727dc; }
    .creditos .blanco .logos {
      display: flex;
      flex-wrap: wrap;
      margin-top: 10px; }
      .creditos .blanco .logos img {
        height: 40px;
        margin: 10px; }
        @media (min-width: 768px) and (max-width: 1000px) {
          .creditos .blanco .logos img {
            height: 30px; } }
      .creditos .blanco .logos.small img {
        height: 25px;
        margin: 0 10px; }

/*.only-desktop {
    display: none;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    background-color: $azul;
    color: $amarillo;
    height: 100vh;
    width: 100vw;
    padding: 20px;
    text-align: center;
    text-transform: uppercase;
    

    h1 {
        font-size: 20px !important;
        color: $amarillo
    }

    @media (max-width: 800px) {
        display: flex;
    }
}*/
/* ------ Estilos scripts interactivos ------ */
.interactive .max-800 {
  max-width: 50%;
  margin: auto; }
  @media only screen and (max-width: 768px) {
    .interactive .max-800 {
      max-width: 100%; } }

.interactive .max-1000 {
  max-width: 70%;
  margin: auto; }
  @media only screen and (max-width: 768px) {
    .interactive .max-1000 {
      max-width: 100%; } }

.interactive .contenedor {
  position: relative;
  overflow: hidden; }
  .interactive .contenedor img.anverso {
    object-fit: contain;
    position: absolute; }
  .interactive .contenedor img.anverso-hidden {
    object-fit: contain;
    visibility: hidden; }
  .interactive .contenedor .rect {
    height: 130px;
    width: 130px;
    cursor: pointer;
    position: absolute;
    background-color: rgba(255, 255, 255, 0.2);
    transform: translate(-50%, -50%); }
    @media only screen and (max-width: 1024px) {
      .interactive .contenedor .rect {
        height: 100px;
        width: 100px; } }
    @media only screen and (max-width: 768px) {
      .interactive .contenedor .rect {
        height: 70px;
        width: 70px; } }
    @media only screen and (max-width: 576px) {
      .interactive .contenedor .rect {
        height: 40px;
        width: 40px; } }
    .interactive .contenedor .rect.big {
      height: 200px;
      width: 200px; }
      @media only screen and (max-width: 1024px) {
        .interactive .contenedor .rect.big {
          height: 120px;
          width: 120px; } }
      @media only screen and (max-width: 768px) {
        .interactive .contenedor .rect.big {
          height: 90px;
          width: 90px; } }
      @media only screen and (max-width: 576px) {
        .interactive .contenedor .rect.big {
          height: 50px;
          width: 50px; } }
    .interactive .contenedor .rect:hover {
      background-color: rgba(255, 255, 255, 0.3); }

.interactive .transcripciones {
  overflow-y: scroll;
  padding: 20px;
  height: auto; }
  @media only screen and (max-width: 1024px) {
    .interactive .transcripciones {
      padding: 10px; } }
  .interactive .transcripciones .transcripcion-pieza {
    display: none;
    font-family: "Darker Grotesque", sans-serif;
    font-weight: 600;
    font-size: 22px;
    line-height: 1.2;
    color: white; }
    @media only screen and (max-width: 1024px) {
      .interactive .transcripciones .transcripcion-pieza {
        font-size: 18px; } }
    .interactive .transcripciones .transcripcion-pieza.text-negro {
      color: black; }
    @media (min-width: 768px) and (max-width: 1000px) {
      .interactive .transcripciones .transcripcion-pieza {
        font-size: 20px; } }

/* ------ color de resaltado ------ */
::selection {
  background-color: #fff555;
  color: #2727dc; }

::-webkit-selection {
  background-color: #fff555;
  color: #2727dc; }

/* ------ QUITAR BARRAS DE SCROLL ------ */
::-webkit-scrollbar {
  display: none; }

body {
  -ms-overflow-style: none; }

.contenido {
  scrollbar-width: none; }

/* ------ TIPOGRAFÍAS ------ */
@font-face {
  font-family: 'Poppins';
  src: url("../fonts/Poppins-Medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'terminal_grotesque';
  src: url("terminal-grotesque-webfont.eot");
  src: url("terminal-grotesque-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/terminal-grotesque-webfont.woff2") format("woff2"), url("../fonts/terminal-grotesque-webfont.woff") format("woff"), url("../fonts/terminal-grotesque-webfont.ttf") format("truetype"), url("../fonts/terminal-grotesque-webfont.svg#terminal_grotesqueregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Darker Grotesque';
  src: url("../fonts/DarkerGrotesque-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Darker Grotesque';
  src: url("../fonts/DarkerGrotesque-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal; }

@font-face {
  font-family: 'Darker Grotesque';
  src: url("../fonts/DarkerGrotesque-Black.ttf") format("truetype");
  font-weight: 800;
  font-style: normal; }
