

.c5-escena { position:relative; width:100%; height:100%; }
.c5-lienzo { position:absolute; left:0; top:0; transform-origin:0 0; }
.c5-pc .c5-lienzo { width:1240px; height:700px; }
.c5-movil .c5-lienzo { width:360px; height:780px; }
.c5-pantalla { position:absolute; }

.c5-pc .c5-profe { left:20px; top:96px; width:780px; }   
.c5-movil .c5-profe { left:10px; top:0; width:340px; }
.c5-vidrio { position:relative; width:100%; aspect-ratio:var(--c5-w) / var(--c5-h);
  border-radius:var(--dc-radius-card, 28px);
  box-shadow:0 30px 90px rgba(0,0,0,.42), 0 8px 24px rgba(0,0,0,.25);
  background:linear-gradient(90deg, #95A3BA 0%, #B4BDCB 55%, #D1D5D8 100%); }
.c5-movil .c5-vidrio { border-radius:var(--casa-radio-16); }
.c5-recorte { position:absolute; inset:0; border-radius:inherit; overflow:hidden; }
.c5-marco { position:absolute; left:0; top:0; border:0; display:block; transform-origin:0 0; pointer-events:none; background:transparent;
  opacity:0; transition:opacity var(--dc-t-lento, .7s) var(--dc-ease, cubic-bezier(.42,0,.18,1)); }

.c5-fono-caja { position:absolute; width:700px; height:1242px; transform-origin:0 0; left:calc(-90px * var(--c5-k)); top:calc(-90px * var(--c5-k));
  transform:scale(var(--c5-k)); }

.c5-pc .c5-alumno { --c5-k:.655; left:850px; top:0; width:341px; height:696px; }
.c5-movil .c5-alumno { --c5-k:.365; left:85px; top:268px; width:190px; height:388px; }

.c5-alumno .mp-fono { -webkit-mask-image:none !important; mask-image:none !important; }
.c5-alumno .mp-lec-marco { opacity:0; }

.c5-listo .c5-marco, .c5-listo .c5-alumno .mp-lec-marco { opacity:1; }

.c5-lienzo { transition:opacity var(--dc-t-entrada, .85s) var(--dc-ease, cubic-bezier(.42,0,.18,1)), filter var(--dc-t-entrada, .85s) var(--dc-ease, cubic-bezier(.42,0,.18,1)); }

.c5-marco, .c5-alumno .mp-lec-marco { transition:opacity var(--dc-t-entrada, .85s) var(--dc-ease, cubic-bezier(.42,0,.18,1)); }
.c5-escena.c5-funde .c5-marco, .c5-escena.c5-funde .c5-alumno .mp-lec-marco { opacity:0; transition-duration:var(--dc-t-salida, .32s); }

.c5-quien { position:absolute; left:0; right:0; text-align:center; font-family:var(--dc-font); font-weight:400; letter-spacing:.5px;
  color:#F2F2F4; line-height:1.15; pointer-events:none; }
.c5-pc .c5-profe .c5-quien { top:calc(100% + 26px); }
.c5-pc .c5-alumno .c5-quien { top:calc(100% + 14px); }
.c5-movil .c5-profe .c5-quien { top:calc(100% + 10px); }
.c5-movil .c5-alumno .c5-quien { top:calc(100% + 12px); }
.c5-quien-es { display:block; font-size:var(--casa-letra-30); text-shadow:0 0 16px rgba(242,242,244,.3); }
.c5-quien-ru { display:block; font-size:var(--casa-letra-20); color:rgba(242,242,244,.62); }
.c5-movil .c5-quien-es { font-size:var(--casa-letra-20); }
.c5-movil .c5-quien-ru { font-size:var(--casa-letra-18); }

.c5-quien { animation:dcEntraLigera var(--dc-t-entrada, .85s) var(--dc-ease, cubic-bezier(.42,0,.18,1)) both; }
.c5-alumno .c5-quien { animation-delay:.12s; }
@media (prefers-reduced-motion: reduce) { .c5-marco, .c5-alumno .mp-lec-marco { transition:none; } .c5-quien { animation:none; } }

html.c5-ver, html.c5-ver body { overflow:hidden !important; }
.c5-ver-sala { position:fixed; inset:0; z-index:var(--casa-capa-tope-clases); background:linear-gradient(135deg, #2C2D2E 0%, #16171A 48%, #0A0A0C 100%);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--casa-sp-28); padding:var(--casa-sp-40) 56px 48px; box-sizing:border-box; }
.c5-ver-sala::after { content:''; position:absolute; inset:0; pointer-events:none; opacity:.035; background-image:var(--grano, none); background-size:128px; }
.c5-ver-escena { position:relative; width:100%; flex:1 1 auto; min-height:0; }
.c5-ver-pie { text-align:center; font-family:var(--dc-font); color:#F2F2F4; letter-spacing:.5px; animation:dcEntra var(--dc-t-entrada, .85s) var(--dc-ease) .3s both; }
.c5-ver-t { font-size:var(--dc-fs-52, 40px); text-shadow:var(--casa-brillo-elegido); }
.c5-ver-ru { margin-top:var(--casa-sp-8); font-size:var(--dc-fs-32, 26px); color:rgba(242,242,244,.62); }
@media (max-width:700px) {
  .c5-ver-sala { padding:var(--casa-sp-24) var(--casa-sp-16) 32px; gap:var(--casa-sp-16); }
  .c5-ver-t { font-size:24px; } .c5-ver-ru { font-size:var(--casa-letra-18); }
}

html.visita #screen-login { visibility:hidden !important; }

#muro { position:fixed; inset:0; z-index:var(--casa-capa-muro); overflow-y:auto; overscroll-behavior:contain; display:flex; justify-content:center; align-items:center;
  visibility:hidden; transition:visibility 0s linear var(--dc-t-salida);
  font-family:var(--dc-font); font-weight:var(--dc-weight); color:var(--dc-ink); -webkit-tap-highlight-color:transparent; }
#muro.on { visibility:visible; transition:visibility 0s; }
.mu-velo { position:fixed; inset:0; background:radial-gradient(70% 70% at 50% 45%, rgba(10,10,12,.28), rgba(10,10,12,.74)); }
#muro .mu-velo { opacity:0; transition:opacity var(--dc-t-salida) var(--dc-ease); }
#muro.on .mu-velo { opacity:1; transition:opacity var(--dc-t-entrada) var(--dc-ease); }
#muro:not(.on) .mu-caja { opacity:0; }

html.sin-desenfoque.muro-abierto .noche-escenario, html.sin-desenfoque.muro-abierto #folio-ov { filter:blur(18px) saturate(.9); transition:filter var(--dc-t-entrada) var(--dc-ease); }
html.muro-abierto .noche *, html.muro-abierto #folio-ov * { animation-play-state:paused !important; }
.mu-caja { position:relative; width:100%; max-width:calc(980 * var(--dc-u)); padding:var(--dc-sp-60) var(--dc-sp-24); box-sizing:border-box;
  display:flex; flex-direction:column; align-items:center; text-align:center; transform:translateY(calc(24 * var(--dc-u))); transition:transform var(--dc-t-entrada) var(--dc-ease), opacity var(--dc-t-entrada) var(--dc-ease); }
#muro.on .mu-caja { transform:none; }

.mu-marca { font-size:var(--dc-fs-140); line-height:1; letter-spacing:var(--dc-tracking); white-space:nowrap;
  text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.42), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.14); }
.mu-motivo { margin-top:var(--dc-sp-20); max-width:calc(760 * var(--dc-u)); font-size:var(--dc-fs-30); line-height:1.35; color:var(--dc-ink-70); }

#muro .mu-tabs { display:flex; justify-content:center; align-items:baseline; gap:var(--dc-sp-60); padding:var(--dc-sp-48) 0 var(--dc-sp-20); }
#muro .mu-tabs .ent-op { font-size:var(--dc-fs-60); transform-origin:center; }
#muro .mu-tabs .ent-op.active { text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.45), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.16); }

.mu-form { width:100%; display:flex; flex-direction:column; align-items:center; }
#muro .ent-campo { max-width:calc(620 * var(--dc-u)); text-align:center; }
#muro .mu-nombre.persiana { max-height:calc(140 * var(--dc-u)); }
#muro .ent-error { text-align:center; max-width:calc(760 * var(--dc-u)); }

#muro .ent-accion { align-self:center; transform-origin:center; text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.45), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.16);
  transition:transform var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-salida) var(--dc-ease); padding-left:var(--dc-sp-24); }
#muro .ent-accion.cruza { opacity:0; }
#muro .ent-pie { text-align:center; }
@media (max-width:700px) {
  .mu-marca { font-size:var(--dc-fs-80); }
  #muro .mu-tabs { gap:var(--dc-sp-40); }
  #muro .mu-tabs .ent-op { font-size:var(--dc-fs-40); }
  
  #muro { align-items:flex-start; }
  .mu-caja { padding-top:12vh; }
}

#lec-ov { position:fixed; inset:0; z-index:var(--casa-capa-leccion); background:var(--dc-bg); opacity:0;
  transition:opacity var(--dc-t-entrada) var(--dc-ease); }
