
/* ============================================================
   OCIRIA · HOME pública — ACABADO LOVART (densidad · profundidad · glow)
   POLARIS · 25-jun-2026 · reskin de calidad sobre la base i18n (7 idiomas,
   RTL, logo oficial, claro/oscuro intactos). Tokens var(--) → portable Next.js 16.
   Lenguaje visual cosechado de mi panel FIEL (anillo con halo, gráficas área+barras,
   hexágonos luminosos, tarjetas navy con borde-glow). Indistinguible de home_01..07.
   ============================================================ */

/* ---------- MARCA ---------- */
:root{ --brand-teal:#00C2A8; --brand-teal-light:#0E9C7E; }

/* ============ MODO OSCURO (por defecto) ============ */
:root{
  --bg:#05101d; --bg-grad-1:#0a1828; --bg-elev:#070f1b;
  --bg-card:#0e1a29; --bg-card-top:#16263a; --bg-card-2:#13202f; --bg-inset:#0a1626;
  --border-color:#1d2d40; --border-soft:#162536; --border-glow:rgba(22,224,196,.26);
  --text-primary:#eef5fc; --text-secondary:#a6b8cb; --text-muted:#60728a;
  --accent:#16e0c4; --accent-hover:#00D4B8; --accent-2:#089a85; --accent-soft:#3ff2d9;
  --accent-glow:rgba(22,224,196,.34); --accent-fill:rgba(22,224,196,.13); --accent-faint:rgba(0,194,168,.08);
  --ok:#2fe6a6; --ok-bg:rgba(47,230,166,.12);
  --warn:#ffc24b; --warn-bg:rgba(255,194,75,.13);
  --crit:#fb5e54; --crit-bg:rgba(251,94,84,.13); --crit-glow:rgba(251,94,84,.30);
  --info:#5fa2ff; --info-bg:rgba(95,162,255,.12);
  --ring-track:#15273a;
  --shadow:0 30px 80px -34px rgba(0,0,0,.9);
  --shadow-card:0 20px 50px -34px rgba(0,0,0,.8);
  --r-xs:8px; --r-sm:11px; --r-md:14px; --r-lg:18px; --r-xl:22px; --r-pill:999px;
  --mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --fw-regular:500; --fw-semibold:600; --fw-bold:700; --fw-black:800;
  --maxw:1200px;
}

/* ============ MODO CLARO ============ */
[data-theme="light"]{
  --bg:#eaeff5; --bg-grad-1:#f3f7fb; --bg-elev:#ffffff;
  --bg-card:#ffffff; --bg-card-top:#ffffff; --bg-card-2:#f5f9fc; --bg-inset:#eef3f8;
  --border-color:#dde6ef; --border-soft:#e9eff6; --border-glow:rgba(10,141,124,.20);
  --text-primary:#0b1620; --text-secondary:#42566a; --text-muted:#7a8b9d;
  --accent:#0a8d7c; --accent-hover:#00C2A8; --accent-2:#00C2A8; --accent-soft:#0a8d7c;
  --accent-glow:rgba(10,141,124,.16); --accent-fill:rgba(10,141,124,.10); --accent-faint:rgba(10,141,124,.07);
  --ok:#0f9d6b; --ok-bg:rgba(15,157,107,.10);
  --warn:#c98a00; --warn-bg:rgba(201,138,0,.12);
  --crit:#dc3a52; --crit-bg:rgba(220,58,82,.09); --crit-glow:rgba(220,58,82,.16);
  --info:#2e6fe0; --info-bg:rgba(46,111,224,.10);
  --ring-track:#e2eaf2;
  --shadow:0 20px 56px -30px rgba(20,40,70,.40);
  --shadow-card:0 14px 38px -28px rgba(20,40,70,.30);
}

/* ---------- reset / base ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans); background:var(--bg); color:var(--text-primary);
  font-weight:var(--fw-regular); line-height:1.55; -webkit-font-smoothing:antialiased;
  overflow-x:hidden; position:relative;
  background-image:
    radial-gradient(1200px 680px at 80% -10%, rgba(22,224,196,.13), transparent 58%),
    radial-gradient(1000px 700px at 6% 104%, rgba(22,224,196,.07), transparent 60%),
    linear-gradient(180deg,var(--bg-grad-1),var(--bg) 30%);
  background-attachment:fixed;
}
[data-theme="light"] body{
  background-image:
    radial-gradient(1200px 680px at 80% -10%, rgba(10,141,124,.12), transparent 58%),
    radial-gradient(1000px 700px at 6% 104%, rgba(10,141,124,.06), transparent 60%),
    linear-gradient(180deg,var(--bg-grad-1),var(--bg) 30%);
}
/* rejilla de puntos sutil (firma Lovart) · sólo decorativa, sin filtros */
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(circle, var(--border-color) 1px, transparent 1.4px);
  background-size:34px 34px;opacity:.22;
  -webkit-mask-image:radial-gradient(1100px 760px at 50% 24%, #000, transparent 78%);
          mask-image:radial-gradient(1100px 760px at 50% 24%, #000, transparent 78%);
}
[data-theme="light"] body::before{opacity:.5}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
.tl{color:var(--accent)}
.ocir-ia{color:var(--brand-teal)}
[data-theme="light"] .ocir-ia{color:var(--brand-teal-light)}
:where(html[dir="rtl"]) .flip{transform:scaleX(-1)}
.tnum{font-variant-numeric:tabular-nums}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:24px;position:relative;z-index:1}
main{position:relative;z-index:1}
.eyebrow{display:inline-flex;align-items:center;gap:13px;
  font-size:11.5px;font-weight:var(--fw-bold);letter-spacing:3px;text-transform:uppercase;
  color:var(--accent)}
.eyebrow::before,.eyebrow.center::after{content:"";width:38px;height:1px;background:linear-gradient(90deg,transparent,var(--accent));opacity:.7}
.eyebrow.center::before{background:linear-gradient(90deg,var(--accent),transparent)}
.eyebrow .num{color:var(--text-muted);letter-spacing:1px;font-family:var(--mono)}
.section{padding:clamp(44px,5.6vw,78px) 0;position:relative}
.sec-head{text-align:center;max-width:780px;margin-inline:auto;margin-bottom:38px}
.sec-head .eyebrow{justify-content:center;margin-bottom:20px}
h2.title{font-size:clamp(28px,3.6vw,42px);font-weight:var(--fw-black);letter-spacing:-.5px;line-height:1.03}
.sec-head .sub{margin-top:17px;color:var(--text-secondary);font-size:clamp(15px,1.7vw,18px);line-height:1.55}

.topline{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;
  background:linear-gradient(90deg,transparent, var(--accent), transparent);opacity:.7}

/* ====================== HEADER ====================== */
header.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,border-color .3s,backdrop-filter .3s}
header.nav.scrolled{background:color-mix(in srgb,var(--bg) 82%, transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color)}
.nav-in{display:flex;align-items:center;gap:18px;height:72px}
.brand{display:flex;align-items:center;gap:12px}
.mk{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;filter:drop-shadow(0 4px 16px var(--accent-glow))}
.mk svg{width:38px;height:38px}
.brand .bt{font-size:21px;font-weight:var(--fw-black);letter-spacing:1.5px;line-height:1}
.brand .bs{font-size:10.5px;color:var(--text-muted);letter-spacing:1.4px;text-transform:uppercase;margin-top:2px}
nav.links{display:flex;gap:6px;margin-inline-start:auto}
nav.links a{padding:9px 13px;border-radius:var(--r-sm);font-size:14px;color:var(--text-secondary);font-weight:var(--fw-semibold);transition:color .2s,background .2s}
nav.links a:hover{color:var(--text-primary);background:var(--accent-faint)}
.nav-tools{display:flex;align-items:center;gap:8px}
.icon-btn{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--r-sm);
  border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:.2s}
.icon-btn:hover{color:var(--accent);border-color:var(--border-glow)}
.icon-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}
.lang{position:relative}
.lang-btn{display:flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:var(--r-sm);
  border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:13px;font-weight:var(--fw-bold)}
.lang-btn:hover{color:var(--accent);border-color:var(--border-glow)}
.lang-btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2}
.lang-menu{position:absolute;inset-inline-end:0;top:46px;min-width:188px;max-height:340px;overflow-y:auto;background:var(--bg-card);
  border:1px solid var(--border-color);border-radius:var(--r-md);box-shadow:var(--shadow);padding:6px;display:none;z-index:80}
.lang-menu.open{display:block}
.lang-menu button{display:flex;width:100%;gap:9px;align-items:center;padding:9px 11px;border:0;background:none;color:var(--text-secondary);
  border-radius:var(--r-xs);cursor:pointer;font:inherit;font-size:13.5px;font-weight:var(--fw-semibold);text-align:start}
.lang-menu button:hover{background:var(--accent-faint);color:var(--text-primary)}
.lang-menu button[aria-current="true"]{color:var(--accent)}
.lang-menu button[aria-current="true"] .lc{border-color:var(--accent);color:var(--accent)}
.lang-menu .fl{font-size:15px;line-height:1}
.lang-menu .lc{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:1px 5px;border:1px solid var(--border-color);
  border-radius:var(--r-xs);font-size:11px;font-weight:var(--fw-bold);letter-spacing:.4px;color:var(--text-secondary)}
