/* ==========================================================================
   WEB v7 (13/10/2026) — EL DISEÑO «EDITORIAL»
   Él: «hazlo de la web… utiliza ese tipo de diseños, ese tipo de animaciones»
   (el vídeo de la web de referencia de ia\videos\, SIN nada de su tema).
   Va ENCIMA de estilo.css: las páginas interiores siguen usando aquel y aquí
   sólo se cambia la cabecera, el pie, los titulares y lo nuevo de la portada.

   ⚠️ Lo que se esconde para animarlo sólo se esconde con <html class="js">.
   Si el JavaScript falla, la web se ve entera (como siempre en esta web).
   ========================================================================== */
:root{
  --serif:  "Instrument Serif", Georgia, "Times New Roman", serif;
  --noche:  #06101F;
  --azul-cl:#6FB0FF;
  /* ⚠️ La portada (body.software-v2) redefine --fuente-t como Inter, que no tiene
     anchura variable: la letra estrecha salía ancha. Aquí, Archivo siempre. */
  --v7-titulo:"Archivo", "Inter", -apple-system, "Segoe UI", Arial, sans-serif;
}

/* ── Letras: la mezcla de la referencia (recta, estrecha y cursiva) ────── */
.v7-estrecha{ font-family:var(--v7-titulo); font-stretch:62%; font-variation-settings:"wdth" 62; font-weight:900; text-transform:uppercase; letter-spacing:-.005em; }
.v7-cursiva{ font-family:var(--serif); font-style:italic; font-weight:400; letter-spacing:-.01em; }
.v7-etq{ display:inline-flex; align-items:center; gap:10px; font:700 .76rem/1 var(--fuente); letter-spacing:.2em; text-transform:uppercase; color:var(--azul-texto); }
.v7-etq::before{ content:""; width:22px; height:3px; border-radius:2px; background:var(--azul); }
.oscuro .v7-etq, .v7-oscura .v7-etq{ color:var(--azul-cl); }

/* ── La cabecera: blanca y fina, con el botón azul a la derecha ───────── */
body.v7 .cabecera{ background:rgba(255,255,255,.78); }
body.v7 .cabecera__caja{ height:70px; }
body.v7 .menu a{ font-size:.93rem; }
body.v7 .menu a.boton--azul{ border-radius:999px; padding:10px 20px; }
body.v7 .cabecera::after{ /* lo leído, como en la referencia */
  content:""; position:absolute; left:0; bottom:-1px; height:2px; width:100%;
  background:var(--azul); transform-origin:0 50%; transform:scaleX(var(--progreso,0));
}

/* ── 0. La entrada (sólo la primera vez de cada visita) ──────────────── */
.v7-entrada{ display:none; }
html.v7-entrando .v7-entrada{
  display:flex; position:fixed; inset:0; z-index:200; align-items:center; justify-content:center; flex-direction:column; gap:30px;
  background:var(--azul); pointer-events:none;
  animation:v7-telon .7s cubic-bezier(.76,0,.24,1) 1.25s forwards;
}
.v7-entrada__marca{ width:min(260px,52vw); clip-path:inset(0 100% 0 0); animation:v7-dibuja .8s cubic-bezier(.6,0,.2,1) .15s forwards; }
.v7-entrada__marca img{ width:100%; height:auto; filter:brightness(0) invert(1); }
.v7-entrada__palabra{ font:600 .78rem/1 var(--fuente); letter-spacing:.42em; color:rgba(255,255,255,.85); text-transform:uppercase; opacity:0; animation:v7-sube .5s ease .65s forwards; }
@keyframes v7-dibuja{ to{ clip-path:inset(0 0 0 0); } }
@keyframes v7-sube{ from{ transform:translateY(10px); opacity:0; } to{ transform:none; opacity:1; } }
@keyframes v7-telon{ to{ transform:translateY(-101%); } }

