/* Bloques animados de PPanel (oficinas, sectores, demo, video). Paleta del sitio; sin dark mode y sin recursos externos. */
.of,.sx,.dm,.vd{--bg:#f5f7fc;--surface:#fff;--ink:#070b2e;--muted:#525a7c;--line:#dde2f1;--accent:#0028d0;--accent-soft:#e8edff;
--ok:#0e8f78;--ok-soft:#dcf5ee;--warn:#b86e00;--warn-soft:#fdf0d2;--sky:#e3ecff;--b1:#c9d6f7;--b2:#cfe7de;--b3:#e1d6f2;--win:#fff;--lit:#ffd86b;
--walk:#c4cde3;--street:#aeb8d2;--leaf:#5fbf8c;color:#161b3d;font-size:16px;line-height:1.45}
.of *,.sx *,.dm *,.vd *{box-sizing:border-box}
.of h3{font-family:var(--display);margin:0;line-height:1.1;text-wrap:balance}
.of .grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;align-items:start}
@media (max-width:860px){.of .grid{grid-template-columns:1fr}
}.of .card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;min-width:0}
.of .card-h{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;padding:2px 4px 10px}
.of .card-h h3{font-size:19px}
.of .live{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ok);font-variant-numeric:tabular-nums}
.of .live b{width:9px;height:9px;border-radius:50%;background:var(--ok);animation:of-blink 1.4s infinite}
@keyframes of-blink{50%{opacity:.25}}.of svg.scene{display:block;width:100%;height:auto;border-radius:12px;background:var(--sky)}
.of .sky{fill:var(--sky)}
.of .sw{fill:var(--walk)}
.of .c-st{fill:var(--street)}
.of .lane{stroke:var(--surface);stroke-width:3;stroke-dasharray:18 16;opacity:.6}
.of .bld1{fill:var(--b1)}
.of .bld2{fill:var(--b2)}
.of .bld3{fill:var(--b3)}
.of .win{fill:var(--win);transition:fill .6s}
.of .win.on{fill:var(--lit)}
.of .door{fill:var(--accent)}
.of .sign{fill:var(--accent)}
.of .signt{font:800 13px var(--body);fill:#fff;text-anchor:middle}
.of .leaf{fill:var(--leaf)}
.of .trunk{fill:var(--muted);opacity:.7}
.of .geo{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-dasharray:5 4;opacity:.8}
.of .pulse{fill:none;stroke:var(--ok);stroke-width:3;transform-box:fill-box;transform-origin:center;animation:of-ping 1.5s ease-out forwards}
.of .pulse.late{stroke:var(--warn)}
@keyframes of-ping{from{opacity:.95;transform:scale(.3)}to{opacity:0;transform:scale(1.6)}}.of .float{font:700 12px var(--body);fill:var(--ink);text-anchor:middle;paint-order:stroke;stroke:var(--sky);stroke-width:4px;animation:of-fl 3.4s ease-out forwards}
@keyframes of-fl{0%{opacity:0;transform:translateY(8px)}15%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateY(-22px)}}.of .legL,.of .legR{stroke-linecap:round}
.of .walking .legL{animation:of-swL .5s ease-in-out infinite alternate;transform-origin:-3px -10px}
.of .walking .legR{animation:of-swR .5s ease-in-out infinite alternate;transform-origin:3px -10px}
@keyframes of-swL{from{transform:rotate(-28deg)}to{transform:rotate(28deg)}}@keyframes of-swR{from{transform:rotate(28deg)}to{transform:rotate(-28deg)}}.of .walking .bob{animation:of-bob .25s ease-in-out infinite alternate}
@keyframes of-bob{from{transform:translateY(0)}to{transform:translateY(-1.5px)}}.of .upArm,.of .phone{display:none}
.of .tap .upArm,.of .tap .phone{display:inline}
.of .tap .armDown{display:none}
.of .bub rect{fill:var(--surface);stroke:var(--ok);stroke-width:2}
.of .bub.late rect{stroke:var(--warn)}
.of .bub text{font:800 11px var(--body);fill:var(--ink);text-anchor:middle}
.of .legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted);padding:10px 4px 2px}
.of .legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.of .boss{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.of .boss svg{width:62px;height:62px;flex:none;border-radius:50%;background:var(--accent-soft)}
.of .boss .who{font-weight:800;font-family:var(--display);font-size:17px}
.of .boss small{display:block;color:var(--muted);font-size:13px}
.of .say{margin-left:auto;max-width:48%;background:var(--accent);color:#fff;font-size:13px;font-weight:700;border-radius:14px 14px 14px 4px;padding:7px 11px;opacity:0}
.of .say.go{animation:of-say 3.2s ease both}
@keyframes of-say{0%{opacity:0;transform:translateY(6px) scale(.9)}10%,80%{opacity:1;transform:none}100%{opacity:0}}@media (max-width:520px){.of .boss{flex-wrap:wrap}
.of .say{max-width:100%;margin-left:0}
}.of .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.of .stat{background:var(--bg);border-radius:12px;padding:8px 10px}
.of .stat small{display:block;font-size:12px;font-weight:700;color:var(--muted)}
.of .stat strong{font:800 28px var(--display);font-variant-numeric:tabular-nums}
.of .stat.is-ok strong{color:var(--ok)}
.of .stat.warn strong{color:var(--warn)}
.of .filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.of .f{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:99px;padding:5px 11px;font:700 12px var(--body);cursor:pointer}
.of .f.on{background:var(--accent);border-color:var(--accent);color:#fff}
.of .f:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.of .feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-height:340px}
.of .ev{display:grid;grid-template-columns:42px 28px 1fr;gap:8px;align-items:start;padding:9px 11px;border:1px solid var(--line);border-radius:12px;animation:of-in .5s ease both}
.of .ev[hidden]{display:none}
@keyframes of-in{from{opacity:0;transform:translateY(-10px);background:var(--accent-soft)}to{opacity:1;transform:none}}.of .ev time{font:700 13px var(--body);font-variant-numeric:tabular-nums;color:var(--muted);padding-top:4px}
.of .mini{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;font:800 12px var(--body)}
.of .ev p{margin:0;font-size:14px;min-width:0}
.of .ev small{display:block;color:var(--muted);font-size:12px}
.of .tg{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:99px;margin-left:4px;vertical-align:1px}
.of .tg.is-ok{background:var(--ok-soft);color:var(--ok)}
.of .tg.warn{background:var(--warn-soft);color:var(--warn)}
.of .tg.act{background:var(--accent-soft);color:var(--accent)}
@media (prefers-reduced-motion:reduce){}.sx .band h2{font:800 clamp(22px,3.2vw,32px) var(--display);margin:0;text-wrap:balance}
.sx .chips{display:flex;gap:8px;flex-wrap:wrap}
.sx .sx-tab{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:99px;padding:8px 16px;font:700 14px var(--body);cursor:pointer;position:relative;overflow:hidden}
.sx .sx-tab.on{background:var(--accent);border-color:var(--accent);color:#fff}
.sx .sx-tab:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.sx .sec-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:center}
@media (max-width:760px){.sx .sec-body{grid-template-columns:1fr}
}.sx svg.sx-svg{display:block;width:100%;height:auto;border-radius:16px;background:var(--sky)}
.sx .sx-svg .ground{fill:var(--walk)}
.sx .sx-svg .pr1{fill:var(--b1)}
.sx .sx-svg .pr2{fill:var(--b2)}
.sx .sx-svg .pr3{fill:var(--b3)}
.sx .sx-svg .line{stroke:var(--muted);stroke-width:3;stroke-linecap:round;fill:none}
.sx .sx-svg .acc{fill:var(--accent)}
.sx .sx-svg .yel{fill:#ffc21a}
.sx .sx-svg .red{fill:#e5484d}
.sx .sx-svg .wht{fill:#fff}
.sx .sx-svg .gl{fill:none;stroke:var(--ok);stroke-width:3;transform-box:fill-box;transform-origin:center;animation:ping 1.8s ease-out infinite}
.sx .sx-svg .chk rect{fill:var(--surface);stroke:var(--ok);stroke-width:2}
.sx .sx-svg .chk text{font:800 11px var(--body);fill:var(--ink);text-anchor:middle}
.sx .sx-svg .sx-spark{fill:#ffd86b;animation:blink 1.2s infinite}
.sx .sec-txt h3{font:800 24px var(--display);margin:0 0 4px}
.sx .sec-txt p{margin:0;color:var(--muted)}
.sx .sec-txt ul{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.sx .sec-txt li{display:flex;gap:10px;align-items:flex-start;font-weight:600}
.sx .sec-txt li::before{content:"✓";flex:none;width:22px;height:22px;border-radius:50%;background:var(--ok-soft);color:var(--ok);display:grid;place-items:center;font-size:13px;font-weight:800}
.sx .swap{animation:sx-swap .5s ease both}
@keyframes sx-swap{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.sx .chain div.n{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-weight:700;font-size:14px;text-align:center}
.sx .chain div.n small{display:block;color:var(--muted);font-weight:500;font-size:12px}
.sx .chain .ar{color:var(--accent);font-weight:800;font-size:20px}
@media (max-width:640px){.sx .chain .ar{transform:rotate(90deg);text-align:center}
}
.sx .sky{fill:var(--sky)}
@keyframes sx-ping{from{opacity:.95;transform:scale(.3)}to{opacity:0;transform:scale(1.6)}}
@keyframes sx-blink{50%{opacity:.25}}
.dm h3{font-family:var(--display);margin:0;text-wrap:balance;line-height:1.1}
.dm .demo{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}
@media (max-width:760px){.dm .demo{grid-template-columns:1fr}
}.dm .phone{background:var(--ink);border-radius:34px;padding:12px;width:100%;max-width:300px;margin-inline:auto}
.dm .screen{background:var(--surface);border-radius:24px;padding:18px 16px 20px;display:flex;flex-direction:column;gap:14px;min-height:430px}
.dm .screen .dm-top{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);font-weight:700}
.dm .who{font-family:var(--display);font-size:20px;font-weight:800}
.dm .where{font-size:13px;color:var(--muted)}
.dm .clock{font-family:var(--display);font-size:46px;font-weight:800;font-variant-numeric:tabular-nums;text-align:center}
.dm .dm-btn{position:relative;margin:4px auto 0;width:150px;height:150px;border-radius:50%;border:0;cursor:pointer;background:var(--accent);color:#fff;font:800 17px var(--display);letter-spacing:.02em;box-shadow:0 0 0 0 var(--accent-soft)}
.dm .dm-btn:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.dm .dm-btn.pulse{animation:dm-pulse 2s infinite}
@keyframes dm-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 45%,transparent)}100%{box-shadow:0 0 0 28px transparent}}.dm .dm-btn.is-done{background:var(--ok);animation:none}
.dm .dm-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.dm .dm-steps li{display:flex;align-items:center;gap:10px;color:var(--muted);transition:color .3s}
.dm .dm-steps i{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;font-style:normal;font-size:12px;color:transparent;transition:.3s}
.dm .dm-steps li.on{color:var(--ink)}
.dm .dm-steps li.on i{background:var(--ok);border-color:var(--ok);color:#fff}
.dm .panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:16px;min-width:0}
.dm .panel-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.dm .live{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ok)}
.dm .live b{width:9px;height:9px;border-radius:50%;background:var(--ok);animation:dm-blink 1.4s infinite}
@keyframes dm-blink{50%{opacity:.25}}.dm .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dm .stat{border-radius:12px;padding:10px 12px;background:var(--bg)}
.dm .stat small{display:block;font-size:12px;color:var(--muted);font-weight:700}
.dm .stat strong{font-family:var(--display);font-size:32px;font-variant-numeric:tabular-nums}
.dm .stat.is-ok strong{color:var(--ok)}
.dm .stat.warn strong{color:var(--warn)}
.dm .stat.is-bad strong{color:var(--bad)}
.dm .rows{display:flex;flex-direction:column;gap:8px;min-height:330px}
.dm .row{display:grid;grid-template-columns:34px 1fr auto auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px;animation:dm-in .5s ease both}
@keyframes dm-in{from{opacity:0;transform:translateY(-12px) scale(.98);background:var(--accent-soft)}to{opacity:1;transform:none}}.dm .av{width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800;font-size:13px}
.dm .nm{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dm .nm small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.dm .hr{font-variant-numeric:tabular-nums;font-weight:700;font-size:14px}
.dm .chip{font-size:12px;font-weight:700;padding:3px 9px;border-radius:99px}
.dm .chip.is-ok{background:var(--ok-soft);color:var(--ok)}
.dm .chip.warn{background:var(--warn-soft);color:var(--warn)}
@media (max-width:480px){.dm .row{grid-template-columns:34px 1fr auto}
.dm .row .hr{display:none}
}.dm .flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:stretch}
@media (max-width:760px){.dm .flow{grid-template-columns:1fr}
}.dm .step{position:relative;background:var(--surface);border:2px solid var(--line);border-radius:18px;padding:20px 16px;display:flex;flex-direction:column;gap:8px;transition:.4s;margin-right:28px}
.dm .step:last-child{margin-right:0}
@media (max-width:760px){.dm .step{margin-right:0;margin-bottom:28px}
.dm .step:last-child{margin-bottom:0}
}.dm .step .dm-ic{width:54px;height:54px;border-radius:16px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;transition:.4s}
.dm .step h3{font-size:19px}
.dm .step p{margin:0;color:var(--muted);font-size:15px}
.dm .step.on{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 12px 28px -14px var(--accent)}
.dm .step.on .dm-ic{background:var(--accent);color:#fff}
.dm .step::after{content:"";position:absolute;right:-28px;top:50%;width:28px;height:2px;background:repeating-linear-gradient(90deg,var(--line) 0 5px,transparent 5px 9px)}
.dm .step:last-child::after{display:none}
@media (max-width:760px){.dm .step::after{right:50%;top:auto;bottom:-28px;width:2px;height:28px;background:repeating-linear-gradient(180deg,var(--line) 0 5px,transparent 5px 9px)}
}.dm .step .dot{position:absolute;right:-33px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:var(--accent);opacity:0}
.dm .step.on .dot{animation:dm-go 1.6s ease-in-out infinite}
.dm .step:last-child .dot{display:none}
@keyframes dm-go{0%{opacity:1;transform:translateX(-6px)}100%{opacity:0;transform:translateX(34px)}}@media (max-width:760px){.dm .step .dot{display:none}
}@media (prefers-reduced-motion:reduce){}.vd .stage{--navy:#0f1b3d;--blue:#4f6df5;--green:#2fd18f;--amber:#f5b73d;--red:#ff6b70;
  position:relative;aspect-ratio:16/9;container-type:inline-size;overflow:hidden;border-radius:18px;
  background:radial-gradient(120% 120% at 20% 0%,#1d2e6b 0%,#0f1b3d 55%,#09112b 100%);color:#fff;font-family:var(--body);user-select:none}
.vd .stage.paused *{animation-play-state:paused!important}
.vd .scene{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3cqw;padding:5cqw 5cqw 11cqw;opacity:0;visibility:hidden;transition:opacity .5s}
.vd .scene.on{opacity:1;visibility:visible}
.vd .txt{display:flex;flex-direction:column;gap:1.6cqw}
.vd .k{font-size:1.5cqw;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#9db0ff}
.vd .h{font-family:var(--display);font-weight:800;font-size:4.6cqw;line-height:1.05;text-wrap:balance}
.vd .h em{font-style:normal;color:var(--green)}
.vd .vis{position:relative;height:100%;display:flex;align-items:center;justify-content:center;min-width:0}
.vd .cap{position:absolute;left:0;right:0;bottom:0;padding:5cqw 5cqw 2.4cqw;font-size:2cqw;font-weight:500;text-align:center;background:linear-gradient(transparent,rgba(5,9,25,.85));z-index:3}
.vd .bar{position:absolute;left:0;right:0;bottom:0;height:.5cqw;background:rgba(255,255,255,.18);z-index:4}
.vd .bar i{display:block;height:100%;width:0;background:var(--blue)}
.vd .scene .a{opacity:0}
.vd .scene.on .a{animation:vd-up .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--d,0)*1s)}
@keyframes vd-up{from{opacity:0;transform:translateY(3cqw) scale(.95)}to{opacity:1;transform:none}}.vd .scene.on .pop{animation:vd-pop .5s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--d,0)*1s)}
@keyframes vd-pop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}.vd .old{display:flex;flex-direction:column;gap:1.6cqw;width:78%}
.vd .oldc{position:relative;display:flex;align-items:center;gap:2cqw;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:1.6cqw;padding:1.8cqw 2.4cqw;font-size:2.6cqw;font-weight:700}
.vd .oldc svg{width:5cqw;height:5cqw;flex:none}
.vd .x{position:absolute;right:2cqw;top:50%;width:4.4cqw;height:4.4cqw;margin-top:-2.2cqw;color:var(--red)}
.vd .scene.on .x{animation:vd-pop .45s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--d)*1s + .9s)}
.vd .ph{width:17cqw;height:31cqw;max-height:100%;background:#050a1c;border-radius:2.6cqw;padding:.8cqw;box-shadow:0 2cqw 5cqw rgba(0,0,0,.45)}
.vd .ph>div{height:100%;background:#fff;border-radius:2cqw;color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6cqw;position:relative}
.vd .ph small{font-size:1.3cqw;font-weight:700;color:#5a6685}
.vd .ph b{font-family:var(--display);font-size:3.2cqw}
.vd .pbtn{position:relative;width:9cqw;height:9cqw;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font:800 1.5cqw/1.1 var(--display);text-align:center}
.vd .ring{position:absolute;inset:0;border-radius:50%;border:.4cqw solid var(--blue);opacity:0}
.vd .scene.on .ring{animation:vd-ring 1.2s ease-out 1.2s 2}
@keyframes vd-ring{from{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.3)}}.vd .scene.on .tap{animation:vd-tapc 1.3s steps(1) both}
@keyframes vd-tapc{0%{background:var(--blue)}60%,100%{background:#1fa971}}.vd .chips{position:absolute;inset:0}
.vd .chip{position:absolute;background:#fff;color:var(--navy);border-radius:99px;padding:.9cqw 1.8cqw;font-size:1.8cqw;font-weight:700;white-space:nowrap;box-shadow:0 1cqw 2.4cqw rgba(0,0,0,.35)}
.vd .net{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1cqw}
.vd .node{width:11cqw;display:flex;flex-direction:column;align-items:center;gap:1cqw;font-size:1.6cqw;font-weight:700;text-align:center;flex:none}
.vd .node svg{width:7cqw;height:7cqw}
.vd .track{position:relative;flex:1;height:.4cqw;background:repeating-linear-gradient(90deg,rgba(255,255,255,.4) 0 1cqw,transparent 1cqw 1.8cqw);min-width:0}
.vd .pk{position:absolute;top:-1.4cqw;left:0;width:3.2cqw;height:3.2cqw;border-radius:.8cqw;background:var(--amber);display:grid;place-items:center;color:var(--navy);font-weight:800;font-size:1.6cqw}
.vd .scene.on .pk{animation:vd-send 5.6s ease-in-out both}
@keyframes vd-send{0%,50%{left:0;background:var(--amber)}85%{left:calc(100% - 3.2cqw);background:var(--green)}100%{left:calc(100% - 3.2cqw);background:var(--green);opacity:0}}.vd .vd-st{position:absolute;left:0;right:0;top:3cqw;text-align:center;font-size:1.7cqw;font-weight:700}
.vd .vd-st .s1{color:var(--red)}
.vd .vd-st .s2{color:var(--green);position:absolute;inset:0;opacity:0}
.vd .scene.on .vd-st .s1{animation:vd-hide 5.6s both}
.vd .scene.on .vd-st .s2{animation:vd-show 5.6s both}
@keyframes vd-hide{0%,48%{opacity:1}52%,100%{opacity:0}}@keyframes vd-show{0%,52%{opacity:0}58%,100%{opacity:1}}.vd .vd-dash{width:100%;background:#fff;color:var(--navy);border-radius:1.8cqw;padding:1.8cqw;display:flex;flex-direction:column;gap:1.2cqw;box-shadow:0 2cqw 5cqw rgba(0,0,0,.4)}
.vd .vd-dash .t{display:flex;justify-content:space-between;font-weight:800;font-size:1.8cqw;font-family:var(--display)}
.vd .vd-dash .t span{color:#1fa971;font-size:1.4cqw;font-family:var(--body)}
.vd .sts{display:grid;grid-template-columns:repeat(3,1fr);gap:1cqw}
.vd .sts div{background:#f2f5fc;border-radius:1cqw;padding:.9cqw 1.2cqw;font-size:1.2cqw;font-weight:700;color:#5a6685}
.vd .sts strong{display:block;font:800 3.2cqw var(--display);font-variant-numeric:tabular-nums}
.vd .sts .g strong{color:#1fa971}
.vd .sts .y strong{color:#d98a00}
.vd .sts .r strong{color:#e5484d}
.vd .rw{display:flex;align-items:center;gap:1cqw;border:1px solid #dde3f2;border-radius:1cqw;padding:.8cqw 1.2cqw;font-size:1.5cqw;font-weight:700}
.vd .rw u{width:2.6cqw;height:2.6cqw;border-radius:50%;background:#e6ebff;flex:none;text-decoration:none}
.vd .rw span{margin-left:auto;font-size:1.2cqw;padding:.3cqw 1cqw;border-radius:99px}
.vd .rw .o{background:#dcf5ea;color:#1fa971}
.vd .rw .w{background:#fdf0d2;color:#d98a00}
.vd .two{display:flex;flex-direction:column;gap:1.8cqw;width:100%}
.vd .card{background:#fff;color:var(--navy);border-radius:1.8cqw;padding:1.8cqw 2.2cqw;font-size:1.7cqw;font-weight:700;box-shadow:0 1.6cqw 4cqw rgba(0,0,0,.35)}
.vd .card h4{margin:0 0 1cqw;font:800 2cqw var(--display)}
.vd .meter{height:1.2cqw;border-radius:99px;background:#e6ebff;overflow:hidden;margin-top:.6cqw}
.vd .meter i{display:block;height:100%;width:92%;background:#1fa971;transform-origin:left}
.vd .scene.on .meter i{animation:vd-grow 1.4s ease-out 1s both}
@keyframes vd-grow{from{transform:scaleX(0)}}.vd .docs{display:flex;gap:1cqw;flex-wrap:wrap}
.vd .docs span{background:#e6ebff;color:#3550d6;border-radius:.8cqw;padding:.6cqw 1.2cqw;font-size:1.5cqw}
.vd .price{font-family:var(--display);font-weight:800;font-size:9cqw;line-height:1;color:var(--green)}
.vd .price small{font-size:2.2cqw;color:#fff;font-weight:700;display:block;margin-top:.6cqw;font-family:var(--body)}
.vd .cta{display:inline-block;background:var(--green);color:var(--navy);font-weight:800;font-size:2.4cqw;border-radius:99px;padding:1.2cqw 3cqw}
.vd .scene.on .cta{animation:vd-up .7s both,vd-beat 1.6s ease-in-out 1.4s infinite}
@keyframes vd-beat{50%{transform:scale(1.06)}}.vd .url{font-size:2cqw;color:#9db0ff;font-weight:700}
.vd .ctl{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vd .cb{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:99px;padding:9px 18px;font:700 15px var(--body);cursor:pointer}
.vd .cb:focus-visible,.vd .sc:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.vd .time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:14px;margin-left:auto}
.vd .list{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
.vd .sc{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:10px 12px;text-align:left;font:500 14px var(--body);cursor:pointer}
.vd .sc.on{border-color:var(--accent);background:var(--accent-soft)}
.vd .sc b{display:block;font-size:12px;color:var(--muted);font-weight:700}
@media (prefers-reduced-motion:reduce){.vd .scene,.vd .scene *{animation-duration:.01s!important;animation-delay:0s!important;transition:none!important}
}
/* Cabeceras y textos de las secciones nuevas */
.of-wrap{padding-block:0}
.hero .of{margin-top:34px;position:relative}
.sx .sx-intro{max-width:760px;margin-bottom:26px}
.vd .vd-poster{position:absolute;inset:0;z-index:6;display:grid;place-items:center;align-content:center;gap:14px;border:0;width:100%;cursor:pointer;color:#fff;font:600 clamp(18px,3.4cqw,34px) var(--display);background:radial-gradient(120% 120% at 20% 0%,#1d2e6b 0%,#0f1b3d 55%,#09112b 100%);text-align:center;padding:0 24px}
.vd .vd-poster small{display:block;font:500 clamp(13px,1.8cqw,18px) var(--body);color:#9db0ff;margin-top:6px}
.vd .vd-play{width:clamp(56px,10cqw,96px);height:clamp(56px,10cqw,96px);border-radius:50%;background:#2ee6c5;color:#070b2e;display:grid;place-items:center;box-shadow:0 0 0 0 rgba(46,230,197,.5);animation:vd-beat 1.8s infinite}
.vd .vd-play svg{width:42%;height:42%;margin-left:6%}
@keyframes vd-beat{0%{box-shadow:0 0 0 0 rgba(46,230,197,.5)}100%{box-shadow:0 0 0 26px rgba(46,230,197,0)}}
.vd .vd-poster:focus-visible{outline:4px solid #2ee6c5;outline-offset:-8px}
.vd-trans{margin-top:16px;max-width:760px}
.vd-trans summary{cursor:pointer;font-weight:600;color:var(--blue)}
.vd-trans p{margin-top:8px;color:var(--muted)}

/* Sectores: tabs y paneles (sin JS se ven todos; con JS, uno a la vez) */
.sx .sx-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.sx .sx-body{display:block}
.sx .sx-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:center;margin-bottom:22px}
.sx .sx-panel[hidden]{display:none}
.sx .sx-svg{display:block;width:100%;height:auto;border-radius:16px;background:var(--sky)}
.sx .sx-txt h3{font:700 24px var(--display);margin:0 0 4px}
.sx .sx-txt p{color:var(--muted);margin:0}
.sx .sx-txt ul{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.sx .sx-txt li{display:flex;gap:10px;align-items:flex-start;font-weight:600;color:#161b3d}
.sx .sx-txt li::before{content:"\2713";flex:none;width:22px;height:22px;border-radius:50%;background:var(--ok-soft);color:var(--ok);display:grid;place-items:center;font-size:13px;font-weight:800}
.sx .sx-gl{fill:none;stroke:var(--ok);stroke-width:3;transform-box:fill-box;transform-origin:center;animation:sx-ping 1.8s ease-out infinite}
.sx .chain{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin-top:8px}
.sx .chain .n{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-weight:600;font-size:15px;text-align:center;color:var(--ink)}
.sx .chain .n small{display:block;color:var(--muted);font-weight:400;font-size:13px}
.sx .chain .ar{color:var(--accent);font-weight:700;font-size:20px}
@media (max-width:760px){.sx .sx-panel{grid-template-columns:1fr}.sx .chain{grid-template-columns:1fr}.sx .chain .ar{transform:rotate(90deg);text-align:center}}
.sx .sx-tab{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:99px;padding:8px 16px;font:600 14px var(--body);cursor:pointer}
.sx .sx-tab.on{background:var(--accent);border-color:var(--accent);color:#fff}