.lang-menu .ln{flex:1}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;border:0;font:inherit;
  font-weight:var(--fw-bold);font-size:14.5px;padding:12px 20px;border-radius:var(--r-pill);transition:transform .18s,box-shadow .25s,background .2s;white-space:nowrap}
.btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2.2}
.btn-primary{background:linear-gradient(180deg,#4ff5dd 0%,var(--accent) 46%,var(--accent-2) 100%);color:#03130f;
  box-shadow:0 16px 38px -10px var(--accent-glow), inset 0 2px 0 rgba(255,255,255,.55), inset 0 -4px 9px rgba(0,46,38,.40);
  text-shadow:0 1px 0 rgba(255,255,255,.3);font-weight:var(--fw-black)}
.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 22px 54px -10px var(--accent-glow), inset 0 2px 0 rgba(255,255,255,.6), inset 0 -4px 9px rgba(0,46,38,.4)}
.btn-ghost{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}
.btn-ghost:hover{border-color:var(--border-glow);transform:translateY(-2px)}
.btn-lg{padding:18px 38px;font-size:16.5px}
.hamburger{display:none}

/* ====================== HERO (home_01) ====================== */
.hero{padding-top:138px;padding-bottom:74px;position:relative}
.hero-grid{display:grid;grid-template-columns:.86fr 1.28fr;gap:40px;align-items:start}
.hero h1{font-size:clamp(32px,4.2vw,48px);font-weight:var(--fw-black);letter-spacing:-1px;line-height:1.05}
.hero .sub{margin-top:20px;color:var(--text-secondary);font-size:clamp(14px,1.55vw,16.5px);max-width:500px;line-height:1.6}
.hero-fig{width:112%;margin-inline-start:-6%}
.hero-cta{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px;max-width:none}
@media(max-width:900px){.trust{grid-template-columns:repeat(2,1fr)}}
.trust .ti{display:flex;align-items:center;gap:13px;background:linear-gradient(150deg,var(--bg-card-top),var(--bg-card));
  border:1px solid var(--border-color);border-radius:var(--r-md);padding:13px 15px;box-shadow:var(--shadow-card)}
.trust .ti .ic{width:42px;height:42px;flex:0 0 auto;border-radius:var(--r-sm);display:grid;place-items:center;
  background:radial-gradient(circle at 50% 38%,var(--accent-faint),transparent 72%);border:1px solid var(--border-glow);color:var(--accent);
  box-shadow:inset 0 0 14px -6px var(--accent-glow)}
.trust .ti .ic svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7}
.trust .ti span{font-size:13px;color:var(--text-secondary);line-height:1.32;font-weight:var(--fw-semibold)}

/* ---- maqueta dashboard DENSO "Protegido" (reusa lenguaje del panel FIEL) ---- */
.mock{background:
    radial-gradient(520px 320px at 14% 10%, var(--accent-faint), transparent 60%),
    linear-gradient(155deg,var(--bg-card-top),var(--bg-card) 52%);
  border:1px solid var(--border-glow);border-radius:var(--r-xl);box-shadow:var(--shadow), 0 0 80px -50px var(--accent-glow);
  padding:16px;position:relative;overflow:hidden}