#lec-ov.show { opacity:1; }
#lec-ov.hide { opacity:0; transition-duration:var(--dc-t-salida); }

#lec-carga { position:fixed; inset:0; z-index:var(--casa-capa-leccion-carga); background:var(--dc-bg); opacity:0;
  display:flex; align-items:center; justify-content:center; padding:0 calc(120 * var(--dc-u)); box-sizing:border-box;
  transition:opacity var(--dc-t-entrada) var(--dc-ease); }
#lec-carga.show { opacity:1; }
#lec-carga.hide { opacity:0; transition-duration:var(--dc-t-salida); }
#lec-carga .crear-marca { font-size:44px; top:calc(22px + env(safe-area-inset-top, 0px)); left:calc(30px + env(safe-area-inset-left, 0px)); }
#lec-carga .lec-carga-t { max-width:calc(1300 * var(--dc-u)); font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-100);
  line-height:1.12; letter-spacing:var(--dc-tracking); color:var(--dc-ink); text-shadow:var(--dc-shadow-text); text-align:center; text-wrap:balance;
  animation:dcEntraLigera var(--dc-t-entrada) var(--dc-ease) both, lecCargaRespira 2.6s ease-in-out var(--dc-t-entrada) infinite; }
@keyframes lecCargaRespira { 0%, 100% { opacity:1; } 50% { opacity:.62; } }
@media (max-width: 899px) {
  #lec-carga { padding:0 var(--casa-sp-24); }
  #lec-carga .crear-marca { font-size:var(--casa-letra-46); top:calc(22px + env(safe-area-inset-top, 0px)); left:calc(24px + env(safe-area-inset-left, 0px)); }
  #lec-carga .lec-carga-t { font-size:var(--dc-fs-68); }
}
@media (prefers-reduced-motion: reduce) { #lec-carga .lec-carga-t { animation:none; } }

#lec-ov .lec-escena { position:absolute; inset:0; overflow:hidden; overscroll-behavior:contain;
  display:flex; align-items:center; justify-content:center;
  padding:calc(150 * var(--dc-u)) calc(76 * var(--dc-u)) calc(200 * var(--dc-u)); box-sizing:border-box; }
#lec-ov .lec-dentro { width:100%; transform:scale(var(--lec-k, 1)); transform-origin:50% 50%;
  transition:transform var(--dc-t-lento) var(--dc-ease);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0, calc(1000 * var(--dc-u))) minmax(0,1fr);
  grid-template-areas:". ej voz"; column-gap:calc(90 * var(--dc-u)); align-items:center; }
#lec-ov .lec-ej { grid-area:ej; min-width:0; max-width:100%; position:relative; }

#lec-ov .wa-hueco { max-width:100%; box-sizing:border-box; }
#lec-ov .wa-hueco .wa-input { max-width:100%; min-width:0; flex-shrink:1; }
#lec-ov .lec-voz { grid-area:voz; align-self:center; max-width:calc(560 * var(--dc-u));
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40); line-height:1.25;
  letter-spacing:var(--dc-tracking); color:var(--dc-ink); text-shadow:var(--dc-shadow-text); }
#lec-ov .lec-voz p { margin:0; text-wrap:balance; }

#lec-ov .match-card { display:flex; flex-direction:column; }
#lec-ov .match-card .match-drop-zone { margin-top:auto; }
#lec-ov .lec-voz .vieja { font-size:.62em; opacity:.5; margin-bottom:.7em; }
#lec-ov .lec-voz .nueva { animation:dcEntraLigera var(--dc-t-entrada) var(--dc-ease) both; }   

#lec-ov .lec-fuera { position:absolute; left:0; right:0; top:0; visibility:hidden; pointer-events:none; }

#lec-ov .sv-instruction { display:none; }
#lec-ov .ex-wysiwyg { margin:0; }
#lec-ov .ex-wysiwyg::after { display:none; }

#lec-ov .crear-marca, #hc-ov.hc-guion #hc-marca {
  font-size:44px; top:calc(22px + env(safe-area-inset-top, 0px)); left:calc(30px + env(safe-area-inset-left, 0px)); }

#lec-ov.con-teclado .lec-dentro { justify-content:flex-start; align-content:start; }
#lec-ov.con-teclado .lec-voz .vieja { display:none; }
#lec-nav.con-teclado { opacity:0; pointer-events:none; }
#lec-nav.con-teclado > * { pointer-events:none; }

#lec-nav { position:fixed; left:0; right:0; bottom:0; z-index:var(--casa-capa-leccion-mandos);
  display:flex; align-items:center; justify-content:center; gap:calc(56 * var(--dc-u));
  padding:0 20px calc(30px + env(safe-area-inset-bottom, 0px)); pointer-events:none;
  opacity:0; transition:opacity var(--dc-t-entrada) var(--dc-ease); }
#lec-nav.show { opacity:1; }
#lec-nav.hide { opacity:0; transition-duration:var(--dc-t-salida); }
#lec-nav > * { pointer-events:auto; }
#lec-nav .ex-accion { font-size:var(--dc-fs-34); opacity:.8; }
#lec-nav .ex-accion:disabled { opacity:.14; }
#lec-nav .ig-barra { width:calc(360 * var(--dc-u)); flex:0 1 auto; }