/* ── 1. PORTADA: el titular y la pantalla que se «pinta» ─────────────── */
.v7-portada{ position:relative; padding:56px 0 90px; overflow:hidden; background:#fff; }
.v7-portada__fondo{ position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(60% 50% at 85% 10%,rgba(31,123,255,.10),transparent 70%),radial-gradient(50% 40% at 5% 90%,rgba(111,176,255,.14),transparent 70%); }
.v7-portada__cabeza{ position:relative; }
.v7-portada__caja{ position:relative; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:56px; align-items:center; margin-top:34px; }
  padding:10px 16px 10px 12px; border:1px solid var(--linea); border-radius:999px; background:#fff; box-shadow:var(--sombra); }
/* «MULTIPLIQUE» mide 5 veces su tamaño de letra (medido): así llena el ancho sin salirse */
.v7-titular{ margin:24px 0 0; line-height:.9; letter-spacing:-.02em; color:var(--marino); }
.v7-titular .v7-estrecha{ display:block; font-size:min(11.6rem, calc((100vw - 56px) / 5.15)); line-height:.8; letter-spacing:-.01em; }
.v7-titular .v7-cursiva{ display:block; font-size:min(7.6rem, calc((100vw - 48px) / 5.6)); line-height:1; color:var(--azul); margin:-.1em 0 0 min(5.6em, 42vw); }
.v7-portada__texto{ font-size:1.12rem; color:var(--gris); max-width:520px; }
.v7-portada .botones{ margin-top:28px; }
.v7-boton-texto{ display:inline-flex; align-items:center; gap:8px; font:700 1rem var(--v7-titulo); color:var(--marino); padding:15px 6px; }
.v7-boton-texto:hover{ color:var(--azul); text-decoration:none; }
.v7-prueba{ margin-top:22px; font-size:.95rem; color:var(--marino); display:flex; gap:12px; align-items:flex-start; max-width:520px; }
.v7-prueba b{ flex:none; margin-top:3px; width:22px; height:22px; border-radius:6px; background:var(--azul); position:relative; }
.v7-prueba b::after{ content:""; position:absolute; left:7px; top:3px; width:6px; height:11px; border:solid #fff; border-width:0 2.5px 2.5px 0; transform:rotate(45deg); }
.v7-compat{ display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:26px; font:600 .82rem var(--fuente); color:var(--gris); }
.v7-compat span{ display:inline-flex; align-items:center; gap:8px; }
.v7-compat span::before{ content:""; width:7px; height:7px; border-radius:2px; background:var(--azul); }

/* ── 2. Letras gigantes que se deslizan, con el borrador en medio ────── */
.v7-desfile{ position:relative; background:var(--noche); color:#fff; padding:120px 0; overflow:hidden; }
.v7-desfile__fila{ white-space:nowrap; line-height:.95; will-change:transform; }
.v7-desfile__fila span{ display:inline-block; padding-right:.35em; }
.v7-desfile .f1{ font-size:clamp(4rem,11vw,10rem); color:#fff; }
.v7-desfile .f2{ font-size:clamp(3.6rem,9vw,8.6rem); color:var(--azul-cl); }
.v7-desfile .f3{ font-size:clamp(4rem,11vw,10rem); color:transparent; -webkit-text-stroke:2px rgba(111,176,255,.55); }
.v7-desfile__carta{ position:absolute; left:50%; top:50%; width:min(440px,78vw); transform:translate(-50%,-50%) rotate(var(--giro,-3deg)) scale(var(--esc,1));
  background:#fff; color:var(--tinta); border-radius:18px; padding:20px 22px 22px; box-shadow:0 40px 80px -20px rgba(0,0,0,.6); z-index:2; }
.v7-borrador__cab{ display:flex; align-items:center; gap:10px; font:700 .8rem var(--fuente); color:var(--marino); }
.v7-borrador__cab .pill{ margin-left:auto; font:700 .7rem var(--fuente); color:#a06800; background:#fff3da; border-radius:999px; padding:4px 10px; }
.v7-borrador__cab img{ width:22px; height:22px; }
.v7-borrador__dato{ margin-top:12px; padding:8px 0; border-top:1px solid #edf1f6; font:500 .8rem var(--fuente); color:#5a6b7c; }
.v7-borrador__dato b{ color:var(--tinta); font-weight:600; }
.v7-borrador__cuerpo{ border-top:1px solid #edf1f6; padding-top:12px; font:500 .9rem/1.55 var(--fuente); color:#2a3644; }
.v7-borrador__cuerpo p{ margin:0 0 .7em; }
.v7-borrador__pie{ display:flex; align-items:center; gap:12px; margin-top:6px; font:500 .72rem var(--fuente); color:#8a97a8; }
.v7-borrador__pie span:first-child{ background:var(--azul); color:#fff; font:700 .8rem var(--fuente); padding:8px 18px; border-radius:999px; }
.v7-desfile__nota{ position:relative; z-index:2; text-align:center; margin-top:60px; font:600 .8rem var(--fuente); letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.55); }

/* ── Frases que aparecen tapadas por barras (la referencia) ───────────── */
.js .v7-barras .v7-barra{ position:relative; display:inline-block; }
.js .v7-barras .v7-barra > span{ clip-path:inset(0 100% 0 0); }
.js .v7-barras .v7-barra::after{ content:""; position:absolute; left:-.06em; right:-.06em; top:.08em; bottom:.04em; background:var(--azul); transform:scaleX(0); transform-origin:0 50%; }
.js .v7-barras.visto .v7-barra::after{ animation:v7-barra 1s cubic-bezier(.7,0,.2,1) both; animation-delay:calc(var(--i,0) * .12s); }
.js .v7-barras.visto .v7-barra > span{ animation:v7-destapa 1s steps(1,end) both; animation-delay:calc(var(--i,0) * .12s); }
.js .v7-barras.hecho .v7-barra::after{ animation:none; transform:scaleX(0); }
.js .v7-barras.hecho .v7-barra > span{ animation:none; clip-path:none; }
@keyframes v7-barra{ 0%{ transform:scaleX(0); transform-origin:0 50%; } 48%{ transform:scaleX(1); transform-origin:0 50%; } 52%{ transform:scaleX(1); transform-origin:100% 50%; } 100%{ transform:scaleX(0); transform-origin:100% 50%; } }
@keyframes v7-destapa{ 0%{ clip-path:inset(0 100% 0 0); } 50%{ clip-path:none; } 100%{ clip-path:none; } }

/* ── 3. SIN / CON ─────────────────────────────────────────────────────── */
.v7-sincon{ position:relative; padding:120px 0 0; background:#fff; overflow:hidden; }
.v7-sincon__cab{ text-align:center; max-width:760px; margin:0 auto 60px; }
.v7-sincon__cab h2{ font-size:clamp(2.2rem,4.6vw,3.6rem); }
.v7-sincon__cab h2 em{ font-family:var(--serif); font-style:italic; font-weight:400; color:var(--azul); }
.v7-sincon__caja{ display:grid; grid-template-columns:1fr 1fr; gap:0; position:relative; }
.v7-sincon__lado{ padding:10px 56px 60px; }
.v7-sincon__lado + .v7-sincon__lado{ border-left:1px solid var(--linea); }
.v7-sincon__palabra{ display:flex; align-items:baseline; gap:.25em; color:var(--marino); line-height:.9; margin-bottom:30px; }
.v7-sincon__palabra .v7-cursiva{ font-size:clamp(3.2rem,6vw,5.4rem); color:var(--gris-claro); }
.v7-sincon__palabra .v7-estrecha{ font-size:clamp(3.4rem,6.4vw,5.8rem); }
.v7-sincon__lado--con .v7-sincon__palabra .v7-cursiva{ color:var(--azul); }
.v7-sincon ul{ list-style:none; margin:0; padding:0; }
.v7-sincon li{ display:flex; gap:14px; align-items:flex-start; padding:15px 0; border-top:1px solid var(--linea); font-size:1.04rem; color:var(--tinta); }
.v7-sincon li::before{ content:""; flex:none; margin-top:8px; width:11px; height:11px; border-radius:3px; background:#C9D3DF; }
.v7-sincon__lado--con li::before{ background:var(--azul); }
.v7-sincon__lado--sin li{ color:var(--gris); }
.v7-sincon__franja{ position:relative; margin-top:40px; background:var(--marino); color:#fff; text-align:center; padding:90px 24px; overflow:hidden; }
.v7-sincon__franja p{ margin:0; font-size:clamp(2.6rem,6.4vw,5.6rem); line-height:1; letter-spacing:-.02em; }
.v7-sincon__franja .v7-estrecha{ display:block; }
.v7-sincon__franja .v7-cursiva{ display:block; color:var(--azul-cl); }

/* ── 4. Las ocho funciones, en tarjetas oscuras ───────────────────────── */
.v7-funciones{ position:relative; background:var(--noche); color:rgba(255,255,255,.72); padding:120px 0; overflow:hidden; }
.v7-funciones__cab{ display:grid; grid-template-columns:1.1fr .9fr; gap:40px; align-items:end; margin-bottom:56px; }
.v7-funciones__cab h2{ color:#fff; font-size:clamp(2.2rem,4.6vw,3.6rem); margin:14px 0 0; }
.v7-funciones__cab h2 em{ display:block; font-family:var(--serif); font-style:italic; font-weight:400; color:var(--azul-cl); }
.v7-funciones__cab p{ margin:0; font-size:1.05rem; }
.v7-rejilla{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.v7-func{ position:relative; border-radius:20px; padding:26px 24px 28px; background:linear-gradient(170deg,#0f1b33,#0a1426); border:1px solid rgba(140,180,255,.12);
  transition:transform .35s cubic-bezier(.2,.7,.3,1), border-color .35s, box-shadow .35s; overflow:hidden; }
.v7-func::before{ content:""; position:absolute; inset:-40% -40% auto auto; width:260px; height:260px; border-radius:50%; background:radial-gradient(closest-side,rgba(31,123,255,.35),transparent); opacity:0; transition:opacity .4s; }
.v7-func__n{ font:700 .78rem var(--fuente); letter-spacing:.16em; color:rgba(255,255,255,.4); }
.v7-func__ic{ width:60px; height:60px; border-radius:16px; margin:22px 0 22px; display:flex; align-items:center; justify-content:center; background:rgba(31,123,255,.12); border:1px solid rgba(111,176,255,.25); color:var(--azul-cl); transition:transform .35s; }
.v7-func__ic svg{ width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.v7-func h3{ color:#fff; font-size:1.18rem; margin:0 0 10px; }
.v7-func p{ margin:0; font-size:.93rem; line-height:1.55; color:rgba(255,255,255,.66); }
.v7-func::after{ content:""; position:absolute; left:24px; bottom:0; width:42px; height:4px; border-radius:4px 4px 0 0; background:var(--azul); transform:scaleX(.4); transform-origin:0 50%; transition:transform .4s; }
@media (hover:hover){
  .v7-func:hover{ transform:translateY(-6px); border-color:rgba(111,176,255,.4); box-shadow:0 30px 60px -30px rgba(31,123,255,.6); }
  .v7-func:hover::before{ opacity:1; }
  .v7-func:hover .v7-func__ic{ transform:scale(1.08) rotate(-4deg); }
  .v7-func:hover::after{ transform:scaleX(1); }
}

/* ── 5. En su ordenador: el portátil a pantalla completa ─────────────── */
.v7-equipo{ position:relative; background:radial-gradient(70% 60% at 50% 40%,#13223f 0%,#081224 55%,#040912 100%); color:rgba(255,255,255,.72); padding:120px 0 110px; overflow:hidden; }
.v7-equipo__cab{ text-align:center; max-width:820px; margin:0 auto; }
.v7-equipo__cab h2{ color:#fff; font-size:clamp(2.4rem,5.4vw,4.4rem); line-height:1; margin:16px 0 18px; }
.v7-equipo__cab h2 em{ display:block; font-family:var(--serif); font-style:italic; font-weight:400; color:var(--azul-cl); }
.v7-equipo__cab p{ font-size:1.08rem; }
.v7-portatil{ position:relative; width:min(980px,100%); margin:40px auto 0; aspect-ratio:1536/1024; will-change:transform; }
.v7-portatil img{ width:100%; height:auto; }
.v7-portatil__pantalla{ position:absolute; left:10.35%; top:10.25%; width:80.27%; height:69.24%; border-radius:4px; overflow:hidden;
  background:radial-gradient(80% 80% at 50% 40%,#16305e,#0a1630 70%); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3%; }
.v7-portatil__pantalla img{ width:26%; height:auto; }
.v7-portatil__pantalla b{ font:800 clamp(.8rem,2.2vw,1.5rem)/1 var(--v7-titulo); color:#fff; letter-spacing:.02em; }
.v7-portatil__pantalla span{ font:600 clamp(.5rem,1.1vw,.78rem)/1 var(--fuente); letter-spacing:.24em; color:#8fb8ff; text-transform:uppercase; }
.v7-portatil::after{ content:""; position:absolute; left:10%; right:10%; bottom:-4%; height:16%; background:radial-gradient(closest-side,rgba(31,123,255,.45),transparent); filter:blur(20px); z-index:-1; }
.v7-tres{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin-top:70px; }
.v7-tres h3{ color:#fff; font-size:1.2rem; margin:16px 0 10px; }
.v7-tres p{ margin:0; font-size:.98rem; }
.v7-tres .v7-raya{ display:block; width:46px; height:4px; border-radius:3px; background:var(--azul); }

/* ── 6. Quién está detrás: la foto de polaroid y la firma ──────────────── */
.v7-quien{ position:relative; background:#F4F1EC; padding:120px 0; overflow:hidden; }
.v7-quien__caja{ display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:center; }

/* ── 7. El cierre: los borradores del día en abanico ─────────────────── */
.v7-cierre{ position:relative; background:#fff; padding:120px 0 130px; overflow:hidden; text-align:center; }
.v7-abanico{ position:relative; height:330px; margin:0 auto 10px; max-width:900px; }
.v7-abanico__carta{ position:absolute; left:50%; bottom:0; width:250px; margin-left:-125px; height:300px; border-radius:20px; transform-origin:50% 120%;
  background:#fff; border:1px solid var(--linea); box-shadow:0 30px 50px -26px rgba(11,37,69,.45); text-align:left; padding:20px; will-change:transform; }
.v7-abanico__carta:nth-child(odd){ background:linear-gradient(170deg,#0f1b33,#0a1426); border-color:rgba(140,180,255,.16); color:#e8eefc; }
.v7-abanico__carta .av{ width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center; font:800 .82rem var(--fuente); background:var(--azul-suave); color:var(--azul-texto); }
.v7-abanico__carta b{ display:block; margin-top:16px; font:800 1.02rem var(--v7-titulo); color:inherit; }
.v7-abanico__carta:nth-child(even) b{ color:var(--marino); }
.v7-abanico__carta small{ display:block; margin-top:4px; font:500 .8rem var(--fuente); color:#8a97a8; }
.v7-abanico__carta i{ display:block; height:7px; border-radius:4px; background:currentColor; opacity:.12; margin-top:12px; }
.v7-abanico__carta i:nth-of-type(1){ margin-top:22px; width:92%; } .v7-abanico__carta i:nth-of-type(2){ width:80%; } .v7-abanico__carta i:nth-of-type(3){ width:86%; } .v7-abanico__carta i:nth-of-type(4){ width:60%; }
.v7-abanico__carta em{ position:absolute; left:20px; bottom:18px; font:700 .74rem var(--fuente); font-style:normal; color:#3fd58a; display:flex; align-items:center; gap:8px; }
.v7-abanico__carta:nth-child(even) em{ color:#0E8A4B; }
.v7-cierre h2{ font-size:clamp(3rem,7.4vw,6.4rem); line-height:.95; letter-spacing:-.03em; margin:26px 0 22px; }
.v7-cierre h2 .v7-cursiva{ display:block; color:var(--azul); font-size:.92em; }
.v7-cierre p.gris{ max-width:620px; margin:0 auto 30px; font-size:1.08rem; }
.v7-cierre .botones{ justify-content:center; }
.v7-cierre .boton--linea-oscura{ background:#fff; color:var(--marino); border-color:var(--linea); box-shadow:var(--sombra); }

/* ── El pie: la franja de color y el gran panel marino ───────────────── */
.v7-pie{ position:relative; background:linear-gradient(180deg,#fff 0%,#DCEAFF 30%,#7FB4FF 70%,var(--azul) 100%); padding:90px 18px 18px; }
.v7-pie__panel{ position:relative; max-width:1240px; margin:0 auto; background:var(--marino-3); color:rgba(255,255,255,.7); border-radius:30px; padding:90px 48px 26px; overflow:hidden; }
.v7-pie__panel::before{ /* la pestaña de arriba, como una carpeta */
  content:""; position:absolute; left:50%; top:0; width:min(380px,60%); height:26px; transform:translateX(-50%); background:linear-gradient(180deg,#DCEAFF,#c6dcff); border-radius:0 0 22px 22px; }
.v7-pie__centro{ text-align:center; }
.v7-pie__marca{ display:block; font:700 .74rem/1 var(--fuente); letter-spacing:.32em; text-transform:uppercase; color:var(--azul-cl); margin-bottom:16px; }
.v7-pie__centro p.grande{ margin:0; color:#fff; font-size:clamp(2.6rem,6.4vw,5.4rem); line-height:.95; letter-spacing:-.02em; }
.v7-pie__centro p.grande .v7-cursiva{ color:var(--azul-cl); }
.v7-pie__centro img{ width:110px; height:auto; margin:30px auto 0; }

/* los tres pasos de debajo del titular */
.v7-pasos{ position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:34px; margin-top:70px; padding-top:34px; border-top:1px solid var(--linea); }
.v7-pasos article{ display:flex; gap:16px; align-items:flex-start; }
.v7-pasos__ic{ flex:none; width:46px; height:46px; border-radius:13px; background:var(--azul-suave); color:var(--azul); display:flex; align-items:center; justify-content:center; }
.v7-pasos__ic .ui-icon{ width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.v7-pasos h2{ font-size:1.08rem; margin:2px 0 6px; letter-spacing:-.01em; }
.v7-pasos p{ margin:0; font-size:.94rem; color:var(--gris); }
.v7-pie__cols{ display:grid; grid-template-columns:1fr minmax(0,560px) 1fr; gap:40px; align-items:end; }
.v7-pie__lema{ margin:18px auto 0; font-size:.86rem; color:rgba(255,255,255,.55); }
.v7-pie__col h4{ color:#fff; font:700 .74rem var(--fuente); letter-spacing:.2em; text-transform:uppercase; margin:0 0 12px; }
.v7-pie__col a, .v7-pie__col span{ display:block; color:rgba(255,255,255,.78); padding:4px 0; font-size:.95rem; text-decoration:none !important; }
.v7-pie__col a:hover{ color:#fff; }
.v7-pie__col--der{ text-align:right; }
.v7-pie__linea{ display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-top:60px; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); font-size:.82rem; color:rgba(255,255,255,.55); }
.v7-pie__linea a{ color:rgba(255,255,255,.75); }

/* ── Páginas interiores: el titular con barras, estrecha + cursiva ───── */
body.v7 h1.v7-h1{ font-size:clamp(2.6rem,6vw,4.6rem) !important; line-height:.95; letter-spacing:-.02em; }
body.v7 h1.v7-h1 .v7-barra{ display:table; margin-left:auto; margin-right:auto; }
body.v7 h1.v7-h1 .v7-estrecha{ font-size:1.22em; line-height:.92; }
body.v7 h1.v7-h1 .v7-cursiva{ color:var(--azul); font-size:1.02em; line-height:1.05; margin-top:.04em; }

/* ── Pantallas medianas y móvil ──────────────────────────────────────── */
@media (max-width:1060px){
  .v7-portada__caja{ grid-template-columns:1fr; gap:44px; }
  .v7-rejilla{ grid-template-columns:repeat(2,1fr); }
  .v7-funciones__cab{ grid-template-columns:1fr; }
  .v7-quien__caja{ grid-template-columns:1fr; gap:50px; }
  .v7-pie__cols{ grid-template-columns:1fr 1fr; }
  .v7-pie__centro{ grid-column:1 / -1; order:-1; margin-bottom:20px; }
  .v7-pasos{ grid-template-columns:1fr; gap:22px; }
}
@media (max-width:760px){
  .v7-portada{ padding:34px 0 64px; }
  .v7-desfile{ padding:80px 0; }
  .v7-desfile__carta{ width:86vw; }
  .v7-sincon{ padding-top:80px; }
  .v7-sincon__caja{ grid-template-columns:1fr; }
  .v7-sincon__lado{ padding:10px 4px 40px; }
  .v7-sincon__lado + .v7-sincon__lado{ border-left:0; border-top:1px solid var(--linea); padding-top:40px; }
  .v7-funciones, .v7-equipo, .v7-quien, .v7-cierre{ padding:80px 0; }
  .v7-rejilla{ grid-template-columns:1fr; }
  .v7-tres{ grid-template-columns:1fr; gap:30px; margin-top:50px; }
  .v7-abanico{ height:270px; margin-bottom:46px; }
  .v7-abanico__carta{ width:190px; margin-left:-95px; height:240px; padding:16px; }
  .v7-pie{ padding:60px 10px 10px; }
  .v7-pie__panel{ padding:70px 22px 22px; border-radius:22px; }
  .v7-pie__cols{ grid-template-columns:1fr; }
  .v7-pie__col--der{ text-align:left; }
}
@media (prefers-reduced-motion:reduce){
  html.v7-entrando .v7-entrada{ display:none; }
  .js .v7-barras .v7-barra > span{ clip-path:none; }
  .js .v7-barras .v7-barra::after{ display:none; }
}

/* Los titulares de lo nuevo, en Archivo (en la portada el h2 de siempre sale en Inter) */
.v7-sincon__cab h2, .v7-funciones__cab h2, .v7-equipo__cab h2, .v7-cierre h2, .v7-pasos h2, .v7-func h3, .v7-tres h3{ font-family:var(--v7-titulo); }
/* en el pie, «sus ventas.» no se parte */
.v7-pie__centro p.grande .v7-estrecha, .v7-pie__centro p.grande .v7-cursiva{ display:block; white-space:nowrap; }

/* ══════════════════════════════════════════════════════════════════════
   13/10 (tarde) — LO QUE PIDIÓ AL VERLA
   · fuera «pase el ratón»: en su sitio, la ventana del programa con pestañas
   · enseñar pedidos, facturación, metas, estadísticas, agenda e informes
   · el borrador del desfile: el logo salía aplastado y el texto no se veía
   · «Quién está detrás» sin letra de firma ni foto de polaroid
   ══════════════════════════════════════════════════════════════════════ */

/* ── La ventana del programa (portada) ─────────────────────────────── */
.v7-app{ position:relative; border-radius:20px; overflow:hidden; background:#0b1222; color:#dfe7f6;
  box-shadow:0 50px 90px -40px rgba(11,37,69,.55),0 0 0 1px rgba(11,37,69,.12); font-family:var(--fuente); }
.v7-app__barra{ height:40px; display:flex; align-items:center; gap:8px; padding:0 16px; background:#0e1730; border-bottom:1px solid rgba(255,255,255,.06); }
.v7-app__barra i{ width:11px; height:11px; border-radius:50%; background:#2a3550; }
.v7-app__barra span{ margin-left:10px; font:700 .76rem var(--fuente); color:#c9d6ee; }
.v7-app__barra em{ margin-left:auto; font:600 .68rem var(--fuente); font-style:normal; color:#7f8ca8; border:1px solid #2e3b5c; border-radius:999px; padding:4px 10px; }
.v7-app__cuerpo{ display:flex; min-height:410px; }
.v7-app__lado{ width:62px; flex:none; display:flex; flex-direction:column; align-items:center; gap:10px; padding:16px 0; background:#0a101f; border-right:1px solid rgba(255,255,255,.05); }
.v7-app__lado img{ width:34px; height:auto; margin-bottom:10px; }
.v7-app__lado b{ width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#5d6b88; transition:background .3s,color .3s; }
.v7-app__lado b svg{ width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.v7-app__lado b.activo{ background:rgba(31,123,255,.18); color:#8fc0ff; }
.v7-app__main{ flex:1; min-width:0; display:flex; flex-direction:column; }
.v7-app__pestanas{ display:flex; gap:4px; padding:12px 14px 0; border-bottom:1px solid rgba(255,255,255,.06); overflow-x:auto; scrollbar-width:none; }
.v7-app__pestanas::-webkit-scrollbar{ display:none; }
.v7-app__pestanas button{ position:relative; flex:none; background:none; border:0; color:#7f8ca8; font:700 .82rem var(--fuente); padding:10px 14px 13px; cursor:pointer; border-radius:8px 8px 0 0; transition:color .2s,background .2s; }
.v7-app__pestanas button:hover{ color:#c9d6ee; }
.v7-app__pestanas button[aria-selected="true"]{ color:#fff; background:rgba(255,255,255,.04); }
.v7-app__pestanas button i{ position:absolute; left:10px; right:10px; bottom:0; height:3px; border-radius:3px; background:var(--azul); transform:scaleX(0); transform-origin:0 50%; }
.v7-app__pestanas button[aria-selected="true"] i{ transform:scaleX(var(--avance,1)); }
.v7-app__pestanas button:focus-visible{ outline:2px solid var(--azul-cl); outline-offset:-2px; }
.v7-app__vistas{ position:relative; flex:1; }
.v7-vista{ position:absolute; inset:0; padding:18px 20px; opacity:0; visibility:hidden; transform:translateY(10px); transition:opacity .35s, transform .45s cubic-bezier(.2,.7,.3,1), visibility 0s .45s; }
.v7-vista.activa{ opacity:1; visibility:visible; transform:none; transition:opacity .35s, transform .45s cubic-bezier(.2,.7,.3,1), visibility 0s; }
.v7-vista h5{ margin:0 0 10px; font:800 .66rem var(--fuente); letter-spacing:.16em; text-transform:uppercase; color:#8fb8ff; }
.v7-vista__pie{ position:absolute; left:20px; right:20px; bottom:14px; margin:0; font:500 .74rem var(--fuente); color:#7f8ca8; }
/* Mi día */
.v7-kpis{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.v7-kpis div{ background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.06); border-radius:12px; padding:12px 14px; }
.v7-kpis b{ display:block; font:800 1.6rem/1 var(--v7-titulo); color:#fff; }
.v7-kpis span{ display:block; margin-top:6px; font:600 .7rem var(--fuente); color:#8a97b0; }
.v7-dia{ display:grid; grid-template-columns:1.25fr 1fr; gap:14px; margin-top:14px; }
.v7-lista__fila{ display:flex; align-items:center; gap:10px; padding:8px 0; border-top:1px solid rgba(255,255,255,.05); }
.v7-av{ width:32px; height:32px; border-radius:50%; flex:none; display:flex; align-items:center; justify-content:center; font:800 .7rem var(--fuente); }
.v7-lista__fila b{ display:block; font:700 .82rem var(--fuente); color:#eef3ff; }
.v7-lista__fila small{ display:block; font:600 .7rem var(--fuente); margin-top:2px; }
.v7-semana{ background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06); border-radius:12px; padding:12px 12px 8px; }
.v7-semana svg{ width:100%; height:120px; display:block; }
.v7-semana p{ margin:6px 0 0; font:600 .68rem var(--fuente); display:flex; gap:12px; }
.js .v7-linea{ stroke-dasharray:1; stroke-dashoffset:1; transition:stroke-dashoffset 1.4s cubic-bezier(.5,0,.2,1) .2s; }
.js .v7-vista.activa .v7-linea{ stroke-dashoffset:0; }
.js .v7-vista.activa .v7-linea--2{ transition-delay:.45s; }
/* Pedidos */
.v7-aviso-ped{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border-radius:12px; background:rgba(31,123,255,.14); border:1px solid rgba(111,176,255,.3); font:600 .78rem var(--fuente); color:#dbe8ff; }
.v7-aviso-ped b{ flex:none; background:var(--azul); color:#fff; font:700 .72rem var(--fuente); padding:6px 12px; border-radius:999px; }
.v7-tabla{ width:100%; border-collapse:collapse; margin-top:12px; font:500 .78rem var(--fuente); }
.v7-tabla th{ text-align:left; font:700 .64rem var(--fuente); letter-spacing:.12em; text-transform:uppercase; color:#7f8ca8; padding:8px 6px; border-bottom:1px solid rgba(255,255,255,.08); }
.v7-tabla td{ padding:9px 6px; border-bottom:1px solid rgba(255,255,255,.05); color:#dfe7f6; white-space:nowrap; }
.v7-tabla .n{ text-align:right; font-variant-numeric:tabular-nums; font-weight:700; }
.v7-est{ font:700 .66rem var(--fuente); padding:3px 9px; border-radius:999px; }
.v7-est--pend{ background:#3b2d10; color:#F5CF7A; } .v7-est--curso{ background:#17305e; color:#8FB8FF; } .v7-est--ok{ background:#173a2c; color:#7BE0B0; }
/* Facturación */
.v7-fact{ display:grid; grid-template-columns:.8fr 1.6fr; gap:18px; align-items:end; height:100%; padding-bottom:22px; }
.v7-fact span{ display:block; font:700 .66rem var(--fuente); letter-spacing:.14em; text-transform:uppercase; color:#8fb8ff; }
.v7-fact b{ display:block; margin-top:10px; font:800 2rem/1 var(--v7-titulo); color:#fff; }
.v7-fact small{ display:block; margin-top:8px; font:500 .72rem var(--fuente); color:#7f8ca8; }
.v7-barras-mes{ height:250px; display:flex; align-items:flex-end; gap:6px; border-bottom:1px solid rgba(255,255,255,.1); }
.v7-barras-mes i{ position:relative; flex:1; height:var(--h); border-radius:5px 5px 0 0; background:linear-gradient(180deg,#2a4f8f,#1b3566); }
.v7-barras-mes i.hoy{ background:linear-gradient(180deg,#5aa8ff,#1F7BFF); box-shadow:0 0 24px rgba(31,123,255,.45); }
.v7-barras-mes em{ position:absolute; left:0; right:0; bottom:-20px; text-align:center; font:600 .62rem var(--fuente); font-style:normal; color:#6f7c98; }
.js .v7-barras-mes i{ height:0; transition:height .8s cubic-bezier(.2,.7,.3,1); transition-delay:calc(var(--d,0) * 1s); }
.js .v7-vista.activa .v7-barras-mes i{ height:var(--h); }
/* Metas */
.v7-metas{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.v7-metas div{ background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.06); border-radius:12px; padding:14px 14px 16px; }
.v7-metas span{ display:block; font:700 .7rem var(--fuente); color:#8a97b0; }
.v7-metas b{ display:block; margin:8px 0 12px; font:800 1.25rem/1 var(--v7-titulo); color:#fff; }
.v7-metas small{ font:600 .74rem var(--fuente); color:#7f8ca8; }
.v7-metas i{ display:block; height:7px; border-radius:999px; background:rgba(255,255,255,.07); position:relative; overflow:hidden; }
.v7-metas i::after{ content:""; position:absolute; inset:0 auto 0 0; width:var(--p); border-radius:999px; background:linear-gradient(90deg,#1F7BFF,#5aa8ff); }
.js .v7-metas i::after{ width:0; transition:width 1s cubic-bezier(.2,.7,.3,1) .15s; }
.js .v7-vista.activa .v7-metas i::after{ width:var(--p); }
.v7-pie-pantalla{ display:flex; justify-content:space-between; gap:12px; margin-top:14px; font:600 .78rem var(--fuente); color:var(--gris-claro); letter-spacing:.04em; }

/* ── El borrador del desfile: logo en su proporción y el texto que se ve ── */
.v7-borrador__cab img{ width:auto; height:20px; }
.v7-desfile .v7-borrador__cuerpo, .v7-desfile .v7-borrador__cuerpo p{ color:#2a3644; }
.v7-borrador__cuerpo{ min-height:8.6em; }
.v7-escribe::after{ content:""; display:inline-block; width:2px; height:1.05em; margin-left:2px; vertical-align:-.15em; background:var(--azul); animation:v7-parpadeo .9s steps(1) infinite; }
@keyframes v7-parpadeo{ 50%{ opacity:0; } }

/* ── Pedidos, facturación y estadísticas (la rejilla de cajas) ─────── */
.v7-negocio{ position:relative; background:#F3F6FB; padding:120px 0; overflow:hidden; }
.v7-negocio__cab{ max-width:780px; margin:0 auto 54px; text-align:center; }
.v7-negocio__cab h2{ font-family:var(--v7-titulo); font-size:clamp(2.2rem,4.6vw,3.6rem); margin:16px 0 14px; }
.v7-negocio__cab h2 em{ display:block; font-family:var(--serif); font-style:italic; font-weight:400; color:var(--azul); }
.v7-negocio__cab p{ color:var(--gris); font-size:1.06rem; margin:0; }
.v7-bento{ display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.v7-caja{ position:relative; background:#fff; border:1px solid var(--linea); border-radius:24px; padding:28px 28px 26px; box-shadow:0 20px 50px -34px rgba(11,37,69,.35); overflow:hidden; display:flex; flex-direction:column; gap:22px; }
.v7-caja--fact{ grid-column:span 7; } .v7-caja--ped{ grid-column:span 5; }
.v7-caja--metas{ grid-column:span 5; } .v7-caja--ana{ grid-column:span 3; } .v7-caja--agenda{ grid-column:span 4; }
.v7-caja--inf{ grid-column:span 12; flex-direction:row; align-items:center; gap:40px; }
.v7-caja--inf .v7-caja__tx{ flex:1; } .v7-caja--inf .v7-doc{ flex:1.3; }
.v7-caja__n{ font:700 .72rem var(--fuente); letter-spacing:.18em; text-transform:uppercase; color:var(--azul-texto); }
.v7-caja h3{ font-family:var(--v7-titulo); font-size:1.42rem; margin:8px 0 8px; }
.v7-caja p{ margin:0; color:var(--gris); font-size:.96rem; line-height:1.55; }
/* gráfica de facturación */
.v7-graf{ position:relative; margin-top:auto; padding-top:10px; }
.v7-graf__total{ position:absolute; left:0; top:0; }
.v7-graf__total span{ display:block; font:700 .7rem var(--fuente); letter-spacing:.14em; text-transform:uppercase; color:var(--gris-claro); }
.v7-graf__total b{ display:block; font:800 2rem/1.1 var(--v7-titulo); color:var(--marino); }
.v7-graf__barras{ height:230px; display:flex; align-items:flex-end; gap:8px; border-bottom:2px solid var(--linea); margin-bottom:26px; }
.v7-graf__barras i{ position:relative; flex:1; height:var(--h); border-radius:7px 7px 0 0; background:linear-gradient(180deg,#c7dcfb,#a9c6f3); }
.v7-graf__barras i.hoy{ background:linear-gradient(180deg,#4c9bff,#1F7BFF); }
.v7-graf__barras em{ position:absolute; left:-6px; right:-6px; bottom:-24px; text-align:center; font:600 .7rem var(--fuente); font-style:normal; color:var(--gris-claro); }
/* pedidos */
.v7-ped{ margin-top:auto; display:flex; flex-direction:column; gap:8px; }
.v7-ped__correo{ display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:14px; background:var(--azul-suave); border:1px solid #d4e5ff; }
.v7-ped__correo > span{ font-size:1.3rem; }
.v7-ped__correo div{ flex:1; min-width:0; }
.v7-ped__correo b{ display:block; font:700 .86rem var(--fuente); color:var(--marino); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.v7-ped__correo small{ display:block; font:500 .78rem var(--fuente); color:var(--gris); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.v7-ped__correo em{ flex:none; font:700 .74rem var(--fuente); font-style:normal; color:#0E8A4B; background:#E3F7EC; padding:5px 10px; border-radius:999px; }
.v7-ped__fila{ display:grid; grid-template-columns:auto 1fr auto; gap:14px; padding:10px 4px; border-bottom:1px solid var(--linea); font:500 .86rem var(--fuente); color:var(--tinta); }
.v7-ped__fila span:first-child{ color:var(--gris-claro); font-variant-numeric:tabular-nums; }
.v7-ped__fila b{ font-variant-numeric:tabular-nums; color:var(--marino); }
/* anillos de metas */
.v7-anillos{ margin-top:auto; display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.v7-anillos figure{ margin:0; text-align:center; }
.v7-anillos svg{ width:100%; max-width:92px; height:auto; transform:rotate(-90deg); }
.v7-anillos circle{ fill:none; stroke:#E8EEF6; stroke-width:8; }
.v7-anillos .v7-anillo{ stroke:var(--azul); stroke-linecap:round; stroke-dasharray:1; stroke-dashoffset:calc(1 - var(--p)); }
.v7-anillos .v7-anillo--verde{ stroke:#12A85C; }
.v7-anillos figcaption{ font:600 .74rem/1.3 var(--fuente); color:var(--gris); margin-top:6px; }
.v7-anillos figcaption b{ display:block; font:800 1.05rem var(--v7-titulo); color:var(--marino); }
/* reparto de la cartera */
.v7-reparto{ margin-top:auto; display:flex; flex-direction:column; gap:10px; }
.v7-reparto div{ display:grid; grid-template-columns:1fr auto; gap:4px 10px; font:600 .8rem var(--fuente); color:var(--tinta); }
.v7-reparto b{ color:var(--marino); font-variant-numeric:tabular-nums; }
.v7-reparto i{ grid-column:1 / -1; height:7px; border-radius:999px; background:#EEF2F8; position:relative; overflow:hidden; }
.v7-reparto i::after{ content:""; position:absolute; inset:0 auto 0 0; width:var(--p); border-radius:999px; background:var(--azul); }
/* agenda */
.v7-agenda{ margin-top:auto; display:flex; flex-direction:column; gap:10px; }
.v7-agenda div{ display:flex; gap:14px; align-items:center; padding:10px 12px; border-radius:14px; border:1px solid var(--linea); }
.v7-agenda b{ flex:none; width:48px; text-align:center; font:700 .62rem/1.1 var(--fuente); letter-spacing:.1em; color:var(--azul-texto); }
.v7-agenda big{ font:800 1.3rem var(--v7-titulo); color:var(--marino); letter-spacing:0; }
.v7-agenda strong{ display:block; font:700 .84rem var(--fuente); color:var(--marino); }
.v7-agenda small{ display:block; font:500 .76rem var(--fuente); color:var(--gris); }
/* el informe */
.v7-doc{ background:#fff; border:1px solid var(--linea); border-radius:14px; padding:20px 22px; box-shadow:0 30px 60px -36px rgba(11,37,69,.45); transform:rotate(-1.2deg); }
.v7-doc__cab{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; border-bottom:3px solid var(--marino); padding-bottom:10px; }
.v7-doc__cab b{ font:800 1.15rem var(--v7-titulo); color:var(--marino); }
.v7-doc__cab span{ font:500 .76rem var(--fuente); color:var(--gris); }
.v7-doc__kpis{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:14px 0; }
.v7-doc__kpis div{ border:1px solid var(--linea); border-radius:8px; padding:10px; }
.v7-doc__kpis b{ display:block; font:800 1.3rem/1 var(--v7-titulo); color:var(--marino); }
.v7-doc__kpis span{ font:500 .72rem var(--fuente); color:var(--gris); }
.v7-doc__fila{ display:grid; grid-template-columns:110px 1fr; align-items:center; gap:12px; padding:6px 0; font:500 .8rem var(--fuente); color:var(--tinta); border-top:1px solid #EEF1F6; }
.v7-doc__fila i{ height:9px; border-radius:5px; background:#EEF2F8; position:relative; overflow:hidden; }
.v7-doc__fila i::after{ content:""; position:absolute; inset:0 auto 0 0; width:var(--p); background:#2563eb; border-radius:5px; }
.v7-negocio__nota{ text-align:center; margin:26px 0 0; font:600 .76rem var(--fuente); letter-spacing:.14em; text-transform:uppercase; color:var(--gris-claro); }
/* se animan al llegar (la rejilla lleva data-revelar → .visto; .hecho deja el final) */
.js .v7-bento .v7-graf__barras i{ height:0; transition:height .9s cubic-bezier(.2,.7,.3,1); transition-delay:calc(var(--d,0) * 1s); }
.js .v7-bento.visto .v7-graf__barras i, .js .v7-bento.hecho .v7-graf__barras i{ height:var(--h); }
.js .v7-bento .v7-anillo{ stroke-dashoffset:1; transition:stroke-dashoffset 1.3s cubic-bezier(.2,.7,.3,1) .3s; }
.js .v7-bento.visto .v7-anillo, .js .v7-bento.hecho .v7-anillo{ stroke-dashoffset:calc(1 - var(--p)); }
.js .v7-bento .v7-reparto i::after, .js .v7-bento .v7-doc__fila i::after{ width:0; transition:width 1.1s cubic-bezier(.2,.7,.3,1) .4s; }
.js .v7-bento.visto .v7-reparto i::after, .js .v7-bento.visto .v7-doc__fila i::after,
.js .v7-bento.hecho .v7-reparto i::after, .js .v7-bento.hecho .v7-doc__fila i::after{ width:var(--p); }
.v7-graf__barras i:nth-child(1), .v7-barras-mes i:nth-child(1){ --d:.03 } .v7-graf__barras i:nth-child(2), .v7-barras-mes i:nth-child(2){ --d:.06 }
.v7-graf__barras i:nth-child(3), .v7-barras-mes i:nth-child(3){ --d:.09 } .v7-graf__barras i:nth-child(4), .v7-barras-mes i:nth-child(4){ --d:.12 }
.v7-graf__barras i:nth-child(5), .v7-barras-mes i:nth-child(5){ --d:.15 } .v7-graf__barras i:nth-child(6), .v7-barras-mes i:nth-child(6){ --d:.18 }
.v7-graf__barras i:nth-child(7), .v7-barras-mes i:nth-child(7){ --d:.21 } .v7-graf__barras i:nth-child(8), .v7-barras-mes i:nth-child(8){ --d:.24 }
.v7-graf__barras i:nth-child(9), .v7-barras-mes i:nth-child(9){ --d:.27 } .v7-graf__barras i:nth-child(10), .v7-barras-mes i:nth-child(10){ --d:.3 }
.v7-graf__barras i:nth-child(11), .v7-barras-mes i:nth-child(11){ --d:.33 } .v7-graf__barras i:nth-child(12), .v7-barras-mes i:nth-child(12){ --d:.36 }

/* ── Quién está detrás, sin foto ni firma ───────────────────────────── */
.v7-quien__caja{ grid-template-columns:1.05fr .95fr; gap:70px; align-items:start; }
.v7-quien .cita{ margin-top:18px; }
.v7-quien__nombre{ margin:26px 0 0; padding-left:18px; border-left:3px solid var(--azul); }
.v7-quien__nombre b{ display:block; font:800 1.2rem var(--v7-titulo); color:var(--marino); }
.v7-quien__nombre span{ display:block; font:600 .8rem var(--fuente); letter-spacing:.12em; text-transform:uppercase; color:var(--gris); margin-top:4px; }

@media (max-width:1060px){
  .v7-caja--fact, .v7-caja--ped{ grid-column:span 12; }
  .v7-caja--metas{ grid-column:span 12; } .v7-caja--ana, .v7-caja--agenda{ grid-column:span 6; }
  .v7-caja--inf{ flex-direction:column; align-items:stretch; }
  .v7-quien__caja{ grid-template-columns:1fr; gap:36px; }
}
@media (max-width:760px){
  .v7-app__lado{ display:none; }
  .v7-app__cuerpo{ min-height:430px; }
  .v7-app__barra em{ display:none; }
  .v7-dia{ grid-template-columns:1fr; } .v7-semana{ display:none; }
  .v7-tabla .ocultable, .v7-tabla th:first-child, .v7-tabla td:first-child{ display:none; }
  .v7-tabla td{ white-space:normal; } .v7-tabla td.n, .v7-tabla td:last-child{ white-space:nowrap; }
  .v7-titular .v7-cursiva{ margin-left:0; text-align:right; white-space:nowrap; }
  .v7-fact{ grid-template-columns:1fr; align-items:start; }
  .v7-barras-mes{ height:170px; }
  .v7-metas{ grid-template-columns:1fr; gap:8px; } .v7-metas div{ padding:10px 12px; } .v7-metas b{ margin:6px 0 8px; }
  .v7-vista__pie{ display:none; }
  .v7-negocio{ padding:80px 0; }
  .v7-caja--ana, .v7-caja--agenda{ grid-column:span 12; }
  .v7-caja{ padding:22px 20px; }
  .v7-graf__barras{ height:170px; gap:4px; } .v7-graf__barras em{ font-size:.58rem; }
  .v7-graf__total{ position:static; margin-bottom:10px; }
  .v7-doc__kpis{ grid-template-columns:repeat(2,1fr); }
  .v7-pie-pantalla{ flex-direction:column; gap:4px; }
}

/* ══════════════════════════════════════════════════════════════════════
   13/10 (noche) — EL MÓVIL, REPASADO PÁGINA A PÁGINA (él: «que se vea
   perfecta en el móvil»). Medido a 390 y 360 px: desbordes, letra de menos
   de 12 px y botones de menos de 40 px de alto.
   ══════════════════════════════════════════════════════════════════════ */
@media (max-width:760px){
  /* el menú del móvil no tenía «Solicitar información» (estilo.css lo escondía) */
  .cabecera .menu.abierto a.boton--azul{ display:flex !important; justify-content:center; margin-top:8px; padding:14px 18px; border-radius:12px; }
  .menu.abierto a{ min-height:48px; display:flex; align-items:center; }

  /* la ventana del programa: que quepan las cuatro pestañas y se lea */
  .v7-app__pestanas{ padding:10px 6px 0; gap:0; justify-content:space-between; }
  .v7-app__pestanas button{ padding:11px 8px 14px; font-size:.82rem; }
  .v7-solo-ancho{ display:none; }
  .v7-vista{ padding:16px 14px; }
  .v7-kpis{ gap:8px; } .v7-kpis div{ padding:10px 10px; }
  .v7-kpis b{ font-size:1.5rem; } .v7-kpis span{ font-size:.74rem; line-height:1.25; }
  .v7-vista h5{ font-size:.72rem; }
  .v7-lista__fila b{ font-size:.9rem; } .v7-lista__fila small{ font-size:.78rem; }
  .v7-av{ width:34px; height:34px; font-size:.74rem; }
  .v7-aviso-ped{ font-size:.8rem; } .v7-aviso-ped b{ font-size:.76rem; }
  .v7-tabla{ font-size:.84rem; } .v7-tabla th{ font-size:.68rem; } .v7-est{ font-size:.72rem; }
  .v7-fact b{ font-size:2.2rem; } .v7-fact small{ font-size:.78rem; } .v7-barras-mes em{ font-size:.66rem; }
  .v7-metas span{ font-size:.76rem; } .v7-metas small{ font-size:.78rem; }
  .v7-pie-pantalla{ align-items:center; text-align:center; font-size:.8rem; }

  /* el borrador de las letras que desfilan: debajo de las letras, no encima
     (la nota «Demostración» pisaba el botón «Enviar») */
  .v7-desfile{ padding:70px 0 56px; }
  .v7-desfile__carta{ position:relative; left:auto; top:auto; width:calc(100% - 40px); max-width:420px; margin:-18px auto 0; transform:rotate(var(--giro,-3deg)) scale(var(--esc,1)); }
  .v7-desfile__nota{ margin-top:30px; }
  .v7-borrador__cuerpo{ font-size:.95rem; }

  /* el recorrido: los pasos, que se lean y se puedan pulsar */
  .cinema-steps button{ font-size:11.5px !important; min-height:40px; }
  .cinema-options button{ font-size:11px !important; min-height:34px; }
  .cinema-bottom > p{ font-size:12px !important; }

  /* «Verlo en 3D» y «Conozca cómo funciona»: del tamaño de un dedo */
  .promesa__ver, .promesa__enlace{ display:inline-flex; align-items:center; min-height:44px; }

  /* la sección de pedidos y gráficas */
  .v7-negocio__cab .v7-etq{ letter-spacing:.14em; justify-content:center; flex-wrap:wrap; text-align:center; }
  .v7-caja h3{ font-size:1.32rem; }
  .v7-graf__barras em{ font-size:.62rem; }

  /* las ocho funciones: algo más compactas para no hacer el móvil eterno */
  .v7-func{ padding:22px 20px 24px; }
  .v7-func__ic{ width:52px; height:52px; margin:14px 0 14px; }
  .v7-funciones__cab{ margin-bottom:36px; }

  /* el cierre */
  .v7-cierre .botones{ flex-direction:column; align-items:stretch; max-width:340px; margin:0 auto; }
  .v7-cierre .botones .boton{ width:100%; }

  /* el pie: enlaces del tamaño de un dedo */
  .v7-pie__col h4{ font-size:.78rem; margin-bottom:6px; }
  .v7-pie__col a, .v7-pie__col span{ padding:10px 0; font-size:1rem; }
  .v7-pie__marca{ font-size:.78rem; }
  .v7-pie__lema{ font-size:.9rem; }
  .v7-pie__linea{ flex-direction:column; gap:8px; font-size:.86rem; margin-top:36px; }
  .v7-pie__linea a{ display:inline-block; padding:10px 4px; }

  /* Contacto: el botón del correo no se podía partir y sacaba la tarjeta
     por la derecha (la página medía 445 px en un móvil de 390) */
  .formulario{ min-width:0; max-width:100%; }
  .formulario .boton{ white-space:normal; text-align:center; }
  .formulario .boton span{ overflow-wrap:anywhere; }
}
@media (max-width:420px){
  .formulario .boton[data-enlace="email"]{ font-size:.84rem; gap:8px; padding-left:12px; padding-right:12px; }
}
@media (max-width:400px){
  .formulario .boton{ font-size:.95rem; padding-left:16px; padding-right:16px; }
  .v7-app__pestanas button{ padding:11px 6px 14px; font-size:.78rem; }
}
@media (max-width:760px){
  /* el botón del menú: de 27 px de alto a 44 */
  .hamburguesa{ min-width:44px; min-height:44px; padding:12px 10px; }
  /* la ventana del programa: nada por debajo de 12 px */
  .v7-kpis span, .v7-vista h5, .v7-av{ font-size:.76rem; }
  /* el recorrido y el taller: un punto más de letra y botones pulsables */
  .desktop-app span, .desktop-app{ font-size:11px !important; }
  .cinema-bar > div > span{ font-size:11px !important; }
  .cinema-options button{ font-size:12px !important; }
  .taller__boton{ min-height:42px; min-width:42px; }
  /* Quién está detrás: la foto, centrada */
  .persona .retrato{ margin-left:auto; margin-right:auto; }
}