.mock::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(150deg,var(--accent-glow),transparent 42%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.mock-top{display:flex;align-items:center;gap:8px;padding:5px 7px 13px}
.mock-top .dot{width:9px;height:9px;border-radius:50%;background:var(--border-color)}
.mock-top .dot:first-child{background:#fb5e54;opacity:.6}.mock-top .dot:nth-child(2){background:#ffc24b;opacity:.6}.mock-top .dot:nth-child(3){background:#2fe6a6;opacity:.6}
.mock-top .mt{margin-inline-start:9px;font-size:12px;color:var(--text-secondary);font-weight:var(--fw-bold);letter-spacing:.3px}
.mock-top .live{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;font-size:10.5px;color:var(--ok);font-weight:var(--fw-bold);
  background:var(--ok-bg);padding:4px 9px;border-radius:var(--r-pill)}
.mock-top .live .d{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 var(--ok);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(47,230,166,.5)}70%{box-shadow:0 0 0 8px rgba(47,230,166,0)}100%{box-shadow:0 0 0 0 rgba(47,230,166,0)}}
.mock-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.mk-card{background:var(--bg-card-2);border:1px solid var(--border-soft);border-radius:var(--r-md);position:relative;overflow:hidden}
.mk-card.span2{grid-column:1 / -1}
.mk-cap{display:flex;align-items:center;justify-content:space-between;padding:11px 13px 0;font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.7px;font-weight:var(--fw-bold)}
.mk-cap .up{color:var(--ok);font-family:var(--mono);font-size:10px}
/* anillo con halo (como FIEL) */
.mk-ring{display:flex;align-items:center;gap:16px;padding:15px 16px}
.mk-ring .rwrap{position:relative;width:118px;height:118px;flex:0 0 118px}
.mk-ring .rhalo{position:absolute;inset:14px;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 64%);filter:blur(14px)}
.mk-ring svg{width:118px;height:118px;transform:rotate(-90deg);position:relative;z-index:2}
.mk-ring svg .arc{filter:drop-shadow(0 0 6px var(--accent-glow))}
.mk-ring .rc{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3}
.mk-ring .rc .pr{font-size:34px;font-weight:var(--fw-black);letter-spacing:-1.5px;line-height:1;text-shadow:0 0 18px var(--accent-glow)}
.mk-ring .rc .st{font-size:8.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-top:3px}
.mk-ring .rinfo{flex:1;min-width:0}
.mk-ring .rtag{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--ok);background:var(--ok-bg);padding:4px 9px;border-radius:var(--r-pill);font-weight:var(--fw-bold)}
.mk-ring .rtag svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:3;transform:none}
.mk-ring .rlist{margin-top:11px;display:flex;flex-direction:column;gap:8px}
.mk-ring .rli{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-secondary)}
.mk-ring .rli .ck{width:16px;height:16px;border-radius:5px;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;flex:0 0 16px}
.mk-ring .rli .ck svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:3}
.mk-ring .rli b{margin-inline-start:auto;font-family:var(--mono);color:var(--text-primary);font-weight:var(--fw-bold)}
/* kpi mini con sparkbars */
.mk-kpi{padding:11px 13px 13px}
.mk-kpi .v{font-size:27px;font-weight:var(--fw-black);line-height:1;margin-top:7px;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.mk-kpi .v .d{font-size:11px;color:var(--ok);font-weight:var(--fw-bold);margin-inline-start:6px}
.mk-kpi .spark{display:flex;align-items:flex-end;gap:3px;height:30px;margin-top:10px}
.mk-kpi .spark i{flex:1;background:linear-gradient(180deg,var(--accent-soft),var(--accent-2));opacity:.55;border-radius:2px 2px 0 0;box-shadow:0 0 8px -3px var(--accent-glow)}
.mk-kpi .spark i:last-child{opacity:1}
/* gráfica de área */
.mk-area{padding:6px 4px 4px}
.mk-area svg{width:100%;height:74px;display:block;overflow:visible}
/* barras */
.mk-bars{display:flex;align-items:flex-end;gap:6px;height:74px;padding:12px 14px}
.mk-bars i{flex:1;background:linear-gradient(180deg,var(--accent-soft),var(--accent-2));border-radius:3px 3px 0 0;opacity:.85;min-height:4px;box-shadow:0 0 10px -4px var(--accent-glow)}
.mk-bars i.pk{background:linear-gradient(180deg,#ff7a6c,var(--crit))}
/* pie KPIs */
.mk-foot{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:11px}
.mk-foot .c{background:var(--bg-card-2);border:1px solid var(--border-soft);border-radius:var(--r-sm);padding:11px 10px;position:relative}
.mk-foot .c .ci{width:24px;height:24px;border-radius:7px;background:var(--accent-faint);color:var(--accent);display:grid;place-items:center;margin-bottom:8px}
.mk-foot .c .ci svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2}
.mk-foot .c .n{font-size:15px;font-weight:var(--fw-black);font-variant-numeric:tabular-nums;line-height:1}
.mk-foot .c .t{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-top:3px}
/* panel de nodos luminosos (red) */
.mk-net{padding:8px 10px 12px}
.mk-net svg{width:100%;height:96px;display:block;overflow:visible}

/* ===== ESCANEO GRATIS (gancho concreto) ===== */
.s-scan{padding-top:clamp(30px,4vw,52px)}
.scan-card{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;background:linear-gradient(160deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-glow);border-radius:var(--r-lg);box-shadow:var(--shadow-card),0 0 70px -40px var(--accent-glow);padding:32px 34px}
.scan-left h2{font-size:clamp(28px,3.6vw,42px);font-weight:var(--fw-black);line-height:1.12;margin:14px 0 10px}
.scan-left p{color:var(--text-secondary);font-size:14.5px;line-height:1.55}
.scan-form{display:flex;gap:10px;margin:18px 0 8px;flex-wrap:wrap}
.scan-form input{flex:1;min-width:180px;background:var(--bg-inset);border:1px solid var(--border-color);border-radius:var(--r-sm);padding:13px 14px;color:var(--text-primary);font:inherit;font-size:14px}
.scan-form input::placeholder{color:var(--text-muted)}
.scan-note{font-size:12px;color:var(--text-muted)}
.scan-aup{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--text-secondary);margin:2px 0 8px;cursor:pointer;line-height:1.4}
.scan-aup input{margin-top:2px;accent-color:var(--accent);width:16px;height:16px;flex-shrink:0}
.scan-aup a{color:var(--accent);text-decoration:underline}
.scan-aup.aup-warn{outline:2px solid var(--warn);outline-offset:4px;border-radius:6px;transition:outline .2s}
.scan-ts{margin:4px 0 8px}
.scan-status{display:block;font-size:13px;color:var(--accent);min-height:18px;margin:2px 0 6px;font-weight:var(--fw-semibold)}
.rh-dot.rh-warn{background:var(--warn)}
.sr-loading{display:flex;align-items:center;gap:10px;padding:22px 16px;color:var(--text-secondary);font-size:13px}
.sr-spin{width:18px;height:18px;border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:scspin .7s linear infinite;flex-shrink:0}
@keyframes scspin{to{transform:rotate(360deg)}}
.sr-err{padding:16px;color:var(--warn);font-size:13px;line-height:1.5}
.sr-guide{padding:11px 15px;border-top:1px solid var(--border-soft);font-size:11.5px;color:var(--text-muted);line-height:1.5}
.sr-guide b{color:var(--text-secondary)}
.sr-up{padding:18px 16px}
.sr-up b{color:var(--text-primary);font-size:14px}
.sr-up p{margin:8px 0 14px;font-size:13px;color:var(--text-secondary);line-height:1.5}
.sr-up-cta{display:flex;gap:10px;flex-wrap:wrap}
.sr-up-cta .btn{font-size:13px;padding:9px 16px}
.sr-lead{display:flex;gap:8px;margin:4px 0 6px;flex-wrap:wrap}
.sr-lead input{flex:1;min-width:160px;background:var(--bg-inset);border:1px solid var(--border-color);border-radius:var(--r-sm);padding:11px 13px;color:var(--text-primary);font:inherit;font-size:13px}
.sr-lead input::placeholder{color:var(--text-muted)}
.sr-lead .btn{font-size:13px;padding:10px 16px;white-space:nowrap}
.sr-lead-st{font-size:12.5px;color:var(--accent);min-height:16px;margin-bottom:8px;font-weight:var(--fw-semibold)}
.sr-gate{margin-top:14px;padding:16px;border-top:1px solid var(--border-soft);background:var(--bg-inset);border-radius:0 0 var(--r-md,12px) var(--r-md,12px)}
.sr-gate-h{margin-bottom:12px}
.sr-gate-h b{display:block;color:var(--text-primary);font-size:14.5px;margin-bottom:4px}
.sr-gate-h span{display:block;font-size:12.5px;color:var(--text-secondary);line-height:1.5}
.sr-optin{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--text-secondary);line-height:1.45;cursor:pointer;margin:2px 0 4px}
.sr-optin input{margin-top:2px;accent-color:var(--accent);width:15px;height:15px;flex:0 0 auto}
.sr-gate-ok b{display:block;color:var(--accent);font-size:14px;margin-bottom:6px}
.sr-gate-ok p{margin:0 0 14px;font-size:13px;color:var(--text-secondary);line-height:1.5}
.sr-cta2{display:flex;gap:10px;flex-wrap:wrap}
.sr-cta2 .btn{font-size:13px;padding:10px 18px}
.btn-secondary{background:var(--bg-card);color:var(--accent);border:1.5px solid var(--accent);font-weight:var(--fw-semibold)}
.btn-secondary:hover{background:var(--accent);color:#03130f;transform:translateY(-2px)}
.scan-result{background:var(--bg-inset);border:1px solid var(--border-color);border-radius:var(--r-md);overflow:hidden}
.sr-head{display:flex;align-items:center;gap:8px;padding:11px 15px;border-bottom:1px solid var(--border-soft);font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--text-muted);font-weight:var(--fw-bold)}
.sr-head .rh-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok)}
.sr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:14px}
.sr-kpi{text-align:center;border-radius:var(--r-sm);padding:10px 6px}
.sr-kpi b{display:block;font-size:24px;font-weight:var(--fw-black);line-height:1}
.sr-kpi span{font-size:10px;color:var(--text-muted)}
.sr-kpi.crit b{color:var(--crit)} .sr-kpi.warn b{color:var(--warn)} .sr-kpi.ok b{color:var(--ok)}
.sr-rows{padding:0 14px 14px;display:flex;flex-direction:column;gap:7px}
.sr-row{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--text-secondary)}
.sr-row .badge{font-size:10px;font-weight:var(--fw-bold);padding:2px 7px;border-radius:var(--r-pill);text-transform:uppercase}
.sr-row .badge.crit{background:var(--crit-bg);color:var(--crit)} .sr-row .badge.warn{background:var(--warn-bg);color:var(--warn)}
@media(max-width:880px){.scan-card{grid-template-columns:1fr;gap:24px}.sr-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== PLANES (ofertas concretas) ===== */
.planes{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:start}
.plan{position:relative;display:flex;flex-direction:column;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);border-radius:var(--r-lg);padding:24px 22px}
.plan.featured{border-color:var(--border-glow);box-shadow:0 0 60px -32px var(--accent-glow)}
.plan-badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:linear-gradient(180deg,var(--accent),var(--accent-2));color:#04231f;font-size:10.5px;font-weight:var(--fw-black);padding:4px 12px;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.5px}
.plan-name{font-size:15px;font-weight:var(--fw-bold);color:var(--text-secondary)}
.plan-price{font-size:28px;font-weight:var(--fw-black);margin:8px 0 2px}
.plan-price small{font-size:13px;color:var(--text-muted);font-weight:var(--fw-semibold)}
.plan-desc{font-size:13px;color:var(--text-muted);margin-bottom:14px;min-height:34px}
.plan ul{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.plan ul li{font-size:13px;color:var(--text-secondary);padding-left:20px;position:relative;line-height:1.4}
.plan ul li::before{content:"\2713";position:absolute;left:0;color:var(--accent);font-weight:700}
.plan>ul{min-height:108px}
.plan-more{width:100%}
.plan-more summary::-webkit-details-marker{display:none}
.plan-more[open] summary{margin-bottom:2px}
.plan-more-list{display:flex;flex-direction:column;gap:4px}
.plan-more-list ul{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:6px}
.plan-more-list ul li{font-size:12px;color:var(--text-secondary);padding-left:18px;position:relative;line-height:1.45}
.plan-more-list ul li::before{content:"\2713";position:absolute;left:0;color:var(--accent);font-weight:700}
.pm-cat{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);font-weight:var(--fw-bold);margin:8px 0 3px}
.pm-cat.pm-lead{color:var(--accent);font-size:12px;text-transform:none;letter-spacing:0;margin:2px 0 6px}
/* Comparativa de planes */
.cmp-wrap{margin-top:34px}
.cmp-title{text-align:center;font-size:15px;font-weight:var(--fw-bold);color:var(--text-secondary);margin:0 0 14px;text-transform:uppercase;letter-spacing:.6px}
.cmp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cmp{min-width:720px;border:1px solid var(--border-color,#2a3550);border-radius:14px;overflow:hidden;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card))}
.cmp-head{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;position:sticky;top:0;z-index:2;background:var(--bg,#0b1220);border-bottom:1px solid var(--border-color,#2a3550)}
.cmp-ph{text-align:center;font-size:13px;font-weight:var(--fw-bold);color:var(--text-primary);padding:12px 8px}
.cmp-ph.cmp-pop{color:var(--accent,#00C2A8)}
.cmp-sec{border-top:1px solid var(--border-soft,#1e2c44)}
.cmp-sec>summary{cursor:pointer;list-style:none;padding:11px 14px;font-size:12px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.6px;color:var(--accent,#00C2A8);background:rgba(0,194,168,.05)}
.cmp-sec>summary::-webkit-details-marker{display:none}
.cmp-sec>summary::after{content:"\25be";float:inline-end;opacity:.6}
.cmp-sec[open]>summary::after{content:"\25b4"}
.cmp-row{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;border-top:1px solid var(--border-soft,#1e2c44);align-items:center}
.cmp-row>div{padding:9px 8px;text-align:center;font-size:12px;color:var(--text-secondary)}
.cmp-c0{text-align:start!important;color:var(--text-primary)!important}
.cmp-row>.cmp-pop,.cmp-head .cmp-pop{background:rgba(0,194,168,.06)}
.cmp-y{color:var(--accent,#00C2A8);font-weight:700}
.cmp-n{color:var(--text-muted,#64748b)}
.cmp-v{color:var(--text-primary);font-size:11.5px}
.plan .btn{width:100%;justify-content:center}
.planes-note{text-align:center;margin-top:22px;font-size:12.5px;color:var(--text-muted)}
@media(max-width:980px){.planes{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.planes{grid-template-columns:1fr}}

/* ===== UNIFICACIÓN: recorrido / auditoría / fases / recomendación ===== */
.anchor-offset{display:block;position:relative;top:-90px;visibility:hidden}
.recorrido{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rec-step{position:relative;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);border-radius:var(--r-lg);padding:22px 20px}
.rec-step .rec-n{font-family:var(--mono);font-size:13px;color:var(--accent);font-weight:var(--fw-bold);letter-spacing:2px}
.rec-step h3{font-size:18px;font-weight:var(--fw-bold);margin:8px 0}
.rec-step p{color:var(--text-muted);font-size:13.5px;line-height:1.55}
.rec-step::after{content:"\2192";position:absolute;right:-12px;top:50%;transform:translateY(-50%);color:var(--accent);font-weight:700;z-index:2}
.rec-step:last-child::after{display:none}
.audit-list{display:flex;flex-direction:column;gap:14px;max-width:980px;margin:0 auto}
.audit-card{display:flex;align-items:center;gap:20px;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);border-radius:var(--r-lg);padding:22px 24px;box-shadow:var(--shadow-card)}
.audit-card .audit-ic{flex:0 0 68px;width:68px;height:68px;display:grid;place-items:center}
.audit-card .audit-ic img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 14px var(--accent-glow))}
.audit-b h3{font-size:18px;font-weight:var(--fw-bold);margin:0 0 6px}
.audit-b p{color:var(--text-secondary);font-size:14px;line-height:1.55}
.fase-list{display:flex;flex-direction:column;gap:10px;max-width:900px;margin:0 auto}
.fase{display:flex;align-items:flex-start;gap:18px;background:var(--bg-card-2);border:1px solid var(--border-soft);border-radius:var(--r-md);padding:18px 20px}
.fase .fase-n{flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--accent-fill);color:var(--accent);font-weight:var(--fw-black);font-size:16px}
.fase-b h3{font-size:16px;font-weight:var(--fw-bold);margin:0 0 4px}
.fase-b p{color:var(--text-muted);font-size:13.5px;line-height:1.5}
.reco-card{max-width:780px;margin:0 auto;background:linear-gradient(160deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}
.reco-head{display:flex;align-items:center;gap:8px;padding:14px 20px;border-bottom:1px solid var(--border-soft);font-size:12px;font-weight:var(--fw-bold);letter-spacing:1px;text-transform:uppercase;color:var(--text-muted)}
.reco-head .rh-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok)}
.reco-sev{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px 20px}
.reco-sev .sev{text-align:center;border-radius:var(--r-sm);padding:12px}
.reco-sev .sev b{display:block;font-size:28px;font-weight:var(--fw-black);line-height:1}
.reco-sev .sev span{font-size:11.5px;text-transform:uppercase;letter-spacing:.5px}
.reco-sev .crit{background:var(--crit-bg);color:var(--crit)}
.reco-sev .warn{background:var(--warn-bg);color:var(--warn)}
.reco-sev .ok{background:var(--ok-bg);color:var(--ok)}
.reco-box{margin:0 20px 18px;padding:18px;border:1px solid var(--border-glow);border-radius:var(--r-md);background:var(--accent-faint)}
.reco-title{font-weight:var(--fw-bold);font-size:15.5px;margin-bottom:8px;color:var(--accent)}
.reco-box p{color:var(--text-secondary);font-size:14px;line-height:1.55}
.reco-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.reco-cta .btn{font-size:13.5px;padding:11px 18px}
.reco-guards{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:var(--text-muted)}
.reco-gate{padding:14px 20px;border-top:1px solid var(--border-soft);font-size:13px;color:var(--text-muted)}
.reco-gate b{color:var(--text-primary)}
@media(max-width:900px){.recorrido{grid-template-columns:repeat(2,1fr)}.rec-step::after{display:none}.audit-card{flex-direction:column;text-align:center}.reco-sev{grid-template-columns:1fr}}

/* ====================== SECCIÓN 2 · EL RUIDO (home_02) ====================== */
.s-problem .pg{display:grid;grid-template-columns:.82fr 1.18fr;gap:50px;align-items:stretch}
.s-problem .pg>.reveal:first-child{display:flex;flex-direction:column}
.s-problem .plist{flex:1 1 auto;justify-content:space-between}
.s-problem h2{font-size:clamp(28px,3.6vw,42px);font-weight:var(--fw-black);line-height:1.04;letter-spacing:-.5px}
.s-problem .lead{margin-top:15px;color:var(--text-secondary);font-size:17px;line-height:1.55}
.plist{margin-top:32px;display:flex;flex-direction:column;gap:14px}
.pitem{display:flex;gap:15px;align-items:flex-start;background:linear-gradient(150deg,var(--bg-card-top),var(--bg-card));
  border:1px solid var(--border-color);border-radius:var(--r-md);padding:15px 16px;box-shadow:var(--shadow-card);transition:border-color .25s,transform .25s}
.pitem:hover{border-color:var(--border-glow);transform:translateX(3px)}
.pitem .ic{width:46px;height:46px;flex:0 0 auto;border-radius:var(--r-sm);display:grid;place-items:center;
  background:radial-gradient(circle at 50% 38%,var(--accent-faint),transparent 72%);border:1px solid var(--border-glow);color:var(--accent);
  box-shadow:inset 0 0 16px -6px var(--accent-glow)}
.pitem .ic svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.7}
.pitem .pt{font-weight:var(--fw-bold);font-size:16px}
.pitem .pd{color:var(--text-muted);font-size:13.5px;margin-top:3px}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}
.cpanel{border:1px solid var(--border-color);border-radius:var(--r-lg);padding:20px;position:relative;overflow:hidden;
  display:flex;flex-direction:column;
  background:linear-gradient(160deg,var(--bg-card-top),var(--bg-card))}
.cpanel .cpill{margin-top:auto}
.cpanel.bad{border-color:rgba(251,94,84,.28);box-shadow:0 0 60px -36px var(--crit-glow)}
.cpanel.bad::before{content:"";position:absolute;inset:0;background:radial-gradient(360px 220px at 30% 0%,var(--crit-glow),transparent 62%);opacity:.5;pointer-events:none}
.cpanel.good{border-color:var(--border-glow);box-shadow:0 0 60px -30px var(--accent-glow)}
.cpanel.good::before{content:"";position:absolute;inset:0;background:radial-gradient(380px 240px at 60% -8%,var(--accent-glow),transparent 60%);opacity:.55;pointer-events:none}
.cpanel>*{position:relative;z-index:1}
.cpanel .ch{display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:var(--fw-bold);letter-spacing:1.2px;text-transform:uppercase}
.cpanel.bad .ch{color:var(--crit)} .cpanel.good .ch{color:var(--ok)}
.cpanel .chh{width:18px;height:18px;border-radius:6px;display:grid;place-items:center;flex:0 0 18px}
.cpanel.bad .chh{background:var(--crit-bg);color:var(--crit)} .cpanel.good .chh{background:var(--ok-bg);color:var(--ok)}
.cpanel .chh svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:3}
.cpanel .ct{font-size:15.5px;font-weight:var(--fw-bold);margin:5px 0 16px}
.alrow{display:flex;align-items:center;gap:11px;background:var(--bg-card-2);border:1px solid var(--border-soft);border-inline-start:3px solid var(--crit);
  border-radius:var(--r-sm);padding:11px 12px;margin-bottom:9px;font-size:12px;box-shadow:0 6px 18px -14px var(--crit-glow)}
.alrow .ai{width:28px;height:28px;border-radius:8px;background:var(--crit-bg);display:grid;place-items:center;flex:0 0 28px}
.alrow .ai svg{width:15px;height:15px;stroke:var(--crit);fill:none;stroke-width:2}
.alrow .at{font-weight:var(--fw-semibold)} .alrow .as{font-size:10.5px;color:var(--text-muted);margin-top:1px}
.alrow .atm{margin-inline-start:auto;color:var(--crit);font-size:10px;font-variant-numeric:tabular-nums;background:var(--crit-bg);padding:3px 7px;border-radius:6px;font-weight:var(--fw-bold)}
.cpill{margin-top:13px;text-align:center;font-size:11px;font-weight:var(--fw-bold);padding:9px;border-radius:var(--r-pill);display:flex;align-items:center;justify-content:center;gap:7px}
.cpanel.bad .cpill{background:var(--crit-bg);color:var(--crit)} .cpanel.good .cpill{background:var(--ok-bg);color:var(--ok)}
.cpill .pdot{width:7px;height:7px;border-radius:50%;background:currentColor}
/* panel "con OCIRIA": escudo grande con glow + métricas */
.shield-big{display:grid;place-items:center;padding:16px 0 20px;position:relative}
.shield-big .halo{position:absolute;top:8px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 64%);filter:blur(20px);animation:haloPulse 3s ease-in-out infinite}
@keyframes haloPulse{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
.shield-big svg{width:96px;height:96px;stroke:var(--ok);fill:none;stroke-width:1.4;position:relative;z-index:1;filter:drop-shadow(0 0 14px var(--accent-glow))}
.grow{display:flex;align-items:center;gap:11px;background:var(--bg-card-2);border:1px solid var(--border-soft);border-radius:var(--r-sm);padding:12px 13px;margin-bottom:9px;font-size:12.5px}
.grow .gi{width:28px;height:28px;border-radius:8px;background:var(--accent-faint);color:var(--accent);display:grid;place-items:center;flex:0 0 28px}
.grow .gi svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
.grow .gn{margin-inline-start:auto;font-weight:var(--fw-black);color:var(--ok);font-variant-numeric:tabular-nums;font-size:15px}

/* ====================== SECCIÓN 3 · LA DIFERENCIA (home_03) ====================== */
.steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:0}
.step{position:relative;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);
  border-radius:var(--r-lg);padding:40px 28px 34px;text-align:center;box-shadow:var(--shadow-card);overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.step::before{content:"";position:absolute;inset:0;background:radial-gradient(300px 180px at 50% -10%,var(--accent-faint),transparent 60%);pointer-events:none}
.step::after{content:attr(data-wm);position:absolute;top:6px;inset-inline-end:16px;font-family:var(--mono);font-size:62px;font-weight:var(--fw-black);
  color:var(--accent);opacity:.06;line-height:1;pointer-events:none}
.step:hover{transform:translateY(-7px);border-color:var(--border-glow);box-shadow:var(--shadow-card),0 0 60px -30px var(--accent-glow)}
.step .sic{position:relative;width:92px;height:92px;margin:0 auto 24px;border-radius:50%;display:grid;place-items:center;z-index:1}
.step .sic .sh{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 66%);filter:blur(10px);opacity:.9}
.step .sic .sr{position:absolute;inset:0;border-radius:50%;border:1px solid var(--border-glow)}
.step .sic .sr2{position:absolute;inset:11px;border-radius:50%;border:1px solid var(--accent);opacity:.35}
.step .sic svg{position:relative;z-index:2;width:40px;height:40px;stroke:var(--accent);fill:none;stroke-width:1.5;filter:drop-shadow(0 0 8px var(--accent-glow))}
.step .snum{position:relative;z-index:1;font-family:var(--mono);font-size:13px;color:var(--accent);letter-spacing:3px;font-weight:var(--fw-bold)}
.step h3{position:relative;z-index:1;font-size:25px;font-weight:var(--fw-bold);margin:10px 0 13px}
.step p{position:relative;z-index:1;color:var(--text-muted);font-size:14px;max-width:240px;margin-inline:auto;line-height:1.55}
.connector{display:grid;place-items:center;padding:0 8px;position:relative}
.connector .ln{position:absolute;top:50%;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.4}
.connector .node{position:relative;width:15px;height:15px;border-radius:50%;background:var(--accent);
  box-shadow:0 0 0 6px var(--accent-faint),0 0 20px var(--accent-glow)}
.connector .node::after{content:"";position:absolute;inset:4px;border-radius:50%;background:#fff;opacity:.85}

/* ====================== SECCIÓN 4 · FORTALEZA (home_04) ====================== */
.forts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.fort{position:relative;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);
  border-radius:var(--r-lg);padding:30px 22px 26px;text-align:center;box-shadow:var(--shadow-card);overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.fort::before{content:"";position:absolute;inset:0;background:radial-gradient(260px 170px at 50% -6%,var(--accent-faint),transparent 62%);pointer-events:none}
.fort:hover{transform:translateY(-6px);border-color:var(--border-glow);box-shadow:var(--shadow-card),0 0 56px -30px var(--accent-glow)}
.hexwrap{position:relative;width:86px;height:94px;margin:0 auto 18px}
.hexwrap .hh{position:absolute;inset:6px;background:radial-gradient(circle,var(--accent-glow),transparent 64%);filter:blur(12px);opacity:.85}
.hexwrap svg.hexsvg{position:absolute;inset:0;width:86px;height:94px;overflow:visible}
.hexwrap svg.hexsvg .hxb{fill:var(--accent-faint);stroke:var(--accent);stroke-width:1.4;filter:drop-shadow(0 0 8px var(--accent-glow))}
.hexwrap .hi{position:absolute;inset:0;display:grid;place-items:center;z-index:2}
.hexwrap .hi svg{width:34px;height:34px;stroke:var(--accent);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px var(--accent-glow))}
.fort .fl{position:relative;z-index:1;font-size:13.5px;color:var(--text-secondary);font-weight:var(--fw-semibold);min-height:38px;display:flex;align-items:center;justify-content:center;line-height:1.3}
.fort .fv{position:relative;z-index:1;font-size:42px;font-weight:var(--fw-black);color:var(--accent);line-height:1;margin:8px 0 11px;letter-spacing:-1.5px;text-shadow:0 0 24px var(--accent-glow)}
.fort .fd{position:relative;z-index:1;font-size:12.5px;color:var(--text-muted);line-height:1.5}
.fbar{margin:34px auto 0;max-width:680px;display:flex;align-items:center;justify-content:center;gap:11px;
  font-size:13px;font-weight:var(--fw-semibold);color:var(--text-secondary);
  background:linear-gradient(150deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-glow);border-radius:var(--r-pill);padding:13px 26px;
  box-shadow:0 0 50px -30px var(--accent-glow)}
.fbar .fbi{width:26px;height:26px;border-radius:50%;background:var(--accent-faint);color:var(--accent);display:grid;place-items:center;flex:0 0 26px}
.fbar .fbi svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
.fbar b{color:var(--accent)}

/* ====================== SECCIÓN 5 · PARA QUIÉN (home_05) ====================== */
.whos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.who{position:relative;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);
  border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .25s,border-color .25s,box-shadow .25s;display:flex;flex-direction:column}
.who:hover{transform:translateY(-7px);border-color:var(--border-glow);box-shadow:var(--shadow-card),0 0 60px -32px var(--accent-glow)}
.who .illus{height:190px;position:relative;overflow:hidden;border-bottom:1px solid var(--border-soft);
  background:
    radial-gradient(300px 180px at 50% 130%,var(--accent-glow),transparent 60%),
    linear-gradient(180deg,var(--bg-inset),var(--bg-card))}
.who .illus .grid{position:absolute;inset:0;opacity:.5;
  background-image:linear-gradient(var(--border-soft) 1px,transparent 1px),linear-gradient(90deg,var(--border-soft) 1px,transparent 1px);
  background-size:26px 26px;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 60%);mask-image:linear-gradient(180deg,transparent,#000 60%)}
.who .illus svg.art{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:118px;
  stroke:var(--accent);fill:none;stroke-width:1.2;opacity:.95;filter:drop-shadow(0 6px 18px var(--accent-glow))}
.who .illus svg.art .fillsoft{fill:var(--accent-faint);stroke:none}
.who .wb{padding:24px;flex:1;display:flex;flex-direction:column}
.who .wic{width:46px;height:46px;border-radius:var(--r-sm);display:grid;place-items:center;
  background:radial-gradient(circle at 50% 38%,var(--accent-faint),transparent 72%);border:1px solid var(--border-glow);color:var(--accent);margin-bottom:15px;
  box-shadow:inset 0 0 16px -6px var(--accent-glow)}
.who .wic svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.8}
.who h3{font-size:20px;font-weight:var(--fw-bold)}
.who p{color:var(--text-muted);font-size:13.5px;margin-top:9px;flex:1;line-height:1.55}
.who .arrow{align-self:flex-end;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;margin-top:18px;
  border:1px solid var(--border-glow);color:var(--accent);transition:.2s;background:var(--accent-faint)}
.who:hover .arrow{background:var(--accent);color:#03130f;box-shadow:0 0 22px -6px var(--accent-glow)}
.who .arrow svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.2}

/* ====================== SECCIÓN 6 · CONFIANZA (home_06) ====================== */
.trusts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tcard{position:relative;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);
  border-radius:var(--r-lg);padding:38px 30px;text-align:center;box-shadow:var(--shadow-card);overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.tcard::before{content:"";position:absolute;inset:0;background:radial-gradient(300px 180px at 50% -8%,var(--accent-faint),transparent 60%);pointer-events:none}
.tcard:hover{transform:translateY(-7px);border-color:var(--border-glow);box-shadow:var(--shadow-card),0 0 60px -32px var(--accent-glow)}
/* esquinas tipo Lovart */
.tcard .corner{position:absolute;width:20px;height:20px;border:1px solid var(--border-glow);opacity:.7}
.tcard .corner.tl{top:14px;inset-inline-start:14px;border-right:0;border-bottom:0}
.tcard .corner.tr{top:14px;inset-inline-end:14px;border-left:0;border-bottom:0}
.tcard .corner.bl{bottom:14px;inset-inline-start:14px;border-right:0;border-top:0}
.tcard .corner.br{bottom:14px;inset-inline-end:14px;border-left:0;border-top:0}
.tcard .tic{position:relative;width:84px;height:84px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;z-index:1}
.tcard .tic .th{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 66%);filter:blur(10px);opacity:.85}
.tcard .tic .tr2{position:absolute;inset:0;border-radius:50%;border:1px solid var(--border-glow)}
.tcard .tic svg{position:relative;z-index:2;width:36px;height:36px;stroke:var(--accent);fill:none;stroke-width:1.5;filter:drop-shadow(0 0 8px var(--accent-glow))}
.tcard .tnum{position:relative;z-index:1;font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:3px}
.tcard h3{position:relative;z-index:1;font-size:21px;font-weight:var(--fw-bold);margin:11px 0 13px;line-height:1.2}
.tcard p{position:relative;z-index:1;color:var(--text-muted);font-size:13.5px;line-height:1.55}
.tline{margin:36px auto 0;text-align:center;font-size:12px;font-weight:var(--fw-bold);letter-spacing:2.5px;text-transform:uppercase;color:var(--text-muted);
  display:flex;align-items:center;justify-content:center;gap:11px}
.tline::before,.tline::after{content:"";width:44px;height:1px;background:linear-gradient(90deg,transparent,var(--border-glow))}
.tline::after{background:linear-gradient(90deg,var(--border-glow),transparent)}
.tline b{color:var(--accent)}

/* ====================== SECCIÓN 7 · CIERRE + FOOTER (home_07) ====================== */
.cta-final{text-align:center;padding:clamp(56px,7vw,92px) 0 clamp(40px,5vw,60px);position:relative;overflow:hidden}
.cta-final .glowbg{position:absolute;top:-40px;left:50%;transform:translateX(-50%);width:760px;max-width:120%;height:420px;pointer-events:none;
  background:radial-gradient(circle at 50% 30%,var(--accent-glow),transparent 60%);opacity:.6;filter:blur(8px)}
.cta-final .ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:560px;height:560px;border-radius:50%;border:1px solid var(--border-soft);opacity:.4;pointer-events:none}
.cta-final .ring.r2{width:760px;height:760px}
.cta-final>*{position:relative;z-index:1}
.cta-final h2{font-size:clamp(28px,3.6vw,42px);font-weight:var(--fw-black);line-height:1.07;letter-spacing:-.6px;max-width:860px;margin-inline:auto}
.cta-final .sub{margin-top:19px;color:var(--text-secondary);font-size:17.5px;max-width:580px;margin-inline:auto;line-height:1.55}
.cta-final .btn{margin-top:40px;position:relative}
.cta-final .btn::after{content:"";position:absolute;inset:-14px;border-radius:var(--r-pill);background:radial-gradient(circle,var(--accent-glow),transparent 70%);filter:blur(14px);z-index:-1;opacity:.9}
/* RONDA 2: pie compacto + sin franja oscura inferior (igual que internas).
   Fondo PLANO (el degradado terminaba en --bg-elev, dejando banda en el
   escalón pie→body) y paddings/margins recortados. */
/* RONDA 3 (F1 · 10-jul, CEO eligió en previews): pie compacto ~-38% · espejo de premium-reskin.css */
footer{border-top:1px solid var(--border-color);padding-top:20px;background:transparent;position:relative;z-index:1}
.foot-nl{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:center;padding:12px 16px;margin-bottom:16px;border:1px solid var(--border-color);border-radius:var(--r-lg,14px);background:linear-gradient(135deg,rgba(0,194,168,.06),transparent 65%)}
.foot-nl-txt h4{font-size:13.5px;font-weight:var(--fw-bold);color:var(--text-primary);margin:0 0 3px;letter-spacing:.2px}
.foot-nl-txt p{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.45}
.foot-nl-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.foot-nl-form input[type=email]{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--r-sm);background:var(--bg-card);color:var(--text-primary);font:inherit;font-size:13px}
.foot-nl-form input[type=email]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,194,168,.22)}
.foot-nl-form button{padding:8px 14px;background:var(--accent);color:#061814;border:1px solid var(--accent);border-radius:var(--r-sm);font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap;transition:transform .12s,filter .15s}
.foot-nl-form button:hover{transform:translateY(-1px);filter:brightness(1.08)}
.foot-nl-legal{grid-column:1/-1;margin:2px 0 0;font-size:10px;color:var(--text-muted);line-height:1.4}
/* RONDA 2 · regla marca: pie "solo OCIRIA", sin dirección/calle/CP (igual
   que las internas, que ya ocultan .foot-addr). */
.foot-addr{display:none}
@media(max-width:760px){.foot-nl{grid-template-columns:1fr;padding:14px 16px}.foot-nl-form{grid-template-columns:1fr}}
.foot-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:18px}
.foot-brand .bs{font-size:12px;color:var(--text-muted);margin-top:7px;letter-spacing:.5px}
.foot-brand .fsoc{display:flex;gap:9px;margin-top:10px}
.foot-brand .fsoc a{width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--border-color);background:var(--bg-card);
  display:grid;place-items:center;color:var(--text-muted);transition:.2s}