@media (max-width: 899px) {
  #lec-ov, #lec-nav {
    --dc-u: calc(100vw / 560);
    --dc-fs-68: calc(68 * var(--dc-u)); --dc-fs-56: calc(56 * var(--dc-u)); --dc-fs-52: calc(52 * var(--dc-u));
    --dc-fs-50: calc(50 * var(--dc-u)); --dc-fs-40: calc(40 * var(--dc-u)); --dc-fs-38: calc(38 * var(--dc-u));
    --dc-fs-34: calc(34 * var(--dc-u)); --dc-fs-32: calc(32 * var(--dc-u)); --dc-fs-30: calc(30 * var(--dc-u));
    --dc-fs-22: calc(22 * var(--dc-u)); --dc-fs-20: calc(20 * var(--dc-u)); --dc-fs-18: calc(18 * var(--dc-u));
    --dc-sp-6: calc(6 * var(--dc-u)); --dc-sp-8: calc(8 * var(--dc-u)); --dc-sp-10: calc(10 * var(--dc-u));
    --dc-sp-14: calc(14 * var(--dc-u)); --dc-sp-16: calc(16 * var(--dc-u)); --dc-sp-18: calc(18 * var(--dc-u));
    --dc-sp-20: calc(20 * var(--dc-u)); --dc-sp-24: calc(24 * var(--dc-u)); --dc-sp-34: calc(34 * var(--dc-u));
    --dc-sp-36: calc(36 * var(--dc-u)); --dc-sp-40: calc(40 * var(--dc-u)); --dc-sp-48: calc(48 * var(--dc-u));
    --dc-sp-60: calc(60 * var(--dc-u)); --dc-sp-64: calc(64 * var(--dc-u)); --dc-sp-72: calc(72 * var(--dc-u));
    --dc-sp-76: calc(76 * var(--dc-u));
    --dc-r-card: calc(28 * var(--dc-u)); --dc-r-panel: calc(18 * var(--dc-u)); --dc-r-nav: calc(34.14 * var(--dc-u));
  }

#lec-ov .lec-escena { display:flex; align-items:flex-start; justify-content:center;
    padding:92px 20px calc(120px + env(safe-area-inset-bottom, 0px)); }
  #lec-ov .lec-dentro { display:flex; flex-direction:column; justify-content:flex-start;
    gap:calc(56 * var(--dc-u)); transform-origin:50% 0; }
  
  #lec-ov .lec-voz { order:-1; max-width:none; height:5.4em; flex:0 0 auto; align-self:stretch;
    display:flex; flex-direction:column; justify-content:flex-end; }
  
  #lec-ov .crear-marca, #hc-ov.hc-guion #hc-marca { font-size:var(--casa-letra-46); top:calc(22px + env(safe-area-inset-top, 0px)); left:calc(24px + env(safe-area-inset-left, 0px)); }
  #lec-ov .lec-escena { padding-top:calc(108px + env(safe-area-inset-top, 0px)); }
  #lec-ov.con-teclado .lec-escena { padding-top:calc(70px + env(safe-area-inset-top, 0px)); padding-bottom:var(--casa-sp-24); gap:calc(36 * var(--dc-u)); }
  #lec-nav { gap:calc(40 * var(--dc-u)); }
  #lec-nav .ig-barra { width:calc(220 * var(--dc-u)); }
}

.mas-luz { position:absolute; left:50%; top:52%; width:3.4em; height:3.4em; margin:-1.7em 0 0 -1.7em; border-radius:var(--casa-radio-redondo);
  pointer-events:none; opacity:0; transform:scale(.2); z-index:-1;
  background:radial-gradient(circle, rgba(255,255,255,.92) 0%, rgba(255,255,255,.42) 18%, rgba(255,255,255,.12) 42%, rgba(255,255,255,.03) 58%, rgba(255,255,255,0) 70%); }
@keyframes masLuz {
  0%   { opacity:0;   transform:scale(.2); }
  34%  { opacity:1;   transform:scale(1.22); }
  58%  { opacity:.78; transform:scale(1.02); }
  100% { opacity:.5;  transform:scale(1); }
}

.noche-marca-t .marca-club { position:relative; }
.noche-marca-t.neon .marca-club { animation:none !important; }
.noche-marca-t .marca-club::before { content:""; position:absolute; left:50%; top:55%; width:4.4em; height:4.4em; margin:-2.2em 0 0 -2.2em; border-radius:var(--casa-radio-redondo);
  pointer-events:none; opacity:0; transform:scale(.2); z-index:-1;
  background:radial-gradient(circle, rgba(255,255,255,.85) 0%, rgba(255,255,255,.34) 20%, rgba(255,255,255,.09) 44%, rgba(255,255,255,0) 68%); }

@keyframes masLuzSuave { 0% { opacity:0; transform:scale(.72); } 60% { opacity:.72; transform:scale(1); } 100% { opacity:.42; transform:scale(1); } }
.noche-marca-t.neon .marca-club::before { animation:masLuzSuave 3.4s cubic-bezier(.25,.1,.25,1) both; }
.noche-marca-t.neon .marca-club { opacity:1; transition:opacity var(--dc-t-entrada) var(--dc-ease); }
.noche-marca-t.encendido .marca-club::before { opacity:.32; transform:scale(1); transition:opacity var(--dc-t-entrada) var(--dc-ease); }

.es-mas { background:transparent; }
.n-mas-nombre { position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); text-align:center; z-index:2; line-height:1; }
.n-mas-hc { display:block; font-size:58px; letter-spacing:.5px; opacity:.9; }
.n-mas-mas { position:relative; display:inline-block; margin-top:var(--casa-sp-6); font-size:176px; letter-spacing:0; isolation:isolate;
  text-shadow:var(--casa-brillo-elegido); }

.nv-esc:not(.moviendo) .n-rec.centro .n-mas-mas .mas-luz { animation:masLuz 2.6s cubic-bezier(.3,0,.2,1) both; }
.noche.alto .n-mas-nombre { top:46%; }
.noche.alto .n-mas-hc { font-size:26px; }
.noche.alto .n-mas-mas { font-size:88px; }

.mas-cuadros { position:absolute; inset:0; pointer-events:none; }
.mas-cuadro { position:absolute; width:340px; height:220px; border-radius:26px; overflow:hidden; color:#fff;
  background:linear-gradient(100deg, #c3c9cd 0%, #a5b0bd 45%, #7f8ea6 100%);
  box-shadow:0 30px 70px rgba(0,0,0,.42), 0 4px 50px #0000007F; font-family:var(--dc-font); }
.mas-cuadro .mc-marca { position:absolute; left:18px; top:14px; font-size:15px; line-height:1; text-shadow:0 8px 16px rgba(20,30,45,.6); }
.mas-cuadro .mc-marca .marca-club { font-size:.42em; margin-left:.12em; }

.es-mas .mas-cuadro { opacity:.9; transform:scale(.86); transform-origin:0 0; }
.es-mas .mc-msg { left:268px; top:150px; }
.es-mas .mc-piz { left:900px; top:130px; }
.es-mas .mc-voz { left:262px; top:440px; }
.es-mas .mc-playa { left:910px; top:450px; }
.noche.alto .es-mas .mas-cuadro { transform:scale(.47); }
.noche.alto .es-mas .mc-msg { left:26px; top:58px; }
.noche.alto .es-mas .mc-piz { left:204px; top:92px; }
.noche.alto .es-mas .mc-voz { left:26px; top:auto; bottom:60px; }
.noche.alto .es-mas .mc-playa { left:204px; top:auto; bottom:96px; }

.mc-escribe .mc-e { position:absolute; left:26px; right:20px; top:52px; font-size:var(--casa-letra-32); line-height:1.28; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.mc-w { display:inline-block; opacity:0; border-radius:.2em; animation:mcW 6s calc(var(--i) * .3s) infinite; }
@keyframes mcW { 0% { opacity:0; transform:translateY(.06em); } 7%, 84% { opacity:1; transform:none; } 92%, 100% { opacity:0; transform:none; } }
.mc-w-hl { background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); background-repeat:no-repeat; background-position:left center; background-size:0% 100%;
  animation:mcW 6s calc(var(--i) * .3s) infinite, mcHl 6s calc(var(--i) * .3s) infinite; }
@keyframes mcHl { 0%, 22% { background-size:0% 100%; } 32%, 100% { background-size:100% 100%; } }
.mc-playa .mc-pill span { font-size:var(--casa-letra-18); }

.mc-piz .mc-t { position:absolute; left:26px; top:66px; font-size:72px; line-height:1; letter-spacing:0; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.mc-piz .mc-n { position:absolute; left:28px; top:152px; font-size:var(--casa-letra-20); opacity:.75; }
.mc-fin { position:relative; display:inline-block; }
.mc-ar, .mc-o { display:inline-block; border-radius:.2em; background-repeat:no-repeat; background-position:left center; background-size:0% 100%; }
.mc-ar { background-image:linear-gradient(rgba(255,177,204,.56), rgba(255,177,204,.56)); animation:mcAr 6s infinite; }
.mc-o { position:absolute; left:0; top:0; opacity:0; background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); animation:mcO 6s infinite; }
@keyframes mcAr { 0%,12% { background-size:0% 100%; opacity:1; } 22%,44% { background-size:100% 100%; opacity:1; } 52%,94% { background-size:100% 100%; opacity:0; } 100% { background-size:0% 100%; opacity:1; } }
@keyframes mcO  { 0%,50% { opacity:0; transform:translateX(-.18em); background-size:0% 100%; } 60% { opacity:1; transform:none; background-size:0% 100%; } 70%,90% { opacity:1; transform:none; background-size:100% 100%; } 96%,100% { opacity:0; background-size:100% 100%; } }

.mc-hueco .mc-frase { position:absolute; left:24px; top:52px; font-size:var(--casa-letra-30); line-height:44px; text-shadow:0 2px 8px rgba(0,0,0,.35); white-space:nowrap; }
.mc-h { position:relative; display:inline-block; vertical-align:middle; width:112px; height:44px; margin:0 var(--casa-sp-6); border-radius:var(--casa-radio-22);
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; }
.mc-h::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82);
  box-shadow:0 0 22px rgba(72,205,140,.55), 0 0 60px rgba(72,205,140,.28); animation:mcVerde 6s 1.2s infinite; }
