/* Papyvo · página de venta v3 «Papiro a contraluz» (31 oct 2026)
   Va después de sitio.css y solo la carga inicio.html (clase .v3 en <html>).
   Fotografía: Magnific (Flux 2 Pro), serie propia de papiro, cálamo, tinta y libros en tonos de la paleta P1.
   Capturas: la app real con el libro de ejemplo «La casa de la playa».
   Movimiento ligado al scroll con CSS nativo; con «reducir movimiento» todo queda quieto. */

.v3 {
  --noche: #15130d; --noche: oklch(18.5% 0.012 90);
  --noche-2: #1e1c15;
  --crema: #f3efe2;
  --crema-2: rgb(243 239 226 / .76);
  --crema-3: rgb(243 239 226 / .6);
  --oro: #e6d271;
  --cuelga: clamp(110px, 21vw, 290px);
  --radio-foto: clamp(18px, 2.2vw, 30px);
  --sombra-flota: 0 1px 0 rgb(255 255 255 / .6) inset, 0 2px 6px rgb(20 16 8 / .08), 0 30px 60px -18px rgb(20 16 8 / .35);
}
.v3 .s-h2 { font-size: clamp(2.2rem, 1.15rem + 3.3vw, 4.1rem); line-height: 1.02; letter-spacing: -0.036em; }