.foot-brand .fsoc a:hover{color:var(--accent);border-color:var(--border-glow)}
.foot-brand .fsoc svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8}
.fcol h4{font-size:11px;font-weight:var(--fw-bold);letter-spacing:1.6px;text-transform:uppercase;color:var(--accent);margin-bottom:7px}
.fcol a{display:block;color:var(--text-secondary);font-size:12.5px;padding:2.5px 0;transition:color .2s}
.fcol a:hover{color:var(--text-primary)}
.foot-bottom{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:14px;padding:9px 0 8px;border-top:1px solid var(--border-soft);
  font-size:12px;color:var(--text-muted)}
.foot-bottom .links{margin-inline-start:auto;display:flex;gap:20px}
.foot-bottom a:hover{color:var(--text-primary)}

/* reveal animation */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}*{animation:none!important}}

/* ====================== RESPONSIVE ====================== */
@media (max-width:1000px){
  nav.links{display:none}
  .hamburger{display:grid}
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .s-problem .pg{grid-template-columns:1fr;gap:38px}
  .steps{grid-template-columns:1fr;gap:18px}
  .connector{transform:rotate(90deg);padding:6px 0}
  .connector .ln{display:none}
  .forts{grid-template-columns:repeat(2,1fr)}
  .whos,.trusts{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  .wrap{padding-inline:18px}
  .trust{grid-template-columns:1fr}
  .compare{grid-template-columns:1fr}
  .forts{grid-template-columns:1fr}
  .mk-foot{grid-template-columns:repeat(2,1fr)}
  .mock-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .foot-bottom .links{margin-inline-start:0;width:100%}
  .hero-cta .btn{flex:1}
}

/* ============================================================
   LOVART · visuales reales incrustados (POLARIS · 25-jun-2026)
   Imágenes render Lovart (assets/*.png) montadas con el acabado
   navy+glow ya existente. El texto sigue siendo HTML i18n (válido
   en los 7 idiomas; las imágenes no llevan texto). Rutas RELATIVAS.
   ============================================================ */

/* --- sprite de iconos (iconos_12.png · rejilla 4×3, fondo transparente) --- */
.lov-ic{display:block;background-image:url(/premium/assets/iconos_12.png);background-repeat:no-repeat;
  background-size:400% 300%;filter:drop-shadow(0 0 9px var(--accent-glow))}
/* fila 0 */
.lic-shieldclock{background-position:0% 0%}      /* escudo-reloj */
.lic-revert     {background-position:33.333% 0%} /* reversión */
.lic-lock       {background-position:66.667% 0%} /* candado */
.lic-target     {background-position:100% 0%}    /* diana */
/* fila 1 */
.lic-killswitch {background-position:0% 50%}      /* kill-switch */
.lic-doclupa    {background-position:33.333% 50%} /* documento-lupa */
.lic-shieldcheck{background-position:66.667% 50%} /* escudo-check */
.lic-radar      {background-position:100% 50%}    /* radar */
/* fila 2 */
.lic-keyshield  {background-position:0% 100%}      /* llave-escudo */
.lic-badge      {background-position:33.333% 100%} /* sello-check */
.lic-bank       {background-position:66.667% 100%} /* institución */
.lic-dbshield   {background-position:100% 100%}    /* datos-escudo */
[data-theme="light"] .escala-niv .niv-step i{box-shadow:none}

/* --- iconos SVG de línea en CONFIANZA (limpios, coherentes con la UI) --- */
.tcard .tic svg{position:relative;z-index:2;width:42px;height:42px;stroke:var(--accent);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px var(--accent-glow))}
/* iconos 3D premium recortados en tarjetas (sustituyen al SVG + marco) */
.hexwrap .hexsvg{display:none}
.tcard .tic .tr2{display:none}
.hexwrap .hi img.ic3d{width:80px;height:80px;object-fit:contain;filter:drop-shadow(0 8px 18px var(--accent-glow))}
.tcard .tic img.ic3d{position:relative;z-index:2;width:74px;height:74px;object-fit:contain;filter:drop-shadow(0 8px 18px var(--accent-glow))}
.wb .wic{display:none}
.illus{display:grid!important;place-items:center}
.illus .art{display:none}
.illus3d{width:124px;height:124px;object-fit:contain;filter:drop-shadow(0 12px 24px var(--accent-glow))}
.ti .ic{background:none!important;border:0!important;overflow:visible}
.ti .ic img.ic3d{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 5px 12px var(--accent-glow))}
.pitem .ic{background:none!important;border:0!important;overflow:visible}
.pitem .ic img.ic3d{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 5px 12px var(--accent-glow))}
.grow .gi{background:none!important;width:auto!important;height:auto!important}
.grow{padding:14px 14px!important}
.grow .gi img.ic3d{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 4px 11px var(--accent-glow))}
.shield-big svg{display:none}
.shield-big img.sh3d{position:relative;z-index:1;width:122px;height:122px;object-fit:contain;filter:drop-shadow(0 12px 26px var(--accent-glow))}