.mc-h-pal { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:var(--casa-letra-22); opacity:0; animation:mcCae 6s 1.2s infinite; }
.mc-hueco .mc-banco { position:absolute; left:24px; right:24px; bottom:22px; height:48px; border-radius:var(--casa-radio-22); display:flex; align-items:center; gap:var(--casa-sp-18); padding:0 var(--casa-sp-18);
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; font-size:19px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
@keyframes mcCae  { 0%,24% { opacity:0; transform:translateY(-30px) scale(.9); } 32% { opacity:1; transform:scale(1.06); } 38%,90% { opacity:1; transform:none; } 97%,100% { opacity:0; transform:none; } }
@keyframes mcVerde { 0%,40% { opacity:0; } 48%,90% { opacity:1; } 97%,100% { opacity:0; } }

.mc-match .mc-foto { position:absolute; left:20px; top:20px; right:20px; height:128px; border-radius:var(--casa-radio-18); background-size:cover; background-position:center;
  box-shadow:0 14px 30px rgba(15,20,30,.34); }
.mc-match .mc-foto::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; box-shadow:0 0 22px rgba(72,205,140,.6), 0 0 60px rgba(72,205,140,.3); animation:mcVerde 6s 2.4s infinite; }
.mc-match .mc-pill { position:absolute; left:20px; right:20px; bottom:18px; height:42px; border-radius:21px; overflow:hidden;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; }
.mc-match .mc-pill::after { content:""; position:absolute; inset:0; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82); animation:mcVerde 6s 2.4s infinite; }
.mc-match .mc-pill span { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:var(--casa-letra-20); text-shadow:0 2px 8px rgba(0,0,0,.35);
  opacity:0; animation:mcCae 6s 2.4s infinite; }

.n-rec:not(.centro) .mas-cuadro *, .n-rec:not(.centro) .mas-cuadro *::after, .nv-esc.moviendo .mas-cuadro *, .nv-esc.moviendo .mas-cuadro *::after,
.nv-esc.quieto .mas-cuadro *, .nv-esc.quieto .mas-cuadro *::after { animation-play-state:paused; }
@media (prefers-reduced-motion: reduce) { .mas-cuadro *, .mas-cuadro *::after, .mas-luz { animation:none !important; } }

