/* Cliente Incógnito / Mystery Shopping — CiberCEO de Hoy en Día
   Estilos de la página (efectos inspirados en interfaces editoriales oscuras).
   Todo está acotado al contenedor .ci para no afectar el resto del sitio. */
.ci{
  --ci-bg:#000c1e; --ci-bg-2:#03142e; --ci-bg-3:#071d40;
  --ci-ink:#ffffff; --ci-soft:#b8c7dc; --ci-dim:#7d8fab;
  --ci-acc:#11c7e6; --ci-acc-2:#1474c4; --ci-warn:#ff8a3d;
  --ci-line:rgba(184,199,220,.16);
  --ci-font:"Overpass",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --ci-max:1180px;
  background:var(--ci-bg); color:var(--ci-ink); font-family:var(--ci-font);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.ci *,.ci *::before,.ci *::after{box-sizing:border-box}
.ci a{color:inherit}
.ci img,.ci video{max-width:100%;display:block}
.ci-wrap{width:100%;max-width:var(--ci-max);margin:0 auto;padding:0 20px}
.ci :focus-visible{outline:2px solid var(--ci-acc);outline-offset:3px;border-radius:4px}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Barra de progreso y cursor ---------- */
.ci-progress{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--ci-acc-2),var(--ci-acc));z-index:60;pointer-events:none}
.ci-ball{position:fixed;left:0;top:0;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--ci-acc);mix-blend-mode:difference;pointer-events:none;z-index:70;opacity:0;transition:width .25s,height .25s,margin .25s,opacity .3s,background .25s}
.ci-ball.on{opacity:.9}
.ci-ball.big{width:56px;height:56px;margin:-28px 0 0 -28px;background:#fff;opacity:.85}
@media (pointer:coarse){.ci-ball{display:none}}

/* ---------- Precargador (solo primera visita de la sesión, máx. ~0.9 s) ---------- */
.ci-pre{position:fixed;inset:0;z-index:90;background:var(--ci-bg);display:none;align-items:center;justify-content:center;transition:opacity .45s ease,visibility .45s}
html.ci-pre-on .ci-pre{display:flex}
html.ci-pre-done .ci-pre{opacity:0;visibility:hidden}
.ci-pre p{margin:0;display:flex;gap:.6em;font-size:clamp(1.1rem,3vw,1.8rem);font-weight:300;letter-spacing:.02em;color:var(--ci-soft)}
.ci-pre p span{opacity:0;transform:translateY(12px);animation:ciPreIn .5s cubic-bezier(.2,.7,.2,1) forwards}
.ci-pre p span:nth-child(2){animation-delay:.12s}.ci-pre p span:nth-child(3){animation-delay:.24s;color:var(--ci-acc);font-weight:700}
@keyframes ciPreIn{to{opacity:1;transform:none}}

/* ---------- Héroe con video ---------- */
.ci-hero{position:relative;min-height:min(92vh,860px);display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;padding:120px 0 64px}
.ci-hero video,.ci-hero .ci-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ci-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(0,12,30,.55) 0%,rgba(0,12,30,.35) 35%,rgba(0,12,30,.92) 82%,var(--ci-bg) 100%),
  radial-gradient(80% 60% at 15% 85%,rgba(17,199,230,.18),transparent 60%)}