/* --- LA DIFERENCIA · visual Lovart (3 nodos) + etiquetas debajo --- */
/* HERO · render 3D premium fundido (sustituye al panel de código) */
.hero-fig{position:relative;align-self:center}
.hero-fig::before{content:"";position:absolute;inset:-10% -6%;z-index:0;pointer-events:none;background:radial-gradient(58% 64% at 52% 50%,var(--accent-faint),transparent 72%)}
.hero-fig .h3d{position:relative;z-index:1;width:100%;height:auto}

.diff-visual{position:relative;max-width:1060px;margin:0 auto 8px}
.diff-visual::before{content:"";position:absolute;inset:-8% 4%;pointer-events:none;z-index:0;
  background:radial-gradient(56% 60% at 50% 50%,var(--accent-faint),transparent 72%)}
.diff-visual img{position:relative;z-index:1;display:block;width:100%;height:auto;animation:floaty 5s ease-in-out infinite}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
/* CTA con vida: pulso de glow + brillo que recorre */
@keyframes ctaPulse{0%,100%{box-shadow:0 12px 32px -12px var(--accent-glow),0 0 0 0 rgba(22,224,196,.42)}50%{box-shadow:0 14px 40px -10px var(--accent-glow),0 0 0 7px rgba(22,224,196,0)}}
@keyframes ctaShine{0%,55%{left:-70%}100%{left:140%}}
.btn-primary{position:relative;overflow:hidden;animation:ctaPulse 2.8s ease-in-out infinite}
.btn-primary::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);pointer-events:none;animation:ctaShine 3.4s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.diff-visual img,.btn-primary,.btn-primary::after,.shield-big .halo{animation:none}}
.diff-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.diff-lab{text-align:center;padding:0 14px}
.diff-lab .dl-num{font-family:var(--mono);font-size:13px;color:var(--accent);letter-spacing:3px;font-weight:var(--fw-bold)}
.diff-lab h3{font-size:24px;font-weight:var(--fw-bold);margin:8px 0 11px}
.diff-lab p{color:var(--text-muted);font-size:14px;max-width:260px;margin-inline:auto;line-height:1.55}