.ms { position:absolute; inset:0; }
.ms-izq { position:absolute; left:80px; top:170px; width:560px; opacity:0; transform:translateX(-30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .2s, transform var(--dc-t-viaje) var(--dc-ease) .2s; }
.ms-der { position:absolute; left:700px; top:150px; width:680px; height:640px; opacity:0; transform:translateX(30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .3s, transform var(--dc-t-viaje) var(--dc-ease) .3s; }
.nv-cla.on .ms-izq, .nv-cla.on .ms-der { opacity:1; transform:none; }
.nv-cls.on { transition:opacity var(--dc-t-lento) var(--dc-ease) .34s, visibility 0s; }
.ms .n-mas-hc { font-size:var(--casa-letra-40); }
.ms .n-mas-mas { font-size:150px; margin-top:0; }
.nv-cla.on .ms .mas-luz { animation:masLuz 2.6s cubic-bezier(.3,0,.2,1) .5s both; }
.ms-sub { margin-top:var(--casa-sp-18); font-size:24px; line-height:1.35; opacity:.82; max-width:520px; }
.ms-lista { list-style:none; margin:var(--casa-sp-28) 0 0; padding:0; display:flex; flex-direction:column; gap:var(--casa-sp-12); }
.ms-lista li { font-size:var(--casa-letra-22); line-height:1.3; opacity:.72; }
.ms-precio { margin-top:var(--casa-sp-30); font-size:28px; }
.ms-acc { margin-top:var(--casa-sp-20); display:flex; flex-direction:column; align-items:flex-start; gap:var(--casa-sp-14); }
.noche .ms-cta { font-size:calc(60 * var(--nu)); line-height:1; padding:calc(10 * var(--nu)) 0; text-transform:lowercase; text-shadow:var(--n-brillo);
  transform-origin:left center; transition:transform var(--dc-t-lento) var(--dc-ease); text-align:left; }
@media (any-hover: hover) { .noche .ms-cta:hover { transform:scale(1.07); } }
.noche .ms-otra { font-size:24px; opacity:.62; transition:opacity var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche .ms-otra:hover { opacity:1; } }
.ms-der { height:700px; }
.ms-der .mas-cuadro { transform:scale(.95); transform-origin:0 0; }
.ms-der .mc-msg { left:0; top:0; }
.ms-der .mc-piz { left:350px; top:40px; }
.ms-der .mc-voz { left:10px; top:232px; }
.ms-der .mc-playa { left:350px; top:272px; }
.ms-der .mc-escribe { left:180px; top:470px; }
.noche .ms-volver { position:absolute; left:80px; top:132px; font-size:var(--casa-letra-22); opacity:.6; z-index:3; }

.noche.alto .ms { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:96px var(--casa-sp-24) var(--casa-sp-40); box-sizing:border-box; }
.noche.alto .ms::-webkit-scrollbar { display:none; }
.noche.alto .ms-izq, .noche.alto .ms-der { position:relative; left:auto; top:auto; width:auto; }
.noche.alto .ms-der { height:380px; margin-top:var(--casa-sp-26); }
.noche.alto .ms-der .mas-cuadro { transform:scale(.5); }
.noche.alto .ms-der .mc-msg { left:0; top:0; }
.noche.alto .ms-der .mc-piz { left:172px; top:22px; }
.noche.alto .ms-der .mc-voz { left:0; top:124px; }
.noche.alto .ms-der .mc-playa { left:172px; top:146px; }
.noche.alto .ms-der .mc-escribe { left:86px; top:250px; }
.noche.alto .ms .n-mas-hc { font-size:24px; }
.noche.alto .ms .n-mas-mas { font-size:92px; }
.noche.alto .ms-sub { font-size:16px; }
.noche.alto .ms-lista li { font-size:15px; }
.noche.alto .ms-precio { font-size:19px; }
.noche.alto .ms-otra { font-size:16px; }
.noche.alto .ms-cta { font-size:calc(50 * var(--nu)); }
.noche.alto .ms-volver { position:static; display:block; margin-bottom:var(--casa-sp-12); font-size:16px; }

.n-nombre { position:absolute; left:0; right:0; top:50%; padding:70px 0; margin-top:calc(-.5em - 70px); z-index:3; text-align:center; pointer-events:none;
  font-size:124px; line-height:1; letter-spacing:0; opacity:0;
  text-shadow:var(--casa-brillo-elegido), 0 16px 28px rgba(0,0,0,.35); }
.noche.alto .n-nombre { top:45%; font-size:58px; }

@keyframes nNombre {
  0%   { opacity:0; transform:scale(.97); }
  16%  { opacity:1; transform:none; }
  52%  { opacity:1; transform:none; }
  100% { opacity:0; transform:scale(1.05); }
}
.nv-esc:not(.moviendo) .n-rec.centro .n-nombre { animation:nNombre var(--dc-t-entrada) var(--dc-ease) .15s both; }
@media (prefers-reduced-motion: reduce) { .n-nombre { animation:none !important; } }
.noche[data-vista="esc"] .noche-titulos { opacity:0 !important; }

.ms-izq { top:150px; }
.ms-carta { width:468px; height:295px; perspective:1600px; }
.ms-carta .ms-gira { width:780px; height:492px; transform:scale(.6); transform-origin:0 0; }
.ms-izq .inc { gap:13px; }
.nv-cla.on .ms-carta .m-mas .cr-tier .mas-luz { animation:masLuz 2.6s cubic-bezier(.3,0,.2,1) .9s both; }
.nv-cla.on .ms-carta .cr-brillo { animation:crBrillo 1.5s cubic-bezier(.4,0,.2,1) .7s both; }
.ms-izq .inc { margin-top:var(--casa-sp-30); }
.ms-pie { margin-top:var(--casa-sp-26); }
.ms-linea { display:flex; align-items:baseline; gap:var(--casa-sp-26); margin-top:var(--casa-sp-12); }
.ms-linea .ms-precio { margin:0; font-size:24px; }
.noche.alto .ms-carta { width:350px; height:221px; }
.noche.alto .ms-carta .ms-gira { width:350px; height:221px; transform:none; }
.noche.alto .ms-izq .inc { margin-top:var(--casa-sp-22); }
.noche.alto .ms-linea { flex-wrap:wrap; gap:var(--casa-sp-14); }
.noche.alto .ms-linea .ms-precio { font-size:17px; }

.c2 { position:absolute; inset:0; }
.c2-izq { position:absolute; left:80px; top:178px; width:420px; opacity:0; transform:translateX(-30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .2s, transform var(--dc-t-viaje) var(--dc-ease) .2s; }
.c2-der { position:absolute; left:580px; right:70px; top:170px; bottom:44px; display:flex; flex-direction:column; opacity:0; transform:translateX(30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .3s, transform var(--dc-t-viaje) var(--dc-ease) .3s; }
.nv-cla.on .c2-izq, .nv-cla.on .c2-der { opacity:1; transform:none; }

.c2-foto { height:330px; background-size:cover; background-position:center 30%; }
.c2-quien { position:relative; z-index:2; padding:var(--casa-sp-24) var(--casa-sp-30) var(--casa-sp-30); }
.c2-nombre { font-size:48px; line-height:1.05; text-shadow:0 14px 26px rgba(20,30,45,.55); }
.c2-bio { margin-top:var(--casa-sp-10); font-size:var(--casa-letra-18); line-height:1.4; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.c2-t { font-size:var(--casa-letra-56); line-height:1.02; text-shadow:var(--casa-brillo-elegido); }
.c2-der .inc { margin-top:32px; }
.c2-resenas { margin-top:36px; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--casa-sp-18); }
.c2-resena { margin:0; border-radius:var(--casa-radio-22); padding:var(--casa-sp-20) var(--casa-sp-20) var(--casa-sp-18); display:flex; flex-direction:column; justify-content:space-between; min-height:176px; color:#fff; }
.c2-resena blockquote { margin:0; font-size:17px; line-height:1.38; }
.c2-resena blockquote::before { content:"«"; } .c2-resena blockquote::after { content:"»"; }
.c2-resena figcaption { margin-top:var(--casa-sp-12); font-size:13px; opacity:.6; }
.c2-pie { margin-top:auto; display:flex; align-items:baseline; gap:var(--casa-sp-30); flex-wrap:wrap; }
.c2-precio { font-size:var(--casa-letra-22); opacity:.85; }
.noche.alto .c2 { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:96px var(--casa-sp-20) 0; box-sizing:border-box; }
.noche.alto .c2::-webkit-scrollbar { display:none; }
.noche.alto .c2-izq, .noche.alto .c2-der { position:static; width:auto; }
.noche.alto .c2-foto { height:230px; }
.noche.alto .c2-quien { padding:var(--casa-sp-18) var(--casa-sp-20) var(--casa-sp-22); }
.noche.alto .c2-nombre { font-size:var(--casa-letra-32); }
.noche.alto .c2-bio { font-size:14px; }
.noche.alto .c2-der { margin-top:var(--casa-sp-28); }
.noche.alto .c2-t { font-size:var(--casa-letra-30); }
.noche.alto .inc-dos { grid-template-columns:1fr; gap:var(--casa-sp-14); }
.noche.alto .c2-resenas { grid-template-columns:1fr; gap:var(--casa-sp-12); margin-top:var(--casa-sp-24); }
.noche.alto .c2-resena { min-height:0; padding:var(--casa-sp-16) var(--casa-sp-18); border-radius:var(--casa-radio-18); }
.noche.alto .c2-resena blockquote { font-size:15px; }
.noche.alto .c2-pie { position:sticky; bottom:0; z-index:2; margin:var(--casa-sp-18) -20px 0; padding:56px var(--casa-sp-20) var(--casa-sp-26); display:block;
  background:linear-gradient(0deg, rgba(10,10,12,.97) 0%, rgba(10,10,12,.9) 55%, rgba(10,10,12,0) 100%); }
.noche.alto .c2-pie .cl-cta { display:block; margin-top:var(--casa-sp-6); }
.noche.alto .c2-precio { font-size:16px; }
.noche.alto[data-vista="cla"] .noche-cuaderno, .noche.alto[data-vista="cls"] .noche-cuaderno { opacity:0 !important; pointer-events:none; }

.mas-cuadro .mc-e { position:absolute; left:26px; right:20px; top:52px; line-height:1.28; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.mc-msg .mc-e { font-size:24px; }
.mc-w-hl.p { background-image:linear-gradient(rgba(255,177,204,.56), rgba(255,177,204,.56)); }
.mc-w-hl.g { background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); }
.mc-w-hl.y { background-image:linear-gradient(rgba(255,213,105,.58), rgba(255,213,105,.58)); }
.mc-voz .mc-voz-f { position:absolute; left:24px; top:34px; font-size:var(--casa-letra-30); line-height:44px; white-space:nowrap; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.mc-vh { position:relative; display:inline-block; vertical-align:middle; width:128px; height:44px; margin-left:var(--casa-sp-12); border-radius:var(--casa-radio-22);
  background:linear-gradient(90deg, #DDA9AF, #A66E79); box-shadow:0 0 22px rgba(255,110,125,.5), 0 10px 40px rgba(20,30,45,.4); }
.mc-vh::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82);
  box-shadow:0 0 22px rgba(72,205,140,.55), 0 0 60px rgba(72,205,140,.28); animation:mcVhVerde 7s infinite; }
.mc-vh span { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:21px; }
.mc-vh-mal { animation:mcVhMal 7s infinite; }
.mc-vh-bien { opacity:0; animation:mcVhBien 7s infinite; }
.mc-voz .mc-voz-t { position:absolute; left:24px; right:20px; top:104px; font-size:19px; line-height:1.35; opacity:0; animation:mcVozT 7s infinite; text-shadow:0 2px 8px rgba(0,0,0,.3); }
.mc-mk { border-radius:.2em; padding:0 .08em; }
.mc-mk.p { background:rgba(255,177,204,.56); } .mc-mk.g { background:rgba(139,211,154,.56); }
@keyframes mcVhMal  { 0%, 6% { opacity:0; transform:translateY(-14px); } 12%, 50% { opacity:1; transform:none; } 56%, 100% { opacity:0; } }
@keyframes mcVozT   { 0%, 20% { opacity:0; transform:translateY(.25em); } 28%, 88% { opacity:1; transform:none; } 95%, 100% { opacity:0; } }
@keyframes mcVhBien { 0%, 56% { opacity:0; transform:translateY(-14px); } 62%, 90% { opacity:1; transform:none; } 96%, 100% { opacity:0; } }
@keyframes mcVhVerde { 0%, 60% { opacity:0; } 66%, 90% { opacity:1; } 96%, 100% { opacity:0; } }

.ms-carta { position:relative; }
.noche .ms-obtener { position:absolute; left:0; top:0; width:468px; height:295px; border-radius:var(--casa-radio-22); display:flex; align-items:center; justify-content:center;
  font-size:var(--casa-letra-56); line-height:1; text-transform:lowercase; color:#fff; opacity:0; transition:opacity var(--dc-t-lento) var(--dc-ease);
  
  background:radial-gradient(78% 78% at 50% 50%, rgba(20,24,32,.84), rgba(20,24,32,.56)); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);
  text-shadow:0 0 22px rgba(255,255,255,.55), 0 0 60px rgba(255,255,255,.2); }
@media (any-hover: hover) { .ms-carta:hover .ms-obtener { opacity:1; } }
.ms-carta.invita .ms-obtener { opacity:1; }

.ms-carta.ya .ms-obtener { font-size:var(--casa-letra-30); }
@keyframes msYaSeVa { 0% { opacity:0; } 13%, 60% { opacity:1; } 100% { opacity:0; } }
@media (any-hover: hover) {
  .ms-carta.ya .ms-obtener { opacity:0; }
  .ms-carta.ya:hover .ms-obtener { opacity:1; }
}
@media (any-hover: none) {
  .ms-carta.ya .ms-obtener { animation:msYaSeVa var(--dc-t-salida) var(--dc-ease) .35s both; }
}
@media (prefers-reduced-motion: reduce) { .ms-carta.ya .ms-obtener { animation-duration:.01s; } }
.noche.alto .ms-obtener { width:350px; height:221px; border-radius:var(--casa-radio-18); font-size:var(--casa-letra-40); }

.cv { position:relative; width:920px; height:580px; border-radius:var(--casa-radio-30); overflow:hidden; color:#fff; font-family:var(--dc-font);
  background:linear-gradient(100deg, #c3c9cd 0%, #a5b0bd 45%, #7f8ea6 100%);
  box-shadow:0 50px 100px rgba(0,0,0,.55), 0 4px 50px #0000007F; }
.cv-cab { position:absolute; left:32px; right:32px; top:24px; display:flex; align-items:baseline; gap:var(--casa-sp-40); }
.cv-marca { font-size:26px; line-height:1; text-shadow:0 10px 20px rgba(20,30,45,.55); margin-right:auto; }
.cv-marca .marca-club { font-size:.42em; margin-left:.12em; }
.cv-op { font-size:var(--casa-letra-20); opacity:.55; text-shadow:0 8px 16px rgba(20,30,45,.4); }
.cv-op.on { opacity:1; }
.cv-t { position:absolute; left:44px; top:86px; font-size:54px; line-height:1; text-shadow:0 6px 22px rgba(20,30,45,.26); animation:cvT 12s infinite; }
.cv-cols { position:absolute; left:44px; top:176px; display:flex; gap:38px; }
.cv-col { display:flex; flex-direction:column; gap:var(--casa-sp-6); }
.cv-col.k1 { animation:cvC1 12s infinite; } .cv-col.k2 { animation:cvC2 12s infinite; } .cv-col.k3 { animation:cvC3 12s infinite; }
.cv-v { font-size:var(--casa-letra-40); line-height:1.1; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.cv-f { font-size:26px; line-height:1.2; opacity:.92; text-shadow:0 6px 22px rgba(20,30,45,.22); }
.cv-hl { border-radius:.2em; padding:.02em .06em; background-repeat:no-repeat; background-position:left center; background-size:0% 100%; }
.cv-hl.p { background-image:linear-gradient(rgba(255,177,204,.56), rgba(255,177,204,.56)); animation:cvH1 12s infinite; }
.cv-hl.g { background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); animation:cvH2 12s infinite; }
.cv-hl.y { background-image:linear-gradient(rgba(255,213,105,.58), rgba(255,213,105,.58)); animation:cvH3 12s infinite; }

.cv-img { position:absolute; left:430px; top:410px; width:150px; height:112px; border-radius:var(--casa-radio-16); background-size:cover; background-position:center; opacity:0;
  box-shadow:0 14px 34px rgba(40,55,80,.28), 0 2px 6px rgba(40,55,80,.12); animation:cvImg 12s infinite; }
.cv-cursor { position:absolute; left:560px; top:500px; width:30px; height:30px; fill:#fff; stroke:rgba(20,30,45,.55); stroke-width:1.2; opacity:0;
  filter:drop-shadow(0 4px 6px rgba(0,0,0,.35)); animation:cvCursor 12s infinite; }

.cv-ej { position:absolute; left:612px; top:292px; width:280px; opacity:0; animation:cvEj 12s infinite; }
.cv-ej-b { height:40px; border-radius:var(--casa-radio-18); display:flex; align-items:center; gap:var(--casa-sp-22); padding:0 var(--casa-sp-18);
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; font-size:17px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.cv-ej-sale { display:inline-block; animation:cvEjSale 12s infinite; }
.cv-ej-fotos { margin-top:var(--casa-sp-14); display:flex; gap:var(--casa-sp-14); }
.cv-ej-c { width:133px; display:flex; flex-direction:column; gap:var(--casa-sp-8); }
.cv-ej-foto { position:relative; height:96px; border-radius:var(--casa-radio-14); background-size:cover; background-position:center; box-shadow:0 12px 26px rgba(15,20,30,.3); }
.cv-ej-c:first-child .cv-ej-foto::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; box-shadow:0 0 18px rgba(72,205,140,.6), 0 0 44px rgba(72,205,140,.3); animation:cvEjVerde 12s infinite; }
.cv-ej-h { position:relative; height:32px; border-radius:var(--casa-radio-16); background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 40px #141E2D84; }
.cv-ej-c:first-child .cv-ej-h::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82); animation:cvEjVerde 12s infinite; }
.cv-ej-h span { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:15px; opacity:0; text-shadow:0 2px 6px rgba(0,0,0,.35); animation:cvEjCae 12s infinite; }
.cv-yo { position:absolute; right:32px; top:84px; width:186px; height:140px; border-radius:var(--casa-radio-18); background-size:118%; background-position:50% 26%;   
  box-shadow:0 20px 40px rgba(15,20,30,.4), 0 0 0 1px rgba(255,255,255,.25); }
.cv-yo span { position:absolute; left:12px; bottom:9px; font-size:14px; text-shadow:0 2px 6px rgba(0,0,0,.6); }
@keyframes cvT  { 0%, 2% { opacity:0; transform:translateY(.06em); } 7%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvC1 { 0%, 10% { opacity:0; transform:translateY(.06em); } 15%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvC2 { 0%, 13% { opacity:0; transform:translateY(.06em); } 18%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvC3 { 0%, 16% { opacity:0; transform:translateY(.06em); } 21%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvH1 { 0%, 24% { background-size:0% 100%; } 29%, 100% { background-size:100% 100%; } }
@keyframes cvH2 { 0%, 28% { background-size:0% 100%; } 33%, 100% { background-size:100% 100%; } }
@keyframes cvH3 { 0%, 32% { background-size:0% 100%; } 37%, 100% { background-size:100% 100%; } }
@keyframes cvImg { 0%, 38% { opacity:0; transform:scale(.985); } 42% { opacity:1; transform:none; } 44% { opacity:1; transform:none; } 57%, 92% { opacity:1; transform:translate(-370px, -26px); } 97%, 100% { opacity:0; transform:translate(-370px, -26px); } }
@keyframes cvCursor { 0%, 38% { opacity:0; transform:translate(30px, 30px); } 42% { opacity:1; transform:none; } 44% { opacity:1; transform:none; } 57% { opacity:1; transform:translate(-370px, -26px); } 63%, 100% { opacity:0; transform:translate(-350px, -6px); } }
@keyframes cvEj { 0%, 56% { opacity:0; transform:translateY(12px); } 61%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvEjSale { 0%, 64% { opacity:1; transform:none; } 71% { opacity:0; transform:translate(0, 110px) scale(1.06); } 100% { opacity:0; } }
@keyframes cvEjCae { 0%, 68% { opacity:0; transform:translateY(-22px) scale(.92); } 72% { opacity:1; transform:scale(1.06); } 75%, 100% { opacity:1; transform:none; } }
@keyframes cvEjVerde { 0%, 75% { opacity:0; } 79%, 100% { opacity:1; } }
.nv-cla:not(.on) .cv *, .nv-car:not(.on) .cv *, .nv-cls:not(.on) .cv *,
.n-rec:not(.centro) .cv *, .n-rec:not(.centro) .cv *::after, .nv-esc.moviendo .cv *, .nv-esc.moviendo .cv *::after, .nv-esc.quieto .cv *, .nv-esc.quieto .cv *::after { animation-play-state:paused; }

.es-cls { background:transparent; }
.es-cls .cls-vent { position:absolute; left:50%; top:50%; width:754px; height:475px; margin:-238px 0 0 -377px; }
.es-cls .cls-escala { width:920px; height:580px; transform:scale(.8196); transform-origin:0 0; }
.noche.alto .es-cls .cls-vent { width:350px; height:221px; margin:-110px 0 0 -175px; top:45%; }
.noche.alto .es-cls .cls-escala { transform:scale(.3804); }
@media (prefers-reduced-motion: reduce) { .cv *, .cv *::after { animation:none !important; opacity:1 !important; } }

.c3 { position:absolute; inset:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:150px 0 90px; box-sizing:border-box; opacity:0;
  transition:opacity var(--dc-t-entrada) var(--dc-ease) .2s; }
.c3::-webkit-scrollbar { display:none; }
.nv-cla.on .c3, .nv-cls.on .c3 { opacity:1; }
.c3-hero { text-align:center; }
.c3-t { font-size:92px; line-height:1; text-shadow:var(--casa-brillo-elegido); }
.c3-sub { margin:var(--casa-sp-20) auto 0; max-width:760px; font-size:24px; line-height:1.4; opacity:.82; }
.c3-ventana { width:1012px; height:638px; margin:56px auto 0; }
.c3-escala { width:920px; height:580px; transform:scale(1.1); transform-origin:0 0; }
.c3-sec { margin:120px auto 0; width:1180px; }
.c3-que-t { font-size:var(--casa-letra-52); line-height:1.05; text-align:center; text-shadow:var(--casa-brillo-elegido); }
.c3-que-fila { margin-top:56px; display:flex; align-items:center; justify-content:space-between; gap:60px; }
.c3-que-fila .inc { gap:var(--casa-sp-26); }
.c3-que-fila .inc-t { font-size:26px; }
.c3-que-fila .inc-s { font-size:var(--casa-letra-18); }
.c3-que-fila .inc-ico { width:54px; height:54px; border-radius:var(--casa-radio-16); }
.c3-incl { width:560px; text-align:center; }
.c3-incl-carta { width:546px; height:344px; margin:0 auto; }
.c3-incl-gira { width:780px; height:492px; transform:scale(.7); transform-origin:0 0; }
.c3-incl-t { margin-top:var(--casa-sp-26); font-size:var(--casa-letra-30); }
.c3-incl-s { margin-top:var(--casa-sp-8); font-size:19px; opacity:.7; }
.c3-cuadros { position:relative; margin:56px auto 0; height:470px; width:1180px; }
.c3-cuadros .mas-cuadro { transform:none; }
.c3-cuadros .mc-msg { left:0; top:0; } .c3-cuadros .mc-piz { left:420px; top:60px; } .c3-cuadros .mc-voz { left:840px; top:0; } .c3-cuadros .mc-playa { left:420px; top:300px; transform:scale(.8); transform-origin:50% 0; }
.c3-resenas { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--casa-sp-24); }
.c3-resenas .c2-resena { min-height:210px; padding:var(--casa-sp-26) var(--casa-sp-26) var(--casa-sp-22); }
.c3-resenas .c2-resena blockquote { font-size:var(--casa-letra-20); }
.c3-final { display:flex; align-items:center; justify-content:center; gap:60px; }
.c3-foto { width:300px; height:300px; border-radius:34px; background-size:cover; background-position:center 30%; box-shadow:0 40px 80px rgba(0,0,0,.5); flex:none; }
.c3-nombre { font-size:var(--casa-letra-60); line-height:1; text-shadow:var(--casa-brillo-elegido); }
.c3-bio { margin-top:var(--casa-sp-14); font-size:21px; line-height:1.4; opacity:.8; max-width:520px; }
.c3-precio { margin-top:var(--casa-sp-28); font-size:24px; opacity:.9; }
.c3-final .cl-cta { margin-top:var(--casa-sp-10); }

.noche.alto .c3 { padding:100px 0 60px; }
.noche.alto .c3-t { font-size:var(--casa-letra-40); padding:0 var(--casa-sp-20); }
.noche.alto .c3-sub { font-size:16px; padding:0 var(--casa-sp-24); margin-top:var(--casa-sp-12); }
.noche.alto .c3-ventana { width:350px; height:221px; margin-top:var(--casa-sp-30); }
.noche.alto .c3-escala { transform:scale(.3804); }
.noche.alto .c3-sec { width:auto; margin:70px var(--casa-sp-20) 0; }
.noche.alto .c3-que-t { font-size:28px; }
.noche.alto .c3-que-fila { flex-direction:column; margin-top:var(--casa-sp-28); gap:36px; }
.noche.alto .c3-que-fila .inc-t { font-size:var(--casa-letra-18); }
.noche.alto .c3-que-fila .inc-s { font-size:13px; }
.noche.alto .c3-que-fila .inc-ico { width:42px; height:42px; }
.noche.alto .c3-incl { width:auto; }
.noche.alto .c3-incl-carta { width:350px; height:221px; }
.noche.alto .c3-incl-gira { width:350px; height:221px; transform:none; }
.noche.alto .c3-incl-t { font-size:var(--casa-letra-20); margin-top:var(--casa-sp-16); }
.noche.alto .c3-incl-s { font-size:14px; }
.noche.alto .c3-cuadros { width:350px; height:330px; margin-top:var(--casa-sp-28); }
.noche.alto .c3-cuadros .mas-cuadro { transform:scale(.5); transform-origin:0 0; }
.noche.alto .c3-cuadros .mc-msg { left:0; top:0; } .noche.alto .c3-cuadros .mc-piz { left:176px; top:30px; }
.noche.alto .c3-cuadros .mc-voz { left:0; top:124px; } .noche.alto .c3-cuadros .mc-playa { left:176px; top:154px; transform:scale(.5); transform-origin:0 0; }
.noche.alto .c3-resenas { grid-template-columns:1fr; gap:var(--casa-sp-12); }
.noche.alto .c3-resenas .c2-resena { min-height:0; padding:var(--casa-sp-18); }
.noche.alto .c3-resenas .c2-resena blockquote { font-size:15px; }
.noche.alto .c3-final { flex-direction:column; text-align:center; gap:var(--casa-sp-24); }
.noche.alto .c3-foto { width:200px; height:200px; border-radius:26px; }
.noche.alto .c3-nombre { font-size:36px; }
.noche.alto .c3-bio { font-size:15px; }
.noche.alto .c3-precio { font-size:16px; }
.noche .c3 .mas-cuadro * , .noche .c3 .mas-cuadro *::after { animation-play-state:running; }

.es-tg .tg-charla { position:absolute; left:300px; right:300px; top:384px; display:flex; flex-direction:column; gap:52px; }
.es-tg .tg-l { font-size:var(--casa-letra-46); line-height:1.2; letter-spacing:var(--dc-tracking, 0); color:#F2F2F4;
  opacity:0; animation:tgSale 12s var(--dc-ease) infinite; animation-delay:calc(var(--i) * 2.6s + 1.4s); }   
.es-tg .tg-a { align-self:flex-end; text-align:right; color:rgba(242,242,244,.5); }
.es-tg .tg-c { font-size:var(--casa-letra-34); color:rgba(168,200,236,.78); padding-left:var(--casa-sp-18); border-left:2px solid rgba(168,200,236,.32); }
.es-tg .tg-b { color:#F2F2F4; }
@keyframes tgSale {
  0%, 6%   { opacity:0; transform:translateY(.42em); }
  13%, 74% { opacity:1; transform:none; }
  86%, 100%{ opacity:0; transform:translateY(-.2em); }
}

.es-tg .tg-puntos { position:absolute; left:0; top:calc(100% + 18px); display:flex; gap:9px;
  opacity:0; animation:tgPuntos 12s linear infinite; animation-delay:5.1s; }
.es-tg .tg-puntos i { width:11px; height:11px; border-radius:var(--casa-radio-redondo); background:rgba(242,242,244,.62);
  animation:tgBota 1.1s var(--dc-ease) infinite; }
.es-tg .tg-puntos i:nth-child(2) { animation-delay:.16s; }
.es-tg .tg-puntos i:nth-child(3) { animation-delay:.32s; }
@keyframes tgPuntos { 0%, 2% { opacity:0; } 6%, 14% { opacity:1; } 18%, 100% { opacity:0; } }
@keyframes tgBota { 0%, 100% { transform:none; opacity:.45; } 50% { transform:translateY(-6px); opacity:1; } }

.noche.alto .es-tg .tg-charla { left:40px; right:40px; top:calc(50% - 62px); gap:34px; }
.noche.alto .es-tg .tg-l { font-size:var(--casa-letra-30); }
.noche.alto .es-tg .tg-c { font-size:23px; padding-left:13px; }
.noche.alto .es-tg .tg-puntos i { width:8px; height:8px; }

.tgv { position:absolute; inset:0; display:flex; align-items:flex-start; justify-content:center;
  gap:calc(140 * var(--dc-u)); padding:236px calc(80 * var(--dc-u)) calc(120 * var(--dc-u)); box-sizing:border-box; }
.tgv-bloque { display:flex; flex-direction:column; align-items:flex-start; gap:calc(26 * var(--dc-u)); }
.tgv-tutor { flex:0 1 calc(660 * var(--dc-u)); }
.tgv-canal { flex:0 1 calc(480 * var(--dc-u)); padding-top:calc(22 * var(--dc-u)); }
.tgv-t { font-size:calc(72 * var(--dc-u)); line-height:1.05; color:var(--dc-ink); text-shadow:var(--dc-shadow-text); }
.tgv-sub { font-size:calc(34 * var(--dc-u)); line-height:1.35; color:rgba(242,242,244,.62); }
.tgv-charla { position:relative; display:flex; flex-direction:column; justify-content:center; gap:calc(22 * var(--dc-u)); width:100%; min-height:calc(230 * var(--dc-u)); margin:calc(6 * var(--dc-u)) 0; }
.tgv-charla .tg-l { font-size:calc(36 * var(--dc-u)); line-height:1.25; color:var(--dc-ink); opacity:0;
  animation:tgSale 12s var(--dc-ease) infinite; animation-delay:calc(var(--i) * 2.6s + 1.4s); }
.tgv-charla .tg-a { align-self:flex-end; text-align:right; opacity:0; color:var(--dc-ink-soft, rgba(242,242,244,.5)); }
.tgv-charla .tg-c { font-size:calc(27 * var(--dc-u)); color:rgba(168,200,236,.8); padding-left:.5em; border-left:2px solid rgba(168,200,236,.3); }
.tgv-charla .tg-puntos { position:absolute; left:0; top:calc(100% + 10px); display:flex; gap:7px; opacity:0;
  animation:tgPuntos 12s linear infinite; animation-delay:5.1s; }
.tgv-charla .tg-puntos i { width:8px; height:8px; border-radius:var(--casa-radio-redondo); background:var(--dc-ink); opacity:.55;
  animation:tgBota 1.1s var(--dc-ease) infinite; }
.tgv-charla .tg-puntos i:nth-child(2) { animation-delay:.16s; }
.tgv-charla .tg-puntos i:nth-child(3) { animation-delay:.32s; }

.tgv-cab { display:flex; align-items:center; gap:calc(16 * var(--dc-u)); font-size:calc(46 * var(--dc-u)); color:var(--dc-ink); }
.tgv-ico { width:calc(58 * var(--dc-u)); height:calc(58 * var(--dc-u)); border-radius:calc(16 * var(--dc-u)); }
.tgv-desc { font-size:calc(34 * var(--dc-u)); line-height:1.35; color:rgba(242,242,244,.62); }
.tgv-ir { margin-top:calc(10 * var(--dc-u)); }

@media (max-width: 760px) {
  .tgv { flex-direction:column; align-items:stretch; justify-content:flex-start; gap:calc(80 * var(--dc-u));
    padding:calc(190px + env(safe-area-inset-top, 0px)) 20px calc(130px + env(safe-area-inset-bottom, 0px)); }
  .tgv-canal { padding-top:0; }
  .tgv-bloque { max-width:none; }
}
@media (prefers-reduced-motion: reduce) {
  .es-tg .tg-l, .tgv-charla .tg-l { animation:none; opacity:1; transform:none; }
  .es-tg .tg-puntos, .tgv-charla .tg-puntos { display:none; }
}
