
@font-face { font-family: 'Jost'; font-style: normal; font-weight: 300; font-display: swap; src: url(texto-300.woff2) format('woff2'); }
@font-face { font-family: 'Jost'; font-style: normal; font-weight: 400; font-display: swap; src: url(texto-400.woff2) format('woff2'); }
@font-face { font-family: 'Jost'; font-style: normal; font-weight: 500; font-display: swap; src: url(texto-500.woff2) format('woff2'); }
@font-face { font-family: 'Rotulo'; font-style: normal; font-weight: 600; font-display: swap; src: url(rotulo.woff2) format('woff2'); }

:root { --margin: 10rem; --gap: 10rem; --rvw: 1vw; --column: calc(var(--rvw) * 100 / 9 - var(--margin) * 2 / 9 - var(--gap) * 8 / 9);
  --tinta: #0c0c0c; --expo: cubic-bezier(.19, 1, .22, 1); --claro: #fff; }
@media (max-width: 1024px) { :root { --margin: 10px; --gap: 10px; } }
@media (max-width: 740px) { :root { --column: calc(var(--rvw) * 100 / 4 - var(--margin) * 2 / 4 - var(--gap) * 3 / 4); } }

*, *::before, *::after { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html { font-size: .0694444vw; scroll-behavior: auto; -webkit-text-size-adjust: 100%; }
@media (max-width: 1024px) { html { font-size: 1px; } }
body { margin: 0; min-height: 100%; background: #fff; color: var(--tinta); font-family: 'Jost', 'Futura', 'Century Gothic', sans-serif; font-size: 16rem; font-weight: 400; line-height: 1.2;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
@media (max-width: 1024px) { body { font-size: 14px; } }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-stopped { overflow: hidden; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 2px; }
img { display: block; max-width: 100%; }
figure { margin: 0; }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
h1, h2, h3, p { margin: 0; }
[hidden] { display: none !important; }
.sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.saltar { position: fixed; left: 10px; top: -60px; z-index: 999999999; background: #fff; color: #0c0c0c; padding: 10px 14px; border-radius: 4px; transition: top .3s; }
.saltar:focus { top: 10px; }
.h1, .h2, .super { font-weight: 300; letter-spacing: -.02em; line-height: 1; margin: 0; }
.super { font-size: 120rem; letter-spacing: -.06em; }
.h1 { font-size: 56rem; }
.small { font-size: 14rem; }
@media (max-width: 1024px) { .super { font-size: 56px; } .h1 { font-size: 25px; } }
.no-transition, .no-transition * { transition: none !important; }


.intro { position: fixed; inset: 0; z-index: 99999999; background: #fff; color: var(--tinta); overflow: hidden; display: none; transition: opacity 1s cubic-bezier(.6, .14, 0, 1); }
.con-intro .intro { display: block; }
.intro.oculta { opacity: 0; pointer-events: none; }
.intro svg { position: absolute; left: 0; top: 0; width: calc(100vw - var(--margin) * 2); height: auto; transform-origin: 0 0; fill: currentColor; overflow: visible; will-change: transform; }
.velo { position: fixed; inset: 0; z-index: 9999999; background: #fff; opacity: 0; pointer-events: none; transition: opacity .8s var(--expo); }
.velo.activo { opacity: 1; pointer-events: auto; }


.nav { position: fixed; left: 0; top: 0; z-index: 99999; width: 100%; display: flex; gap: var(--gap); justify-content: space-between; padding: 20rem var(--margin);
  pointer-events: none; -webkit-user-select: none; user-select: none; transition: opacity 1s var(--expo), color 1s var(--expo); }
@media (max-width: 1024px) { .nav { padding: 13px var(--margin); } }
.nav .logo { display: flex; align-items: center; height: 20rem; pointer-events: auto; font-family: 'Rotulo', 'Barlow Condensed', 'Arial Narrow', sans-serif; font-weight: 600; font-size: 28rem; line-height: 20rem;
  text-transform: uppercase; letter-spacing: .012em; white-space: nowrap; padding-top: 1rem; }
.nav .derecha { display: flex; align-items: center; gap: 16rem; width: calc(var(--column) * 4 + var(--gap) * 3); }
.nav .item { font-weight: 500; line-height: 1; pointer-events: auto; position: relative; cursor: pointer; }
.nav .item::after, .pie .sub::after { content: ''; position: absolute; left: 0; bottom: -.2em; width: 100%; height: .12em; background: currentColor; transform: scaleX(0); transform-origin: 100% 50%; transition: transform 1s cubic-bezier(.35, .42, 0, 1); }
.nav .item:hover::after, .nav .item:focus-visible::after, .nav .item.activo::after, .pie .sub:hover::after, .pie .sub:focus-visible::after { transform: scaleX(1); transform-origin: 0 50%; }
.nav .item:last-child { margin-left: auto; margin-right: 0; }
.nav .menu-boton { display: none; align-items: center; justify-content: center; position: relative; right: -11px; width: 40px; height: 32px; pointer-events: auto; }
.nav .menu-boton svg { width: 18px; height: 16px; fill: currentColor; overflow: visible; }
.nav .menu-boton svg path { transform-box: fill-box; transform-origin: center center; transition: transform 1s var(--expo); }
.nav .menu-boton[aria-expanded='true'] svg path:first-child { transform: translateY(3px) rotate(45deg); }
.nav .menu-boton[aria-expanded='true'] svg path:last-child { transform: translateY(-3px) rotate(-45deg); }
@media (max-width: 740px) { .nav { align-items: center; } .nav .logo { height: 16rem; font-size: 23px; line-height: 16px; } .nav .derecha { justify-content: flex-end; width: auto; } .nav .item { display: none; } .nav .menu-boton { display: inline-flex; }
  .nav.abierto { color: #fff; } }


.menu { position: fixed; left: 0; top: 0; z-index: 99; width: 100vw; height: 100dvh; display: none; flex-direction: column; justify-content: space-between; align-items: center; overflow: clip;
  background: #0c0c0c; color: #fff; padding: 40px var(--margin); padding-top: 100px; transition: opacity 1.5s var(--expo); }
@media (max-width: 740px) { .menu { display: flex; } }
.menu:not(.abierto) { opacity: 0; pointer-events: none; transition-duration: 1s; }
.menu .items { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; width: 100%; font-size: 40px; }
.menu .items a, .menu .items button { font-family: 'Rotulo', 'Barlow Condensed', sans-serif; font-weight: 600; text-transform: uppercase; line-height: 1; cursor: pointer; text-align: left; transition: transform 1s var(--expo), opacity 1s var(--expo); }
.menu:not(.abierto) .items > * { opacity: 0; transform: translateY(24px); }
.menu.abierto .items > :nth-child(3) { transition-delay: .5s; } .menu.abierto .items > :nth-child(2) { transition-delay: .6s; } .menu.abierto .items > :nth-child(1) { transition-delay: .7s; } .menu.abierto .items > :nth-child(4) { transition-delay: .4s; }
.menu .pie-menu { width: 100%; display: flex; flex-wrap: wrap; gap: 30px var(--gap); font-weight: 500; }
.menu .pie-menu > * { width: calc(var(--column) * 2 + var(--gap)); }


.filtro { position: fixed; z-index: 9999; width: 300rem; --bottom: 24rem; bottom: var(--bottom); left: calc(50% - 150rem); font-weight: 500; overflow: hidden;
  transition: opacity 2s var(--expo), transform 2s var(--expo), height 2s var(--expo); }
@media (max-width: 740px) { .filtro { --bottom: 30px; } }
.filtro .fondo { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 0; -webkit-backdrop-filter: blur(25px); backdrop-filter: blur(25px); background: rgba(240, 240, 240, .6);
  border-radius: 5rem; box-shadow: 0 1px 1px rgba(0, 0, 0, .05); transition: background 1s var(--expo); }
.filtro .contenido { position: relative; z-index: 1; width: 100%; height: 100%; transition: opacity 1s var(--expo); }
.filtro .contenido::before, .filtro .contenido::after { content: ''; position: absolute; left: 0; width: 100%; height: 30rem; z-index: 9; pointer-events: none; border-radius: 5rem;
  -webkit-backdrop-filter: blur(25px); backdrop-filter: blur(25px); background: rgba(240, 240, 240, .2); }
.filtro .contenido::before { top: -1rem; -webkit-mask-image: linear-gradient(180deg, #fff, rgba(255, 255, 255, .992) 11.79%, rgba(255, 255, 255, .968) 21.38%, rgba(255, 255, 255, .93) 29.12%, rgba(255, 255, 255, .879) 35.34%, rgba(255, 255, 255, .819) 40.37%, rgba(255, 255, 255, .749) 44.56%, rgba(255, 255, 255, .672) 48.24%, rgba(255, 255, 255, .589) 51.76%, rgba(255, 255, 255, .503) 55.44%, rgba(255, 255, 255, .415) 59.63%, rgba(255, 255, 255, .326) 64.66%, rgba(255, 255, 255, .238) 70.88%, rgba(255, 255, 255, .154) 78.62%, rgba(255, 255, 255, .074) 88.21%, rgba(255, 255, 255, 0));
  mask-image: linear-gradient(180deg, #fff, rgba(255, 255, 255, .992) 11.79%, rgba(255, 255, 255, .968) 21.38%, rgba(255, 255, 255, .93) 29.12%, rgba(255, 255, 255, .879) 35.34%, rgba(255, 255, 255, .819) 40.37%, rgba(255, 255, 255, .749) 44.56%, rgba(255, 255, 255, .672) 48.24%, rgba(255, 255, 255, .589) 51.76%, rgba(255, 255, 255, .503) 55.44%, rgba(255, 255, 255, .415) 59.63%, rgba(255, 255, 255, .326) 64.66%, rgba(255, 255, 255, .238) 70.88%, rgba(255, 255, 255, .154) 78.62%, rgba(255, 255, 255, .074) 88.21%, rgba(255, 255, 255, 0)); }
.filtro .contenido::after { bottom: -1rem; -webkit-mask-image: linear-gradient(0deg, #fff, rgba(255, 255, 255, .992) 11.79%, rgba(255, 255, 255, .968) 21.38%, rgba(255, 255, 255, .93) 29.12%, rgba(255, 255, 255, .879) 35.34%, rgba(255, 255, 255, .819) 40.37%, rgba(255, 255, 255, .749) 44.56%, rgba(255, 255, 255, .672) 48.24%, rgba(255, 255, 255, .589) 51.76%, rgba(255, 255, 255, .503) 55.44%, rgba(255, 255, 255, .415) 59.63%, rgba(255, 255, 255, .326) 64.66%, rgba(255, 255, 255, .238) 70.88%, rgba(255, 255, 255, .154) 78.62%, rgba(255, 255, 255, .074) 88.21%, rgba(255, 255, 255, 0) 100%);
  mask-image: linear-gradient(0deg, #fff, rgba(255, 255, 255, .992) 11.79%, rgba(255, 255, 255, .968) 21.38%, rgba(255, 255, 255, .93) 29.12%, rgba(255, 255, 255, .879) 35.34%, rgba(255, 255, 255, .819) 40.37%, rgba(255, 255, 255, .749) 44.56%, rgba(255, 255, 255, .672) 48.24%, rgba(255, 255, 255, .589) 51.76%, rgba(255, 255, 255, .503) 55.44%, rgba(255, 255, 255, .415) 59.63%, rgba(255, 255, 255, .326) 64.66%, rgba(255, 255, 255, .238) 70.88%, rgba(255, 255, 255, .154) 78.62%, rgba(255, 255, 255, .074) 88.21%, rgba(255, 255, 255, 0) 100%); }
.filtro .completa, .filtro .secciones { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4rem; padding: 19rem; text-align: center;
  transition: opacity 1s var(--expo), transform 1s var(--expo); }
.filtro .secciones { position: absolute; left: 0; top: 0; width: 100%; padding: 0; pointer-events: none;
  transform: translateY(calc(var(--seccion) / var(--secciones) * -100% + 28rem - .7em - 4rem * var(--seccion) / var(--secciones))); }
.filtro .secciones .tema { transition: color 1s var(--expo); }
.filtro .secciones .tema:not(.activo) { color: rgba(13, 13, 13, 0); }
.filtro .completa { position: relative; pointer-events: none; }
.filtro .completa .titulo-cat:not(:hover), .filtro .completa span { color: rgba(13, 13, 13, .4); }
.filtro .completa .titulo-cat, .filtro .completa span { pointer-events: none; transition: color 1s var(--expo); }
.filtro .completa a, .filtro .completa button { pointer-events: auto; transition: color 1s var(--expo); }
.filtro .completa a.titulo-cat { pointer-events: auto; }
@media (hover: hover) { .filtro .completa:hover .titulo-cat:not(:hover), .filtro .completa:hover a:not(:hover), .filtro .completa:hover span { color: rgba(13, 13, 13, .2); } }
.filtro.abierto .fondo, .filtro:hover .fondo { background: rgba(240, 240, 240, .7); }
.filtro.abierto { height: var(--alto-completo); }
.filtro.abierto .secciones { opacity: 0; transform: translateY(-100%) scale(.7); }
.filtro.abierto .completa { transform: translateY(0); }
.filtro:not(.abierto) { cursor: pointer; height: 56rem; }
.filtro:not(.abierto) .completa { opacity: 0; transform: translateY(100%); }
.filtro:not(.abierto) .completa, .filtro:not(.abierto) .completa * { pointer-events: none; }
.filtro.inicio, .filtro.fin { pointer-events: none; }
.filtro.es-portada.inicio, .filtro.es-portada.fin { transform: translateY(calc(100% + var(--bottom))); }
.filtro.oculto-pagina { display: none; }
body.menu-abierto .filtro { pointer-events: none; transform: translateY(calc(100% + var(--bottom))); }
.filtro .tema, .filtro .completa a { display: block; }


.pagina { width: 100%; min-height: 100svh; }
#principal { max-width: 100vw; min-height: 100svh; width: 100%; overflow-x: clip; }
.marca-grande { display: block; width: 100%; fill: currentColor; }


.portada-cabeza { display: flex; flex-direction: column; justify-content: flex-end; width: 100%; height: calc(100vh - 60rem - var(--margin)); padding: var(--margin); position: relative; }
.portada-cabeza .descripcion { position: absolute; left: var(--margin); top: 100%; font-weight: 500; }
.descripcion p + p { margin-top: 1em; }
@media (max-width: 740px) { .portada-cabeza { height: var(--start-vh, 100svh); padding-bottom: 24px; } .portada-cabeza .descripcion { left: 0; margin-top: 24px; position: static; top: auto; } }
.medias { width: 100%; padding: var(--margin); }
.medias .grupo { display: flex; gap: var(--gap); }
.medias .grupo .izq, .medias .grupo .der { display: flex; flex-direction: column; gap: var(--margin); }
.medias .grupo .izq { width: calc(var(--column) * 5 + var(--gap) * 4); }
.medias .grupo .der { width: calc(var(--column) * 4 + var(--gap) * 3); }
.medias .grupo .pieza { display: inline-block; }
.medias .grupo:not(:last-child) { margin-bottom: var(--margin); }
.medias .grupo:nth-child(odd) .izq .pieza { aspect-ratio: 307 / 409; width: calc(var(--column) * 2 + var(--gap)); }
.medias .grupo:nth-child(odd) .izq .pieza:first-child { margin-left: auto; margin-right: 0; }
.medias .grupo:nth-child(odd) .der .pieza { aspect-ratio: 626 / 835; width: 100%; }
.medias .grupo:nth-child(2n) .izq .pieza, .medias .grupo:nth-child(9n+8) .izq .pieza { aspect-ratio: 784 / 1046; width: 100%; }
.medias .grupo:nth-child(2n) .der .pieza, .medias .grupo:nth-child(9n+8) .der .pieza { aspect-ratio: 307 / 409; width: calc(var(--column) * 2 + var(--gap)); }
.medias .grupo:nth-child(9n+2) .der .pieza, .medias .grupo:nth-child(9n+6) .der .pieza, .medias .grupo:nth-child(9n+8) .der .pieza { margin-top: auto; }
.medias .grupo:nth-child(9n+3) .izq .pieza:first-child, .medias .grupo:nth-child(9n+7) .izq .pieza:first-child { margin-left: 0; margin-right: auto; }
.medias .grupo:nth-child(9n+3) .izq .pieza:last-child, .medias .grupo:nth-child(9n+7) .izq .pieza:last-child { margin-left: auto; margin-right: 0; }
@media (max-width: 740px) {
  .medias .grupo { flex-direction: column; }
  .medias .grupo .izq, .medias .grupo .der { width: 100%; }
  .medias .grupo:nth-child(odd) { flex-direction: column-reverse; }
  .medias .grupo:nth-child(odd) .izq .pieza { width: calc(var(--column) * 2 + var(--gap)); }
}

.imagen-vista { display: block; width: 100%; height: 100%; overflow: clip; background: #f5f5f5; }
.imagen-vista, .imagen-vista > img { transition: transform 2s var(--expo), opacity 2s var(--expo); }
.imagen-vista img { width: 100%; height: 100%; object-fit: cover; }
a.pieza:hover .imagen-vista > img, .imagen-vista.zoom:hover > img { transform: scale(1.02); }
.pieza[data-scroll-item]:not(.show) > .imagen-vista { opacity: 0; transform: translateY(60rem); }
.pieza, .dos .par .m { position: relative; }
.pieza > .imagen-vista, .dos .par .m > .imagen-vista { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }



.pie { display: flex; gap: var(--gap); width: 100%; margin-top: 500rem; padding: 0 var(--margin) 20rem; font-weight: 500; }
.pie .p-titulo { width: calc(var(--column) * 3 + var(--gap) * 2); }
.pie .p-zonas, .pie .p-redes { width: calc(var(--column) * 2 + var(--gap)); }
.pie .p-redes a, .pie .p-redes button { display: block; line-height: 1.4; position: relative; text-align: left; font-weight: 500; }
.pie .sub { position: relative; line-height: 1.4; }
.pie .p-aviso { margin-left: auto; width: calc(var(--column) * 2 + var(--gap)); }
.pie .p-aviso a { text-decoration: underline; text-underline-offset: .15em; }
@media (max-width: 740px) { .pie { flex-wrap: wrap; gap: 30px var(--gap); margin-top: calc(100vh - 134px); } .pie .p-titulo, .pie .p-zonas, .pie .p-redes, .pie .p-aviso { width: calc(var(--column) * 2 + var(--gap)); } .pie .p-aviso { margin-left: 0; } }
.pie p + p { margin-top: 0; }
.con-pie-claro .pie { margin-top: 160rem; }


.lista-cabeza { width: 100%; padding: 0 var(--margin); padding-top: 370rem; }
.lista-cabeza .parrafo { margin-left: calc(var(--column) * 5 + var(--gap) * 5); max-width: calc(var(--column) * 2 + var(--gap)); padding-bottom: 80rem; }
@media (max-width: 740px) { .lista-cabeza { padding-top: min(230px, 30vh); } .lista-cabeza .parrafo { margin-left: 0; max-width: calc(var(--column) * 3 + var(--gap) * 2); padding-bottom: 40px; } }
.expo-bloque { width: 100%; padding: 0 var(--margin); }
.expo-bloque .seccion-titulo { display: block; font-weight: 500; margin-bottom: 20rem; }
.expo-bloque:not(:last-child) { margin-bottom: 70rem; }
.expo-fila { display: flex; gap: var(--gap); position: relative; padding: 20rem 0 64rem; pointer-events: auto; }
.expo-fila hr { position: absolute; left: 0; top: 0; width: 100%; height: 1px; margin: 0; padding: 0; border: 0; background: rgba(13, 13, 13, .2); transform-origin: left;
  transition: transform 2s cubic-bezier(.6, .14, 0, 1), background 1s var(--expo), opacity 1s var(--expo); z-index: 0; }
.expo-fila .fecha { flex-shrink: 0; width: calc(var(--column) * 5 + var(--gap) * 4); font-weight: 400; transition: opacity 1s var(--expo); }
.expo-fila .nombre { transition: opacity 1s var(--expo); }
.expo-fila .foto { position: absolute; left: calc(var(--column) * 2 + var(--gap) * 2); top: 20rem; width: calc(var(--column) * 2 + var(--gap)); aspect-ratio: 4 / 5; z-index: 9; pointer-events: none;
  clip-path: inset(0 100% 0 0); transition: clip-path 1.5s var(--expo); }
.expo-fila .foto img { width: 100%; height: 100%; object-fit: cover; }
.expo-fila:hover hr { background: #0c0c0c; }
.expo-fila:hover .foto { clip-path: inset(0 0 0 0); }
.expo-fila[data-scroll-item]:not(.show) { opacity: 0; }
.expo-fila[data-scroll-item]:not(.show) hr { transform: scaleX(0); }
.pagina.hay-hover .expo-fila:not(:hover) .fecha, .pagina.hay-hover .expo-fila:not(:hover) .nombre, .pagina.hay-hover .expo-fila:not(:hover) hr { opacity: .2 !important; }
a.expo-fila { color: inherit; }
@media (max-width: 740px) { .expo-fila { flex-direction: column-reverse; padding: 18px 0 20px; } .expo-fila .nombre { font-size: 32px; margin-bottom: 5px; width: 100%; } .expo-fila .fecha { width: 100%; } .expo-fila .foto { display: none; } }

.esp-cabeza { width: 100%; padding: 0 var(--margin); padding-top: 370rem; }
.esp-cabeza .titular { font-feature-settings: 'ss08' on; margin-bottom: 60rem; margin-left: auto; margin-right: 0; max-width: 1102rem; width: calc(var(--column) * 7 + var(--gap) * 6); }
.titular .linea { display: block; }
.esp-lista { width: 100%; margin-top: 60rem; padding: 0 var(--margin); }
.esp-fila { display: flex; gap: var(--gap); font-weight: 500; }
.esp-fila:not(:last-child) { margin-bottom: 60rem; }
.esp-fila .numero { width: calc(var(--column) * 3 + var(--gap) * 2); }
.esp-fila .nombre-esp { font-weight: inherit; width: calc(var(--column) * 2 + var(--gap)); }
.esp-fila .esp-imagen { aspect-ratio: 626 / 417; overflow: clip; position: relative; transform-origin: 0 0; width: calc(var(--column) * 4 + var(--gap) * 3); }
.esp-fila .esp-imagen img { position: absolute; left: 0; top: -50px; width: 100%; height: calc(100% + 100px); object-fit: cover; will-change: transform; }
@media (max-width: 740px) { .esp-cabeza { padding-top: min(230px, 30vh); } .esp-cabeza .titular { max-width: 355px; width: 100%; font-size: 25px; } .esp-fila { flex-wrap: wrap; } .esp-fila .numero { width: calc(var(--column) * 1); } .esp-fila .nombre-esp { width: calc(var(--column) * 3 + var(--gap) * 2); }
  .esp-fila .esp-imagen { min-width: 100%; transform: none !important; width: 100%; } }


html[data-page-name='nosotros'] body { background: #0c0c0c; color: #fff; }
html[data-page-name='nosotros'] .velo { background: #0c0c0c; }
.nos-cabeza { width: 100%; margin-bottom: 160rem; padding: var(--margin); padding-top: 420rem; }
.nos-cabeza .titular { font-feature-settings: 'ss08' on; margin-left: auto; margin-right: 0; max-width: 1102rem; width: calc(var(--column) * 7 + var(--gap) * 6); }
.nos-cabeza .abajo { display: flex; align-items: flex-start; gap: var(--gap); justify-content: space-between; margin-top: 64rem; color: rgba(255, 255, 255, .7); }
.nos-cabeza .abajo .izquierda { display: flex; gap: var(--gap); }
.nos-cabeza .abajo .columna { width: calc(var(--column) * 2 + var(--gap)); }
.nos-cabeza .abajo .columna strong { display: block; color: #fff; font-weight: 500; }
.nos-cabeza .abajo .columna p { margin-bottom: 1.1em; }
.nos-cabeza .abajo .columna .bloque + .bloque { margin-top: 2.4em; }
.nos-cabeza .abajo .derecha { width: calc(var(--column) * 4 + var(--gap) * 3); }
.nos-cabeza .abajo .derecha .foto { aspect-ratio: 626 / 417; overflow: clip; background: #1a1a1a; }
.nos-cabeza .abajo .derecha .foto img { width: 100%; height: 100%; object-fit: cover; }
.nos-cabeza .abajo .derecha .pie-foto { margin-top: 32rem; max-width: 370rem; line-height: 1; font-size: 16rem; }
@media (max-width: 740px) { .nos-cabeza { margin-bottom: 120px; padding-top: min(230px, 30vh); } .nos-cabeza .titular { margin-left: 0; max-width: 355px; width: 100%; font-size: 25px; }
  .nos-cabeza .abajo { flex-direction: column-reverse; margin-top: 40px; } .nos-cabeza .abajo .izquierda, .nos-cabeza .abajo .derecha { width: 100%; } .nos-cabeza .abajo .izquierda { flex-direction: column; margin-top: 60px; } .nos-cabeza .abajo .columna { width: 100%; } .nos-cabeza .abajo .derecha .pie-foto { font-size: 12px; } }
.nos-cuaderno { width: 100%; padding: var(--margin); }
.nos-cuaderno .cuaderno-titulo { margin: 0 0 60rem; }
.nos-cuaderno .notas { pointer-events: none; }
.nos-cuaderno .notas:hover .nota:not(:hover) .nota-flex { opacity: .2; }
.nota { display: block; padding: 20rem 0; position: relative; pointer-events: auto; color: inherit; }
.nota hr { position: absolute; left: 0; top: 0; width: 100%; height: 1px; margin: 0; border: 0; background: rgba(255, 255, 255, .2); transform-origin: left; transition: transform 2s cubic-bezier(.6, .14, 0, 1); }
.nota .nota-flex { display: flex; gap: var(--gap); justify-content: space-between; transition: opacity 1s var(--expo); }
.nota .estacion { width: calc(var(--column) * 2 + var(--gap)); }
.nota .nota-foto { position: absolute; left: calc(var(--column) * 2 + var(--gap) * 2); top: 20rem; width: calc(var(--column) * 2 + var(--gap)); aspect-ratio: 4 / 5; z-index: 1; pointer-events: none; clip-path: inset(0 100% 0 0); transition: clip-path 1.5s var(--expo); }
.nota .nota-foto img { width: 100%; height: 100%; object-fit: cover; }
.nota .nota-der { display: flex; flex-direction: column; gap: 8rem; line-height: 1; width: calc(var(--column) * 4 + var(--gap) * 3); }
.nota .nota-der b { font-weight: 500; }
.nota .nota-der span { color: rgba(255, 255, 255, .7); }
.nota:hover .nota-foto { clip-path: inset(0 0 0 0); }
.nota[data-scroll-item]:not(.show) hr { transform: scaleX(0); }
.nota[data-scroll-item]:not(.show) .nota-flex { opacity: 0; }
@media (max-width: 740px) { .nos-cuaderno .cuaderno-titulo { margin-bottom: 40px; } .nota .nota-flex { flex-direction: column; gap: 0; } .nota .estacion { margin-top: 5px; opacity: .7; order: 3; width: auto; } .nota .nota-der { flex-direction: column; order: 2; width: 100%; } .nota .nota-foto { display: none; } }
html[data-page-name='nosotros'] .pie { margin-top: 160rem; }


.proyecto { position: relative; width: 100%; }
.proyecto[data-color='arcilla'] { --color: #c4573d; } .proyecto[data-color='tinta'] { --color: #2d4a73; } .proyecto[data-color='arena'] { --color: #958174; }
.proyecto .fondo-color { position: absolute; left: 0; top: 0; width: 100%; background: var(--color); z-index: 0; will-change: transform, opacity; }
.proyecto > * { position: relative; z-index: 1; }
.proyecto > .hero-color { z-index: auto; }
.proyecto > .fondo-color { position: absolute; }

.hero-sticky { height: 200vh; width: 100%; }
.hero-sticky .pegajosa { position: sticky; top: 0; display: flex; flex-direction: column; align-items: center; height: 100vh; height: 100dvh; width: 100%; overflow: clip; }
.hero-sticky .hero-caja { position: absolute; left: 50%; top: 50%; width: calc(var(--column) * 2 + var(--gap)); aspect-ratio: 307 / 409; transform: translate(-50%, -50%); overflow: clip; z-index: 1; background: #f5f5f5; will-change: width, height; }
.hero-sticky .hero-caja img { width: 100%; height: 100%; object-fit: cover; }
.hero-sticky .hero-texto { position: absolute; z-index: 2; left: 50%; top: calc(50dvh + 236.5rem); width: 100%; max-width: 307rem; margin: 0 auto; transform: translateX(-50%); font-weight: 400; transition: opacity .6s var(--expo); }
@media (max-width: 740px) { .hero-sticky .hero-texto { max-width: 260px; top: calc(50dvh + 183px); } }
.hero-color { display: flex; flex-direction: column; justify-content: flex-end; height: calc(100vh - 60rem - var(--margin)); padding: var(--margin); position: relative; width: 100%; }
.hero-color .marca-grande { position: relative; z-index: 0; }
.hero-color .hero-media { position: absolute; left: var(--margin); bottom: var(--margin); width: calc(var(--column) * 5 + var(--gap) * 4); mix-blend-mode: multiply; z-index: 1; }
.hero-color .hero-media img { width: 100%; height: auto; filter: brightness(1.14) contrast(1.08); }
.hero-color .tit { position: absolute; z-index: 9; left: var(--margin); bottom: .05em; color: #fff; font-size: 120rem; max-width: calc(var(--column) * 5 + var(--gap) * 4); line-height: 1; }
.intro-sec.color { margin-bottom: 0; padding-top: 20rem; padding-bottom: 160rem; position: relative; z-index: 2; }
.intro-sec.color .lineas { font-weight: 500; }
.intro-sec.color .lineas p + p { margin-top: 1em; }
.intro-sec.color .der .descr { font-weight: 500; max-width: 550rem; }
@media (max-width: 740px) { .hero-color { height: calc(var(--start-vh, 100svh) - 88px); } .hero-color .tit { font-size: 56px; bottom: auto; top: 117px; } .hero-color .hero-media { width: calc(100% - var(--margin) * 2); } .intro-sec.color { padding-bottom: 80px; } }
.hero-simple { position: relative; display: flex; flex-direction: column; justify-content: flex-end; height: calc(100vh - 60rem - var(--margin)); padding: 120rem var(--margin) var(--margin); width: 100%; }
.hero-simple .tit { font-size: 64rem; letter-spacing: -.06em; margin: 0 0 25rem; position: relative; z-index: 2; max-width: calc(var(--column) * 6 + var(--gap) * 5); }
.hero-simple .marca-grande { flex-shrink: 0; position: relative; z-index: 1; }
.hero-simple .peq { position: absolute; z-index: 0; width: calc(var(--column) * 1); aspect-ratio: 3 / 4; overflow: clip; }
.hero-simple .peq img { width: 100%; height: 100%; object-fit: cover; }
.hero-simple .peq:nth-of-type(1) { left: var(--margin); top: var(--margin); }
.hero-simple .peq:nth-of-type(2) { left: calc(var(--column) * 4 + var(--gap) * 4 + var(--margin)); top: 130rem; }
.hero-simple .peq:nth-of-type(3) { left: auto; right: var(--margin); bottom: calc(var(--margin) + 200rem); width: calc(var(--column) * 2 + var(--gap)); }
@media (max-width: 740px) { .hero-simple { height: calc(var(--start-vh, 100svh) - 88px); } .hero-simple .tit { font-size: 36px; position: absolute; top: 77px; } .hero-simple .peq:nth-of-type(3) { display: none; } .hero-simple .peq:nth-of-type(2) { top: auto; bottom: 30vw; left: var(--margin); width: calc(var(--column) * 3 + var(--gap) * 2); }
  .hero-simple .peq:nth-of-type(1) { top: min(80px, 9vh); } }
.intro-sec { margin-bottom: 60rem; padding: var(--margin); padding-bottom: 120rem; }
.intro-sec .flex { display: flex; gap: var(--gap); }
.intro-sec .izq { width: calc(var(--column) * 5 + var(--gap) * 4); }
.intro-sec .der { width: calc(var(--column) * 4 + var(--gap) * 3); }
.intro-sec .izq .sub { font-weight: 500; max-width: 390rem; margin-bottom: 24rem; }
.intro-sec .der .descr { max-width: 550rem; }
.intro-sec .der .descr p + p { margin-top: 1em; }
@media (max-width: 740px) { .intro-sec .flex { flex-direction: column; gap: 24px; } .intro-sec .izq, .intro-sec .der { width: 100%; } }

.objetos-sec { display: flex; flex-direction: row; gap: var(--gap); width: 100%; padding: 120rem var(--margin); }
.objetos-sec .izq { width: calc(var(--column) * 3 + var(--gap) * 2); }
.objetos-sec .izq strong { display: block; font-weight: 500; max-width: calc(var(--column) * 2 + var(--gap)); }
.objetos-sec .izq .cont { margin-top: 10rem; max-width: calc(var(--column) * 2 + var(--gap)); }
.objetos-sec .izq .cont button { position: relative; text-decoration: none; font-weight: 400; }
.objetos-sec .izq .cont button::after { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: 100% 50%; transition: transform 1s cubic-bezier(.35, .42, 0, 1); }
.objetos-sec .izq .cont button:hover::after, .objetos-sec .izq .cont button:focus-visible::after { transform: scaleX(1); transform-origin: 0 50%; }
.objetos-sec .der { width: calc(var(--column) * 6 + var(--gap) * 5); }
.objeto { display: flex; gap: var(--gap); }
.objeto:not(:last-child) { margin-bottom: 30rem; }
.objeto .obj-img { width: calc(var(--column) * 2 + var(--gap)); }
.objeto .obj-img .imagen-vista { max-width: 228rem; aspect-ratio: 3 / 4; }
.objeto .num { font-weight: 500; width: calc(var(--column) * 1); }
.objeto .info { width: calc(var(--column) * 3 + var(--gap) * 2); }
.objeto .info strong { display: block; font-weight: 500; }
@media (max-width: 740px) { .objetos-sec { flex-direction: column; padding-top: 40px; } .objetos-sec .izq, .objetos-sec .der { width: 100%; } .objetos-sec .izq { margin-bottom: 120px; } .objeto { flex-wrap: wrap; width: 100%; } .objeto .obj-img { margin-bottom: 10px; width: 100%; } .objeto .obj-img .imagen-vista { max-width: 100%; } .objeto:not(:last-child) { margin-bottom: 40px; } }

.trozos { width: 100%; }
.dos { margin: var(--margin); position: relative; }
.dos .contenido { left: 0; max-width: 308rem; position: absolute; top: 0; width: calc(var(--column) * 2 + var(--gap)); z-index: 2; }
.dos .contenido p + p { margin-top: 1em; }
.dos .par { align-items: flex-end; display: flex; gap: var(--gap); justify-content: space-between; }
.dos .par .m { transition: transform 2s var(--expo), opacity 2s var(--expo); }
.dos .par .m:not(.show) { opacity: 0; transform: translateY(60rem); }
.dos .par .m:first-child { aspect-ratio: 307 / 409; width: calc(var(--column) * 2 + var(--gap)); }
.dos .par .m:last-child { aspect-ratio: 626 / 835; width: calc(var(--column) * 4 + var(--gap) * 3); }
.dos:not(.separados) .par { justify-content: flex-start; }
.dos:not(.separados) .par .m:first-child { aspect-ratio: 784 / 1046; width: calc(var(--column) * 5 + var(--gap) * 4); }
.dos:not(.separados) .par .m:last-child { aspect-ratio: 307 / 409; width: calc(var(--column) * 2 + var(--gap)); }
.dos.arriba .contenido { margin-bottom: 60rem; position: static; }
.dos.arriba .par { align-items: flex-start; }
.dos.abajo .contenido { position: static; margin: var(--margin) 0 0 calc(var(--column) * 5 + var(--gap) * 5); }

@media (max-width: 740px) { .dos .contenido { margin-bottom: 120px; position: static; width: calc(var(--column) * 3 + var(--gap) * 2); } .dos .par { align-items: center; flex-direction: column; gap: var(--margin); }
  .dos .par .m { margin-left: auto; margin-right: 0; width: calc(var(--column) * 2 + var(--gap)); } .dos .par .m:last-child { width: 100%; }
  .dos.abajo .contenido { left: 0; top: 0; margin: 0 0 var(--margin) 0; width: calc(var(--column) * 3 + var(--gap) * 2); }
  .dos:not(.separados) .par { flex-direction: column-reverse; justify-content: center; } .dos:not(.separados) .par .m:first-child { aspect-ratio: 784 / 1046; width: 100%; } .dos:not(.separados) .par .m:last-child { aspect-ratio: 307 / 409; width: calc(var(--column) * 2 + var(--gap)); } }
.ancha { margin: var(--margin); }
.ancha .m { width: 100%; transition: transform 2s var(--expo), opacity 2s var(--expo); }
.ancha .m:not(.show) { opacity: 0; transform: translateY(60rem); }
.ancha .m .imagen-vista { aspect-ratio: 1420 / 950; }
.ancha span { display: block; margin-top: 20rem; opacity: .6; text-transform: uppercase; }
.frase { margin: var(--margin); padding-bottom: 60rem; margin-top: 60rem; }
.frase .cuerpo { font-feature-settings: 'ss08' on; margin-left: auto; margin-right: 0; max-width: 1102rem; width: calc(var(--column) * 7 + var(--gap) * 6); }
@media (max-width: 740px) { .frase { margin-top: 40px; } .frase .cuerpo { font-size: 32px; width: 100%; } }
.cuerpo .linea { display: block; }
.cuerpo[data-lineas]:not(.listo) { visibility: hidden; }
[data-lineas].listo .linea { overflow: hidden; }
[data-lineas].listo .linea .texto { display: inline-block; white-space: nowrap; will-change: transform; }
[data-lineas][data-scroll-item] .linea, [data-lineas][data-scroll-item] .texto { transition: transform 2s var(--expo), opacity 2.5s var(--expo); }
[data-lineas][data-scroll-item]:not(.show) .linea { opacity: 0; transform: translateY(80%); }
[data-lineas][data-scroll-item]:not(.show) .texto { transform: translateY(110%); }
[data-lineas].listo { visibility: visible; }
@media (prefers-reduced-motion: reduce) { [data-lineas][data-scroll-item]:not(.show) .linea, [data-lineas][data-scroll-item]:not(.show) .texto { opacity: 1; transform: none; } }


.toast { position: fixed; left: 50%; top: 80rem; z-index: 999999; transform: translate(-50%, -20px); opacity: 0; pointer-events: none; padding: 12px 18px; border-radius: 5px; background: rgba(12, 12, 12, .92); color: #fff; font-weight: 500; font-size: 14px; transition: opacity .6s var(--expo), transform .6s var(--expo); }
.toast.visible { opacity: 1; transform: translate(-50%, 0); }
@media (max-width: 1024px) { .toast { top: 70px; } }


.sin-js .pieza[data-scroll-item]:not(.show) > .imagen-vista, .sin-js .m:not(.show), .sin-js .expo-fila[data-scroll-item]:not(.show), .sin-js .nota[data-scroll-item]:not(.show) .nota-flex { opacity: 1; transform: none; }
.sin-js .hero-sticky { height: auto; } .sin-js .hero-sticky .pegajosa { position: static; height: auto; padding: 120rem 0; } .sin-js .hero-sticky .hero-caja { position: relative; left: auto; top: auto; transform: none; margin: 0 auto; } .sin-js .hero-sticky .hero-texto { position: static; transform: none; margin: 24px auto 0; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; transition-delay: 0s !important; animation-duration: .01ms !important; scroll-behavior: auto !important; }
  .pieza[data-scroll-item]:not(.show) > .imagen-vista, .m:not(.show), .expo-fila[data-scroll-item]:not(.show), .nota[data-scroll-item]:not(.show) .nota-flex { opacity: 1; transform: none; }
  .expo-fila[data-scroll-item]:not(.show) hr, .nota[data-scroll-item]:not(.show) hr { transform: none; }
  .intro { display: none !important; }
  .hero-sticky { height: auto; } .hero-sticky .pegajosa { position: static; height: auto; padding: 120rem 0; } .hero-sticky .hero-caja { position: relative; left: auto; top: auto; transform: none; margin: 0 auto; } .hero-sticky .hero-texto { position: static; transform: none; margin: 24px auto 0; }
}

html[data-page-name='proyecto'] .pie { margin-top: 200rem; }
.dos .contenido[data-scroll-item] { transition: transform 2s var(--expo), opacity 2s var(--expo); }
.dos .contenido[data-scroll-item]:not(.show) { opacity: 0; transform: translateY(40rem); }
.hero-sticky .hero-texto[data-scroll-item]:not(.show) { opacity: 0; }

.filtro .filtro-boton { position: absolute; inset: 0; z-index: 20; width: 100%; height: 100%; cursor: pointer; background: transparent; border-radius: 5rem; }
.filtro.abierto .filtro-boton { pointer-events: none; }
.filtro .filtro-boton:focus-visible { outline: 2px solid #0c0c0c; outline-offset: -3px; }