/* --- PARA QUIÉN · banner ilustración institucional --- */
.who-illus{position:relative;max-width:1020px;margin:0 auto 40px}
.who-illus::before{content:"";position:absolute;inset:-8% 4%;pointer-events:none;z-index:0;
  background:radial-gradient(56% 62% at 50% 50%,var(--accent-faint),transparent 72%)}
.who-illus img{position:relative;z-index:1;display:block;width:100%;height:auto}

/* MODO CLARO: las ilustraciones tienen fondo oscuro nativo → en claro el screen las
   borraría. En su lugar van sobre un "escenario" oscuro deliberado (sin aspecto de foto
   suelta), con blend normal. */
/* claro y oscuro usan el MISMO fundido (screen sobre la viñeta oscura difuminada),
   sin marcos ni cajas → la ilustración se pierde en el fondo en ambos temas */

/* ============================================================
   SECCIÓN ESCALABILIDAD (nueva · requisito CEO)
   Desde 1 servidor / pyme → gobiernos. Mismo escudo, escalable.
   ============================================================ */
.s-escala .escala-top{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;margin-bottom:30px}
.escala-fig{position:relative}
.escala-fig::before{content:"";position:absolute;inset:-10% -4%;pointer-events:none;z-index:0;
  background:radial-gradient(58% 64% at 48% 50%,var(--accent-faint),transparent 72%)}