/* ——— Barra: transparente sobre el portal, papel al bajar ——— */
.v3 .s-barra { position: fixed; left: 0; right: 0; transition: background-color 280ms ease, border-color 280ms ease, -webkit-backdrop-filter 280ms, backdrop-filter 280ms; }
.v3 .s-barra[data-sobre="oscuro"] {
  --tinta: var(--crema); --tinta-2: var(--crema-2);
  background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none;
  border-bottom-color: transparent; animation: none;
}
.v3 .s-barra[data-sobre="oscuro"] .s-nav a:not(.s-btn):hover { color: #fff; }

/* ——— Botones del portal ——— */
.v-btn-grande { --alto: 56px; padding: 0 26px; font-size: 1.0625rem; border-radius: 12px; box-shadow: 0 1px 0 rgb(255 255 255 / .2) inset, 0 10px 30px -8px rgb(55 108 50 / .55); }
.v-btn-cristal {
  display: inline-flex; align-items: center; min-height: 56px; padding: 0 24px; border-radius: 12px;
  color: var(--tinta); font-weight: 600; text-decoration: none;
  background: color-mix(in oklab, var(--tinta) 8%, transparent);
  border: 1px solid color-mix(in oklab, var(--tinta) 22%, transparent);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  transition: background-color var(--dur-rapida), border-color var(--dur-rapida);
}
.v-btn-cristal:hover { background: color-mix(in oklab, var(--tinta) 14%, transparent); border-color: color-mix(in oklab, var(--tinta) 40%, transparent); }

/* ——— Portal (héroe a sangre) ——— */
.v-portal { position: relative; isolation: isolate; background: var(--noche); color: var(--crema); padding-top: calc(var(--barra) + clamp(48px, 10vh, 132px)); }
.v-portal__fondo { position: absolute; inset: 0 0 auto; height: min(100%, 108svh); z-index: -2; overflow: hidden;
  -webkit-mask-image: linear-gradient(#000 70%, transparent); mask-image: linear-gradient(#000 70%, transparent); }
.v-portal__fondo img { width: 100%; height: 100%; object-fit: cover; object-position: 100% 30%; }
.v-portal::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background:
    linear-gradient(90deg, rgb(15 12 7 / .92) 0%, rgb(15 12 7 / .78) 30%, rgb(15 12 7 / .25) 58%, transparent 78%),
    linear-gradient(180deg, rgb(15 12 7 / .55) 0%, transparent 22%, transparent 62%, rgb(15 12 7 / .85) 100%); }
.v-portal__texto { --tinta: var(--crema); --tinta-2: var(--crema-2); --tinta-3: var(--crema-3); display: grid; justify-items: start; gap: 28px; }
.v-pildora { display: inline-flex; align-items: center; gap: 10px; padding: 7px 14px 7px 10px; border-radius: 999px; font-size: .875rem; font-weight: 500; color: var(--crema); text-decoration: none;
  background: rgb(243 239 226 / .07); border: 1px solid rgb(243 239 226 / .18); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); transition: background-color var(--dur-rapida); }
.v-pildora:hover { background: rgb(243 239 226 / .13); }
.v-pildora__punto { width: 8px; height: 8px; border-radius: 50%; background: #8dca80; box-shadow: 0 0 0 4px rgb(141 202 128 / .18); }
.v-pildora__ir { opacity: .7; transition: transform var(--dur-ui) var(--curva-salida); }
.v-pildora:hover .v-pildora__ir { transform: translateX(3px); }
.v-titular { font-size: clamp(3.1rem, 1.1rem + 6.6vw, 7.6rem); line-height: .94; letter-spacing: -0.047em; font-weight: 600; max-width: 11.5em; }
.v-titular > span { display: block; }
.v-titular__suave { color: var(--crema-2); font-weight: 500; }
.v-titular .s-trazo::after { background: var(--oro); height: .075em; }
@media (prefers-reduced-motion: no-preference) { .v-titular .s-trazo::after { animation: trazo-entra 900ms var(--curva-tinta) 1.2s both; } }
.v-portal__entrada { font-size: clamp(1.0625rem, .95rem + .45vw, 1.3125rem); line-height: 1.55; color: var(--crema-2); max-width: 34em; }
.v-sello { color: var(--crema-3); }
.v-sello li::before { background: var(--oro); }
@media (prefers-reduced-motion: no-preference) {
  .v-portal__texto > * { animation: sube 900ms var(--curva-salida) both; }
  .v-portal__texto > :nth-child(2) { animation-delay: 80ms; } .v-portal__texto > :nth-child(3) { animation-delay: 180ms; }
  .v-portal__texto > :nth-child(4) { animation-delay: 260ms; } .v-portal__texto > :nth-child(5) { animation-delay: 340ms; }
  .v-portal__fondo img { animation: amanece 2.4s var(--curva-salida) both; }
}
@keyframes sube { from { opacity: 0; translate: 0 22px; } to { opacity: 1; translate: 0 0; } }
@keyframes amanece { from { opacity: 0; scale: 1.06; } to { opacity: 1; scale: 1; } }

/* El producto, colgando sobre la sección siguiente */
.v-escaparate { position: relative; z-index: 2; margin-top: clamp(56px, 9vh, 112px); margin-bottom: calc(-1 * var(--cuelga)); }
.v-producto { position: relative; transform-origin: 50% 0; }
.v-producto::before { content: ""; position: absolute; inset: -12% 8% 30%; z-index: -1; border-radius: 50%; background: radial-gradient(closest-side, rgb(230 210 113 / .28), transparent); filter: blur(40px); }
.v-ventana { margin: 0; border-radius: 14px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgb(255 255 255 / .1), 0 0 0 8px rgb(243 239 226 / .06), 0 50px 120px -30px rgb(0 0 0 / .75), 0 20px 40px -20px rgb(0 0 0 / .5); }
.v-ventana__barra { display: flex; align-items: center; gap: 7px; height: 38px; padding: 0 16px; background: #f4f2ec; border-bottom: 1px solid #e4e1d8; font: 500 12.5px/1 var(--fuente-ui); color: #7e7a72; }
.v-ventana__barra i { width: 11px; height: 11px; border-radius: 50%; background: #dcd8cc; }
.v-ventana__barra span { margin-inline: auto; transform: translateX(-24px); }
.v-ventana img { width: 100%; height: auto; }

.v-flota { position: absolute; z-index: 3; color: #211e17; font-family: var(--fuente-ui);
  background: rgb(253 252 246 / .9); -webkit-backdrop-filter: blur(16px) saturate(1.3); backdrop-filter: blur(16px) saturate(1.3);
  border: 1px solid rgb(33 30 23 / .08); border-radius: 16px; box-shadow: var(--sombra-flota); }
.v-flota--musa { right: -3.5%; top: 21%; width: min(330px, 30%); padding: 16px 18px; }
.v-flota__cabeza { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 12px; color: #66635c; margin-bottom: 10px; }
.v-flota--musa p { font: 400 15px/1.55 var(--fuente-lectura); }
.v-gris { color: #6c6861; background: linear-gradient(transparent 92%, rgb(108 104 97 / .35) 0); }
.v-flota__teclas { display: flex; gap: 14px; margin-top: 12px; padding-top: 10px; border-top: 1px solid #e3dfd1; font-size: 12px; color: #59554d; }
.v-flota__teclas kbd { font-size: 11px; margin-right: 4px; }
.v-flota--libro { left: -4%; bottom: 12%; width: 214px; padding: 12px; display: grid; gap: 10px; }
.v-mini-portada { aspect-ratio: 2 / 3; border-radius: 3px 6px 6px 3px; padding: 12% 11%; display: grid; grid-template-rows: auto auto; align-content: start; gap: 8px; color: #fbf6e6; text-shadow: 0 1px 10px rgb(14 28 27 / .5);
  background: #325654 url("/sitio/img/v3/portada-480.webp") center / cover no-repeat;
  background-image: linear-gradient(180deg, rgb(20 38 37 / .5), transparent 50%), image-set(url("/sitio/img/v3/portada-480.avif") type("image/avif"), url("/sitio/img/v3/portada-480.webp") type("image/webp"));
  box-shadow: inset 6px 0 8px -6px rgb(0 0 0 / .45), 0 10px 20px -10px rgb(0 0 0 / .4); }
.v-mini-portada__autora { font-size: 8px; letter-spacing: .28em; text-transform: uppercase; color: #f3dc8a; font-weight: 600; }
.v-mini-portada b { font: 500 25px/.96 var(--fuente-lectura); letter-spacing: -0.03em; }
.v-mini-portada em { display: block; font-style: italic; font-weight: 400; font-size: .62em; line-height: 1.25; color: #f3dc8a; }
.v-flota__dato { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; font-size: 12px; color: #66635c; padding-inline: 2px; }
.v-flota__dato b { color: #211e17; font-size: 13px; font-variant-numeric: tabular-nums lining-nums; }
.v-flota--kdp { right: 7%; bottom: -5%; width: 220px; padding: 16px 18px; }
.v-flota__titulo { font-weight: 600; font-size: 15px; letter-spacing: -0.01em; margin-bottom: 8px; }
.v-flota--kdp li { display: flex; align-items: center; gap: 10px; padding: 7px 0; border-top: 1px solid #e3dfd1; font-size: 13.5px; }
.v-flota--kdp svg { width: 18px; height: 18px; flex: none; color: #fff; background: #126b47; border-radius: 6px; padding: 2px; }
@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {
    .v-producto { animation: inclina linear both; animation-timeline: scroll(root); animation-range: 0 75vh; }
    .v-flota--musa { animation: flota-a linear both; animation-timeline: scroll(root); animation-range: 0 100vh; }
    .v-flota--libro { animation: flota-b linear both; animation-timeline: scroll(root); animation-range: 0 100vh; }
    .v-flota--kdp { animation: flota-c linear both; animation-timeline: scroll(root); animation-range: 0 100vh; }
  }
}
@keyframes inclina { from { transform: perspective(2200px) rotateX(14deg) scale(.93); } to { transform: perspective(2200px) rotateX(0) scale(1); } }
@keyframes flota-a { from { translate: 0 40px; } to { translate: 0 -40px; } }
@keyframes flota-b { from { translate: 0 70px; } to { translate: 0 -30px; } }
@keyframes flota-c { from { translate: 0 30px; } to { translate: 0 -60px; } }
@media (max-width: 860px) {
  .v-flota--libro, .v-flota--kdp { display: none; }
  .v-flota--musa { right: 4%; top: auto; bottom: -14%; width: min(320px, 78%); }
  .v-ventana__barra { height: 28px; } .v-ventana__barra i { width: 8px; height: 8px; } .v-ventana__barra span { display: none; }
  .v3 { --cuelga: clamp(150px, 40vw, 260px); }
}

/* ——— Cinta de formatos ——— */
.v-cinta { padding: calc(var(--cuelga) + clamp(48px, 7vw, 88px)) 0 clamp(40px, 5vw, 64px); display: grid; gap: 22px; text-align: center; }
.v-cinta__rotulo { font: 600 var(--t-micro)/1 var(--fuente-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--tinta-3); }
.v-cinta__pista { display: flex; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }
.v-cinta__lista { flex: none; display: flex; align-items: center; gap: clamp(32px, 4vw, 64px); padding-right: clamp(32px, 4vw, 64px); }
.v-cinta__lista li { display: flex; align-items: center; gap: clamp(32px, 4vw, 64px); white-space: nowrap; font: 600 clamp(1.125rem, 1rem + .6vw, 1.5rem)/1 var(--fuente-ui); letter-spacing: -0.02em; color: var(--tinta-2); }
.v-cinta__lista li::after { content: ""; width: 12px; height: 4px; background: var(--acento); opacity: .7; clip-path: polygon(4.8px 0, 100% 0, calc(100% - 4.8px) 100%, 0 100%); }
@media (prefers-reduced-motion: no-preference) { .v-cinta__lista { animation: desliza 46s linear infinite; } .v-cinta__pista:hover .v-cinta__lista { animation-play-state: paused; } }
@keyframes desliza { to { transform: translateX(-100%); } }
@media (prefers-reduced-motion: reduce) { .v-cinta__pista { flex-wrap: wrap; justify-content: center; -webkit-mask-image: none; mask-image: none; } .v-cinta__lista { flex-wrap: wrap; justify-content: center; row-gap: 14px; } .v-cinta__lista[aria-hidden] { display: none; } }

/* ——— Manifiesto ——— */
.v-manifiesto { padding-block: clamp(64px, 9vw, 140px) clamp(72px, 10vw, 150px); border-top: 1px solid var(--borde-suave); }
.v-manifiesto .s-envoltura { display: grid; gap: clamp(28px, 4vw, 48px); }
.v-manifiesto__frase { font-size: clamp(1.9rem, .9rem + 3.2vw, 4.1rem); line-height: 1.08; letter-spacing: -0.034em; font-weight: 500; color: var(--tinta-3); max-width: 21em; }
.v-manifiesto__frase span { color: var(--tinta); font-weight: 600; }
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .v-manifiesto__frase { animation: aclara linear both; animation-timeline: view(); animation-range: entry 10% cover 45%; }
  }
}
@keyframes aclara { from { opacity: .25; translate: 0 30px; } to { opacity: 1; translate: 0 0; } }
.v-cifras { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--borde); }
.v-cifras > div { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 10px; padding: 28px 24px 0 0; }
.v-cifras > div + div { padding-left: 24px; border-left: 1px solid var(--borde-suave); }
.v-cifras dd { font-size: clamp(3rem, 1.6rem + 4.4vw, 6rem); line-height: .9; letter-spacing: -0.05em; font-weight: 600; font-variant-numeric: tabular-nums lining-nums; }
.v-cifras dt { font-size: var(--t-pie); color: var(--tinta-2); max-width: 15em; line-height: 1.4; }
@media (max-width: 760px) { .v-cifras { grid-template-columns: 1fr 1fr; } .v-cifras > div:nth-child(3) { padding-left: 0; border-left: 0; } .v-cifras > div:nth-child(n+3) { padding-top: 36px; } }

/* ——— Cabeceras de sección v3 ——— */
.v-cabeza { display: grid; gap: 18px; margin-bottom: clamp(40px, 5vw, 72px); }
.v-cabeza--ancha { grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); align-items: end; gap: 20px 64px; }
.v-cabeza--ancha .s-entrada { justify-self: end; }
@media (max-width: 860px) { .v-cabeza--ancha { grid-template-columns: 1fr; } .v-cabeza--ancha .s-entrada { justify-self: start; } }
.v-h2 { font-size: clamp(2.4rem, 1.1rem + 4.2vw, 5.1rem); line-height: .98; letter-spacing: -0.042em; font-weight: 600; }
.v-h2 span { color: var(--tinta-2); font-weight: 500; }

/* ——— Pruébalo: la hoja viva sobre el escritorio ——— */
.v-prueba { padding-block: clamp(72px, 9vw, 140px); background: linear-gradient(var(--superficie), var(--papel)); }
.v-prueba__escena { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: center; }
.v-prueba__foto { grid-column: 1 / 9; grid-row: 1; border-radius: var(--radio-foto); overflow: hidden; box-shadow: 0 40px 80px -40px rgb(33 30 23 / .45); }
.v-prueba__foto img { width: 100%; aspect-ratio: 4 / 3.1; object-fit: cover; }
.v-prueba__hoja { grid-column: 7 / 13; grid-row: 1; z-index: 2; }
.v-prueba__hoja .s-hoja { box-shadow: var(--sombra-hoja), 0 50px 100px -40px rgb(33 30 23 / .45); }
@media (max-width: 900px) {
  .v-prueba__escena { grid-template-columns: 1fr; }
  .v-prueba__foto, .v-prueba__hoja { grid-column: 1; grid-row: auto; }
  .v-prueba__foto img { aspect-ratio: 3 / 2; }
  .v-prueba__hoja { margin: -18vw 4% 0; }
}

/* ——— La historia: se mantiene, con cabecera v3 ——— */
.v3 .s-historia-intro { border-top: 1px solid var(--borde-suave); }

/* ——— Cinco capítulos ——— */
.v-capitulos { padding-block: clamp(80px, 10vw, 160px) 0; border-top: 1px solid var(--borde-suave); }
.v-cap { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); gap: 40px clamp(40px, 6vw, 104px); align-items: center; padding-block: clamp(64px, 8vw, 128px); position: relative; }
.v-cap:nth-of-type(even) .v-cap__texto { order: 2; }
.v-cap.s-noche { background: var(--noche); box-shadow: 0 0 0 100vmax var(--noche); clip-path: inset(0 -100vmax); }
.v-cap__texto { display: grid; gap: 20px; align-content: center; }
.v-cap__num { display: flex; align-items: center; gap: 14px; font: 600 var(--t-micro)/1 var(--fuente-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--tinta-2); }
.v-cap__num span { font-size: .9375rem; letter-spacing: 0; color: var(--acento); font-variant-numeric: tabular-nums; }
.v-cap__num span::after { content: ""; display: inline-block; width: 36px; height: 1px; margin-left: 14px; vertical-align: middle; background: var(--borde); }
.v-cap h3 { font-size: clamp(2rem, 1.05rem + 2.8vw, 3.5rem); line-height: 1; letter-spacing: -0.038em; }
.v-cap h3 span { display: block; color: var(--tinta-2); font-weight: 500; }
.v-cap__texto > p:not(.v-cap__num) { color: var(--tinta-2); font-size: 1.0625rem; line-height: 1.65; max-width: 32em; }
.v-cap__puntos { display: grid; border-top: 1px solid var(--borde-suave); margin-top: 4px; }
.v-cap__puntos li { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--borde-suave); font-size: .9375rem; font-weight: 500; }
.v-cap__puntos li::before { content: ""; flex: none; width: 14px; height: 4px; background: var(--acento); clip-path: polygon(5.6px 0, 100% 0, calc(100% - 5.6px) 100%, 0 100%); }
.v-cap__visual { position: relative; padding-bottom: 8px; }
.v-cap__foto { display: block; border-radius: var(--radio-foto); overflow: hidden; box-shadow: 0 40px 80px -44px rgb(20 16 8 / .5); }
.v-cap__foto img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; transition: scale 1.2s var(--curva-salida); }
.v-cap:hover .v-cap__foto img { scale: 1.025; }
.v-cap__visual .s-demo { position: relative; z-index: 2; width: min(90%, 500px); margin: -26% 0 0 auto; translate: 5% 0; min-height: 0;
  background: color-mix(in oklab, var(--superficie-alta) 90%, transparent); -webkit-backdrop-filter: blur(18px) saturate(1.2); backdrop-filter: blur(18px) saturate(1.2);
  border-color: color-mix(in oklab, var(--tinta) 9%, transparent); box-shadow: var(--sombra-flota); }
.v-cap:nth-of-type(even) .v-cap__visual .s-demo { margin: -26% auto 0 0; translate: -5% 0; }
.v-cap.s-noche .v-cap__visual .s-demo { box-shadow: 0 1px 0 rgb(255 255 255 / .06) inset, 0 30px 70px -20px rgb(0 0 0 / .7); }
.v-cap.s-noche .v-cap__foto { box-shadow: 0 0 0 1px rgb(255 255 255 / .06); }
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .v-cap__visual .s-demo { animation: demo-sube linear both; animation-timeline: view(); animation-range: entry 0% entry 70%; }
    .v-cap__foto img { animation: foto-respira linear both; animation-timeline: view(); animation-range: cover 0% cover 100%; }
  }
}
@keyframes demo-sube { from { opacity: 0; transform: translateY(70px); } to { opacity: 1; transform: none; } }
@keyframes foto-respira { from { object-position: 50% 30%; } to { object-position: 50% 70%; } }
@media (max-width: 900px) {
  .v-cap { grid-template-columns: 1fr; }
  .v-cap:nth-of-type(even) .v-cap__texto { order: 0; }
  .v-cap__visual .s-demo, .v-cap:nth-of-type(even) .v-cap__visual .s-demo { width: auto; margin: -16% 4% 0; translate: 0 0; }
}

/* ——— La IA, a la vista: tinta en el agua ——— */
.v-ia { isolation: isolate; overflow: hidden; padding-block: clamp(96px, 11vw, 180px); }
.v-ia__fondo { position: absolute; inset: 0; z-index: -1; }
.v-ia__fondo img { width: 100%; height: 100%; object-fit: cover; object-position: 80% 50%; opacity: .95; }
.v-ia::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgb(21 19 13 / .96) 0%, rgb(21 19 13 / .8) 42%, rgb(21 19 13 / .35) 100%); }
.v-ia .s-h2 { font-size: clamp(2rem, 1.1rem + 2.5vw, 3.4rem); }
.v-ia .s-registro { background: rgb(30 28 21 / .72); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 40px 90px -30px rgb(0 0 0 / .7); }
.v-ia .s-registro__final { background: rgb(39 36 28 / .8); }

/* ——— Cierre: el papiral al amanecer ——— */
.v-cierre { position: relative; isolation: isolate; overflow: hidden; min-height: min(100svh, 980px); display: grid; align-items: center; padding: clamp(96px, 12vw, 180px) 0; text-align: center; color: var(--crema);
  --tinta: var(--crema); --tinta-2: var(--crema-2); }
.v-cierre .pv-acc { fill: #8dca80; }
.v-cierre__fondo { position: absolute; inset: 0; z-index: -2; }
.v-cierre__fondo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 70%; }
.v-cierre::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(70% 60% at 50% 42%, rgb(15 12 7 / .55), rgb(15 12 7 / .2) 70%), linear-gradient(180deg, rgb(15 12 7 / .6), transparent 30%, transparent 70%, rgb(15 12 7 / .7)); }
.v-cierre > .s-envoltura { display: grid; justify-items: center; gap: 28px; }
.v-cierre .s-cierre__simbolo { width: clamp(56px, 6vw, 84px); height: auto; overflow: visible; }
.v-cierre__titulo { font-size: clamp(2.8rem, 1rem + 6.2vw, 7rem); line-height: .95; letter-spacing: -0.047em; font-weight: 600; max-width: 12em; }
.v-cierre__titulo span { display: block; color: var(--crema-2); font-weight: 500; }
.v-cierre p { color: var(--crema-2); font-size: 1.1875rem; max-width: 32em; }
.v-cierre .s-cta { justify-content: center; }
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .v-cierre .s-cierre__simbolo { view-timeline-name: --cierre; }
    .v-cierre .s-cierre__simbolo .pv-s1 { animation: pv-draw linear both; animation-timeline: --cierre; animation-range: entry 40% cover 35%; }
    .v-cierre .s-cierre__simbolo .pv-s2 { animation: pv-draw linear both; animation-timeline: --cierre; animation-range: cover 30% cover 45%; }
    .v-cierre .s-cierre__simbolo .pv-dot { animation: pv-dot linear both; animation-timeline: --cierre; animation-range: cover 44% cover 50%; }
    .v-cierre__fondo img { animation: acerca linear both; animation-timeline: view(); animation-range: cover 0% cover 100%; }
  }
}
@keyframes acerca { from { scale: 1.12; } to { scale: 1; } }

/* ——— Pie en tinta ——— */
.v-pie { background: var(--noche); color: var(--crema-2); border-top: 0; --tinta: var(--crema); --tinta-2: var(--crema-2); --tinta-3: var(--crema-3); --borde-suave: rgb(243 239 226 / .12); }
.v-pie .s-pie__marca img { filter: brightness(0) invert(.94); }
.v-pie nav a { color: var(--crema-2); }
.v-pie nav a:hover { color: var(--crema); }
.v3 .s-marca { flex: none; }
@media (max-width: 600px) {
  .v-flota--musa { display: none; }
  .v-portal { padding-top: calc(var(--barra) + 40px); }
  .v-portal__texto { gap: 22px; }
  .v-escaparate { margin-top: 44px; }
  .v-ventana { border-radius: 8px; }
}
@media (max-width: 700px) {
  .v-portal::before { background: linear-gradient(180deg, rgb(15 12 7 / .8) 0%, rgb(15 12 7 / .72) 50%, rgb(15 12 7 / .3) 74%, rgb(15 12 7 / .85) 100%); }
}

/* Display y titulares en Plus Jakarta Sans. */
.v3 :is(.v-titular, .v-h2, .v-cifras b, .v-flota__titulo) { font-family: var(--fuente-display); }