.ci-hero .ci-grid-bg{position:absolute;inset:0;z-index:-1;opacity:.18;background-image:linear-gradient(var(--ci-line) 1px,transparent 1px),linear-gradient(90deg,var(--ci-line) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(180deg,transparent,#000 40%,transparent)}
.ci-crumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 22px;padding:0;font-size:.82rem;color:var(--ci-soft)}
.ci-crumb li+li::before{content:"/";margin-right:8px;color:var(--ci-dim)}
.ci-crumb a{text-decoration:none}.ci-crumb a:hover{color:var(--ci-acc)}
.ci-eyebrow{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ci-acc);margin:0 0 18px}
.ci-h1{margin:0 0 22px;font-size:clamp(2.3rem,6.4vw,5.2rem);line-height:.98;letter-spacing:-.03em;max-width:15ch}
.ci-h1 span{display:block;font-weight:800}
.ci-h1 em{display:block;font-style:normal;font-weight:300;color:var(--ci-soft)}
.ci-rot{display:inline-grid;vertical-align:bottom;color:var(--ci-acc);font-weight:700}
.ci-rot b{grid-area:1/1;font-weight:inherit;opacity:0;transform:translateY(.4em);transition:opacity .5s,transform .5s}
.ci-rot b.on{opacity:1;transform:none}
.ci-rotline{font-size:clamp(1.1rem,2vw,1.4rem);font-weight:300;color:#e6eef8;margin:0 0 12px}
.ci-lead{font-size:clamp(1.02rem,1.6vw,1.22rem);line-height:1.6;color:var(--ci-soft);max-width:62ch;margin:0 0 30px}
.ci-cta{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.ci-btn{display:inline-flex;align-items:center;gap:12px;font-weight:800;font-size:.86rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:16px 26px;border-radius:999px;background:var(--ci-acc);color:#001b41;border:0;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s}
.ci-btn:hover{box-shadow:0 10px 30px rgba(17,199,230,.35);background:#5ad9ef}
.ci-btn svg{width:18px;height:18px;transition:transform .25s}
.ci-btn:hover svg{transform:translateX(4px)}
.ci-link{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:6px 0;border-bottom:1px solid var(--ci-line);transition:border-color .25s,color .25s}
.ci-link:hover{color:var(--ci-acc);border-color:var(--ci-acc)}
.ci-badges{display:flex;flex-wrap:wrap;gap:10px;margin:34px 0 0;padding:0;list-style:none}
.ci-badges li{font-size:.8rem;color:var(--ci-soft);border:1px solid var(--ci-line);border-radius:999px;padding:8px 14px;background:rgba(0,12,30,.45)}
.ci-badges li::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ci-acc);margin-right:8px;vertical-align:middle}

/* ---------- Secciones ---------- */
.ci-sec{padding:clamp(64px,9vw,120px) 0;border-top:1px solid var(--ci-line)}
.ci-sec.alt{background:var(--ci-bg-2)}
.ci-h2{font-size:clamp(1.8rem,4vw,3.1rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 18px;max-width:20ch}
.ci-h2 em{font-style:normal;font-weight:300;color:var(--ci-soft)}
.ci-p{color:var(--ci-soft);line-height:1.7;font-size:1.05rem;max-width:68ch;margin:0 0 16px}
.ci-two{display:grid;gap:40px}
@media (min-width:900px){.ci-two{grid-template-columns:1fr 1fr;gap:72px;align-items:start}.ci-two>div:first-child{position:sticky;top:100px}}
.ci-answer{border-left:3px solid var(--ci-acc);padding:6px 0 6px 22px;font-size:1.15rem;line-height:1.7;color:#e6eef8;margin:0 0 20px}
.ci-answer strong{color:#fff}
.ci-aka{font-size:.92rem;color:var(--ci-dim);line-height:1.7}
.ci-aka b{color:var(--ci-soft);font-weight:600}

/* Lista numerada estilo editorial */
.ci-rows{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--ci-line);counter-reset:r}
.ci-rows>li{display:grid;grid-template-columns:48px 1fr;gap:6px 18px;padding:24px 0;border-bottom:1px solid var(--ci-line);counter-increment:r;transition:background .3s,padding .3s}
.ci-rows>li::before{content:counter(r,decimal-leading-zero);font-size:.8rem;font-weight:700;color:var(--ci-warn);padding-top:6px;grid-row:span 2}
.ci-rows h3{margin:0;font-size:1.18rem;font-weight:700}
.ci-rows p{margin:0;color:var(--ci-soft);line-height:1.6}
.ci-rows .tag{display:inline-block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ci-acc);margin-left:8px;font-weight:700}
@media (hover:hover){.ci-rows>li:hover{background:linear-gradient(90deg,rgba(17,199,230,.07),transparent);padding-left:12px}}
@media (min-width:900px){.ci-rows.wide>li{grid-template-columns:64px minmax(200px,.8fr) 1.4fr;align-items:baseline}.ci-rows.wide>li::before{grid-row:auto}}

/* Tarjetas */
.ci-cards{display:grid;gap:18px;margin-top:34px}
@media (min-width:700px){.ci-cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1050px){.ci-cards.c3{grid-template-columns:repeat(3,1fr)}}
.ci-card{position:relative;border:1px solid var(--ci-line);border-radius:16px;padding:28px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0));overflow:hidden;transition:border-color .3s,transform .3s}
.ci-card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%),rgba(17,199,230,.14),transparent 40%);opacity:0;transition:opacity .3s;pointer-events:none}
.ci-card:hover{border-color:rgba(17,199,230,.45)}
.ci-card:hover::before{opacity:1}
.ci-card h3{margin:0 0 10px;font-size:1.15rem}
.ci-card p,.ci-card li{color:var(--ci-soft);line-height:1.6;font-size:.98rem}
.ci-card ul{margin:10px 0 0;padding-left:18px}
.ci-card .k{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ci-acc);font-weight:800;margin:0 0 12px;display:block}
.ci-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(17,199,230,.12);color:var(--ci-acc);margin-bottom:16px}
.ci-ico svg{width:22px;height:22px}