.escala-fig img{position:relative;z-index:1;display:block;width:100%;height:auto}
.escala-intro .eyebrow{margin-bottom:18px}
.escala-intro h2{font-size:clamp(28px,3.6vw,42px);font-weight:var(--fw-black);line-height:1.12;letter-spacing:-.5px}
.escala-intro h2 .tl{color:var(--accent);text-shadow:0 0 26px var(--accent-glow)}
.escala-intro .sub{margin-top:18px;color:var(--text-secondary);font-size:clamp(15px,1.7vw,17px);line-height:1.6}
/* escalera de 4 niveles */
.escala-niveles{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:8px;align-items:stretch}
.escala-niv{position:relative;background:linear-gradient(165deg,var(--bg-card-top),var(--bg-card));
  border:1px solid var(--border-color);border-radius:var(--r-lg);padding:26px 22px;
  transition:transform .25s,border-color .25s,box-shadow .25s;display:flex;flex-direction:column}
.escala-niv::before{content:"";position:absolute;inset:0;border-radius:var(--r-lg);pointer-events:none;
  background:radial-gradient(260px 150px at 50% -8%,var(--accent-faint),transparent 62%)}
.escala-niv:hover{transform:translateY(-6px);border-color:var(--border-glow);box-shadow:var(--shadow-card),0 0 56px -30px var(--accent-glow)}
/* peso visual creciente n1→n4 = se "lee" la escalabilidad */
.escala-niv .niv-step{position:relative;z-index:1;display:flex;align-items:flex-end;gap:3px;height:34px;margin-bottom:16px}
.escala-niv .niv-step i{width:7px;background:var(--accent);border-radius:2px;opacity:.92;box-shadow:0 0 10px -1px var(--accent-glow)}
.escala-niv{padding-top:16px}
.escala-niv .niv-ic{position:relative;z-index:1;height:240px;margin-bottom:4px;display:flex;align-items:center;justify-content:center}
.escala-niv .niv-ic img{height:100%;width:100%;max-width:none;object-fit:contain;filter:drop-shadow(0 14px 26px var(--accent-glow))}
.escala-niv .niv-pyme{position:relative;z-index:1;width:64px;height:64px;border-radius:14px;overflow:hidden;
  margin-bottom:14px;border:1px solid var(--border-glow);background:var(--bg-inset);box-shadow:0 0 30px -12px var(--accent-glow)}
.escala-niv .niv-pyme img{width:100%;height:100%;object-fit:cover}
.escala-niv .niv-tag{position:relative;z-index:1;font-family:var(--mono);font-size:11.5px;letter-spacing:2px;color:var(--accent);font-weight:var(--fw-bold)}
.escala-niv h3{position:relative;z-index:1;font-size:17px;font-weight:var(--fw-bold);margin:7px 0 10px;line-height:1.25}
.escala-niv p{position:relative;z-index:1;color:var(--text-muted);font-size:13px;line-height:1.55;flex:1}
.escala-niv .niv-arrow{position:absolute;z-index:2;top:50%;inset-inline-end:-13px;transform:translateY(-50%);
  width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--bg-elev);
  border:1px solid var(--border-glow);color:var(--accent)}
.escala-niv .niv-arrow svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2.4}
.escala-niv:last-child .niv-arrow{display:none}
.escala-cierre{text-align:center;margin-top:40px}
.escala-cierre .ec-line{font-size:clamp(18px,2.3vw,26px);font-weight:var(--fw-bold);line-height:1.3;max-width:760px;margin-inline:auto}
.escala-cierre .ec-line b{color:var(--accent);text-shadow:0 0 22px var(--accent-glow)}
.escala-cierre .ec-micro{margin-top:14px;color:var(--text-muted);font-size:14px}
/* RTL: el orden de niveles se espeja solo (grid sigue dir). Espejamos la flecha
   y la imagen de progresión para que el ascenso 1-servidor→gobierno se LEA de
   derecha a izquierda, alineado con la lectura árabe. */
[dir="rtl"] .escala-niv .niv-arrow svg{transform:scaleX(-1)}
[dir="rtl"] .escala-fig img{transform:scaleX(-1)}

@media (max-width:1000px){
  .s-escala .escala-top{grid-template-columns:1fr;gap:30px}
  .escala-niveles{grid-template-columns:repeat(2,1fr)}
  .escala-niv .niv-arrow{display:none}
  .diff-labels{gap:14px}
}
@media (max-width:620px){
  .escala-niveles{grid-template-columns:1fr}
  .diff-labels{grid-template-columns:1fr;gap:24px}
}

/* utilidades CSP-safe */
.u-mt18{margin-top:18px}
.u-hidden{display:none}
.u-fs16{font-size:16px}
.u-jccenter{justify-content:center}
.u-glow5{filter:drop-shadow(0 0 5px var(--accent-glow))}
.u-glow6{filter:drop-shadow(0 0 6px var(--accent-glow))}
.u-glow7{filter:drop-shadow(0 0 7px var(--accent-glow))}
.u-glow8{filter:drop-shadow(0 0 8px var(--accent-glow))}
.u-h42{height:42%}
.u-h48{height:48%}
.u-h60{height:60%}
.u-h64{height:64%}
.u-h72{height:72%}
.u-h90{height:90%}
.u-h100{height:100%}

