


*, *::before, *::after { box-sizing: border-box; border-style: solid; border-width: 0; background-repeat: no-repeat; }
html { -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; line-height: 1.15; }
body {
  margin: 0; overflow: auto;
  font-family: Roboto, 'Helvetica Neue', Arial, sans-serif;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  color: #000; background-color: #fff;
}
main { display: block; }
p, figure, blockquote, dl, dd, form { margin: 0; }
h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; color: #000; font-size: inherit; font-weight: 700; line-height: 150%; }
ul, ol { margin: 0; padding: 0; list-style: none; }
a { color: #000; text-decoration: none; background-color: transparent; }
svg, img { vertical-align: bottom; }
img, video { max-width: 100%; }
button, input, textarea { appearance: none; vertical-align: middle; color: inherit; font: inherit; text-align: inherit; background: none; border-radius: 0; margin: 0; padding: 0; }
button { cursor: pointer; }
.vh { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.saltar { position: absolute; left: -999px; top: 8px; z-index: 2000; background: #000; color: #fff; padding: 8px 12px; font-size: 12px; }
.saltar:focus { left: 8px; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
[tabindex="-1"]:focus { outline: none; }

.app { display: flex; flex-direction: column; min-height: 100dvh; }
.vista { flex: 1 0 auto; width: 100%; margin: 0 auto; }
.vista[hidden] { display: none; }


.barra { position: fixed; top: 0; left: 0; z-index: 1031; width: 0; height: 2px; background: #000; pointer-events: none; opacity: 0; }


.seccion__interior, .seccion__interior-total .seccion__titulo, .pie__interior {
  box-sizing: border-box; width: 100%; max-width: 800px; margin: 0 auto; padding: 0 30px;
}
@media (min-width: 993px) {
  .seccion__interior, .seccion__interior-total .seccion__titulo, .pie__interior { max-width: 1100px; padding: 0 50px; }
}
.seccion__interior-total { width: 100%; }
.contenedor { height: 100%; }
.seccion--mb { margin-top: 30px; }

.seccion__titulo { text-transform: uppercase; color: inherit; font-size: 10px; font-weight: 400; }
@media (min-width: 415px) { .seccion__titulo { font-size: 12px; } }
.mt { margin-top: 12px; }
@media (min-width: 415px) { .mt { margin-top: 0; } }
.barajar.es-reset { opacity: 0; }
.barajar.es-play { opacity: 1; }


@keyframes sube { 0% { opacity: 0; transform: translateY(80px); } 100% { opacity: 1; transform: translateY(0); } }
@keyframes parpadeo { 0% { opacity: .5; } 100% { opacity: 1; } }
@keyframes pulso { 0%, 100% { opacity: 1; } 50% { opacity: .15; } }
.revela.es-reset { opacity: 0; }
.revela.es-play { animation: .5s both sube; }


.cabecera {
  display: flex; align-items: center; width: 100%; height: 70px; background-color: #fff; z-index: 1;
}
@media (min-width: 415px) { .cabecera { height: 100px; } }
.cabecera--inicio { position: sticky; top: 0; }
.cabecera--fija { position: fixed; top: 0; left: 0; visibility: hidden; z-index: -1; }
body:not(.en-inicio) .cabecera--fija { visibility: visible; z-index: 1; }
.cabecera--fija.visible { transition: transform .3s cubic-bezier(.19, 1, .22, 1); transform: translateY(0); }
.cabecera--fija.oculta { transition: transform .3s cubic-bezier(.55, .055, .675, .19); transform: translateY(-100%); }
.cabecera__interior {
  display: flex; justify-content: space-between; align-items: center;
  box-sizing: border-box; width: 100%; max-width: 800px; margin: 0 auto; padding: 0 30px;
}
@media (min-width: 993px) { .cabecera__interior { max-width: 1100px; padding: 0 50px; } }

.cabecera__marca, .cabecera__marca-nav { font-family: 'Barlow Condensed', 'Roboto Condensed', sans-serif; font-weight: 400; transition: opacity .3s; }
.cabecera__marca { position: relative; display: block; margin: 0; white-space: nowrap; }
.cabecera__marca a, .cabecera__marca-nav a { display: block; color: #000; font-size: 24px; line-height: 20px; letter-spacing: .005em; }
@media (min-width: 993px) { .cabecera__marca a, .cabecera__marca-nav a { font-size: 33px; line-height: 29px; } }
.cabecera__marca:hover, .cabecera__marca-nav:hover { opacity: .7; }
.cabecera__marca-nav { position: absolute; top: 25px; left: 30px; }
@media (min-width: 720px) { .cabecera__marca-nav { display: none; } }
.cabecera__marca-nav.activo { opacity: 1; transition: all; }
.cabecera__marca-nav.cerrado { opacity: 0; transition: all; }

.cabecera__boton {
  z-index: 1; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: center;
  width: 26px; height: 26px; position: static; top: 22px; right: 30px; transition: all .3s; user-select: none;
}
@media (min-width: 720px) { .cabecera__boton { display: none; } }
.cabecera__boton:hover { opacity: .7; }
.cabecera__boton.activo { opacity: 1; transition: all; position: fixed; }
.cabecera__boton.activo .cabecera__barra:first-of-type { width: 30px; transform: translateY(5px); }
.cabecera__boton.activo .cabecera__barra:nth-of-type(2) { width: 30px; transform: translateY(-4px); }
.cabecera__barra { display: block; width: 100%; height: 1px; margin: 4px 0; background-color: #000; transition: all .3s; }

.cabecera__nav {
  position: fixed; top: 0; right: -100%; width: 100%; height: 100vh; padding: 114px 0 0;
  overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; background-color: #fff;
}
@media (min-width: 720px) { .cabecera__nav { position: static; width: auto; height: auto; margin: 0; padding: 0; overflow: visible; background-color: transparent; } }
.cabecera__nav.cerrado { transition: right 0s; right: -100%; }
.cabecera__nav.desactivado { transition: right .5s; right: -100%; }
.cabecera__nav.activo { transition: right .5s; right: 0; }
.cabecera__nav ul { display: block; padding: 0 100px 0 0; text-align: center; }
@media (min-width: 720px) { .cabecera__nav ul { display: flex; justify-content: space-between; padding: 0; } }
.cabecera__nav li { margin: 0 0 27px; font-size: 18px; line-height: 1; text-align: right; white-space: nowrap; }
@media (min-width: 720px) { .cabecera__nav li { display: flex; margin: 0 0 0 22px; font-size: 12px; } }
@media (min-width: 993px) { .cabecera__nav li { margin: 0 0 0 30px; } }
.cabecera__nav li a {
  position: relative; display: inline-block; color: inherit; text-transform: uppercase; user-select: none;
  font-weight: 500; line-height: 1; opacity: .4; transition: opacity 1s; will-change: transform, opacity;
}
.cabecera__nav li a.activo { opacity: 1; }
@media (hover: hover) { .cabecera__nav li a:hover { opacity: 1; } }
.cabecera__nav li a::after { content: ""; position: absolute; inset: -10px; }
.ranura { display: inline-block; line-height: 1; }
.ranura span { display: inline-block; }
@media (min-width: 993px) {
  .ranura { overflow-y: clip; }
  .ranura span { position: relative; transition: transform .3s; }
  .ranura span::before { content: attr(data-hover); position: absolute; top: 100%; left: 0; transform: translate(0, 0); }
}
@media (min-width: 993px) and (hover: hover) { .cabecera__nav li a:hover .ranura span { transform: translateY(-100%); } }
html.menu-abierto { overflow: hidden; }


.portada { position: relative; height: 100dvh; min-height: 90vh; transition: all .75s; will-change: transform; }
@media (min-width: 993px) { .portada { height: 100vh; } }
.portada__fotos { position: absolute; top: 0; left: 0; z-index: 0; width: 100%; height: 100%; }
.portada__lienzo { position: relative; width: 100%; height: 100%; overflow: hidden; }
.lamina { position: absolute; inset: 0; opacity: 0; transition: opacity 1s ease; pointer-events: none; }
.lamina.es-activa { opacity: 1; }
.lamina picture { display: block; width: 100%; height: 100%; }
.lamina img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center center; }

.portada__interior {
  position: relative; z-index: 1; pointer-events: none; box-sizing: border-box; width: inherit; height: inherit;
  display: flex; flex-direction: column; justify-content: space-between; padding: 30px 30px 80px;
}
@media (min-width: 415px) { .portada__interior { padding: 60px 60px 167px; } }
@media (min-width: 993px) { .portada__interior { padding: 50px 100px 167px; } }
.portada__rotulo { color: #fff; font-size: 10px; font-weight: 500; line-height: 16px; transition: all .3s; }
@media (min-width: 415px) { .portada__rotulo { font-size: 12px; line-height: 20px; } }
.portada__nombre { height: 72px; margin: 0 0 -15px; overflow: hidden; transition: all .3s; }
.portada__nombre-txt {
  display: block; color: #fff; white-space: nowrap;
  font-family: 'Barlow Condensed', 'Roboto Condensed', sans-serif; font-weight: 400; letter-spacing: .005em;
  font-size: 42px; line-height: 57px; height: 72px;
  animation: 1.1s cubic-bezier(.16, 1, .3, 1) .4s both nombre-revela; transition: color .3s;
}
@media (min-width: 993px) { .portada__nombre-txt { font-size: 72px; letter-spacing: .01em; } }
@keyframes nombre-revela { 0% { opacity: 0; transform: translateY(100%); } 100% { opacity: 1; transform: translateY(0); } }
.portada.rotulo-claro .portada__rotulo, .portada.es-claro .portada__nombre-txt { color: #000; }

.portada__puntos {
  position: absolute; left: 0; bottom: 32px; z-index: 10; width: 100%; height: 20px;
  display: flex; justify-content: center; align-items: center; transition: opacity .3s;
}
@media (min-width: 415px) { .portada__puntos { bottom: 34px; } }
@media (min-width: 993px) { .portada__puntos { bottom: 48px; } }
.punto {
  position: relative; display: block; flex: none; width: 6px; height: 6px; margin: 0 10px; padding: 0;
  border-radius: 50%; background-color: #fff; opacity: 1; user-select: none; transition: all .2s;
}
@media (min-width: 993px) { .punto { width: 8px; height: 8px; } }
.punto::before { content: ""; position: absolute; top: 50%; left: 50%; width: 300%; height: 300%; transform: translate(-50%, -50%); }
.punto__anillo {
  position: absolute; top: 50%; left: 50%; width: 18px; height: 18px; margin: -9px 0 0 -9px; overflow: visible;
  visibility: hidden; pointer-events: none;
}
@media (min-width: 993px) { .punto__anillo { width: 22px; height: 22px; margin: -11px 0 0 -11px; } }
.punto__anillo path { stroke: #fff; stroke-linecap: butt; stroke-dasharray: 257.610597594363px 257.610597594363px; stroke-dashoffset: calc(257.610597594363px * (1 - var(--p, 0))); }
.punto.con-anillo .punto__anillo { visibility: visible; }
.portada.es-claro .punto { background-color: #000; }
.portada.es-claro .punto__anillo path { stroke: #000; }


.noticias { padding-top: 35px; padding-bottom: 30px; }
@media (min-width: 993px) { .noticias { padding-top: 50px; padding-bottom: 50px; } }
.noticias__banners { width: 100%; margin: 40px auto 28px; }
@media (min-width: 415px) { .noticias__banners { margin-top: 50px; margin-bottom: 53px; } }
@media (min-width: 993px) { .noticias__banners { width: 900px; } }
.noticia { display: flex; flex-direction: column; padding-bottom: 24px; }
@media (min-width: 993px) { .noticia { padding-bottom: 20px; } }
.noticia a { display: block; transition: all .3s; will-change: transform, opacity; }
@media (hover: hover) { .noticia a:hover { opacity: .9; transform: translateY(-10px); } }
.noticia__fecha { margin-bottom: 6px; color: #000; font-size: 14px; line-height: 160%; text-align: center; }
@media (min-width: 993px) { .noticia__fecha { margin-bottom: 8px; } }
.noticia__titulo { margin-bottom: 30px; color: #000; font-size: 12px; font-weight: 700; line-height: 160%; text-align: center; }
@media (min-width: 993px) { .noticia__titulo { margin-bottom: 80px; font-size: 14px; } }
.noticia__figura { position: relative; width: 100%; max-width: 100%; height: auto; margin: 0 auto; }
@media (min-width: 993px) { .noticia__figura { width: 900px; max-width: 900px; min-height: 460px; } }

.noticias__contenedor { width: 100%; margin: 0 auto; padding: 50px 0 26px; }
@media (min-width: 415px) { .noticias__contenedor { padding: 50px 0 55px; } }
.noticias__lista { width: 100%; }
.noticias__lista li { margin-bottom: 20px; }
@media (min-width: 415px) { .noticias__lista li { margin-bottom: 5px; } }
.noticias__lista li a { display: flex; font-size: 14px; line-height: 20px; transition: all .1s; will-change: transform, opacity; }
@media (min-width: 415px) { .noticias__lista li a { line-height: 180%; } }
@media (hover: hover) { .noticias__lista li a:hover { opacity: .5; } }
.noticias__lista li a p:hover { text-decoration: underline; }
.hora { padding-right: 40px; }
.hora span { margin-right: 10px; }
@media (min-width: 415px) { .hora span { margin-right: 12px; } }


.cartel {
  container-type: inline-size; position: relative; width: 100%; aspect-ratio: 900 / 460; overflow: hidden;
  background-color: #f7f6f2; border: 1px solid #e4e2dc; color: #d93a22; user-select: none;
}
.cartel__datos { position: absolute; left: 5.4cqw; top: 7cqw; display: flex; flex-direction: column; gap: .35cqw; font-size: 1.5cqw; line-height: 1.45; font-weight: 500; letter-spacing: .01em; }
.cartel__foto {
  position: absolute; right: 8.2cqw; top: 7cqw; width: 52cqw; height: calc(100% - 14cqw); max-width: none;
  object-fit: cover; object-position: 50% 52%; filter: grayscale(1) contrast(1.12) brightness(1.04); mix-blend-mode: multiply;
}
.cartel__titulo { position: absolute; left: 5.4cqw; bottom: 6cqw; font-family: 'Barlow Condensed', sans-serif; font-weight: 500; font-size: 9.2cqw; line-height: .92; letter-spacing: -.005em; }
.cartel__anio { position: absolute; right: 3.4cqw; top: 7cqw; writing-mode: vertical-rl; font-size: 1.5cqw; font-weight: 500; letter-spacing: .24em; text-transform: uppercase; }
.cartel__flecha { position: absolute; right: 3.9cqw; bottom: 6cqw; height: 7.4cqw; width: auto; }


.grilla3 { display: grid; grid-gap: 1px; grid-template-columns: 1fr 1fr; }
@media (min-width: 415px) { .grilla3 { grid-template-columns: 1fr 1fr 1fr; } }
.miniaturas { margin-top: 48px; }
@media (min-width: 415px) { .miniaturas { margin-top: 97px; } }
.miniaturas figure { position: relative; width: 100%; height: auto; aspect-ratio: 398 / 265; overflow: hidden; }
.miniaturas figure.ph-claro { background-color: #ededed; }
.miniaturas figure.ph-oscuro { background-color: #2a2a2a; }
.miniaturas figure::after {
  content: ""; position: absolute; top: 12px; left: 12px; z-index: 1; width: 6px; height: 6px; border-radius: 50%;
  pointer-events: none; animation: 1.1s ease-in-out infinite pulso;
}
.miniaturas figure.ph-claro::after { background-color: #333; }
.miniaturas figure.ph-oscuro::after { background-color: #fff; }
.miniaturas figure img {
  display: block; width: 100%; height: 100%; max-width: none; aspect-ratio: 398 / 265; object-fit: cover;
  opacity: 0; transform: scale(1); transition: opacity .6s, transform .3s ease-in-out;
}
html:not(.js) .miniaturas figure img { opacity: 1; }
.miniaturas .cargada figure img, .miniaturas .ranura-mini.cargada figure img { opacity: 1; will-change: transform, opacity; }
.miniaturas .cargada figure::after { display: none; }
@media (hover: hover) { .miniaturas .cargada figure img:hover { animation: .5s both parpadeo; transform: scale(1.1); } }
.miniaturas figure figcaption { position: absolute; bottom: 12px; left: 12px; font-size: 10px; }
@media (min-width: 415px) { .miniaturas figure figcaption { font-size: 12px; } }
.cap-blanco { color: #fff; }
.cap-negro { color: #000; }
.ranura-mini { display: block; }
.ranura-mini figcaption { overflow-y: clip; }
@media (min-width: 415px) { .ranura-mini figcaption { height: 1rem; } }
.mini__rotulo { color: inherit; font-weight: 500; transition: all 1s; cursor: pointer; user-select: none; will-change: transform, opacity; }
@media (min-width: 415px) { .mini__rotulo { height: 1.4em; line-height: 180%; } }
.mini__rotulo span { line-height: 150%; }
@media (min-width: 993px) {
  .mini__rotulo span { position: relative; display: inline-block; transition: transform .3s; }
  .mini__rotulo span::before { content: attr(data-hover); position: absolute; top: 100%; transform: translate(0, 0); }
}
@media (min-width: 993px) and (hover: hover) { .ranura-mini:hover .mini__rotulo span { transform: translateY(-100%); } }

.mas { padding: 40px 0; }
@media (min-width: 415px) { .mas { padding: 55px 0; } }
.mas__interior { display: flex; justify-content: flex-end; align-items: center; }
.mas__interior--total { padding-right: 30px; }
@media (min-width: 415px) { .mas__interior--total { padding-right: 100px; } }
@media (min-width: 415px) { .mas .btn-flecha { height: 1rem; } }


.btn-flecha {
  position: relative; display: flex; flex-direction: row; align-items: center; color: inherit; cursor: pointer; user-select: none;
  font-size: 10px; font-weight: 500; line-height: 1; will-change: transform, opacity;
}
@media (min-width: 993px) { .btn-flecha { font-size: 12px; } }
@media (hover: hover) { .btn-flecha:hover { animation: .5s both parpadeo; } }
.btn-flecha::after {
  content: ""; width: 66px; height: 10px; margin-left: 8px; transition: all .15s; background-size: 100%;
  background-image: url("data:image/svg+xml,%3csvg width='82' height='12' viewBox='0 0 82 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M80 6.5H0v-1h80v1Z' fill='black'/%3e%3cpath d='m74 12 4.959-6L74 0l7.413 6L74 12Z' fill='black'/%3e%3c/svg%3e");
}
@media (min-width: 993px) { .btn-flecha::after { width: 82px; height: 12px; margin-left: 10px; } }
.btn-flecha:hover::after { margin-left: 18px; margin-right: -8px; }


.tienda__principal { display: flex; flex-direction: column; justify-content: center; width: 100%; margin: 58px auto; }
@media (min-width: 415px) { .tienda__principal { margin: 58px auto 100px; } }
@media (min-width: 993px) { .tienda__principal { width: 618px; margin: 94px auto 100px; } }
.enlace-img { display: block; transition: all .3s; will-change: transform, opacity; }
@media (hover: hover) { .enlace-img:hover { opacity: .9; transform: translateY(-10px); } }
.tienda__principal-figura { width: 100%; height: auto; padding-left: 5px; text-align: center; }
@media (min-width: 993px) { .tienda__principal-figura { padding-left: 0; } }
.tienda__principal-credito { display: flex; flex-direction: row; justify-content: center; align-items: center; margin-top: 25px; padding-left: 13px; }
@media (min-width: 993px) { .tienda__principal-credito { margin-top: 26px; } }
.tienda__principal-titulo {
  display: flex; flex-direction: row; align-items: center; height: 20px; margin-top: 0; margin-right: 12px; padding-right: 16px;
  border-right: 1px solid rgba(0, 0, 0, .3); font-size: 12px; font-weight: 700;
}
@media (min-width: 993px) { .tienda__principal-titulo { height: 25px; margin-right: 17px; padding-right: 19px; font-size: 14px; } }
.tienda__principal-titulo span { display: inline-block; }

.btn-tienda {
  display: flex; flex-direction: row; justify-content: center; align-items: center; color: #000;
  font-size: 10px; font-weight: 700; line-height: 1; transition: all .1s; will-change: transform, opacity;
}
@media (hover: hover) { .btn-tienda:hover { opacity: .5; } }
.btn-tienda::before {
  content: ""; width: 12px; height: 14px; margin: -1px 5px 0 0; background-size: 100%;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='16' viewBox='0 0 14 16'%3e%3cpath d='M2.4 4.6h9.2l1.1 10.2H1.3z' fill='none' stroke='black' stroke-width='1.3' stroke-linejoin='round'/%3e%3cpath d='M4.6 4.6V4a2.4 2.4 0 014.8 0v.6' fill='none' stroke='black' stroke-width='1.3'/%3e%3c/svg%3e");
}
@media (min-width: 993px) { .btn-tienda::before { width: 14px; height: 15.955px; margin: -2px 6px 0 0; } }

.tienda__lista {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(40%, 1fr)); gap: 60px 28px;
  box-sizing: border-box; width: 100%; margin: 0 auto 55px; padding: 0;
}
@media (min-width: 415px) { .tienda__lista { row-gap: 100px; margin-bottom: 80px; } }
@media (min-width: 993px) { .tienda__lista { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 100px 60px; width: 100%; margin-bottom: 80px; } }
.tienda__item { display: flex; flex-direction: column; justify-content: center; align-items: center; user-select: none; }
.tienda__item .enlace-img { width: 100%; }
.tienda__item-figura { box-sizing: border-box; width: 75%; height: auto; margin: 0 auto; padding-left: 6px; text-align: center; user-select: none; }
@media (min-width: 993px) { .tienda__item-figura { width: 80%; padding-left: 3px; } }
.tienda__item-credito { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; margin-top: 22px; }
@media (min-width: 993px) { .tienda__item-credito { margin-top: 26px; } }
.tienda__item-titulo { position: relative; margin-bottom: 33px; color: #000; font-size: 12px; font-weight: 700; line-height: 160%; text-align: center; }
@media (min-width: 993px) { .tienda__item-titulo { margin-bottom: 42px; font-size: 14px; } }
.tienda__item-titulo::after {
  content: ""; position: absolute; top: 0; left: 50%; display: inline-block; width: 90px; height: 1px; margin-top: 34px;
  background-color: rgba(0, 0, 0, .3); transform: translateY(-50%) translateX(-50%);
}
@media (min-width: 993px) { .tienda__item-titulo::after { margin-top: 43px; } }


.libro-abierto {
  position: relative; display: flex; width: 100%; aspect-ratio: 618 / 270; container-type: inline-size;
  filter: drop-shadow(0 1.2cqw 1.1cqw rgba(0, 0, 0, .22)) drop-shadow(0 .2cqw .3cqw rgba(0, 0, 0, .18));
}
.libro-abierto__pag { position: relative; flex: 1 1 50%; min-width: 0; overflow: hidden; text-align: left; }
.libro-abierto__pag--izq {
  background: linear-gradient(90deg, #c9bda4 0%, #d6cbb4 55%, #b9ad94 100%); color: #3b3427;
  border-radius: .5cqw 0 0 .5cqw; margin-right: .3cqw;
}
.libro-abierto__pag--der {
  background: linear-gradient(90deg, #a79c85 0%, #e6dfd0 6%, #ece6d9 100%); color: #3a362e; display: flex;
  border-radius: 0 .5cqw .5cqw 0;
}
.libro-abierto__marca { position: absolute; left: 7cqw; top: 7cqw; font-family: 'Barlow Condensed', sans-serif; font-size: 3.2cqw; letter-spacing: .08em; text-transform: uppercase; }
.libro-abierto__marco { position: absolute; left: 7cqw; right: 12cqw; top: 14cqw; bottom: 16cqw; background: #1a1a1a; padding: .9cqw; box-shadow: 0 0 0 .2cqw #8d8268; }
.libro-abierto__marco img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 50%; filter: contrast(1.05); }
.libro-abierto__pie { position: absolute; left: 7cqw; bottom: 6cqw; font-size: 1.8cqw; line-height: 1.5; letter-spacing: .04em; }
.libro-abierto__texto { flex: 0 0 44%; padding: 7cqw 0 0 5.4cqw; position: relative; }
.libro-abierto__texto b { display: block; font-family: 'Barlow Condensed', sans-serif; font-size: 4.2cqw; font-weight: 500; letter-spacing: .02em; text-transform: uppercase; }
.lineas { display: block; height: 22cqw; margin-top: 3cqw; width: 88%; opacity: .55;
  background: repeating-linear-gradient(180deg, #5b5546 0 .26cqw, transparent .26cqw 1.5cqw); -webkit-mask: linear-gradient(90deg, #000 0 100%); }
.lineas--b { height: 14cqw; margin-top: 2.4cqw; width: 70%; }
.libro-abierto__foto { position: relative; flex: 1 1 56%; background: #090909; }
.libro-abierto__foto img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 62% 50%; }
.libro-abierto__pag--der::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(0, 0, 0, .22), transparent 7%); }
.libro-abierto__pag--izq::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(270deg, rgba(0, 0, 0, .18), transparent 8%); }


.tapa {
  position: relative; width: 100%; aspect-ratio: 162 / 220; overflow: hidden; container-type: inline-size; background: #f6f5f1;
  box-shadow: 0 .5cqw 1cqw -.2cqw rgba(0, 0, 0, .28), 0 2cqw 3.4cqw -1.2cqw rgba(0, 0, 0, .28), inset 1.3cqw 0 1.6cqw -1.2cqw rgba(0, 0, 0, .3);
}
.tapa::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(0, 0, 0, .12) 0, rgba(255, 255, 255, .18) 2.4%, transparent 5%); }
.tapa__titulo { position: absolute; font-family: 'Barlow Condensed', sans-serif; font-weight: 500; line-height: 1; color: #111; }
.tapa__autor { position: absolute; left: 9cqw; bottom: 7cqw; font-size: 4.6cqw; letter-spacing: .12em; text-transform: uppercase; font-weight: 500; color: #111; }
.tapa--formas .tapa__titulo { left: 9cqw; top: 9cqw; font-size: 12.4cqw; letter-spacing: .12em; line-height: 1.16; text-transform: uppercase; }
.tapa--formas .tapa__formas { position: absolute; left: 7cqw; top: 52cqw; width: calc(100% - 14cqw); height: auto; }
.tapa--formas .tapa__texto { position: absolute; left: 9cqw; right: 9cqw; top: 100cqw; height: 14cqw; opacity: .8;
  background: repeating-linear-gradient(180deg, #111 0 .5cqw, transparent .5cqw 2.8cqw); }
.tapa--canto { background: #e8e8e5; }
.tapa--canto { background: #ecebe8; }
.tapa--canto img { position: absolute; right: -34%; top: 9%; width: 120%; height: 78%; max-width: none; object-fit: cover; object-position: 38% 50%; mix-blend-mode: multiply; filter: brightness(1.16) contrast(1.02); }
.tapa__titulo--vertical { writing-mode: vertical-rl; left: 9cqw; top: 8cqw; font-size: 12cqw; letter-spacing: .04em; }
.tapa--sillas { background: #f6f4ee; }
.tapa--sillas img { position: absolute; left: -6%; top: 36%; width: 118%; height: auto; max-width: none; mix-blend-mode: darken; }
.tapa__titulo--chico { left: 9cqw; top: 9cqw; font-size: 14cqw; letter-spacing: .03em; }
.tapa--sombra { background: #101010; }
.tapa--sombra img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 66% 50%; opacity: .96; }
.tapa__velo { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8, 8, 10, .82) 0%, rgba(8, 8, 10, .4) 42%, transparent 72%), linear-gradient(0deg, rgba(8, 8, 10, .7), transparent 32%); }
.tapa--sombra .tapa__autor { color: #fff; }
.tapa--sombra .tapa__titulo { color: #fff; }
.tapa__titulo--rojo { color: #ff7a5c !important; }


.pie { width: 100%; margin-top: auto; background-color: inherit; }
.pie__contenido { box-sizing: border-box; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; width: 100%; padding: 40px 0; }
.pie__copyright, .pie__muestra { color: inherit; font-size: 10px; line-height: 18px; user-select: none; }
@media (min-width: 415px) { .pie__copyright, .pie__muestra { font-size: 12px; line-height: 20px; } }
.pie__muestra { order: 3; flex-basis: 100%; margin-top: 12px; opacity: .55; }
@media (min-width: 993px) { .pie__muestra { order: 0; flex-basis: auto; margin-top: 0; } }
.pie__muestra a { text-decoration: none; border-bottom: 1px solid rgba(0, 0, 0, .35); }
.pie__nav { margin-top: -11px; }
@media (min-width: 993px) { .pie__nav { margin-top: -25px; } }
.pie__nav ul { display: flex; flex-wrap: wrap; padding: 0; list-style: none; }
.pie__nav a { position: relative; color: inherit; font-size: 10px; font-weight: 700; text-decoration: none; user-select: none; }
@media (min-width: 415px) { .pie__nav a { font-size: 12px; } }
.pie__nav a::after { content: ""; position: absolute; top: 180%; left: 50%; display: inline-block; width: 100%; height: 2px; margin: 0 auto; background-color: #000; text-align: center; transform: translateY(0) translateX(-50%); }
@media (hover: hover) { .pie__nav a:hover { animation: .5s both parpadeo; will-change: transform, opacity; } }


.seccion--pagina { box-sizing: border-box; padding-top: 70px; padding-bottom: 60px; }
@media (min-width: 415px) { .seccion--pagina { padding-top: 100px; } }
.seccion--pagina .seccion__titulo { margin-top: 60px; }
@media (min-width: 415px) { .seccion--pagina .seccion__titulo { margin-top: 98px; } }
.seccion--pagina .miniaturas { margin-top: 48px; }
@media (min-width: 415px) { .seccion--pagina .miniaturas { margin-top: 56px; } }
.pagina__lede {
  width: calc(100% - 60px); max-width: 520px; margin: 22px 0 0 30px; font-size: 14px; line-height: 180%;
}
@media (min-width: 993px) { .pagina__lede { margin-left: max(50px, calc((100% - 1000px) / 2 + 0px)); } }
@media (min-width: 415px) and (max-width: 992px) { .pagina__lede { margin-left: 30px; } }
.filtros { display: flex; flex-wrap: wrap; gap: 8px 30px; width: 100%; max-width: 800px; margin: 22px auto 0; padding: 0 30px; }
@media (min-width: 993px) { .filtros { max-width: 1100px; padding: 0 50px; } }
.filtro { color: #000; font-size: 12px; font-weight: 500; line-height: 1; text-transform: uppercase; opacity: .4; transition: opacity .6s; padding: 6px 0; }
.filtro.es-activo, .filtro:hover { opacity: 1; }
.grilla3 > div { transition: opacity .5s; }
.grilla3 > div.atenuada { opacity: .08; pointer-events: none; }
.miniaturas--papel figure.ph-claro { background-color: #f6f4ee; }

.seccion--texto .seccion__interior { min-height: 60vh; }
.estudio { max-width: 640px; margin: 60px auto 0; }
@media (min-width: 415px) { .estudio { margin-top: 90px; } }
.estudio__nombre { margin-bottom: 46px; font-size: 14px; font-weight: 700; line-height: 160%; text-align: left; }
.estudio__bloque { margin-bottom: 44px; }
.estudio__bloque h3 { margin-bottom: 12px; font-size: 12px; font-weight: 700; line-height: 150%; }
.estudio__bloque p, .estudio__lista li, .contacto__texto { font-size: 14px; line-height: 180%; }
.estudio__lista li::before { content: "– "; }
.estudio__tabla > div { display: grid; grid-template-columns: 76px 1fr; margin-bottom: 8px; font-size: 14px; line-height: 170%; }
.estudio__tabla dt { font-weight: 500; font-variant-numeric: tabular-nums; }
.contacto__texto { margin-bottom: 40px; }
.formulario { display: flex; flex-direction: column; gap: 26px; }
.formulario__campo { display: block; }
.formulario__campo span { display: block; margin-bottom: 4px; font-size: 12px; font-weight: 500; text-transform: uppercase; opacity: .55; }
.formulario__campo input, .formulario__campo textarea {
  display: block; width: 100%; padding: 8px 0; border-bottom: 1px solid #000; border-radius: 0; font-size: 14px; line-height: 160%; resize: vertical;
}
.formulario__campo input:focus, .formulario__campo textarea:focus { outline: none; border-bottom-width: 2px; padding-bottom: 7px; }
.formulario__enviar { align-self: flex-start; margin-top: 8px; font-size: 12px; }
.formulario__gracias { font-size: 14px; line-height: 180%; font-weight: 500; }


@media (prefers-reduced-motion: reduce) {
  .portada, .lamina, .portada__nombre-txt, .revela, .barajar, .miniaturas figure img, .noticia a, .enlace-img { transition: none !important; animation: none !important; }
  .revela.es-reset, .barajar.es-reset { opacity: 1; }
  .miniaturas figure::after { animation: none; }
  .miniaturas figure img { opacity: 1; }
  .punto__anillo { display: none; }
  .btn-flecha:hover, .pie__nav a:hover { animation: none; }
}