/* Línea de tiempo */
.ci-time{display:grid;gap:18px;margin-top:34px}
@media (min-width:900px){.ci-time{grid-template-columns:repeat(3,1fr)}}
.ci-time>div{border-top:2px solid var(--ci-acc);padding-top:20px}
.ci-time .w{font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ci-acc)}
.ci-time h3{margin:8px 0 10px;font-size:1.25rem}
.ci-time p{color:var(--ci-soft);line-height:1.6;margin:0 0 10px}
.ci-time .out{font-size:.92rem;color:#e6eef8}

/* Escala de evaluación */
.ci-scale{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.ci-scale span{border:1px solid var(--ci-line);border-radius:10px;padding:10px 14px;font-weight:700;font-size:.9rem}
.ci-scale span:nth-child(1){border-color:rgba(18,131,63,.7);color:#7be0a2}
.ci-scale span:nth-child(2){border-color:rgba(192,38,45,.7);color:#ff9aa0}
.ci-quote{font-size:clamp(1.4rem,3vw,2.2rem);line-height:1.25;font-weight:300;margin:0;color:#e6eef8;max-width:28ch}
.ci-quote b{font-weight:800;color:var(--ci-acc)}

/* Marquesina de palabras clave (decorativa) */
.ci-marquee{overflow:hidden;border-block:1px solid var(--ci-line);padding:22px 0;background:var(--ci-bg-2)}
.ci-marquee div{display:flex;gap:48px;width:max-content;animation:ciMarq 38s linear infinite;font-size:clamp(1.3rem,3vw,2.2rem);font-weight:300;color:var(--ci-dim);white-space:nowrap}
.ci-marquee span::after{content:"✦";color:var(--ci-acc);margin-left:48px;font-size:.6em;vertical-align:middle}
@keyframes ciMarq{to{transform:translateX(-50%)}}

/* FAQ */
.ci-faq{margin-top:28px;border-top:1px solid var(--ci-line)}
.ci-faq details{border-bottom:1px solid var(--ci-line)}
.ci-faq summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-weight:700;font-size:1.08rem;position:relative}
.ci-faq summary::-webkit-details-marker{display:none}
.ci-faq summary::after{content:"+";position:absolute;right:4px;top:16px;font-size:1.6rem;font-weight:300;color:var(--ci-acc);transition:transform .3s}
.ci-faq details[open] summary::after{transform:rotate(45deg)}
.ci-faq details p{margin:0 0 22px;color:var(--ci-soft);line-height:1.7;max-width:75ch}

/* Formulario */
.ci-form-wrap{border:1px solid var(--ci-line);border-radius:20px;padding:clamp(20px,4vw,40px);background:var(--ci-bg-3)}
.ci .form fieldset{border:0;margin:0;padding:0}
.ci .form legend{font-weight:800;margin-bottom:14px}
.ci .row-2{display:grid;gap:14px}
@media (min-width:700px){.ci .row-2{grid-template-columns:1fr 1fr}}
.ci .field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.ci .field label{font-size:.88rem;font-weight:600;color:var(--ci-soft)}
.ci .req{color:var(--ci-warn)}
.ci .form input[type=text],.ci .form input[type=email],.ci .form input[type=tel],.ci .form select,.ci .form textarea{width:100%;font:inherit;font-size:16px;color:#fff;background:rgba(0,12,30,.7);border:1px solid var(--ci-line);border-radius:10px;padding:13px 14px;transition:border-color .2s,box-shadow .2s}
.ci .form select option{color:#001b41}
.ci .form textarea{min-height:140px;resize:vertical}
.ci .form input:focus,.ci .form select:focus,.ci .form textarea:focus{outline:none;border-color:var(--ci-acc);box-shadow:0 0 0 3px rgba(17,199,230,.2)}
.ci .form [aria-invalid=true]{border-color:#ff6b72}
.ci .check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--ci-soft);line-height:1.5;margin:6px 0 18px}
.ci .check input{margin-top:4px;width:18px;height:18px;accent-color:var(--ci-acc);flex:none}
.ci .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ci .alert{padding:12px 14px;border-radius:10px;margin:0 0 14px;font-size:.95rem}
.ci .alert-err{background:rgba(192,38,45,.15);border:1px solid rgba(192,38,45,.6)}
.ci .alert-ok{background:rgba(18,131,63,.15);border:1px solid rgba(18,131,63,.6)}
.ci-conf{display:flex;gap:12px;align-items:flex-start;font-size:.9rem;color:var(--ci-soft);line-height:1.55;margin:18px 0 0}
.ci-conf svg{flex:none;width:20px;height:20px;color:var(--ci-acc);margin-top:2px}

/* Fuentes */
.ci-src{font-size:.88rem;color:var(--ci-dim);line-height:1.7;padding-left:18px}
.ci-src a{color:var(--ci-soft)}

/* Revelado al hacer scroll (solo si JS activo) */
.js-fx [data-r]{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.js-fx [data-r].in{opacity:1;transform:none}
.js-fx [data-r="2"]{transition-delay:.12s}.js-fx [data-r="3"]{transition-delay:.24s}

/* Efecto glitch breve en el titular (una vez) */
.ci-glitch{position:relative}
.ci-glitch.go::before,.ci-glitch.go::after{content:attr(data-t);position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ci-glitch.go::before{color:var(--ci-acc);transform:translate(-2px,0);clip-path:inset(0 0 55% 0);animation:ciGl .6s steps(4) 2}
.ci-glitch.go::after{color:var(--ci-warn);transform:translate(2px,0);clip-path:inset(55% 0 0 0);animation:ciGl .6s steps(4) reverse 2}
@keyframes ciGl{0%{transform:translate(0)}25%{transform:translate(-3px,1px)}50%{transform:translate(3px,-1px)}75%{transform:translate(-1px,2px)}100%{transform:translate(0)}}

@media (prefers-reduced-motion:reduce){
  .ci *{animation:none!important;transition:none!important}
  .js-fx [data-r]{opacity:1;transform:none}
  .ci-marquee div{transform:none}
}
@media print{.ci{background:#fff;color:#000}.ci-hero video,.ci-ball,.ci-progress,.ci-pre,.ci-marquee{display:none!important}.ci{background:#fff;color:#000}}

/* Ajustes de integración con site.css */
.ci h2,.ci h3{color:inherit}
.ci .ci-hero{margin-top:0}
main#contenido:has(> .ci){background:#000c1e}
.ci .ci-rel{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.ci .ci-note{margin-top:24px}
.ci .ci-mail{margin-top:18px}
.ci .ci-crumb li[aria-current]{color:#fff}
.ci .form fieldset{background:transparent;padding:0;border:0;box-shadow:none;border-radius:0}
.ci .form legend{color:#fff;font-size:1rem;padding:0}
.ci .form{background:transparent;box-shadow:none;padding:0;border:0}

/* ---------- v2 (31 oct 2026): cifras, canales, dimensiones, para quién, inversión, pasos ---------- */
.ci-stats-sec{border-top:1px solid var(--ci-line);border-bottom:1px solid var(--ci-line);background:var(--ci-bg-2)}
.ci-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
.ci-stats>div{padding:26px 14px;border-left:1px solid var(--ci-line)}
.ci-stats>div:nth-child(odd){border-left:0}
.ci-stats b{display:block;font-size:clamp(1.6rem,4.2vw,2.6rem);font-weight:800;line-height:1.05;color:var(--ci-acc);letter-spacing:-.01em}
.ci-stats span{display:block;margin-top:8px;color:var(--ci-soft);font-size:.9rem;line-height:1.45}
@media (min-width:900px){.ci-stats{grid-template-columns:repeat(4,1fr)}.ci-stats>div{padding:34px 24px}.ci-stats>div:nth-child(odd){border-left:1px solid var(--ci-line)}.ci-stats>div:first-child{border-left:0}}
.ci-h3{margin:30px 0 4px;font-size:1.25rem;line-height:1.3}
.ci-h3 em{font-style:normal;color:var(--ci-acc)}
@media (min-width:1050px){.ci-cards.c4{grid-template-columns:repeat(4,1fr)}}
.ci-dl{list-style:none;margin:6px 0 0;padding:0!important}
.ci-dl li{position:relative;padding:10px 0 10px 26px;border-top:1px solid var(--ci-line)}
.ci-dl li:first-child{border-top:0}
.ci-dl li::before{content:"";position:absolute;left:2px;top:17px;width:9px;height:9px;border-radius:2px;background:var(--ci-acc);transform:rotate(45deg)}
.ci-fit ul{list-style:none;padding:0!important}
.ci-fit li{position:relative;padding:9px 0 9px 30px}
.ci-fit li::before{position:absolute;left:0;top:8px;font-weight:800}
.ci-fit.yes li::before{content:"✓";color:#7be0a2}
.ci-fit.no li::before{content:"✕";color:#ff9aa0}
.ci-fit.no{border-color:rgba(255,154,160,.22)}
.ci-price{margin:20px 0 22px;font-size:clamp(1.5rem,3.6vw,2.2rem);font-weight:800;color:var(--ci-ink)}
.ci-price small{display:block;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ci-acc);font-weight:800;margin-bottom:4px}
@media (min-width:900px){.ci-steps{grid-template-columns:repeat(4,1fr)}}