/* CEO regla pie-solo-OCIRIA: la direccion/Málaga no va en el pie (sí en Aviso legal) */
.foot-addr{display:none !important}

/* nav: cada item en una sola línea (no partir "Cómo funciona"/"Para quién") */
header.nav .nav-in a{white-space:nowrap}
.nav-in{gap:14px}

/* ════════════════════════════════════════════════════════════════════
   REVISIÓN VISUAL · POLARIS · 27-jun-2026
   Encargo CEO (vía CJ): la home estaba "dispersa, con demasiado aire y
   poca vida". Objetivo de ESTE bloque (aditivo · cada cambio visible y
   reversible · va al final para sobreescribir por orden de cascada):
     1) Apretar el ritmo vertical (escala de espaciado consistente).
     2) Coser las secciones con un hilo visual (costura + punto vivo).
     3) Dar vida con micro-interacciones sutiles y jerarquía.
   NO toca: copys (i18n), escáner (scan-*/Turnstile), chat, footer
   (.foot-addr sigue oculta), tokens var(--) → claro/oscuro y RTL intactos.
   ════════════════════════════════════════════════════════════════════ */

/* ── 1 · ESCALA DE ESPACIADO más apretada y coherente ──────────────── */
.section{padding:clamp(34px,4.4vw,58px) 0}
.sec-head{margin-bottom:clamp(22px,2.6vw,30px)}
.sec-head .eyebrow{margin-bottom:14px}
.hero{padding-top:124px;padding-bottom:clamp(38px,4.6vw,54px)}
.hero .sub{margin-top:16px}
.hero-cta{margin-top:26px}
.trust{margin-top:30px}
.s-problem .pg{gap:clamp(34px,3.4vw,44px)}
.plist{margin-top:24px}
footer{padding-top:20px}
.foot-nl{margin-bottom:16px}

/* ── 2 · EYEBROWS vacíos: fuera el guion suelto (secciones sólo-título) */
.eyebrow:empty{display:none}

/* ── 3 · HILO VISUAL · costura hairline que cose sección con sección ── */
.section + .section::before{content:"";position:absolute;top:0;left:50%;
  transform:translateX(-50%);width:min(900px,80%);height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--border-glow) 20%,var(--border-glow) 80%,transparent);
  opacity:.55}

/* ── 4 · PUNTO VIVO en los eyebrows (motivo del blog · "vida") ─────── */
.eyebrow>span{display:inline-flex;align-items:center;gap:9px}
.eyebrow>span::before{content:"";width:7px;height:7px;border-radius:50%;flex:0 0 auto;
  background:var(--accent);box-shadow:0 0 0 3px var(--accent-faint),0 0 9px var(--accent-glow);
  animation:eyePulse 2.6s ease-in-out infinite}
@keyframes eyePulse{
  0%,100%{box-shadow:0 0 0 3px var(--accent-faint),0 0 8px var(--accent-glow)}
  50%    {box-shadow:0 0 0 6px transparent,0 0 15px var(--accent-glow)}}

/* ── 5 · ACENTO de cierre bajo cada título de sección (jerarquía) ──── */
.sec-head .title{position:relative;display:inline-block}
.sec-head .title::after{content:"";display:block;width:52px;height:3px;border-radius:3px;
  margin:13px auto 0;background:linear-gradient(90deg,var(--accent),transparent);
  box-shadow:0 0 12px -2px var(--accent-glow)}
:where(html[dir="rtl"]) .sec-head .title::after{background:linear-gradient(270deg,var(--accent),transparent)}

/* ── 6 · COHESIÓN imagen↔contenido (DIFERENCIA · PARA QUIÉN) ───────── */
/* las ilustraciones PNG traen aire propio: se acotan y se acercan al texto */
.diff-visual{max-width:740px;margin:0 auto}
.diff-visual img{width:auto;max-width:100%;max-height:300px;margin-inline:auto}
.diff-labels{margin-top:10px}
.who-illus{max-width:700px;margin:0 auto 16px}
.who-illus img{width:auto;max-width:100%;max-height:240px;margin-inline:auto}
.escala-niv .niv-ic{height:188px}

/* ── 7 · MICRO-INTERACCIÓN: lift sutil en tarjetas que no lo tenían ── */
.audit-card,.fase,.plan,.rec-step{transition:transform .25s,border-color .25s,box-shadow .25s}
.audit-card:hover,.fase:hover,.plan:hover,.rec-step:hover{
  transform:translateY(-3px);border-color:var(--border-glow);
  box-shadow:var(--shadow-card),0 0 50px -34px var(--accent-glow)}
@media (prefers-reduced-motion:reduce){
  .eyebrow>span::before{animation:none}
  .audit-card,.fase,.plan,.rec-step{transition:none}}

/* fix botones cta movil 02jul */
@media(max-width:560px){
  .hero-cta .btn,.reco-cta .btn{flex:1 1 100%;white-space:normal}
}

/* diferencia clave 02jul */
.dif3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0 30px}
@media(max-width:820px){.dif3{grid-template-columns:1fr}}
.dif-card{background:var(--bg-card,#131c30);border:1px solid var(--border-color,#2a3550);border-radius:14px;padding:22px 20px}
.dif-card .dif-ic{font-size:24px;display:block;margin-bottom:10px}
.dif-card b{display:block;font-size:16px;color:var(--text-primary,#fff);margin-bottom:8px}
.dif-card p{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-secondary,#9fb0c8)}
.cmp5{min-width:860px}
.cmp5 .cmp-head,.cmp5 .cmp-row{grid-template-columns:1.6fr repeat(5,1fr)}

/* fix header CTA movil home 02jul */
@media(max-width:640px){.nav-tools .btn-primary{display:none}}
@media(max-width:640px){.nav-tools{gap:6px}.icon-btn{width:34px;height:34px}}
html,body{overflow-x:clip}
@media(max-width:640px){.nav-tools{margin-inline-start:auto}.brand .bs{display:none}}


/* ==== Fase C · banda Empresa a medida ==== */
.plan-emp{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:20px 34px;background:linear-gradient(150deg,var(--bg-card-top),var(--bg-card));border:1px dashed var(--border-glow);border-radius:var(--r-lg);padding:22px 26px}
.plan-emp-main{flex:1 1 300px;min-width:250px}
.plan-emp-tag{display:inline-block;font-size:10.5px;font-weight:var(--fw-black);text-transform:uppercase;letter-spacing:.5px;color:var(--accent);border:1px solid var(--border-glow);border-radius:var(--r-pill);padding:3px 11px;margin-bottom:9px}
.plan-emp-name{font-size:18px;font-weight:var(--fw-black);margin-bottom:5px}
.plan-emp-desc{font-size:13px;color:var(--text-muted);line-height:1.45;max-width:54ch}
.plan-emp-list{list-style:none;padding:0;margin:0;flex:1 1 340px;min-width:250px;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
.plan-emp-list li{font-size:12.5px;color:var(--text-secondary);padding-inline-start:20px;position:relative;line-height:1.4}
.plan-emp-list li::before{content:"\2713";position:absolute;inset-inline-start:0;color:var(--accent);font-weight:700}
.plan-emp-cta{flex:0 0 auto}
.plan-emp-cta .btn{white-space:nowrap}
@media(max-width:760px){.plan-emp-list{grid-template-columns:1fr}.plan-emp-cta{width:100%}.plan-emp-cta .btn{width:100%;justify-content:center}}

/* ==== Fase C · chips de confianza de planes ==== */
.pl-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;margin:22px auto 0;max-width:840px}
.pl-chip{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:var(--fw-semibold);color:var(--text-secondary);background:var(--accent-faint);border:1px solid var(--border-color);border-radius:var(--r-pill);padding:7px 14px}
.pl-chip svg{width:15px;height:15px;flex:0 0 auto;stroke:var(--accent);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ==== Fase C · FAQ de compra ==== */
.faq-compra{margin-top:44px}
.faq-compra-h{text-align:center;font-size:19px;font-weight:var(--fw-black);margin:0 0 18px}
.faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq-i{background:linear-gradient(150deg,var(--bg-card-top),var(--bg-card));border:1px solid var(--border-color);border-radius:var(--r-md)}
.faq-i summary{cursor:pointer;list-style:none;padding:13px 44px 13px 16px;padding-inline-end:44px;padding-inline-start:16px;font-size:14px;font-weight:var(--fw-semibold);color:var(--text-primary);position:relative}
.faq-i summary::-webkit-details-marker{display:none}
.faq-i summary::after{content:"+";position:absolute;inset-inline-end:16px;top:50%;transform:translateY(-50%);color:var(--accent);font-weight:700;font-size:19px;line-height:1}
.faq-i[open] summary::after{content:"\2013"}
.faq-a{padding:0 16px 14px;font-size:13px;line-height:1.55;color:var(--text-secondary)}
.faq-i[open]{border-color:var(--border-glow)}
