
@font-face { font-family: "Inter Tight"; font-style: normal; font-weight: 700; font-display: swap; src: url(intertight.woff2) format("woff2"); }

:root {
  --gris: #e8e8e8; --gris2: #666; --lila: #8C4CF6; --naranja: #ffa500;
  --ease: cubic-bezier(.77, 0, .175, 1);
  --cw: 43vw;            
  --ty: 0px;
}
*, *::before, *::after { box-sizing: border-box; }
html { background: #000; scrollbar-width: none; -ms-overflow-style: none; -webkit-text-size-adjust: 100%; }
html::-webkit-scrollbar, *::-webkit-scrollbar { display: none; }
body { margin: 0; background: transparent; color: #000; font: 700 14px/1.1 "Inter Tight", "Helvetica Neue", Helvetica, Arial, sans-serif; letter-spacing: 0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
h1, h2, h3, p, ul, ol, figure { margin: 0; font-size: inherit; font-weight: inherit; }
ul, ol { padding: 0; list-style: none; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; letter-spacing: inherit; text-align: inherit; }
img, svg, picture { display: block; max-width: 100%; }
img { height: auto; }
.subr { text-decoration: underline; }
.sr-only, .cerrar-sr:not(:focus) { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.cerrar-sr:focus { position: sticky; top: 0; z-index: 5; background: #000; color: #fff; padding: 8px 13px; border-radius: 4px; margin: 10px; }
[hidden] { display: none !important; }


.t-xs, .t-sm { font-size: 13px; letter-spacing: .01em; line-height: 110%; }
.t-md, .cuerpo p { font-size: 18px; letter-spacing: -.005em; line-height: 110%; }
.t-lg { font-size: 6.6vw; letter-spacing: -.02em; line-height: 102%; }
.t-xl { font-size: 10.6vw; letter-spacing: -.02em; line-height: 85%; text-wrap: balance; }
@media (min-width: 1024px) { .t-md, .cuerpo p { font-size: 19px; } }
@media (min-width: 768px) {
  .t-lg { font-size: min(3.4vw, 60px); letter-spacing: -.03em; line-height: 93%; }
  .t-xl { font-size: 6.7vw; line-height: 80%; }
}
.solo-esc { display: none !important; }
@media (min-width: 768px) { .solo-esc { display: block !important; } .solo-tel { display: none !important; } }


.navegacion { position: fixed; top: 10px; right: 10px; z-index: 1001; display: flex; flex-wrap: nowrap; gap: 5px; }
.chip { display: block; background: var(--gris); color: #000; padding: 8px 13px; border-radius: 4px; text-align: center; cursor: pointer; font-size: 14px; line-height: 15.4px;
  transition: background-color .1s ease-in-out, color .1s ease-in-out; white-space: nowrap; }
html.menu-abierto .navegacion { opacity: 0; pointer-events: none; transition: opacity .15s; }
@media (min-width: 768px) { html.menu-abierto .navegacion { opacity: 1; pointer-events: auto; } }
@media (min-width: 768px) and (hover: hover) { .chip:hover { background: #000; color: #fff; } }
.chip.act { background: #000; color: #fff; }


.menu-items { position: fixed; top: 0; left: 0; width: 100%; height: 60vh; background: #000; color: #fff; z-index: 50; transform: translateY(-102%);
  transition: transform .3s cubic-bezier(.4, 0, .2, 1), opacity .3s cubic-bezier(.4, 0, .2, 1), visibility 0s linear .3s; visibility: hidden; }
.menu-cont { display: grid; grid-template-columns: 1fr 1fr; width: 100%; height: 100%; padding: 10px; overflow: hidden; align-content: start; }
.menu-items li { list-style: none; }
.menu-items .t-lg { display: block; }
.menu-izq, .menu-der { display: flex; flex-direction: column; gap: 0; }
.menu-pie { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; margin-top: auto; align-self: end; height: auto; }
.menu-pie-izq { display: flex; flex-direction: column; justify-content: flex-end; gap: 0; flex-grow: 1; }
.menu-pie-izq .t-lg { text-align: left; line-height: 102%; }
.menu-pie-izq .t-lg:last-child { line-height: 85%; }
.menu-nota-tel { align-self: end; }
html.menu-abierto .menu-items { transform: none; visibility: visible; transition-delay: 0s; }
.menu-items a:hover { opacity: .5; }
@media (min-width: 768px) {
  .menu-items { height: 50dvh; z-index: -1; transform: none; opacity: 0; }
  html.menu-abierto .menu-items { opacity: 1; z-index: -1; }
  .menu-cont { grid-template-rows: minmax(0, 1fr); }
  .menu-izq, .menu-der { height: 100%; }
  .menu-der { position: relative; }
  .menu-nota { position: absolute; left: 2px; bottom: 0; margin: 0; }
  .menu-cerrar { position: absolute; bottom: 10px; left: 10px; color: #fff; text-align: left; line-height: 93%; }
  .menu-items { visibility: visible; }
  html:not(.menu-abierto) .menu-items { visibility: hidden; }
}


#inicio { position: relative; z-index: 1; transition: transform .6s var(--ease); }
@media (min-width: 768px) {
  html.cajon-abierto #inicio { transform: translateX(calc(var(--cw) * -1)); }
  html.menu-abierto #inicio { transform: translateY(50dvh); }
  html.menu-abierto.cajon-abierto #inicio { transform: translate(calc(var(--cw) * -1), 50dvh); }
  html.menu-abierto body { overflow: hidden; }   
}
.panel { position: sticky; top: 0; width: 100%; height: 90vh; height: 90dvh; display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
  padding: 10px; color: var(--c, #fff); font-size: 13px; }
@media (min-width: 768px) { .panel { height: 100vh; height: 100dvh; } }
.rotulo { position: absolute; top: 0; left: 0; padding: 17px 0 0 10px; font-size: 13px; letter-spacing: .01em; line-height: 14.3px; cursor: pointer; color: var(--c); }
.panel-img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; }
.panel-img img { height: 100vh; height: 100dvh; width: 100%; object-fit: cover; }
@media (min-width: 768px) { .panel-img { pointer-events: auto; } }
.panel-cont { position: relative; padding-right: 5vw; pointer-events: none; }
.panel-cont p { font-size: 14px; line-height: 15.4px; margin-left: 5px; }
.p-sala { margin-top: 10px; height: 15.4px; }
.p-sala a { font-size: 13px; line-height: 15.4px; pointer-events: auto; display: inline-block; }
.p-cuando, .p-tipo { font-size: 13px !important; letter-spacing: .01em; line-height: 14.3px !important; }
.p-tipo { margin-bottom: 5px; }
.panel-cont h2 a { pointer-events: auto; }
@media (min-width: 768px) { .panel-cont h2 a { pointer-events: none; } .panel-cont h2 a:focus-visible { outline-offset: 6px; } }
.parpadea { animation: parpadea .2s linear infinite; }
@keyframes parpadea { 0%, 100% { opacity: 1; } 50% { opacity: .2; } }


html.js img.lazy:not(.cargada) { filter: blur(4px); }
img.lazy { transition: filter .3s; }


.pie { position: relative; width: 100%; padding: 10px; background: #000; color: #fff; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); font-size: 13px; z-index: 1; }
.pie-c { grid-column: 1 / -1; margin-bottom: 2rem; }
.pie-marca { display: none; }
.pie-salas, .pie-enlaces { grid-column: span 6; margin-bottom: 0; }
.pie p { font-size: 13px; letter-spacing: .01em; line-height: 110%; }
.pie a { color: #ffffff80; text-decoration: none; }
.pie a:hover { color: #fff; }
.pie-enlaces > a { display: block; color: #ffffff80; }
.pie .aviso { margin-top: 14px; color: #ffffff80; }
.pie .aviso a { text-decoration: underline; }
@media (min-width: 768px) {
  .pie { position: sticky; top: 0; }
  .pie-c, .pie-salas, .pie-enlaces { grid-column: span 3; margin-bottom: 0; }
  .pie-marca { display: block; }
}


#cajon { position: fixed; top: 0; right: 0; width: 90%; height: 100vh; height: 100dvh; background: #fff; z-index: 40; transform: translateX(100%);
  transition: transform .6s var(--ease), width .6s var(--ease), visibility 0s linear .6s; visibility: hidden; }
html.cajon-abierto #cajon { transform: none; visibility: visible; transition-delay: 0s; }
#cajon.entrando { transition: transform .6s var(--ease), visibility 0s linear 0s; }   
@media (min-width: 768px) {
  #cajon { width: var(--cw); z-index: 2; }
  html.menu-abierto #cajon { transform: translateY(50dvh); }
  html.menu-abierto:not(.cajon-abierto) #cajon { transform: translate(100%, 50dvh); }
}
.cajon-scroll { height: 100%; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; scroll-behavior: auto; outline: 0; }
.cajon-contenido { opacity: 1; transition: opacity .7s ease-in-out; }
.cajon-contenido.sale { opacity: 0; transition-duration: .3s; }
.cierra-cajon { position: fixed; top: 0; left: 0; bottom: 0; right: var(--cw); z-index: 3; cursor: pointer; }
@media (max-width: 767px) { .cierra-cajon { right: 90%; } }

.pag-gris { background: var(--gris); padding: 0 5px 5px; min-height: 100vh; min-height: 100dvh; }
.barra-sup { position: sticky; top: 0; z-index: 2; background: var(--gris); padding: 18px 5px; font-size: 13px; letter-spacing: .01em; line-height: 14.3px; }
.barra-sup button { font-size: 13px; }
.barra-tabs { margin-bottom: 0; }
.barra-tabs .sep { margin: 0 4px 0 6px; }
.barra-tabs .off { color: var(--gris2); }
.barra-tabs .on { color: #000; }
.barra-tabs button:hover { color: #000; }
@media (max-width: 767px) { .barra-tabs .off, .barra-tabs .sep { display: none; } }


.tarjeta-exp { position: sticky; top: 50px; height: 70vh; height: 70dvh; background: #fff; padding: 8px 5px; margin-bottom: 10px; display: flex; flex-direction: row; overflow: hidden; }
.tarjeta-txt { flex: 1; min-width: 0; }
.tarjeta-txt .t-sm { margin-left: 0; }
.tarjeta-txt .t-sm:nth-child(2) { margin-top: 1px; }
.tarjeta-txt .t-sm:nth-child(3) { margin-bottom: 5px; }
.tarjeta-txt h2 { margin-left: -1px; }
.tarjeta-txt h2 a { display: block; }
.lila { color: var(--lila); }
.pulso { animation: pulso 2s cubic-bezier(.4, 0, .6, 1) infinite; }
@keyframes pulso { 50% { opacity: .5; } }
.tarjeta-img { position: absolute; left: 5px; bottom: 8px; width: 209px; }
.tarjeta-img img { width: 100%; height: 270px; object-fit: cover; }
@media (max-width: 767px) { .tarjeta-img { width: 40vw; } .tarjeta-img img { height: 52vw; } .tarjeta-exp { height: 76dvh; } }


.pag-eventos .evento { position: relative; background: #fff; padding: 5px; margin-bottom: 5px; min-height: 25vh; min-height: 25dvh; }
.evento h2 { margin: 0; }
.evento .t-lg { display: block; }
.ev-1 { margin-top: 5px; } .ev-2 { margin-top: 2px; }
.ev-sala { margin-top: 0; padding-bottom: 8px; }
.ev-img { height: 225px; overflow: hidden; margin-top: 8px; opacity: 1; transition: opacity .3s; }
.ev-img img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 768px) and (hover: hover) { .ev-img { opacity: 0; } .evento:hover .ev-img, .evento:focus-within .ev-img { opacity: 1; } }


.tienda-rejilla { display: flex; flex-direction: column; gap: 5px; padding-bottom: 5px; }
@media (min-width: 768px) { .tienda-rejilla { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; } }
.producto { display: flex; flex-direction: column; height: min-content; }
.prod-img { background: #000; margin-bottom: 5px; aspect-ratio: 353 / 442; display: flex; align-items: center; justify-content: center; }
.prod-img a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.tapa { width: 66%; height: auto; max-width: 233px; box-shadow: 0 0 0 1px rgba(255, 255, 255, .06); }
.prod-barra { position: sticky; top: 50px; z-index: 5; background: #000; color: var(--naranja); padding: 6px 5px 5px; margin-bottom: 5px; font-size: 13px; letter-spacing: .01em; line-height: 110%; }
.prod-txt { background: #fff; padding: 6px 5px 5px; margin-bottom: 5px; min-height: 56px; }
.prod-btn { width: 100%; background: var(--naranja); color: #000; padding: 6px 5px 5px; margin-bottom: 5px; font-size: 13px; letter-spacing: .01em; line-height: 110%; text-align: center; transition: opacity .15s; }
.prod-btn:hover { opacity: .5; }
.cuerpo-chico, .cuerpo-chico p, .cuerpo-chico a { font-size: 13px; letter-spacing: .01em; line-height: 110%; }


.pag-texto .barra-sup button { font-size: 13px; }
.grupo-barra { position: sticky; top: 49px; z-index: 100; background: #fff; margin-bottom: 5px; }
.barra-negra { background: #000; color: var(--lila); padding: 6px 5px 5px; margin-bottom: 5px; font-size: 13px; letter-spacing: .01em; line-height: 110%; }
.bloque { background: #fff; margin-bottom: 5px; }
.cuerpo-grande { padding: 5px 5px 15px; }
.cuerpo-grande p { margin-bottom: -3px; }
.cuerpo-pad { padding: 5px 5px 4px; margin-bottom: 5px; }
.cuerpo-pad a { text-decoration: underline; }
.cuerpo-pad a[data-aviso]:hover { opacity: .5; }
.bloque-foto { padding: 5px 5px 4px; }
.bloque-foto img { max-height: 30vh; max-height: 30dvh; width: auto; max-width: 100%; }
@media (max-width: 767px) { .bloque-foto img { max-height: none; width: 100%; } }
.cuerpo-lista ul { list-style: disc; padding: 0 0 0 30px; margin: 5px 0 0; }
.cuerpo-lista li { font-size: 18px; letter-spacing: -.005em; line-height: 110%; }
.bloque-form { padding: 5px; }
.form-boletin input[type=email] { display: block; width: 100%; min-height: 60px; background: #f5f5f5; border: 0; border-radius: 4px; padding: 5px 10px 3px; margin-bottom: 5px; font-size: 14px; color: #000; }
.form-boletin input::placeholder { color: #000; opacity: 1; }
.form-enviar { width: 100%; background: #000; color: #fff; border: 0; border-radius: 4px; padding: 6px 10px 5px; min-height: 20px; font: inherit; font-size: 13px; letter-spacing: .01em; cursor: pointer; transition: opacity .15s; }
.form-enviar:hover { opacity: .5; }
.form-ok { margin-top: 8px; font-size: 13px; letter-spacing: .01em; }


.pag-ficha { background: var(--gris); }
.ficha-a { position: sticky; top: 0; height: 100vh; height: 100dvh; background: var(--c); padding: 10px; display: flex; flex-direction: column; overflow: hidden; }
.ficha-a-arriba { flex: 0 0 auto; padding-right: 0; }
.ficha-a-arriba p:first-child { margin-top: 0; }
.ficha-a-arriba .t-sm:nth-child(2) { padding-bottom: 10px; }
.ficha-a-arriba h1 { padding-bottom: 1vw; margin-left: 0; }
.ficha-a-medio { position: relative; flex: 1 1 0; min-height: 0; }
.ficha-a-medio img { position: absolute; top: 0; left: 0; height: 100%; width: auto; max-width: 100%; object-fit: contain; object-position: bottom left; padding-bottom: 15px; }
.ficha-a-abajo { flex: 0 0 auto; display: flex; align-items: flex-end; }
.ficha-a-abajo h2 { padding-bottom: .5vw; }
.ficha-b { position: relative; background: var(--gris); padding: 7px 5px; }
.ficha-card { background: #fff; padding: 5px; display: flex; flex-direction: column; }
.ficha-izq { position: relative; width: 100%; padding-right: 0; }
.ficha-der { width: 100%; margin-top: 20px; }
.ficha-meta { position: sticky; top: 10px; }
.fila { display: flex; flex-direction: row; width: 100%; }
.fila-k { width: 110px; flex: 0 0 auto; }
.fila-v { flex: 1; }
.fila p { font-size: 13px; }
.ficha-mini { display: none; }
.cuerpo { padding-bottom: 0; }
.cuerpo p:last-child { margin-bottom: -3px; }
.ficha-gal { padding: 0; }
.gal-item { display: flex; justify-content: flex-start; text-align: left; }
.gal-mitad { width: 100%; }
.gal-foto { padding: 5px 0 0; }
.gal-foto img { width: 100%; height: auto; }
.gal-pie { margin: 5px 0; }
.gal-pie p { font-size: 13px; letter-spacing: .01em; }
@media (min-width: 768px) {
  .ficha-card { flex-direction: row; flex-wrap: wrap; }
  .ficha-izq { width: 50%; padding-right: 50px; }
  .ficha-der { width: 50%; margin-top: 0; }
  .fila-k { width: 130px; }
  .ficha-mini { display: block; position: sticky; top: 50dvh; left: 0; z-index: 10; width: 110px; margin-top: 10px; }
  .ficha-mini img { width: 110px; height: auto; }
  .gal-mitad { width: 50%; }
  .gal-item { margin-top: 0; }
}


.aviso-flotante { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 2000; background: #000; color: #fff; padding: 9px 14px; border-radius: 4px; font-size: 13px; letter-spacing: .01em; max-width: calc(100vw - 20px); text-align: center; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition-duration: 0s !important; transition-delay: 0s !important; scroll-behavior: auto !important; }
  html.js img.lazy:not(.cargada) { filter: none; }
}
