
/* Azul VALUA protagonista, blanco clínico, rojo para lo importante. Contenedor de 1200px; paneles del software sobre fotografía. */
:root{
  /* Colores tomados del logo VALUA */
  --blue:#04489A; --blue-deep:#022F6E; --navy:#021B44; --ink:#0D1A2E;
  --red:#D10A16; --red-deep:#A8070F;
  --cyan:#09DCFC; --iris-blue:#015CE9; --violet:#BE6AFA;
  --iris:linear-gradient(90deg,#09DCFC 0%,#015CE9 50%,#BE6AFA 100%);
  --muted:#4D5B74; --line:#DCE4F0; --mist:#F1F5FC; --blush:#FDF1F2; --soft:#C3D2EA; --sky:#8DC4FF;
  --display:'Sora','Segoe UI',system-ui,sans-serif;
  --body:'DM Sans','Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:#FFFFFF;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--blue)} a:hover{color:var(--blue-deep)}
h1,h2,h3{text-wrap:balance;margin:0;font-family:var(--display);color:var(--navy)}
p{text-wrap:pretty;margin:0}
img{max-width:100%}
ul,ol{margin:0;padding:0;list-style:none}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px;width:100%}
section{padding:104px 0}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.eyebrow::before{content:'';width:28px;height:4px;border-radius:2px;background:var(--iris)}
.dark .eyebrow{color:#FF6B73}
.h2{font-weight:700;font-size:clamp(30px,3.6vw,46px);line-height:1.1;letter-spacing:-.02em}
.dark .h2,.dark h3{color:#FFFFFF}
.lead{font-size:18px;line-height:1.65;color:var(--muted)}
.dark .lead{color:var(--soft)}
.head{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end;justify-content:space-between}
.head > div{flex:1 1 520px;display:flex;flex-direction:column;gap:18px}
.head > p{flex:1 1 360px;max-width:500px}
.stack{display:flex;flex-direction:column;gap:18px;max-width:760px}
.col{display:flex;flex-direction:column}
.grid{display:grid;gap:20px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.5}
.check svg{flex-shrink:0;margin-top:2px}
/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;font-family:var(--body);font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;border:1.5px solid transparent;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s}
.btn-primary{background:var(--red);color:#FFFFFF;box-shadow:0 10px 24px rgba(209,10,22,.22)}
.btn-primary:hover{background:var(--red-deep);color:#FFFFFF;transform:translateY(-1px)}
.btn-blue{background:var(--blue);color:#FFFFFF}
.btn-blue:hover{background:var(--blue-deep);color:#FFFFFF}
.btn-ghost{background:transparent;color:var(--blue);border-color:#B9CBE6}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue-deep)}
.btn-light{background:#FFFFFF;color:var(--blue-deep)}
.btn-light:hover{background:#E6EEFA;color:var(--blue-deep)}
.btn-outline-light{background:transparent;color:#FFFFFF;border-color:rgba(255,255,255,.45)}
.btn-outline-light:hover{border-color:#FFFFFF;color:#FFFFFF}
.btn-sm{min-height:44px;padding:0 20px;font-size:15px}
button{font-family:var(--body)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7FB0F5;outline-offset:2px}
/* Nav */
header.top{position:sticky;top:0;z-index:40;box-shadow:inset 0 -3px 0 transparent;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:88px}
.navlinks{display:flex;align-items:center;gap:26px}
.navlinks a{color:var(--ink);text-decoration:none;font-weight:500;font-size:15px;padding:10px 4px}
.navlinks a:hover{color:var(--blue)}
.menu-btn{display:none;width:44px;height:44px;border-radius:12px;border:1.5px solid var(--line);background:#FFFFFF;color:var(--navy);align-items:center;justify-content:center;cursor:pointer}
.mobile-nav{display:none;border-top:1px solid var(--line);background:#FFFFFF}
.mobile-nav.open{display:block}
.mobile-nav .wrap{display:flex;flex-direction:column;padding-top:8px;padding-bottom:16px}
.mobile-nav a{padding:14px 0;color:var(--ink);text-decoration:none;font-weight:600;border-bottom:1px solid var(--line)}
/* Placeholder de foto */
.ph{background-color:#DDE7F5;background-image:repeating-linear-gradient(135deg,rgba(4,72,154,.07) 0 12px,transparent 12px 24px)}
.ph-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;background:rgba(255,255,255,.88);font-size:13px;font-weight:600;color:var(--blue-deep)}
/* Hero */
.hero{position:relative;background:radial-gradient(900px 500px at 92% 10%,rgba(209,10,22,.10),transparent 60%),radial-gradient(800px 520px at 0% 0%,rgba(4,72,154,.14),transparent 60%),linear-gradient(180deg,#F1F5FC 0%,#FFFFFF 100%);padding:72px 0 88px;overflow:hidden}
.hero .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:56px}
.hero-copy{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:28px}
.pill{display:inline-flex;align-self:flex-start;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:#FFFFFF;border:1px solid var(--line);font-size:14px;font-weight:600;color:var(--blue-deep)}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(209,10,22,.15)}
.hero h1{font-weight:700;font-size:clamp(38px,5.2vw,64px);line-height:1.04;letter-spacing:-.025em}
.hero h1 span{color:var(--blue)}
.hero h1 em{font-style:normal;color:var(--red)}
.iris-line{display:block;width:120px;height:6px;border-radius:3px;background:var(--iris)}
.hero-visual{flex:1 1 480px;min-width:0;position:relative;min-height:520px}
.hero-photo{position:absolute;inset:0 0 0 48px;border-radius:28px}
.carousel{overflow:hidden;background:var(--navy);padding:3px;background-image:var(--iris)}
.carousel .frame{position:absolute;inset:3px;border-radius:25px;overflow:hidden;background:var(--navy)}
.slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.2s ease}
.slide.on{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform 6s ease-out}
.slide.on img{transform:scale(1.08)}
.frame::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,27,68,.35) 0%,transparent 30%,transparent 70%,rgba(2,27,68,.35) 100%);pointer-events:none}
.c-ctrl{position:absolute;top:18px;right:18px;z-index:3;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:999px;background:rgba(2,27,68,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.c-dot{width:10px;height:10px;border-radius:999px;border:none;padding:0;background:rgba(255,255,255,.5);cursor:pointer;transition:width .3s,background .3s}
.c-dot[aria-current="true"]{width:26px;background:#FFFFFF}
.c-btn{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:#FFFFFF;display:flex;align-items:center;justify-content:center;cursor:pointer}
.c-dot:focus-visible,.c-btn:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}
.panel{position:absolute;background:#FFFFFF;border-radius:20px;box-shadow:0 24px 60px rgba(2,47,110,.18);padding:20px;display:flex;flex-direction:column;gap:14px}
.panel-title{font-family:var(--display);font-weight:600;font-size:14px;color:var(--navy)}
.float-a{animation:floatA 7s ease-in-out infinite}
.float-b{animation:floatB 8s ease-in-out infinite}
@keyframes floatA{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes floatB{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.bars{display:flex;align-items:flex-end;gap:8px}
.bars > div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}
.bar{width:100%;border-radius:6px 6px 2px 2px}
.tiny{font-size:11px;color:var(--muted)}
.time{font-size:12px;font-weight:700;color:var(--blue);width:44px;font-variant-numeric:tabular-nums}
/* Beneficios */
.benefit{position:relative;overflow:hidden;padding:32px;border-radius:24px;background:var(--mist);display:flex;flex-direction:column;gap:16px}
.ico{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--iris-blue));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.benefit::before{content:'';position:absolute;left:0;top:0;right:0;height:4px;background:var(--iris)}
.benefit:nth-child(2) .ico{background:linear-gradient(135deg,var(--red),#F0414B)}
.benefit h3{font-weight:600;font-size:22px}
.benefit p{font-size:16px;line-height:1.6;color:var(--muted)}
/* Módulos */
.dark{background:var(--navy);color:#FFFFFF}
.mod-btn{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:14px 16px;border-radius:16px;border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);color:#FFFFFF;cursor:pointer;text-align:left;font-weight:600;font-size:15px;transition:background .2s,border-color .2s,color .2s}
.mod-btn:hover{border-color:rgba(255,255,255,.6)}
.mod-btn[aria-pressed="true"]{background:#FFFFFF;color:var(--blue);border-color:#FFFFFF;box-shadow:inset 4px 0 0 var(--red)}
.card-white{background:#FFFFFF;color:var(--ink);border-radius:28px;padding:36px;display:flex;flex-direction:column;gap:22px}
.card-white h3{color:var(--navy)}
/* Pasos */
.step-btn{display:flex;align-items:center;gap:14px;width:100%;min-height:72px;padding:14px 18px;border-radius:18px;border:1.5px solid var(--line);background:#FFFFFF;color:var(--ink);cursor:pointer;text-align:left;transition:background .2s,border-color .2s,color .2s}
.step-btn:hover{border-color:var(--blue)}
.step-btn .num{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;background:var(--blush);color:var(--red)}
.step-btn.done .num{background:var(--blue);color:#FFFFFF}
.step-btn[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#FFFFFF}
.step-btn[aria-pressed="true"] .num{background:#FFFFFF;color:var(--blue)}
.screen{background:#FFFFFF;border-radius:18px;box-shadow:0 16px 40px rgba(2,47,110,.10);overflow:hidden}
.screen-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}
.fieldbox{padding:10px 12px;border-radius:10px;border:1px solid var(--line);font-size:14px;font-variant-numeric:tabular-nums}
.video{border-radius:28px;background:linear-gradient(135deg,#022F6E,#04489A);min-height:340px;display:flex;align-items:center;justify-content:center;padding:40px;text-align:center;color:#FFFFFF}
.play{width:88px;height:88px;border-radius:50%;border:none;background:#FFFFFF;color:var(--blue);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 14px rgba(255,255,255,.14)}
/* Tabs */
.tab{min-height:48px;padding:0 22px;border-radius:999px;font-size:16px;font-weight:600;border:1.5px solid var(--line);background:#FFFFFF;color:var(--ink);cursor:pointer}
.tab:hover{border-color:var(--blue)}
.tab[aria-selected="true"]{background:var(--blue);border-color:var(--blue);color:#FFFFFF}
.split{display:flex;flex-wrap:wrap;background:#FFFFFF;border-radius:28px;overflow:hidden;box-shadow:0 20px 50px rgba(2,47,110,.08)}
/* Dashboard */
.area-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:16px 18px;border-radius:16px;text-align:left;border:1.5px solid var(--line);background:#FFFFFF;color:var(--ink);cursor:pointer}
.area-btn:hover{border-color:var(--blue)}
.area-btn[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#FFFFFF}
.area-btn b{font-family:var(--display);font-weight:600;font-size:16px}
.area-btn span{font-size:14px;line-height:1.5;opacity:.85}
.zone{border-radius:14px;padding:4px;transition:box-shadow .25s,opacity .25s;opacity:.55}
.zone.on{opacity:1;box-shadow:0 0 0 3px var(--blue)}
.tile{background:#FFFFFF;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px;height:100%}
.tile .k{font-size:12px;color:var(--muted)}
.tile .v{font-family:var(--display);font-weight:700;font-size:26px;color:var(--navy);font-variant-numeric:tabular-nums}
.tile .t{font-size:13px;font-weight:700;color:var(--navy)}
.row{display:flex;gap:10px;align-items:center;font-size:13px}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
/* Seguridad */
.sec-card{padding:24px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);display:flex;flex-direction:column;gap:10px}
.sec-card b{font-family:var(--display);font-weight:600;font-size:18px}
.sec-card span{font-size:15px;line-height:1.55;color:var(--soft)}
/* Planes */
.plan{display:flex;flex-direction:column;gap:14px;padding:32px;border-radius:24px;background:#FFFFFF;color:var(--ink);border:1.5px solid var(--line)}
.plan.featured{box-shadow:0 24px 50px rgba(2,47,110,.25);background:linear-gradient(160deg,var(--blue-deep),var(--blue));color:#FFFFFF;border-color:var(--blue-deep)}
.plan .name{font-family:var(--display);font-weight:700;font-size:24px}
.badge{box-shadow:0 6px 14px rgba(209,10,22,.3);font-size:12px;font-weight:700;padding:6px 10px;border-radius:999px;background:var(--red);color:#FFFFFF}
/* Onboarding */
.ob{background:#FFFFFF;border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:12px}
/* Formulario */
.contact{position:relative;background:radial-gradient(700px 400px at 100% 100%,rgba(190,106,250,.25),transparent 60%),radial-gradient(600px 400px at 0% 100%,rgba(9,220,252,.18),transparent 60%),linear-gradient(160deg,#021B44 0%,#022F6E 55%,#04489A 100%);color:#FFFFFF}
label{font-size:14px;font-weight:600}
.field{width:100%;min-height:48px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#FFFFFF;font-family:var(--body);font-size:16px;color:var(--ink)}
.field:focus{border-color:var(--blue);outline:none}
.err{font-size:13px;color:var(--red);min-height:0}
/* Footer */
footer{border-top:4px solid transparent;border-image:var(--iris) 1;background:var(--navy);color:var(--soft);padding:64px 0 40px}
footer a.fl{color:var(--soft);text-decoration:none;font-size:15px}
footer a.fl:hover{color:#FFFFFF}
.wa{position:fixed;right:24px;bottom:24px;z-index:50;width:60px;height:60px;border-radius:50%;background:#1E8E4E;color:#FFFFFF;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px rgba(0,0,0,.25);transition:transform .2s}
.wa:hover{transform:scale(1.06);color:#FFFFFF}
/* Animación de entrada (parte visible por defecto) */
.reveal{transition:opacity .6s ease,transform .6s ease}
.js .reveal.pending{opacity:.001;transform:translateY(18px)}
@media (max-width:960px){.navlinks,.hide-md{display:none !important}.menu-btn{display:inline-flex}}
@media (max-width:640px){.wrap{padding:0 18px}section{padding:72px 0}.hide-sm{display:none !important}.hero-visual{min-height:440px}.hero-photo{left:24px}.card-white{padding:24px}}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important;scroll-behavior:auto !important}.js .reveal.pending{opacity:1;transform:none}}

.nav-logo{height:60px;width:auto;display:block;image-rendering:-webkit-optimize-contrast}
.top .wrap > a:first-child{flex-shrink:0;padding:4px 0}
@media (max-width:1180px){.navlinks{gap:18px !important}}
@media (max-width:640px){.nav-logo{height:46px}.top .wrap{height:76px}}

/* ===== Multipágina ===== */
.navlinks a.active{color:var(--blue);box-shadow:inset 0 -3px 0 var(--red)}
.dd{position:relative}
.dd > a{display:inline-flex;align-items:center;gap:6px}
.dd-menu{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);width:560px;max-width:90vw;background:#FFFFFF;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 60px rgba(2,47,110,.16);padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;z-index:60}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.dd-menu a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:600;box-shadow:none !important}
.dd-menu a:hover{background:var(--mist);color:var(--blue)}
.dd-menu a span.i{width:34px;height:34px;border-radius:10px;background:var(--mist);color:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dd-menu .all{grid-column:1 / -1;justify-content:center;border-top:1px solid var(--line);border-radius:0 0 10px 10px;margin-top:6px;color:var(--red)}
.mobile-nav a.active{color:var(--red)}

/* Encabezado de página interna */
.page-hero{position:relative;overflow:hidden;padding:64px 0 72px;background:radial-gradient(800px 420px at 95% 0%,rgba(209,10,22,.09),transparent 60%),radial-gradient(800px 480px at 0% 0%,rgba(4,72,154,.13),transparent 60%),linear-gradient(180deg,#F1F5FC 0%,#FFFFFF 100%)}
.page-hero .wrap{display:flex;flex-direction:column;gap:22px}
.page-hero h1{font-weight:700;font-size:clamp(34px,4.6vw,58px);line-height:1.06;letter-spacing:-.025em;max-width:900px}
.page-hero h1 em{font-style:normal;color:var(--red)}
.page-hero .lead{max-width:680px;font-size:clamp(17px,1.5vw,20px)}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--blue)}
.crumbs span[aria-current]{color:var(--navy);font-weight:600}

/* Tarjetas de módulo */
.mod-card{display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:22px;background:#FFFFFF;border:1.5px solid var(--line);text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.mod-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 18px 40px rgba(2,47,110,.10);color:var(--ink)}
.mod-card::before{content:'';position:absolute;left:0;top:0;right:0;height:4px;background:var(--iris);opacity:0;transition:opacity .2s}
.mod-card:hover::before{opacity:1}
.mod-card .mi{width:48px;height:48px;border-radius:14px;background:var(--mist);color:var(--blue);display:flex;align-items:center;justify-content:center}
.mod-card h3{font-weight:600;font-size:19px}
.mod-card p{font-size:15px;line-height:1.55;color:var(--muted)}
.mod-card .more{margin-top:auto;font-weight:700;font-size:14px;color:var(--red);display:inline-flex;align-items:center;gap:6px}
.dark .mod-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16);color:#FFFFFF}
.dark .mod-card:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.5);color:#FFFFFF}
.dark .mod-card .mi{background:rgba(255,255,255,.1);color:#FFFFFF}
.dark .mod-card h3{color:#FFFFFF}
.dark .mod-card p{color:var(--soft)}
.dark .mod-card .more{color:#FF8A91}

/* Recorrido estático */
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px;counter-reset:f}
.flow li{position:relative;padding:24px;border-radius:20px;background:#FFFFFF;border:1.5px solid var(--line);display:flex;flex-direction:column;gap:8px}
.flow li b{font-family:var(--display);font-size:18px;color:var(--navy)}
.flow li span{font-size:15px;line-height:1.55;color:var(--muted)}
.flow li .n{width:36px;height:36px;border-radius:50%;background:var(--blush);color:var(--red);font-weight:700;display:flex;align-items:center;justify-content:center}

/* Bloques alternos */
.alt{display:flex;flex-wrap:wrap;gap:48px;align-items:center}
.alt.rev{flex-direction:row-reverse}
.alt > .media{flex:1 1 420px;min-height:360px;border-radius:28px;display:flex;align-items:flex-end;padding:22px;overflow:hidden;position:relative}
.alt > .copy{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:18px}
.alt h2{font-weight:700;font-size:clamp(26px,3vw,38px);line-height:1.12;letter-spacing:-.02em}
.photo{background-size:cover;background-position:center;background-color:var(--navy)}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags a,.tags span{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;background:var(--mist);color:var(--blue);font-size:14px;font-weight:600;text-decoration:none}
.tags a:hover{background:#E1EAF8}

/* Tabla comparativa */
.table-box{overflow-x:auto;border-radius:22px;border:1.5px solid var(--line);background:#FFFFFF}
table.cmp{width:100%;border-collapse:collapse;min-width:640px;font-size:15px}
.cmp th,.cmp td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line)}
.cmp thead th{font-family:var(--display);font-size:16px;color:var(--navy);background:var(--mist)}
.cmp td:not(:first-child),.cmp th:not(:first-child){text-align:center;width:150px}
.cmp tr:last-child td{border-bottom:none}
.yes{color:var(--blue);font-weight:700}
.no{color:#9AA6BA}

/* Banda CTA */
.cta-band{position:relative;overflow:hidden;border-radius:32px;padding:56px;background:radial-gradient(600px 300px at 100% 100%,rgba(190,106,250,.30),transparent 60%),radial-gradient(500px 300px at 0% 100%,rgba(9,220,252,.20),transparent 60%),linear-gradient(140deg,#021B44,#04489A);color:#FFFFFF;display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between}
.cta-band h2{color:#FFFFFF;font-weight:700;font-size:clamp(26px,3vw,38px);line-height:1.12;max-width:680px}
.cta-band p{color:var(--soft);font-size:17px;line-height:1.6;margin-top:12px;max-width:620px}

/* Info cards */
.info{padding:28px;border-radius:22px;background:#FFFFFF;border:1.5px solid var(--line);display:flex;flex-direction:column;gap:12px}
.info h3{font-weight:600;font-size:20px}
.info p{font-size:15px;line-height:1.6;color:var(--muted)}
.soon{align-self:flex-start;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;background:var(--blush);color:var(--red)}

/* Paginación de módulos */
.pager{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}
.pager a{flex:1 1 280px;display:flex;flex-direction:column;gap:4px;padding:20px 24px;border-radius:18px;border:1.5px solid var(--line);text-decoration:none;color:var(--navy)}
.pager a:hover{border-color:var(--blue)}
.pager a small{font-size:13px;color:var(--muted);font-weight:600}
.pager a b{font-family:var(--display);font-size:18px}
.pager a.next{text-align:right}

.legal{max-width:760px}
.legal h2{font-size:22px;margin:28px 0 10px}
.legal p{font-size:16px;line-height:1.7;color:var(--muted)}
@media (max-width:640px){.cta-band{padding:32px 24px}.page-hero{padding:44px 0 52px}}

/* ===== Hero inmersivo (inicio) ===== */
.hx{padding:0;position:relative;overflow:hidden;background:var(--navy);color:#FFFFFF;isolation:isolate}
.hx-bg{position:absolute;inset:0;z-index:-2}
.hx-bg .slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.6s ease}
.hx-bg .slide.on{opacity:1}
.hx-bg .slide img{width:100%;height:100%;object-fit:cover;object-position:70% 30%;display:block;transform:scale(1.04);transition:transform 7s ease-out}
.hx-bg .slide.on img{transform:scale(1.14)}
.hx-shade{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(90deg,rgba(2,27,68,.97) 0%,rgba(2,27,68,.9) 34%,rgba(2,27,68,.72) 62%,rgba(2,27,68,.62) 100%),
  linear-gradient(0deg,rgba(2,27,68,.95) 0%,rgba(2,27,68,0) 38%),
  radial-gradient(700px 500px at 8% 110%,rgba(209,10,22,.35),transparent 70%)}
.hx-grid{position:absolute;inset:0;z-index:-1;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 55%);mask-image:linear-gradient(90deg,#000 0%,transparent 55%)}
.hx-main{display:flex;flex-wrap:wrap;gap:48px;align-items:center;padding-top:72px;padding-bottom:24px}
.hx-copy{flex:1 1 560px;min-width:0;display:flex;flex-direction:column;gap:26px;max-width:680px}
.hx .pill{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#FFFFFF;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hx h1{color:#FFFFFF;font-weight:700;font-size:clamp(40px,5.4vw,76px);line-height:.98;letter-spacing:-.035em}
.hx h1 em{font-style:normal;color:#FF4D57}
.hx h1 .grad{display:block;background:linear-gradient(90deg,#3FE3FF 0%,#7FB2FF 45%,#D49BFF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx .lead{color:#D5E0F2;font-size:clamp(17px,1.5vw,20px);max-width:560px}
.hx .btn-ghost{color:#FFFFFF;border-color:rgba(255,255,255,.4)}
.hx .btn-ghost:hover{border-color:#FFFFFF;color:#FFFFFF;background:rgba(255,255,255,.08)}
.hx-checks{display:flex;flex-wrap:wrap;gap:22px;font-size:14px;color:#C3D2EA}
.hx-checks span{display:flex;align-items:center;gap:8px}
.hx-checks svg{color:#3FE3FF}

/* Tarjeta de vidrio */
.glass{flex:0 1 360px;min-width:0;margin-left:auto;position:relative;border-radius:26px;padding:22px;background:rgba(2,27,68,.62);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);box-shadow:0 30px 80px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:18px}
.glass::before{content:'';position:absolute;inset:-1px;border-radius:27px;padding:1px;background:var(--iris);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.8;pointer-events:none}
.g-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.g-title{font-family:var(--display);font-weight:600;font-size:15px}
.live{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#FF8A91}
.live i{width:8px;height:8px;border-radius:50%;background:#FF4D57;animation:blink 1.6s ease-in-out infinite}
@keyframes blink{50%{opacity:.25}}
.g-row{display:flex;gap:14px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.07);font-size:14px}
.g-row b{font-variant-numeric:tabular-nums;font-size:13px;color:#7FD9FF;width:42px}
.g-row.hot b{color:#FF8A91}
.g-bars{display:flex;align-items:flex-end;gap:8px;height:74px}
.g-bars > div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}
.g-bars .bar{width:100%;border-radius:6px 6px 2px 2px;background:rgba(255,255,255,.28);transform-origin:bottom;animation:grow 1.2s cubic-bezier(.2,.8,.2,1) both}
.g-bars .bar.max{background:linear-gradient(180deg,#FF4D57,#D10A16)}
.g-bars .tiny{color:#B9C8E2}
@keyframes grow{from{transform:scaleY(0)}}
.toast{position:absolute;left:-40px;bottom:-26px;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:#FFFFFF;color:var(--ink);box-shadow:0 20px 50px rgba(0,0,0,.35);animation:toast 9s ease-in-out infinite}
.toast .ti{width:38px;height:38px;border-radius:12px;background:var(--blush);color:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0}
@keyframes toast{0%,8%{opacity:0;transform:translateY(16px) scale(.96)}14%,72%{opacity:1;transform:none}80%,100%{opacity:0;transform:translateY(16px) scale(.96)}}

/* Línea de pulso */
.ecg{display:block;width:100%;height:110px;margin-top:-6px}
.ecg .base{stroke:rgba(255,255,255,.12)}
.ecg .beam{stroke:url(#ecgGrad);stroke-dasharray:140 860;animation:beam 4.5s linear infinite;filter:drop-shadow(0 0 6px rgba(63,227,255,.8))}
@keyframes beam{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}

/* Franja de recorrido */
.hx-strip{position:relative;border-top:1px solid rgba(255,255,255,.12);background:rgba(2,27,68,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hx-strip .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:28px;padding-top:22px;padding-bottom:22px}
.track{flex:1 1 560px;min-width:0;position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.track::before{content:'';position:absolute;left:12px;right:12px;top:11px;height:2px;background:rgba(255,255,255,.18)}
.track .run{position:absolute;top:5px;left:6px;width:14px;height:14px;border-radius:50%;background:#FFFFFF;box-shadow:0 0 0 6px rgba(63,227,255,.25),0 0 18px #3FE3FF;animation:run 8s cubic-bezier(.6,0,.4,1) infinite}
@keyframes run{0%{left:6px}25%{left:calc(25% + 6px)}50%{left:calc(50% + 6px)}75%{left:calc(75% + 6px)}95%,100%{left:calc(100% - 20px)}}
.node{position:relative;display:flex;flex-direction:column;gap:6px;padding-top:30px;font-size:14px;color:#C3D2EA}
.node::before{content:'';position:absolute;left:4px;top:4px;width:16px;height:16px;border-radius:50%;background:var(--navy);border:2px solid rgba(255,255,255,.45);animation:lit 8s linear infinite;animation-delay:var(--d)}
.node b{color:#FFFFFF;font-family:var(--display);font-size:15px;font-weight:600}
@keyframes lit{0%,3%{border-color:#3FE3FF;background:#3FE3FF;box-shadow:0 0 14px #3FE3FF}22%,100%{border-color:rgba(255,255,255,.45);background:var(--navy);box-shadow:none}}
.hx .c-ctrl{position:static;background:rgba(255,255,255,.1)}

@media (max-width:900px){
  .hx-shade{background:linear-gradient(180deg,rgba(2,27,68,.75) 0%,rgba(2,27,68,.92) 45%,rgba(2,27,68,.98) 100%)}
  .glass{margin:0 auto 24px;flex-basis:100%;max-width:440px}
  .toast{left:12px;right:12px;bottom:-30px}
  .hx-main{padding-top:56px}
}
@media (max-width:640px){
  .track{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}
  .track::before,.track .run{display:none}
}


/* Médico real recortado */
.hx-main{position:relative}
.hx-doc{flex:1 1 400px;max-width:440px;margin:-40px 20px -64px auto;position:relative;align-self:flex-end;z-index:2;--mx:0;--my:0}
.doc{position:relative;z-index:1;width:100%;height:auto;display:block;transform-origin:50% 100%;
  -webkit-mask-image:linear-gradient(180deg,#000 80%,transparent 99%);mask-image:linear-gradient(180deg,#000 80%,transparent 99%);
  filter:drop-shadow(0 30px 40px rgba(0,0,0,.35));
  translate:calc(var(--mx) * -8px) calc(var(--my) * -6px);
  animation:sway 7s ease-in-out infinite}
@keyframes sway{0%,100%{transform:rotate(-1.1deg) scaleY(1)}50%{transform:rotate(1.1deg) scaleY(1.012)}}
.doc-ring{position:absolute;z-index:0;left:6%;right:2%;top:12%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(closest-side,rgba(63,227,255,.30),rgba(4,72,154,.35) 55%,transparent 72%);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.08);animation:ring 9s ease-in-out infinite}
.doc-ring::after{content:'';position:absolute;inset:7%;border-radius:50%;border:2px solid transparent;
  background:var(--iris) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55;animation:spin 18s linear infinite}
@keyframes ring{50%{transform:scale(1.05)}}
@keyframes spin{to{transform:rotate(360deg)}}
.flo{position:absolute;z-index:3;translate:calc(var(--mx) * 14px) calc(var(--my) * 10px)}
.hx-live{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:rgba(2,27,68,.75);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:13px;font-weight:600;color:#FFFFFF;white-space:nowrap}
.fl-1{top:14%;left:-2%;animation:floatA 6s ease-in-out infinite}
.fl-2{top:29%;right:-18%;width:210px;padding:14px;border-radius:16px;background:#FFFFFF;box-shadow:0 20px 50px rgba(0,0,0,.3);display:flex;flex-direction:column;gap:10px;animation:floatB 7s ease-in-out infinite}
.fl-2 .g-bars .bar{background:#C7D8F1}
.fl-2 .g-bars .bar.max{background:linear-gradient(180deg,#FF4D57,#D10A16)}
.fl-2 .g-bars .tiny{color:var(--muted)}
.hx-doc .toast{left:auto;right:-14%;bottom:auto;top:62%}
.demo-btn{position:absolute;z-index:4;left:50%;bottom:92px;translate:-50% 0;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 28px;border-radius:999px;
  background:linear-gradient(135deg,#D10A16,#F0414B);color:#FFFFFF;font-family:var(--display);font-weight:700;font-size:17px;text-decoration:none;white-space:nowrap;
  box-shadow:0 18px 40px rgba(209,10,22,.45),inset 0 0 0 1px rgba(255,255,255,.25);transition:transform .2s,box-shadow .2s}
.demo-btn:hover{color:#FFFFFF;transform:translateY(-2px) scale(1.03);box-shadow:0 22px 50px rgba(209,10,22,.55),inset 0 0 0 1px rgba(255,255,255,.35)}
.demo-btn .pulse{position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(255,77,87,.6);animation:pulse 2.2s ease-out infinite;pointer-events:none}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,77,87,.55)}100%{box-shadow:0 0 0 22px rgba(255,77,87,0)}}
@media (max-width:900px){
  .hx-doc{margin:0 auto -48px;max-width:380px;flex-basis:100%}
  .fl-1{left:0}.fl-2{right:-2%;width:170px}.hx-doc .toast{right:-2%}
  .demo-btn{bottom:70px}
}
@media (max-width:480px){.fl-2,.hx-doc .toast{display:none}}

/* ===== Presentación: hub conectado ===== */
.pres{position:relative;overflow:hidden;isolation:isolate;padding:120px 0;
  background:
    radial-gradient(600px 420px at 85% 20%,rgba(9,220,252,.16),transparent 70%),
    radial-gradient(560px 420px at 70% 90%,rgba(190,106,250,.14),transparent 70%),
    radial-gradient(620px 460px at 0% 100%,rgba(209,10,22,.08),transparent 70%),
    linear-gradient(180deg,#F4F8FE 0%,#EAF1FB 100%)}
.pres::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64'%3E%3Cpath d='M30 26h4v4h4v4h-4v4h-4v-4h-4v-4h4z' fill='%2304489A' fill-opacity='.07'/%3E%3C/svg%3E");
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 40%,#000 70%,transparent);mask-image:linear-gradient(90deg,transparent,#000 40%,#000 70%,transparent)}
.pres-grid{display:flex;flex-wrap:wrap;gap:64px;align-items:center}
.pres-copy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:22px}
.pres-copy .h2{font-size:clamp(34px,4.2vw,56px);line-height:1.04}
.pres-copy .h2 span{background:linear-gradient(90deg,#04489A,#015CE9 50%,#BE6AFA);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Beneficios */
.feats{display:flex;flex-direction:column;gap:14px;margin-top:10px}
.feat{position:relative;display:flex;gap:18px;align-items:flex-start;padding:20px 22px;border-radius:20px;background:rgba(255,255,255,.75);border:1px solid rgba(4,72,154,.10);box-shadow:0 10px 30px rgba(2,47,110,.06);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .25s,box-shadow .25s,border-color .25s}
.feat:hover{transform:translateX(6px);box-shadow:0 18px 40px rgba(2,47,110,.12);border-color:rgba(4,72,154,.25)}
.feat .fi{position:relative;width:56px;height:56px;border-radius:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#FFFFFF}
.feat .fi::after{content:'';position:absolute;inset:-5px;border-radius:22px;border:1.5px dashed currentColor;opacity:.25;animation:spin 14s linear infinite}
.feat:nth-child(1) .fi{background:linear-gradient(135deg,#04489A,#015CE9);box-shadow:0 10px 24px rgba(1,92,233,.35);--c:#015CE9}
.feat:nth-child(2) .fi{background:linear-gradient(135deg,#D10A16,#F0414B);box-shadow:0 10px 24px rgba(209,10,22,.35)}
.feat:nth-child(3) .fi{background:linear-gradient(135deg,#6A3FD8,#BE6AFA);box-shadow:0 10px 24px rgba(190,106,250,.35)}
.feat:nth-child(1) .fi::after{color:#015CE9}.feat:nth-child(2) .fi::after{color:#D10A16}.feat:nth-child(3) .fi::after{color:#BE6AFA}
.feat h3{font-weight:600;font-size:19px;margin-bottom:6px}
.feat p{font-size:15px;line-height:1.55;color:var(--muted)}
.feat .no{position:absolute;right:18px;top:14px;font-family:var(--display);font-weight:700;font-size:13px;color:#9FB2CF;letter-spacing:.08em}

/* Hub */
.hub{flex:1 1 480px;min-width:0;max-width:580px;margin:0 auto 64px;position:relative;aspect-ratio:1}
.hub svg.lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.orbit{position:absolute;border-radius:50%;border:1.5px dashed rgba(4,72,154,.18);left:50%;top:50%;translate:-50% -50%}
.orbit.o1{width:46%;height:46%;animation:spin 40s linear infinite}
.orbit.o2{width:74%;height:74%;border-style:solid;border-color:rgba(4,72,154,.10)}
.orbit.o3{width:100%;height:100%;animation:spin 70s linear infinite reverse}
.orbit.o1::after,.orbit.o3::after{content:'';position:absolute;top:-5px;left:50%;width:10px;height:10px;border-radius:50%;background:#015CE9;box-shadow:0 0 12px #09DCFC}
.orbit.o3::after{background:#D10A16;box-shadow:0 0 12px #FF4D57}
.core{position:absolute;left:50%;top:50%;translate:-50% -50%;width:31%;aspect-ratio:1;border-radius:50%;background:#FFFFFF;display:flex;align-items:center;justify-content:center;box-shadow:0 30px 70px rgba(2,47,110,.22),0 0 0 10px rgba(255,255,255,.6)}
.core::before{content:'';position:absolute;inset:-6px;border-radius:50%;padding:3px;background:conic-gradient(from 0deg,#09DCFC,#015CE9,#BE6AFA,#D10A16,#09DCFC);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 6s linear infinite}
.core::after{content:'';position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(1,92,233,.35);animation:halo 2.8s ease-out infinite}
@keyframes halo{to{box-shadow:0 0 0 46px rgba(1,92,233,0)}}
.core img{width:62%;height:auto;position:relative;z-index:1}
.hnode{position:absolute;translate:-50% -50%;display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2}
.hnode .hb{width:64px;height:64px;border-radius:20px;background:#FFFFFF;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px rgba(2,47,110,.16);border:1px solid rgba(4,72,154,.08);transition:transform .25s}
.hnode:hover .hb{transform:scale(1.1) rotate(-4deg)}
.hnode span{font-size:13px;font-weight:700;color:var(--navy);background:rgba(255,255,255,.85);padding:4px 10px;border-radius:999px;white-space:nowrap}
.hnode .hb{animation:bob 5s ease-in-out infinite;animation-delay:var(--dl)}
@keyframes bob{50%{transform:translateY(-6px)}}
.flow-line{stroke:url(#hubGrad);stroke-width:3;fill:none;stroke-dasharray:8 10;stroke-linecap:round;animation:dash 1.4s linear infinite}
@keyframes dash{to{stroke-dashoffset:36}}
.hub-tag{position:absolute;left:50%;bottom:-64px;translate:-50% 0;display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background:var(--navy);color:#FFFFFF;font-size:13px;font-weight:600;box-shadow:0 14px 30px rgba(2,27,68,.3);white-space:nowrap}
.hub-tag i{width:8px;height:8px;border-radius:50%;background:#3FE3FF;box-shadow:0 0 10px #3FE3FF;animation:blink 1.6s ease-in-out infinite}
@media (max-width:640px){.feat .no{display:none}.hnode .hb{width:48px;height:48px;border-radius:14px}.hnode .hb svg{width:22px;height:22px}.hnode span{font-size:11px;padding:3px 8px}.pres{padding:80px 0}}

/* Movimiento continuo del diagrama */
.hub{animation:hubFloat 9s ease-in-out infinite}
@keyframes hubFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hub-spin{position:absolute;inset:0;animation:hubRot 60s linear infinite}
.hub-spin .hnode{animation:hubCounter 60s linear infinite}
@keyframes hubRot{to{rotate:360deg}}
@keyframes hubCounter{to{rotate:-360deg}}
.hub:hover .hub-spin,.hub:hover .hub-spin .hnode{animation-play-state:paused}
.core img{animation:coreBeat 2.8s ease-in-out infinite}
@keyframes coreBeat{0%,100%{transform:scale(1)}12%{transform:scale(1.06)}24%{transform:scale(.98)}36%{transform:scale(1.04)}}

/* ===== Módulos: doctora + desplegable ===== */
.mods{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(700px 500px at 15% 60%,rgba(1,92,233,.35),transparent 70%),radial-gradient(500px 400px at 95% 10%,rgba(190,106,250,.18),transparent 70%),linear-gradient(180deg,#021B44 0%,#03163A 100%)}
.mods-ecg{position:absolute;left:0;width:100%;height:120px;z-index:-1;pointer-events:none}
.mods-ecg .base{stroke:rgba(255,255,255,.07)}
.mods-ecg .beam{stroke:url(#ecgGrad2);stroke-dasharray:140 860;filter:drop-shadow(0 0 6px rgba(63,227,255,.8));animation:beam 5s linear infinite}
.mods-ecg.e2 .beam{animation-duration:7s;animation-delay:-2s;opacity:.7}
.mods-ecg.e3 .beam{animation-duration:6s;animation-delay:-4s;opacity:.5;stroke:url(#ecgGrad3)}
.mods-grid{display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start}
.mods-photo{flex:1 1 420px;min-width:0;max-width:600px;position:sticky;top:110px;align-self:flex-start;margin:0 auto}
.mods-photo .halo{position:absolute;left:8%;right:8%;top:6%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(63,227,255,.35),rgba(1,92,233,.25) 60%,transparent);animation:ring 8s ease-in-out infinite}
.mods-photo .halo::after{content:'';position:absolute;inset:4%;border-radius:50%;border:2px dashed rgba(255,255,255,.18);animation:spin 40s linear infinite}
.mods-photo img{position:relative;width:100%;height:auto;display:block;transform-origin:40% 100%;filter:drop-shadow(0 30px 50px rgba(0,0,0,.45));
  -webkit-mask-image:linear-gradient(180deg,#000 85%,transparent 100%);mask-image:linear-gradient(180deg,#000 85%,transparent 100%);
  animation:docFloat 8s ease-in-out infinite;translate:calc(var(--px,0) * -10px) calc(var(--py,0) * -8px)}
@keyframes docFloat{0%,100%{transform:translateY(0) rotate(-.8deg)}50%{transform:translateY(-14px) rotate(.8deg)}}
.mods-photo .badge10{position:absolute;left:0;bottom:16%;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:18px;background:rgba(2,27,68,.88);border:1px solid rgba(63,227,255,.35);box-shadow:0 16px 40px rgba(0,0,0,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#FFFFFF;animation:floatB 7s ease-in-out infinite;translate:calc(var(--px,0) * 14px) calc(var(--py,0) * 10px)}
.badge10 b{font-family:var(--display);font-size:30px;line-height:1;background:linear-gradient(90deg,#3FE3FF,#D49BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.badge10 span{font-size:13px;line-height:1.3;color:#C3D2EA}
.mods-copy{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:20px}
.acc{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.acc-item{border-radius:18px;background:#0A2250;border:1px solid rgba(255,255,255,.12);transition:background .25s,border-color .25s,box-shadow .25s}
.acc-item:hover{border-color:rgba(255,255,255,.3)}
.acc-item.open{background:#0F2D63;border-color:rgba(63,227,255,.45);box-shadow:0 18px 40px rgba(0,0,0,.25),inset 3px 0 0 #FF4D57}
.acc-btn{width:100%;display:flex;align-items:center;gap:14px;padding:14px 16px;background:none;border:none;color:#FFFFFF;cursor:pointer;text-align:left;font-family:var(--body)}
.acc-btn .ai{width:42px;height:42px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:#7FD9FF;transition:background .25s,color .25s}
.acc-item.open .ai{background:linear-gradient(135deg,#015CE9,#BE6AFA);color:#FFFFFF}
.acc-btn .an{font-family:var(--display);font-weight:600;font-size:17px;flex:1}
.acc-btn .num{font-size:12px;font-weight:700;color:#7F93B5;letter-spacing:.08em}
.acc-btn .chev{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);transition:transform .3s,background .3s;flex-shrink:0}
.acc-item.open .chev{transform:rotate(180deg);background:#FFFFFF;color:var(--navy)}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.acc-item.open .acc-panel{grid-template-rows:1fr}
.acc-panel > div{overflow:hidden}
.acc-body{padding:0 18px 18px 72px;display:flex;flex-direction:column;gap:12px}
.acc-body p{font-size:15px;line-height:1.6;color:#C3D2EA}
.acc-body ul{display:flex;flex-wrap:wrap;gap:8px}
.acc-body li{font-size:13px;font-weight:600;color:#FFFFFF;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.acc-body a{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:#FF8A91;text-decoration:none}
.acc-body a:hover{color:#FFFFFF}
@media (max-width:640px){.acc-body{padding-left:18px}.acc-btn .num{display:none}}

@media (max-width:960px){.mods-photo{position:relative;top:auto;max-width:460px}}

/* ===== VALUA en acción: recorrido animado ===== */
.jr{position:relative;overflow:hidden;isolation:isolate;padding:112px 0;background:
  radial-gradient(600px 380px at 10% 20%,rgba(1,92,233,.10),transparent 70%),
  radial-gradient(600px 380px at 90% 80%,rgba(209,10,22,.08),transparent 70%),#FFFFFF}
.jr::before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(4,72,154,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(4,72,154,.05) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%)}
.jr .h2 span{background:linear-gradient(90deg,#D10A16,#BE6AFA);-webkit-background-clip:text;background-clip:text;color:transparent}
.jr-stage{position:relative;height:440px;margin-top:8px}
.jr-stage svg.path{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.jr-track{fill:none;stroke:#E3EAF5;stroke-width:14;stroke-linecap:round}
.jr-flow{fill:none;stroke:url(#jrGrad);stroke-width:4;stroke-linecap:round;stroke-dasharray:2 16;animation:jrdash 1.2s linear infinite}
.jr-done{fill:none;stroke:url(#jrGrad);stroke-width:14;stroke-linecap:round;opacity:.9;transition:stroke-dashoffset .7s cubic-bezier(.6,0,.3,1)}
@keyframes jrdash{to{stroke-dashoffset:-36}}
.st{position:absolute;translate:-50% -50%;display:flex;flex-direction:column;align-items:center;gap:10px;background:none;border:none;cursor:pointer;font-family:var(--body);padding:0;z-index:2}
.st .sc{position:relative;width:86px;height:86px;border-radius:50%;background:#FFFFFF;display:flex;align-items:center;justify-content:center;color:#7C8CA8;box-shadow:0 14px 34px rgba(2,47,110,.14);border:2px solid #E3EAF5;transition:all .45s cubic-bezier(.2,.8,.2,1)}
.st .sc::before{content:'';position:absolute;inset:-10px;border-radius:50%;border:2px solid transparent}
.st b{font-family:var(--display);font-size:16px;color:var(--navy);background:rgba(255,255,255,.9);padding:4px 12px;border-radius:999px}
.st small{position:absolute;top:-34px;font-size:12px;font-weight:700;letter-spacing:.1em;color:#9FB2CF}
.st.done .sc{color:#FFFFFF;background:linear-gradient(135deg,#04489A,#015CE9);border-color:transparent}
.st.on .sc{transform:scale(1.18);color:#FFFFFF;background:linear-gradient(135deg,#D10A16,#F0414B);border-color:transparent;box-shadow:0 20px 44px rgba(209,10,22,.35)}
.st.on .sc::before{border-color:rgba(209,10,22,.35);animation:ripple 1.6s ease-out infinite}
@keyframes ripple{from{transform:scale(.9);opacity:1}to{transform:scale(1.5);opacity:0}}
.ficha{position:absolute;z-index:3;width:270px;padding:16px;border-radius:20px;background:#FFFFFF;box-shadow:0 30px 70px rgba(2,47,110,.22),0 0 0 1px rgba(4,72,154,.08);transition:left .7s cubic-bezier(.6,0,.3,1),top .7s cubic-bezier(.6,0,.3,1),transform .4s;display:flex;flex-direction:column;gap:10px}
.ficha::before{content:'';position:absolute;left:0;top:0;right:0;height:5px;border-radius:20px 20px 0 0;background:var(--iris)}
.ficha .fh{display:flex;align-items:center;gap:10px}
.ficha .av{width:38px;height:38px;border-radius:12px;background:var(--mist);color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--display)}
.ficha .nm{font-family:var(--display);font-weight:600;font-size:14px;color:var(--navy)}
.ficha .tg{font-size:11px;color:var(--muted)}
.ficha ul{display:flex;flex-direction:column;gap:7px}
.ficha li{display:flex;align-items:center;gap:9px;font-size:13px;color:#9AA6BA;transition:color .3s}
.ficha li i{width:18px;height:18px;border-radius:50%;border:1.5px solid #CAD5E5;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s}
.ficha li i svg{opacity:0;transition:opacity .3s}
.ficha li.ok{color:var(--ink)}
.ficha li.ok i{background:#04489A;border-color:#04489A}
.ficha li.ok i svg{opacity:1}
.ficha li em{font-style:normal;margin-left:auto;font-weight:600;color:var(--blue);font-variant-numeric:tabular-nums;opacity:0;transition:opacity .3s}
.ficha li.ok em{opacity:1}
.ficha .pg{height:6px;border-radius:3px;background:#EEF2F8;overflow:hidden}
.ficha .pg span{display:block;height:100%;width:0;background:var(--iris);transition:width .6s ease}
.ficha .done-pill{align-self:flex-start;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;background:#E7F6EE;color:#13804A;opacity:0;transform:translateY(4px);transition:all .3s}
.ficha .done-pill{display:none}
.ficha.complete .done-pill{display:inline-block;opacity:1;transform:none}
.jr-desc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.jd{padding:18px 20px;border-radius:18px;border:1.5px solid var(--line);background:rgba(255,255,255,.8);transition:all .4s}
.jd b{display:block;font-family:var(--display);font-size:16px;color:var(--navy);margin-bottom:4px}
.jd span{font-size:14px;line-height:1.5;color:var(--muted)}
.jd.on{border-color:transparent;background:linear-gradient(#FFFFFF,#FFFFFF) padding-box,var(--iris) border-box;border:1.5px solid transparent;box-shadow:0 16px 36px rgba(2,47,110,.12);transform:translateY(-4px)}
.jr-ctrl{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.jr-play{width:48px;height:48px;border-radius:50%;border:1.5px solid #B9CBE6;background:#FFFFFF;color:var(--blue);display:flex;align-items:center;justify-content:center;cursor:pointer}
.jr-play:hover{border-color:var(--blue)}
@media (max-width:860px){
  .jr-stage{height:auto;display:flex;flex-direction:column;gap:18px}
  .jr-stage svg.path{display:none}
  .st{position:relative;left:auto !important;top:auto !important;translate:none;flex-direction:row;gap:14px}
  .st small{position:static}
  .st .sc{width:64px;height:64px}
  .ficha{position:relative;left:auto !important;top:auto !important;width:auto;transform:none !important}
  .jr-desc{grid-template-columns:1fr 1fr}
}

/* Doctora junto al recorrido */
.jr-layout{display:flex;gap:24px;align-items:stretch}
.jr-layout .jr-stage{flex:1 1 auto;min-width:0}
.jr-doc{flex:0 0 300px;position:relative;height:440px;margin-top:8px}
.jr-doc::before{content:'';position:absolute;left:8%;right:8%;bottom:6%;height:70%;border-radius:50% 50% 24px 24px;background:linear-gradient(180deg,rgba(9,220,252,.18),rgba(1,92,233,.12));z-index:0}
.jr-doc img{position:absolute;left:50%;bottom:0;height:104%;width:auto;max-width:none;translate:-50% 0;z-index:1;transform-origin:50% 100%;
  -webkit-mask-image:linear-gradient(180deg,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,#000 82%,transparent 100%);
  filter:drop-shadow(0 24px 30px rgba(2,47,110,.22));animation:docIdle 6s ease-in-out infinite}
@keyframes docIdle{0%,100%{transform:translateY(0) rotate(-.6deg)}50%{transform:translateY(-8px) rotate(.6deg)}}
.jr-doc.hop img{animation:docHop .6s cubic-bezier(.3,1.6,.5,1),docIdle 6s ease-in-out .6s infinite}
@keyframes docHop{0%{transform:translateY(0) scale(1)}40%{transform:translateY(-14px) scale(1.02)}100%{transform:translateY(0) scale(1)}}
.jr-doc .bubble{position:absolute;z-index:2;right:-6px;top:10%;max-width:190px;padding:10px 14px;border-radius:16px 16px 16px 4px;background:var(--navy);color:#FFFFFF;font-size:13px;font-weight:600;line-height:1.35;box-shadow:0 14px 30px rgba(2,27,68,.25);transition:opacity .25s,transform .25s}
.jr-doc .bubble.swap{opacity:0;transform:translateY(6px)}
.jr-doc .bubble small{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;color:#7FD9FF;margin-bottom:2px}
/* Descripciones desplegables */
.jr-desc{align-items:start}
.jd{cursor:pointer}
.jd b{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0}
.jd b::after{content:'';width:8px;height:8px;border-right:2px solid #9FB2CF;border-bottom:2px solid #9FB2CF;rotate:45deg;transition:rotate .3s;flex-shrink:0;margin-top:-4px}
.jd.on b::after{rotate:225deg;border-color:var(--red);margin-top:4px}
.jd .jx{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease}
.jd .jx > span{overflow:hidden;display:block}
.jd.on .jx{grid-template-rows:1fr}
.jd.on .jx > span{padding-top:6px}
@media (max-width:1100px){.jr-doc{display:none}}

/* ===== Vista: texto + iPad que se juntan al hacer scroll ===== */
.vista{position:relative;overflow:hidden;padding:120px 0;background:radial-gradient(700px 420px at 75% 50%,rgba(1,92,233,.12),transparent 70%),linear-gradient(180deg,#FFFFFF,#F1F5FC)}
.vista-grid{display:flex;flex-wrap:wrap;gap:40px;align-items:center;--p:1}
.vista-copy{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:20px;
  transform:translateX(calc((1 - var(--p)) * -45vw));opacity:calc(.15 + var(--p) * .85)}
.vista-copy .h2 span{color:var(--red)}
.vista-img{flex:1.4 1 560px;min-width:0;position:relative;
  transform:translateX(calc((1 - var(--p)) * 55vw)) rotate(calc((1 - var(--p)) * 8deg));opacity:calc(.15 + var(--p) * .85)}
.vista-img img{position:relative;width:118%;max-width:none;margin-right:-18%;height:auto;display:block;-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent 98%),linear-gradient(90deg,#000 80%,transparent 99%);-webkit-mask-composite:source-in;mask-image:linear-gradient(180deg,#000 72%,transparent 98%),linear-gradient(90deg,#000 80%,transparent 99%);mask-composite:intersect;filter:drop-shadow(0 40px 50px rgba(2,47,110,.25));animation:floatA 7s ease-in-out infinite}
.vglow{position:absolute;left:12%;right:4%;top:8%;bottom:8%;border-radius:50%;background:radial-gradient(closest-side,rgba(9,220,252,.35),rgba(190,106,250,.18) 60%,transparent);filter:blur(10px)}
@media (max-width:900px){.vista-img img{width:100%;margin:0}}

/* ===== Banda CTA médica-tecnológica ===== */
.cta-x{padding:56px;min-height:360px;isolation:isolate}
.cta-x::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 60%);mask-image:linear-gradient(90deg,transparent,#000 60%)}
.cta-x::after{content:'';position:absolute;top:0;bottom:0;width:30%;left:-30%;z-index:-1;background:linear-gradient(90deg,transparent,rgba(63,227,255,.12),transparent);animation:scan 6s linear infinite}
@keyframes scan{to{left:110%}}
.cta-copy{flex:1 1 420px;min-width:0;position:relative;z-index:1}
.cta-ecg{position:absolute;left:0;right:0;bottom:6px;width:100%;height:90px;z-index:-1;pointer-events:none}
.cta-ecg .base{stroke:rgba(255,255,255,.08)}
.cta-ecg .beam{stroke:#3FE3FF;stroke-dasharray:120 880;filter:drop-shadow(0 0 6px #3FE3FF);animation:beam 4s linear infinite}
.cta-viz{flex:1 1 380px;min-width:0;position:relative;height:280px}
.dna{position:absolute;inset:20px 0 20px 0;display:flex;justify-content:space-between;align-items:center}
.dcol{position:relative;width:12px;height:100%;display:flex;justify-content:center}
.dcol i{position:absolute;left:50%;translate:-50% 0}
.dcol .da,.dcol .db{width:12px;height:12px;border-radius:50%;top:50%;margin-top:-6px;animation:dnaA 3.2s ease-in-out infinite;animation-delay:calc(var(--i) * -.18s)}
.dcol .da{background:#3FE3FF;box-shadow:0 0 12px #3FE3FF}
.dcol .db{background:#FF4D57;box-shadow:0 0 12px #FF4D57;animation-name:dnaB}
.dcol .dl{width:2px;top:50%;height:120px;margin-top:-60px;background:linear-gradient(#3FE3FF,#BE6AFA,#FF4D57);opacity:.45;animation:dnaL 3.2s ease-in-out infinite;animation-delay:calc(var(--i) * -.18s)}
@keyframes dnaA{0%,100%{transform:translateY(-60px) scale(1);opacity:1}50%{transform:translateY(60px) scale(.55);opacity:.45}}
@keyframes dnaB{0%,100%{transform:translateY(60px) scale(.55);opacity:.45}50%{transform:translateY(-60px) scale(1);opacity:1}}
@keyframes dnaL{0%,50%,100%{transform:scaleY(1)}25%,75%{transform:scaleY(.04)}}
.vitals{position:absolute;right:0;top:50%;translate:0 -50%;width:250px;padding:16px;border-radius:20px;background:rgba(2,27,68,.72);border:1px solid rgba(63,227,255,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 50px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:10px;animation:floatB 7s ease-in-out infinite}
.vt-head{display:flex;align-items:center;gap:10px;font-size:13px;color:#C3D2EA;font-weight:600}
.vt-head b{margin-left:auto;font-family:var(--display);font-size:26px;color:#FFFFFF;font-variant-numeric:tabular-nums}
.vt-head b small{font-size:12px;color:#7FD9FF}
.beat{width:32px;height:32px;border-radius:10px;background:rgba(255,77,87,.18);color:#FF4D57;display:flex;align-items:center;justify-content:center;animation:coreBeat 1s ease-in-out infinite}
.vt-ecg{width:100%;height:50px}
.vt-ecg path{stroke-dasharray:100;stroke-dashoffset:100;animation:draw 1.6s linear infinite;filter:drop-shadow(0 0 4px #3FE3FF)}
@keyframes draw{to{stroke-dashoffset:-100}}
.vt-row{display:flex;justify-content:space-between;font-size:12px;color:#9FB2CF}
.vt-row b{color:#FFFFFF;font-variant-numeric:tabular-nums}
.chip{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#FFFFFF;color:var(--navy);font-size:12px;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.chip svg{color:var(--red)}
.chip.c1{left:4%;top:0;animation:floatA 6s ease-in-out infinite}
.chip.c2{left:16%;bottom:0;animation:floatB 8s ease-in-out infinite}
@media (max-width:640px){.cta-viz{height:240px}.vitals{width:220px}.chip.c2{left:0}}

/* ===== Pie de página ===== */
.ft{position:relative;overflow:hidden;isolation:isolate;padding:52px 0 22px;border-top:none;background:var(--navy);color:#C3D2EA}
.ft-bg{position:absolute;inset:0;z-index:-2}
.ft-bg .slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.8s ease}
.ft-bg .slide.on{opacity:1}
.ft-bg img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transform:scale(1.06);animation:ftZoom 14s ease-in-out infinite alternate}
@keyframes ftZoom{to{transform:scale(1.16)}}
.ft-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,27,68,.78) 0%,rgba(2,27,68,.9) 45%,rgba(2,22,56,.97) 100%),radial-gradient(600px 300px at 90% 0%,rgba(190,106,250,.25),transparent 70%)}
.ft-top{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;align-items:flex-start;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12)}
.ft-logo{align-self:flex-start;background:#FFFFFF;border-radius:12px;padding:8px 12px;display:flex}
.ft-logo img{height:38px;width:auto;display:block}
.socs{display:flex;flex-wrap:wrap;gap:10px}
.soc{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;color:#FFFFFF;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);transition:transform .2s,background .2s,border-color .2s}
.soc:hover{color:#FFFFFF;transform:translateY(-3px);background:linear-gradient(135deg,#015CE9,#BE6AFA);border-color:transparent}
.ft-cta{display:flex;flex-direction:column;gap:6px;padding:24px 26px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);max-width:440px}
.ft-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:32px}
.fcol{display:flex;flex-direction:column;gap:7px}
.fh{font-family:var(--display);font-weight:700;font-size:15px;color:#FFFFFF;display:flex;align-items:center;gap:10px}
.fh::before{content:'';width:18px;height:3px;border-radius:2px;background:var(--iris)}
.flk{color:#C3D2EA;text-decoration:none;font-size:14px;transition:color .2s,padding .2s}
.flk:hover{color:#FFFFFF;padding-left:4px}
.ft-bottom{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between;align-items:center;padding-top:16px;font-size:13px;border-top:1px solid rgba(255,255,255,.12);font-size:14px}
.ft-legal{display:flex;gap:20px;flex-wrap:wrap}
.ft-legal .flk{font-size:14px}

/* ===== Sección fusionada: panel + llamado a la acción ===== */
.vx{position:relative;overflow:hidden;isolation:isolate;padding:120px 0 140px;color:#FFFFFF;
  background:radial-gradient(700px 460px at 75% 45%,rgba(1,92,233,.45),transparent 70%),radial-gradient(500px 360px at 100% 100%,rgba(190,106,250,.30),transparent 70%),radial-gradient(500px 360px at 0% 100%,rgba(9,220,252,.18),transparent 70%),linear-gradient(140deg,#021B44,#03245A 60%,#04489A)}
.vx::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.3;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:radial-gradient(ellipse at 70% 50%,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse at 70% 50%,#000 20%,transparent 70%)}
.vx::after{content:'';position:absolute;top:0;bottom:0;width:25%;left:-25%;z-index:-1;background:linear-gradient(90deg,transparent,rgba(63,227,255,.10),transparent);animation:scan 7s linear infinite}
.vx .cta-ecg{bottom:20px;height:100px}
.vx .eyebrow{color:#FF6B73}
.vx .h2{color:#FFFFFF}
.vx .h2 span{color:#FF4D57}
.vx .lead{color:#C3D2EA}
.vx-cta{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-left:3px solid #FF4D57}
.vx-cta b{font-family:var(--display);font-size:19px;line-height:1.3}
.vx-cta span{font-size:15px;line-height:1.55;color:#C3D2EA}
.vx .vista-img{min-height:420px;display:flex;align-items:center}
.vx .vista-img .dna{position:absolute;inset:6% 4% 6% 6%;z-index:0;opacity:.7}
.vx .vista-img img{z-index:1;filter:drop-shadow(0 40px 60px rgba(0,0,0,.5))}
.vx .vglow{z-index:0}
.vx .vitals{right:-2%;top:auto;bottom:-6%;translate:none;z-index:2}
.vx .chip{z-index:2}
.vx .chip.c1{left:6%;top:2%}
.vx .chip.c2{left:0;bottom:4%}
@media (max-width:900px){.vx .vitals{right:0;bottom:-14%;width:220px}.vx .vista-img{min-height:340px;margin-bottom:40px}}

.ft-main{display:flex;flex-wrap:wrap;gap:32px 48px;align-items:flex-start}
.ft-brand{flex:0 1 280px;display:flex;flex-direction:column;gap:12px}
.ft-brand p{font-size:14px;line-height:1.5;color:#D5E0F2}
.ft-main .ft-cols{flex:1 1 560px;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:24px}
.ft .socs svg{width:17px;height:17px}

/* Redes sociales: animación al pasar el puntero */
.soc{position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.3,1.6,.5,1),box-shadow .3s,border-color .3s}
.soc::before{content:'';position:absolute;inset:0;border-radius:inherit;transform:translateY(100%);transition:transform .35s ease;z-index:0}
.soc svg{position:relative;z-index:1;transition:transform .45s cubic-bezier(.3,1.6,.5,1)}
.soc:hover{background:rgba(255,255,255,.08);transform:translateY(-5px) scale(1.08);border-color:transparent}
.soc:hover::before{transform:translateY(0)}
.soc:hover svg{transform:rotate(-12deg) scale(1.15)}
.soc-tt::before{background:linear-gradient(135deg,#25F4EE,#000000 55%,#FE2C55)}
.soc-ig::before{background:linear-gradient(45deg,#F58529,#DD2A7B 50%,#8134AF 75%,#515BD4)}
.soc-fb::before{background:#1877F2}
.soc-yt::before{background:#FF0000}
.soc-tt:hover{box-shadow:0 10px 24px rgba(254,44,85,.35)}
.soc-ig:hover{box-shadow:0 10px 24px rgba(221,42,123,.4)}
.soc-fb:hover{box-shadow:0 10px 24px rgba(24,119,242,.45)}
.soc-yt:hover{box-shadow:0 10px 24px rgba(255,0,0,.4)}

/* ================= PLATAFORMA ================= */
/* Hero con capas 3D */
.px-hero{position:relative;overflow:hidden;padding:56px 0 40px;background:radial-gradient(800px 500px at 85% 40%,rgba(1,92,233,.14),transparent 70%),radial-gradient(500px 400px at 100% 100%,rgba(190,106,250,.12),transparent 70%),linear-gradient(180deg,#F1F5FC,#FFFFFF)}
.px-hero-grid{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.px-copy{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:20px}
.px-copy h1{font-weight:700;font-size:clamp(34px,4.4vw,56px);line-height:1.06;letter-spacing:-.025em}
.px-copy h1 em{font-style:normal;color:var(--red)}
.px-hint{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--muted)}
.stack3d{flex:1 1 440px;min-width:0;height:520px;perspective:1400px;display:flex;align-items:center;justify-content:center;--rx:0deg;--ry:0deg;--gap:0}
.stack-inner{position:relative;width:min(420px,90%);height:260px;transform-style:preserve-3d;transform:rotateX(calc(52deg + var(--rx))) rotateZ(calc(-34deg + var(--ry)));transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.layer{position:absolute;inset:0;border-radius:22px;padding:18px;background:rgba(255,255,255,.88);border:1px solid rgba(4,72,154,.12);box-shadow:0 30px 60px rgba(2,47,110,.18);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;flex-direction:column;gap:10px;
  transform:translateZ(calc((4 - var(--i)) * (18px + var(--gap) * 52px)));transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.layer::after{content:'';position:absolute;inset:0;border-radius:inherit;border:2px solid var(--c);opacity:.0;transition:opacity .4s}
.stack3d:hover .layer::after,.stack3d.open .layer::after{opacity:.35}
.lh{display:flex;align-items:center;gap:10px}
.lh b{font-family:var(--display);font-size:16px;color:var(--navy)}
.lh i{margin-left:auto;width:48px;height:8px;border-radius:4px;background:#E7EDF6}
.li{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center}
.lr{display:flex;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:10px;background:#F4F7FC;font-size:13px;color:var(--muted)}
.lr b{color:var(--navy);font-weight:600}
.stack-base{position:absolute;inset:0;border-radius:24px;background:linear-gradient(135deg,#04489A,#015CE9 60%,#BE6AFA);transform:translateZ(-10px);display:flex;align-items:flex-end;justify-content:space-between;padding:16px 20px;box-shadow:0 40px 80px rgba(2,47,110,.35)}
.stack-base img{width:46px;filter:brightness(0) invert(1)}
.stack-base span{color:#FFFFFF;font-weight:700;font-size:13px}
@media (max-width:640px){.stack3d{height:380px}}

/* Tarjetas que giran */
.px-ben{padding:40px 0 96px}
.px-flips{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:22px}
.flip{position:relative;height:260px;perspective:1200px;background:none;border:none;padding:0;cursor:pointer;font-family:var(--body);text-align:left}
.fl-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.flip:hover .fl-in,.flip[aria-pressed="true"] .fl-in{transform:rotateY(180deg)}
.fl-front,.fl-back{position:absolute;inset:0;border-radius:26px;padding:28px;display:flex;flex-direction:column;gap:14px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.fl-front{background:linear-gradient(160deg,#FFFFFF,#F1F5FC);border:1.5px solid var(--line);justify-content:space-between}
.fl-front b{font-family:var(--display);font-size:24px;line-height:1.15;color:var(--navy)}
.fl-ic{width:68px;height:68px;border-radius:22px;background:var(--c);display:flex;align-items:center;justify-content:center;box-shadow:0 16px 32px color-mix(in srgb,var(--c) 40%,transparent)}
.fl-back{transform:rotateY(180deg);background:linear-gradient(150deg,var(--c),#021B44);color:#FFFFFF;justify-content:center}
.fl-back b{font-family:var(--display);font-size:20px}
.fl-back span{font-size:16px;line-height:1.6;color:#E3EBF7}
.fl-more{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--muted)}
.fl-back .fl-more{color:#FFFFFF;opacity:.8;margin-top:auto}

/* Simulador */
.px-sim{background:linear-gradient(180deg,#F1F5FC,#FFFFFF)}
.sim-top{display:flex;flex-wrap:wrap;gap:28px;align-items:stretch}
.appwin{flex:1.3 1 520px;min-width:0;border-radius:22px;background:#FFFFFF;box-shadow:0 30px 70px rgba(2,47,110,.16);overflow:hidden;border:1px solid var(--line)}
.aw-bar{display:flex;align-items:center;gap:14px;padding:12px 18px;background:#0B1C3D;color:#FFFFFF}
.dots{display:flex;gap:6px}.dots i{width:11px;height:11px;border-radius:50%;background:#FF5F57}.dots i:nth-child(2){background:#FEBC2E}.dots i:nth-child(3){background:#28C840}
.aw-title{font-family:var(--display);font-weight:600;font-size:14px}
.aw-role{margin-left:auto;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.12)}
.aw-body{padding:22px;display:flex;flex-direction:column;gap:18px}
.aw-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:14px}
.af{display:flex;flex-direction:column;gap:6px}
.af span{font-size:12px;font-weight:600;color:var(--muted)}
.af div{min-height:42px;display:flex;align-items:center;padding:0 12px;border-radius:10px;border:1.5px solid var(--line);font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums;transition:border-color .3s,background .3s}
.af.typing div{border-color:var(--iris-blue);background:#F5F9FF}
.af div::after{content:'';width:2px;height:18px;background:var(--iris-blue);margin-left:2px;opacity:0}
.af.typing div::after{opacity:1;animation:blink 1s step-end infinite}
.aw-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.aw-note{font-size:12px;color:var(--muted)}
.aw-act{position:relative}
.aw-act.ready{animation:nudge 1.4s ease-in-out infinite}
@keyframes nudge{0%,100%{box-shadow:0 10px 24px rgba(209,10,22,.22)}50%{box-shadow:0 0 0 8px rgba(209,10,22,.18),0 10px 24px rgba(209,10,22,.3)}}
.aw-act:disabled{opacity:.5;cursor:wait}
.sim-guide{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:14px;justify-content:center}
.sg-steps{display:flex;gap:8px}
.sg-steps span{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;background:#EEF2F8;color:#8A9AB5;transition:all .35s}
.sg-steps span.done{background:var(--blue);color:#FFFFFF}
.sg-steps span.on{background:var(--red);color:#FFFFFF;transform:scale(1.15);box-shadow:0 0 0 6px rgba(209,10,22,.15)}
.sim-guide h3{font-weight:700;font-size:28px;line-height:1.15}
.sim-guide p{font-size:16px;line-height:1.6;color:var(--muted)}
.sg-next{padding:14px 16px;border-radius:14px;border:1px solid var(--line);font-size:15px;line-height:1.5}
.sg-hint{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--red)}
.sg-hint svg{animation:pointL 1.2s ease-in-out infinite;rotate:180deg}
@keyframes pointL{50%{transform:translateX(6px)}}
.kanban{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:16px;border-radius:24px;background:#0B1C3D}
.kcol{border-radius:16px;background:rgba(255,255,255,.05);padding:12px;min-height:200px;display:flex;flex-direction:column;gap:10px;transition:background .4s}
.kcol.hot{background:rgba(63,227,255,.10);box-shadow:inset 0 0 0 1.5px rgba(63,227,255,.5)}
.kh{display:flex;justify-content:space-between;align-items:center;color:#FFFFFF;font-family:var(--display);font-weight:600;font-size:14px}
.kh em{font-style:normal;font-size:12px;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.12);color:#C3D2EA}
.kbody{display:flex;flex-direction:column;gap:8px}
.kghost{height:46px;border-radius:12px;background:rgba(255,255,255,.06);padding:10px;display:flex;flex-direction:column;gap:6px}
.kghost i{height:7px;border-radius:4px;background:rgba(255,255,255,.12);width:70%}.kghost i+i{width:45%}
.kcard{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#FFFFFF;box-shadow:0 18px 40px rgba(0,0,0,.35),0 0 0 2px #FF4D57;transition:left .8s cubic-bezier(.6,0,.3,1),top .8s cubic-bezier(.6,0,.3,1)}
.kcard .kav{width:34px;height:34px;border-radius:10px;background:var(--blush);color:var(--red);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}
.kcard b{font-size:13px;color:var(--navy)}
.kcard small{font-size:11px;color:var(--muted)}
.kbar{position:absolute;left:12px;right:12px;bottom:4px;height:3px;border-radius:2px;background:#EEF2F8;overflow:hidden}
.kbar i{display:block;height:100%;width:25%;background:var(--iris);transition:width .8s}
@media (max-width:760px){.kanban{grid-template-columns:1fr 1fr}.kcol{min-height:140px}}

/* Cine */
.cine{display:flex;flex-wrap:wrap;border-radius:28px;overflow:hidden;background:#0B1C3D}
.cine-screen{flex:2 1 520px;min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;text-align:center;color:#FFFFFF;background:radial-gradient(500px 300px at 50% 40%,rgba(1,92,233,.6),transparent 70%),linear-gradient(135deg,#022F6E,#04489A)}
.cine-t{font-family:var(--display);font-weight:600;font-size:22px}
.cine-s{font-size:14px;color:#C3D2EA}
.cine-ch{flex:1 1 260px;padding:28px;display:flex;flex-direction:column;gap:16px;color:#C3D2EA}
.cine-ch ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;counter-reset:c}
.cine-ch li{display:flex;justify-content:space-between;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.05);font-size:15px;color:#FFFFFF}
.cine-ch li em{font-style:normal;color:#7FD9FF;font-variant-numeric:tabular-nums}

/* Panel con reflector */
.px-panel{background:#F1F5FC}
.segs{display:flex;flex-wrap:wrap;gap:8px;padding:6px;border-radius:999px;background:#FFFFFF;border:1px solid var(--line);align-self:flex-start;box-shadow:0 8px 24px rgba(2,47,110,.06)}
.seg{min-height:40px;padding:0 16px;border-radius:999px;border:none;background:transparent;color:var(--ink);font-weight:600;font-size:14px;cursor:pointer;transition:background .25s,color .25s;display:inline-flex;align-items:center;gap:6px}
.seg:hover{background:var(--mist)}
.seg.on{background:var(--navy);color:#FFFFFF}
.seg.tour{color:var(--red)}
.seg.tour[aria-pressed="true"]{background:var(--blush)}
.dash-wrap{position:relative;border-radius:28px;background:var(--navy);padding:24px;overflow:hidden}
.dash{background:#F6F8FC;border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:16px}
.dz{border-radius:14px}
.lens{position:absolute;z-index:3;border-radius:18px;pointer-events:none;box-shadow:0 0 0 9999px rgba(2,22,56,.62),0 0 0 3px #3FE3FF,0 0 40px rgba(63,227,255,.6);transition:left .6s cubic-bezier(.6,0,.3,1),top .6s cubic-bezier(.6,0,.3,1),width .6s cubic-bezier(.6,0,.3,1),height .6s cubic-bezier(.6,0,.3,1)}
.lens-tip{position:absolute;z-index:4;max-width:300px;padding:14px 16px;border-radius:14px;background:#FFFFFF;box-shadow:0 20px 50px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:4px;transition:left .6s cubic-bezier(.6,0,.3,1),top .6s cubic-bezier(.6,0,.3,1),opacity .3s}
.lens-tip b{font-family:var(--display);font-size:15px;color:var(--navy)}
.lens-tip span{font-size:13px;line-height:1.5;color:var(--muted)}
.sbar{height:0;transition:height 1.2s cubic-bezier(.2,.8,.2,1)}
.dash.is-live .sbar{height:var(--h)}
.sbar-h{height:6px;border-radius:3px;background:#04489A;width:0;transition:width 1.2s cubic-bezier(.2,.8,.2,1)}
.dash.is-live .sbar-h{width:var(--w)}

/* Seguridad: consola */
.px-sec{background:radial-gradient(600px 400px at 20% 40%,rgba(1,92,233,.35),transparent 70%),linear-gradient(160deg,#021B44,#03163A)}
.sec-grid{display:flex;flex-wrap:wrap;gap:32px;align-items:stretch}
.term{flex:1.2 1 480px;min-width:0;border-radius:20px;overflow:hidden;background:#050E22;border:1px solid rgba(63,227,255,.25);box-shadow:0 30px 70px rgba(0,0,0,.4)}
.term .aw-bar{background:#0B1C3D}
.term-body{padding:22px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;display:flex;flex-direction:column;gap:12px;color:#C3D2EA;min-height:330px}
.tl{display:flex;align-items:center;gap:10px;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s}
.tl.show,.tl.cmd{opacity:1;transform:none}
.tp{color:#3FE3FF;font-weight:700}
.tdots{flex:1;border-bottom:2px dotted rgba(255,255,255,.15);margin:0 4px;min-width:20px}
.tst{font-size:11px;font-weight:700;letter-spacing:.08em;padding:3px 8px;border-radius:6px;background:rgba(40,200,64,.15);color:#3BE07A;opacity:0;transition:opacity .3s}
.tl.ok .tst{opacity:1}
.tl.fin{color:#3BE07A;font-weight:700}
.term-re{align-self:flex-start;margin-top:auto;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#C3D2EA;font-family:var(--body);font-size:13px;cursor:pointer}
.term-re:hover{color:#FFFFFF;border-color:#FFFFFF}
.srows{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:10px}
.srow{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);transition:all .4s}
.srow .si{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06);color:#7F93B5;flex-shrink:0;transition:all .4s}
.srow b{font-size:15px;color:#FFFFFF}
.srow small{font-size:13px;line-height:1.45;color:#9FB2CF}
.sok{margin-left:auto;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(255,255,255,.2);color:transparent;flex-shrink:0;transition:all .4s}
.srow.on{background:rgba(63,227,255,.07);border-color:rgba(63,227,255,.35)}
.srow.on .si{background:linear-gradient(135deg,#015CE9,#3FE3FF);color:#FFFFFF}
.srow.on .sok{background:#28C840;border-color:#28C840;color:#FFFFFF}

/* Módulos filtrables */
.px-mods{background:#FFFFFF}
.fchips{display:flex;flex-wrap:wrap;gap:8px}
.fchip{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);background:#FFFFFF;color:var(--ink);font-weight:600;font-size:14px;cursor:pointer;transition:all .25s}
.fchip em{font-style:normal;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--mist);color:var(--blue)}
.fchip:hover{border-color:var(--blue)}
.fchip.on{background:var(--navy);border-color:var(--navy);color:#FFFFFF}
.fchip.on em{background:rgba(255,255,255,.15);color:#FFFFFF}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:14px}
.mtile{--mx:50%;--my:50%;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:22px;background:#0B1C3D;color:#FFFFFF;text-decoration:none;min-height:220px;isolation:isolate;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .45s,filter .45s}
.mtile::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(260px circle at var(--mx) var(--my),rgba(63,227,255,.28),transparent 60%);opacity:0;transition:opacity .3s}
.mtile::after{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1.5px;background:radial-gradient(200px circle at var(--mx) var(--my),#3FE3FF,rgba(255,255,255,.08) 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.mtile:hover{color:#FFFFFF;transform:translateY(-4px)}
.mtile:hover::before{opacity:1}
.mt-n{position:absolute;right:18px;top:16px;font-family:var(--display);font-weight:700;font-size:34px;color:rgba(255,255,255,.08)}
.mt-ic{width:50px;height:50px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:#7FD9FF;transition:transform .4s cubic-bezier(.3,1.6,.5,1),background .3s}
.mtile:hover .mt-ic{transform:translateY(-4px) rotate(-6deg);background:linear-gradient(135deg,#015CE9,#BE6AFA);color:#FFFFFF}
.mtile b{font-family:var(--display);font-size:18px}
.mt-s{font-size:14px;line-height:1.5;color:#B9C8E2}
.mt-tag{margin-top:auto;align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.04em;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.08);color:#C3D2EA}
.mt-go{position:absolute;right:18px;bottom:18px;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#FFFFFF;color:var(--navy);transform:scale(0) rotate(-45deg);transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.mtile:hover .mt-go{transform:scale(1) rotate(0)}
.mtile.dim{opacity:.18;transform:scale(.94);filter:grayscale(1);pointer-events:none}
@media (max-width:900px){.sg-hint svg{rotate:-90deg}}

/* Carrusel de fondo en el inicio de Plataforma */
.px-hero{isolation:isolate;padding:56px 0 150px}
.px-bg{position:absolute;inset:0;z-index:-1}
.px-bg .slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.6s ease}
.px-bg .slide.on{opacity:1}
.px-bg img{width:100%;height:100%;object-fit:cover;object-position:center 25%;transform:scale(1.05);animation:ftZoom 12s ease-in-out infinite alternate}
.px-bg::after{content:'';position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(241,245,252,.97) 0%,rgba(241,245,252,.93) 42%,rgba(241,245,252,.72) 70%,rgba(241,245,252,.55) 100%),
  linear-gradient(0deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,0) 14%)}
/* Tarjetas que giran: más pequeñas y montadas entre las dos áreas */
.px-ben{position:relative;z-index:3;margin-top:-104px;padding:0 0 72px}
.px-flips{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:18px;max-width:1040px;margin:0 auto}
.flip{height:156px}
.fl-front,.fl-back{border-radius:22px;padding:20px 22px;gap:10px}
.fl-front{flex-direction:row;flex-wrap:wrap;align-items:center;align-content:space-between;background:rgba(255,255,255,.96);box-shadow:0 24px 50px rgba(2,47,110,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.fl-front b{font-size:19px;flex:1 1 120px}
.fl-front .fl-more{flex-basis:100%}
.fl-ic{width:52px;height:52px;border-radius:16px}
.fl-ic svg{width:26px;height:26px}
.fl-back{box-shadow:0 24px 50px rgba(2,47,110,.25)}
.fl-back b{font-size:17px}
.fl-back span{font-size:14px;line-height:1.5}

/* Franja azul con cuadrícula y pulso bajo las tarjetas */
.px-ben{padding:0 0 96px;isolation:isolate}
.ben-band{position:absolute;left:0;right:0;top:78px;bottom:0;z-index:-1;background:radial-gradient(600px 300px at 20% 100%,rgba(1,92,233,.35),transparent 70%),radial-gradient(500px 300px at 90% 0%,rgba(190,106,250,.18),transparent 70%),linear-gradient(180deg,#021B44,#03163A)}
.ben-band::before{content:'';position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:36px 36px}
.ben-ecg{position:absolute;left:0;bottom:6px;width:100%;height:80px;z-index:-1;pointer-events:none}
.ben-ecg .base{stroke:rgba(255,255,255,.08)}
.ben-ecg .beam{stroke:#3FE3FF;stroke-dasharray:120 880;filter:drop-shadow(0 0 6px #3FE3FF);animation:beam 4.5s linear infinite}
.px-hero .px-bg::after{background:linear-gradient(90deg,rgba(241,245,252,.97) 0%,rgba(241,245,252,.93) 42%,rgba(241,245,252,.72) 70%,rgba(241,245,252,.55) 100%)}

/* Hero de Plataforma en azul, como el inicio */
.px-hero{background:var(--navy)}
.px-hero .px-bg::after{background:
  linear-gradient(90deg,rgba(2,27,68,.95) 0%,rgba(2,27,68,.86) 38%,rgba(2,27,68,.55) 66%,rgba(2,27,68,.35) 100%),
  linear-gradient(0deg,rgba(2,27,68,.9) 0%,rgba(2,27,68,0) 35%),
  radial-gradient(700px 500px at 8% 110%,rgba(209,10,22,.30),transparent 70%)}
.px-hero::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.18;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 55%);mask-image:linear-gradient(90deg,#000 0%,transparent 55%)}
.px-hero .crumbs,.px-hero .crumbs a{color:#B9C8E2}
.px-hero .crumbs span[aria-current]{color:#FFFFFF}
.px-hero .eyebrow{color:#FF6B73}
.px-copy h1{color:#FFFFFF}
.px-copy h1 em{color:#FF4D57}
.px-hero .lead{color:#D5E0F2}
.px-hint{color:#B9C8E2}
.px-hero .btn-ghost{color:#FFFFFF;border-color:rgba(255,255,255,.4)}
.px-hero .btn-ghost:hover{color:#FFFFFF;border-color:#FFFFFF;background:rgba(255,255,255,.08)}
.ben-band{top:78px}

/* ===== Simulador fusionado ===== */
.px-sim2{position:relative;overflow:hidden;isolation:isolate;padding:104px 0;background:radial-gradient(700px 500px at 15% 60%,rgba(9,220,252,.14),transparent 70%),radial-gradient(600px 400px at 90% 20%,rgba(190,106,250,.12),transparent 70%),linear-gradient(180deg,#F4F8FE,#EAF1FB)}
.ico-field{position:absolute;inset:0;z-index:-1;overflow:hidden}
.fi-ic{position:absolute;opacity:.16;animation:drift var(--d) ease-in-out infinite;animation-delay:var(--dl)}
@keyframes drift{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(18px,-26px) rotate(12deg)}50%{transform:translate(-10px,-48px) rotate(-8deg);opacity:.26}75%{transform:translate(-22px,-18px) rotate(6deg)}}
.sim2{display:flex;flex-wrap:wrap;gap:28px;align-items:center}
.sim-nurse{flex:0 1 320px;min-width:0;position:relative;margin:0;align-self:stretch;display:flex;align-items:flex-end;justify-content:center;min-height:520px}
.sn-halo{position:absolute;left:4%;right:4%;bottom:6%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,#FFFFFF,rgba(255,255,255,.75) 55%,rgba(9,220,252,.25) 75%,transparent);box-shadow:inset 0 0 0 2px rgba(1,92,233,.12)}
.sn-halo::after{content:'';position:absolute;inset:-12px;border-radius:50%;border:2px dashed rgba(1,92,233,.25);animation:spin 30s linear infinite}
.sim-nurse img{position:relative;height:560px;width:auto;max-width:none;-webkit-mask-image:linear-gradient(180deg,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,#000 86%,transparent 100%);filter:drop-shadow(0 30px 40px rgba(2,47,110,.25));transform-origin:50% 100%;animation:docFloat 7s ease-in-out infinite}
.sim-nurse.hop img{animation:docHop .6s cubic-bezier(.3,1.6,.5,1),docFloat 7s ease-in-out .6s infinite}
.sn-badge{position:absolute;left:0;top:18%;display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:var(--navy);color:#FFFFFF;font-size:13px;font-weight:700;box-shadow:0 14px 30px rgba(2,27,68,.3);white-space:nowrap;transition:transform .3s}
.sn-badge i{width:8px;height:8px;border-radius:50%;background:#3FE3FF;box-shadow:0 0 10px #3FE3FF;animation:blink 1.4s ease-in-out infinite}
.sn-badge.swap{transform:scale(.9)}
.flow-card{flex:1 1 620px;min-width:0;display:flex;flex-direction:column;gap:18px;padding:20px;border-radius:28px;background:rgba(255,255,255,.82);border:1px solid rgba(4,72,154,.10);box-shadow:0 30px 70px rgba(2,47,110,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.fc-top{display:flex;align-items:center;gap:12px}
.sps{position:relative;flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.sp{position:relative;z-index:1;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;border:1.5px solid var(--line);background:#FFFFFF;cursor:pointer;text-align:left;font-family:var(--body);transition:all .35s}
.sp:hover{border-color:var(--blue)}
.sp-n{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;background:#EEF2F8;color:#8A9AB5;transition:all .35s}
.sp b{font-size:14px;color:var(--navy)}
.sp small{font-size:11px;color:var(--muted)}
.sp.done .sp-n{background:var(--blue);color:#FFFFFF}
.sp.on{border-color:transparent;background:linear-gradient(135deg,#D10A16,#F0414B);box-shadow:0 12px 26px rgba(209,10,22,.3);transform:translateY(-2px)}
.sp.on .sp-n{background:#FFFFFF;color:var(--red)}
.sp.on b,.sp.on small{color:#FFFFFF}
.sp-rail{position:absolute;left:0;right:0;bottom:-8px;height:3px;border-radius:2px;background:#E3EAF5;overflow:hidden}
.sp-rail i{display:block;height:100%;width:0;background:var(--iris);transition:width .5s ease}
.fc-play{width:40px;height:40px;border-radius:50%;flex-shrink:0;border:1.5px solid #B9CBE6;background:#FFFFFF;color:var(--blue);display:flex;align-items:center;justify-content:center;cursor:pointer}
.fc-mid{display:flex;flex-wrap:wrap;gap:18px;align-items:stretch;margin-top:6px}
.fc-mid .appwin{flex:1.3 1 340px;box-shadow:0 16px 40px rgba(2,47,110,.12)}
.fc-mid .aw-body{padding:16px;gap:14px}
.fc-mid .aw-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fc-mid .af div{min-height:38px;font-size:14px}
.fc-mid .sim-guide{flex:1 1 240px;gap:10px}
.fc-mid .sim-guide h3{font-size:22px}
.fc-mid .sim-guide p{font-size:14px}
.fc-mid .sg-next{font-size:14px;padding:12px 14px}
.aw-act.press{transform:scale(.94);box-shadow:0 0 0 10px rgba(209,10,22,.18)}
.kb2{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px;border-radius:20px;background:#0B1C3D}
.kc{border-radius:14px;background:rgba(255,255,255,.05);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:104px;transition:background .4s,box-shadow .4s}
.kc.hot{background:rgba(63,227,255,.10);box-shadow:inset 0 0 0 1.5px rgba(63,227,255,.5)}
.kc-h{color:#FFFFFF;font-family:var(--display);font-weight:600;font-size:13px}
.kc-b{display:flex;flex-direction:column;gap:6px}
.kg{display:block;height:30px;border-radius:10px;background:rgba(255,255,255,.06)}
.kb2 .kcard{padding:8px 10px}
.kb2 .kcard b{font-size:12px}
@media (max-width:900px){.sim-nurse{min-height:380px;flex-basis:100%}.sim-nurse img{height:400px}.sps{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-mid .aw-fields{grid-template-columns:1fr}}
@media (max-width:640px){.kb2{grid-template-columns:1fr 1fr}.sp small{display:none}}
.kb2 .kcard{gap:8px}
.kb2 .kcard .col{min-width:0}
.kb2 .kcard b,.kb2 .kcard small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kb2 .kcard .kav{width:28px;height:28px;font-size:11px;border-radius:8px}
.fc-mid .af div{font-size:13px;white-space:nowrap;overflow:hidden}
/* Etiqueta del paso debajo de la enfermera, en mayúsculas */
.sim-nurse .sn-badge{top:auto;bottom:-6px;left:50%;translate:-50% 0;z-index:2;text-transform:uppercase;letter-spacing:.08em;font-size:12px;padding:10px 16px}
.sim-nurse{padding-bottom:28px}

/* ===== Configurador «Arma tu VALUA» ===== */
.cfg{position:relative;overflow:hidden;isolation:isolate;padding:110px 0 120px;background:#020F2B;color:#FFFFFF}
.cfg .h2{color:#FFFFFF}.cfg .lead{color:#C3D2EA}.cfg .eyebrow{color:#FF6B73}
.aur{position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.55;mix-blend-mode:screen}
.aur.a1{width:520px;height:520px;left:-120px;top:-80px;background:#015CE9;animation:aur1 18s ease-in-out infinite}
.aur.a2{width:460px;height:460px;right:-100px;top:30%;background:#BE6AFA;animation:aur2 22s ease-in-out infinite}
.aur.a3{width:420px;height:420px;left:35%;bottom:-200px;background:#09DCFC;opacity:.35;animation:aur3 20s ease-in-out infinite}
@keyframes aur1{50%{transform:translate(220px,140px) scale(1.2)}}
@keyframes aur2{50%{transform:translate(-200px,-120px) scale(.85)}}
@keyframes aur3{50%{transform:translate(-160px,-120px) scale(1.15)}}
.cfg .fchip{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#FFFFFF}
.cfg .fchip em{background:rgba(255,255,255,.12);color:#C3D2EA}
.cfg .fchip.on{background:#FFFFFF;color:var(--navy);border-color:#FFFFFF}
.cfg .fchip.on em{background:var(--mist);color:var(--blue)}
.cfg-grid{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.cfg-left{flex:2 1 620px;min-width:0;display:flex;flex-direction:column;gap:18px}
.ctiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:12px}
.ctile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;border-radius:20px;text-align:left;cursor:pointer;font-family:var(--body);color:#FFFFFF;background:rgba(255,255,255,.04);border:1.5px solid rgba(255,255,255,.12);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .35s cubic-bezier(.3,1.5,.5,1),background .3s,border-color .3s,box-shadow .3s,opacity .4s,filter .4s;min-height:178px}
.ctile:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.35)}
.ctile:active{transform:scale(.97)}
.ct-ic{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:#7FD9FF;transition:all .3s}
.ctile b{font-family:var(--display);font-size:16px}
.ct-s{font-size:13px;line-height:1.45;color:#B9C8E2}
.ct-tag{margin-top:auto;font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.08);color:#C3D2EA}
.ct-sw{position:absolute;right:14px;top:16px;width:40px;height:22px;border-radius:999px;background:rgba(255,255,255,.15);transition:background .3s}
.ct-sw i{position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#FFFFFF;transition:transform .35s cubic-bezier(.3,1.5,.5,1)}
.ctile.sel{background:linear-gradient(150deg,rgba(1,92,233,.35),rgba(190,106,250,.18));border-color:rgba(63,227,255,.6);box-shadow:0 14px 34px rgba(1,92,233,.25),inset 0 0 0 1px rgba(63,227,255,.25)}
.ctile.sel .ct-ic{background:linear-gradient(135deg,#015CE9,#BE6AFA);color:#FFFFFF}
.ctile.sel .ct-sw{background:#28C840}
.ctile.sel .ct-sw i{transform:translateX(18px)}
.ctile.dim{opacity:.22;filter:grayscale(1);transform:scale(.96)}
.cfg-sum{flex:1 1 320px;min-width:0;position:sticky;top:110px;display:flex;flex-direction:column;gap:16px;padding:24px;border-radius:28px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 30px 70px rgba(0,0,0,.35)}
.cs-kicker{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7FD9FF}
.gauge{--v:0;width:170px;height:170px;margin:0 auto;border-radius:50%;padding:12px;background:conic-gradient(from 210deg,#09DCFC,#015CE9 calc(var(--v) * .5%),#BE6AFA calc(var(--v) * 1%),rgba(255,255,255,.1) 0);transition:--v .6s;position:relative}
.gauge.bump{animation:gbump .45s cubic-bezier(.3,1.6,.5,1)}
@keyframes gbump{50%{transform:scale(1.06)}}
.g-in{width:100%;height:100%;border-radius:50%;background:#071A3C;display:flex;flex-direction:column;align-items:center;justify-content:center}
.g-in b{font-family:var(--display);font-size:52px;line-height:1}
.g-in span{font-size:12px;color:#9FB2CF}
.cs-plan{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:14px;background:rgba(255,255,255,.06)}
.cs-plan span{font-size:13px;color:#9FB2CF}
.cs-plan b{font-family:var(--display);font-size:18px;background:linear-gradient(90deg,#3FE3FF,#D49BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.cs-list{display:flex;flex-wrap:wrap;gap:6px;min-height:34px}
.cs-list span{font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:rgba(63,227,255,.12);border:1px solid rgba(63,227,255,.3);color:#E3F6FF;animation:pop .35s cubic-bezier(.3,1.6,.5,1)}
@keyframes pop{from{transform:scale(.4);opacity:0}}
.cs-cta{display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}
.cs-cta b{font-family:var(--display);font-size:17px;line-height:1.3}
.cs-cta > span{font-size:13px;line-height:1.5;color:#B9C8E2}
.cs-cta .btn{width:100%}
.flyer{position:fixed;z-index:200;width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#015CE9,#BE6AFA);color:#FFFFFF;box-shadow:0 10px 30px rgba(1,92,233,.6);pointer-events:none;transition:transform .7s cubic-bezier(.5,-0.3,.4,1.2),opacity .7s}
@media (max-width:960px){.cfg-sum{position:relative;top:auto}}

/* ===== Seguridad: navegador + fondo médico ===== */
.px-sec2{position:relative;overflow:hidden;isolation:isolate;padding:110px 0;background:radial-gradient(700px 500px at 25% 60%,rgba(1,92,233,.5),transparent 70%),radial-gradient(500px 400px at 95% 10%,rgba(209,10,22,.28),transparent 70%),radial-gradient(500px 400px at 80% 100%,rgba(190,106,250,.3),transparent 70%),linear-gradient(160deg,#021B44,#020F2B)}
.px-sec2 .h2 span{background:linear-gradient(90deg,#3FE3FF,#D49BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.sec-fx{position:absolute;inset:0;z-index:-1;overflow:hidden}
.rp{position:absolute;bottom:-40px;opacity:0;scale:var(--s);filter:drop-shadow(0 0 8px currentColor);animation:rise var(--d) linear infinite;animation-delay:var(--dl)}
@keyframes rise{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:.55}80%{opacity:.35}100%{transform:translateY(-120vh) rotate(180deg);opacity:0}}
.bw-wrap{flex:1.2 1 500px;min-width:0;position:relative}
.radar{position:absolute;left:50%;top:50%;width:300px;height:300px;margin:-150px 0 0 -150px;border-radius:50%;border:2px solid rgba(63,227,255,.35);animation:radar 4.5s ease-out infinite;z-index:0;pointer-events:none}
.radar.r2{animation-delay:1.5s;border-color:rgba(190,106,250,.35)}.radar.r3{animation-delay:3s;border-color:rgba(255,107,115,.3)}
@keyframes radar{from{transform:scale(.6);opacity:1}to{transform:scale(2.6);opacity:0}}
.bw{position:relative;z-index:1;border-radius:18px;overflow:hidden;background:#FFFFFF;color:var(--ink);box-shadow:0 40px 90px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.1);animation:floatA 8s ease-in-out infinite}
.bw-tabs{display:flex;align-items:flex-end;gap:4px;padding:10px 12px 0;background:#DCE3EE}
.bw-tabs .dots{margin:0 10px 12px 2px}
.tab{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:12px 12px 0 0;font-size:13px;font-weight:600;color:#5A6A86;max-width:220px;white-space:nowrap}
.tab.on{background:#FFFFFF;color:var(--navy)}
.tab img{width:16px;height:16px}
.tab em{font-style:normal;color:#9AA6BA;margin-left:6px}
.tdot{width:8px;height:8px;border-radius:50%;background:#9AA6BA}
.tab-plus{padding:0 10px 10px;color:#5A6A86;font-weight:700}
.bw-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line)}
.nav-b{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#7C8CA8}
.url{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#F1F5FC;font-size:13px;color:var(--muted);overflow:hidden;white-space:nowrap}
.ulock{color:#13A24A;display:flex}
.url span:nth-child(2){color:#13A24A;font-weight:700}
.url b{color:var(--navy);font-weight:600}
.bw-page{padding:22px;display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,#FFFFFF,#F6F9FE)}
.sc-hero{display:flex;align-items:center;gap:18px;padding:16px;border-radius:18px;background:linear-gradient(135deg,#021B44,#04489A);color:#FFFFFF}
.shield-box{position:relative;width:76px;height:76px;flex-shrink:0;border-radius:20px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;overflow:hidden}
.sh{width:52px;height:52px;filter:drop-shadow(0 6px 14px rgba(1,92,233,.6))}
.shc{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .6s ease}
.bw.done .shc{stroke-dashoffset:0}
.scan{position:absolute;left:0;right:0;height:22px;top:-22px;background:linear-gradient(180deg,transparent,rgba(63,227,255,.7),transparent);animation:scanY 1.4s ease-in-out infinite}
.bw.done .scan{display:none}
@keyframes scanY{to{top:100%}}
.sc-t{font-family:var(--display);font-size:18px}
.sc-s{font-size:13px;color:#C3D2EA}
.sc-pg{height:6px;border-radius:3px;background:rgba(255,255,255,.15);overflow:hidden}
.sc-pg i{display:block;height:100%;width:0;background:var(--iris);transition:width .5s ease}
.sc-list{display:flex;flex-direction:column;gap:8px}
.bw .tl{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;border:1px solid var(--line);background:#FFFFFF;opacity:1;transform:none;transition:border-color .3s,box-shadow .3s}
.tl-ic{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#EEF2F8;color:#8A9AB5;transition:all .3s}
.tl-n{flex:1;font-size:14px;font-weight:600;color:var(--navy)}
.tl-st{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#9AA6BA}
.tl-st em{font-style:normal}
.tl-st i{width:14px;height:14px;border-radius:50%;border:2px solid #CAD5E5}
.bw .tl.run{border-color:#7FB2FF;box-shadow:0 0 0 3px rgba(1,92,233,.1)}
.bw .tl.run .tl-st{color:var(--blue)}
.bw .tl.run .tl-st i{border-color:var(--blue);border-top-color:transparent;animation:spin .7s linear infinite}
.bw .tl.ok .tl-ic{background:var(--c);color:#FFFFFF}
.bw .tl.ok .tl-st{color:#13A24A}
.bw .tl.ok .tl-st i{border-color:#13A24A;background:#13A24A}
.sc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px}
.fin{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#E7F6EE;color:#13804A;font-weight:700;font-size:13px;opacity:0;transform:scale(.9);transition:all .4s cubic-bezier(.3,1.6,.5,1)}
.fin.show{opacity:1;transform:none}
.bw .term-re{margin:0;color:var(--blue);border-color:#B9CBE6}
.bw .term-re:hover{color:var(--navy);border-color:var(--blue)}
/* tarjetas de la derecha más vivas */
.px-sec2 .srow{position:relative;overflow:hidden;background:rgba(255,255,255,.05);transition:transform .35s,background .4s,border-color .4s,box-shadow .4s}
.px-sec2 .srow:hover{transform:translateX(-4px)}
.px-sec2 .srow.on{background:linear-gradient(90deg,color-mix(in srgb,var(--c) 18%,transparent),rgba(255,255,255,.04));border-color:color-mix(in srgb,var(--c) 60%,transparent);box-shadow:0 12px 30px color-mix(in srgb,var(--c) 18%,transparent)}
.px-sec2 .srow.on .si{background:var(--c);color:#021B44;box-shadow:0 0 18px var(--c)}
.px-sec2 .srow::after{content:'';position:absolute;top:0;bottom:0;width:40%;left:-40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)}
.px-sec2 .srow.on::after{animation:shine 1s ease-out}
@keyframes shine{to{left:110%}}
@media (max-width:640px){.tab:not(.on),.tab-plus,.nav-b:nth-child(2){display:none}}

/* Configurador fusionado con seguridad */
.px-sec2{padding-bottom:120px;background:
  radial-gradient(700px 500px at 25% 18%,rgba(1,92,233,.5),transparent 70%),
  radial-gradient(500px 400px at 95% 6%,rgba(209,10,22,.28),transparent 70%),
  radial-gradient(600px 500px at 85% 55%,rgba(190,106,250,.30),transparent 70%),
  radial-gradient(700px 500px at 10% 85%,rgba(9,220,252,.20),transparent 70%),
  radial-gradient(500px 400px at 70% 100%,rgba(1,92,233,.35),transparent 70%),
  linear-gradient(180deg,#021B44 0%,#020F2B 50%,#03163A 100%)}
.cfg{background:none;padding:0;margin-top:72px;position:relative;overflow:visible}
.cfg-sep{display:flex;align-items:center;gap:16px;max-width:1200px;margin:0 auto 56px;padding:0 32px}
.cfg-sep span{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(63,227,255,.5),transparent)}
.cfg-sep i{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#FFFFFF;background:linear-gradient(135deg,#015CE9,#BE6AFA);box-shadow:0 0 0 8px rgba(63,227,255,.08),0 0 24px rgba(63,227,255,.5)}

/* ===== Configurador: banda clara, colores y fila deslizante ===== */
.px-sec2{padding-bottom:0}
.cfg{margin-top:96px;padding:96px 0 110px;overflow:hidden;isolation:isolate;color:var(--ink);
  background:linear-gradient(135deg,#FFF5F6 0%,#F3F0FF 35%,#EAF6FF 70%,#F0FFF8 100%);border-radius:48px 48px 0 0}
.cfg .h2{color:var(--navy)}.cfg .lead{color:var(--muted)}.cfg .eyebrow{color:var(--red)}
.blob{position:absolute;z-index:-1;border-radius:50%;filter:blur(60px);opacity:.45}
.blob.b1{width:380px;height:380px;left:-80px;top:40px;background:#FF8A91;animation:aur1 16s ease-in-out infinite}
.blob.b2{width:420px;height:420px;right:-120px;top:-60px;background:#8DC4FF;animation:aur2 19s ease-in-out infinite}
.blob.b3{width:360px;height:360px;left:40%;bottom:-140px;background:#C9A6FF;animation:aur3 17s ease-in-out infinite}
.blob.b4{width:300px;height:300px;right:20%;bottom:10%;background:#7FE3C4;animation:aur1 21s ease-in-out infinite reverse}
.cfg .fchip{background:#FFFFFF;border-color:var(--line);color:var(--ink)}
.cfg .fchip em{background:var(--mist);color:var(--blue)}
.cfg .fchip.on{background:var(--navy);border-color:var(--navy);color:#FFFFFF}
.cfg .fchip.on em{background:rgba(255,255,255,.15);color:#FFFFFF}
.cfg-grid{align-items:stretch}
.ct-rail{position:relative}
.ctiles{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;padding:12px 4px 22px;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 92%,transparent)}
.ctiles::-webkit-scrollbar{display:none}
.ctile{flex:0 0 220px;scroll-snap-align:start;min-height:230px;color:var(--ink);background:#FFFFFF;border:1.5px solid color-mix(in srgb,var(--c) 25%,#FFFFFF);box-shadow:0 14px 30px color-mix(in srgb,var(--c) 14%,transparent);animation:tileBob 5s ease-in-out infinite}
.ctile:nth-child(2n){animation-delay:-1.2s}.ctile:nth-child(3n){animation-delay:-2.4s}.ctile:nth-child(5n){animation-delay:-3.4s}
@keyframes tileBob{50%{translate:0 -6px}}
.ctile:hover{border-color:var(--c)}
.ctile .ct-ic{background:color-mix(in srgb,var(--c) 14%,#FFFFFF);color:var(--c)}
.ctile b{color:var(--navy)}
.ctile .ct-s{color:var(--muted)}
.ctile .ct-tag{background:color-mix(in srgb,var(--c) 10%,#FFFFFF);color:var(--c)}
.ctile .ct-sw{background:#DCE3EE}
.ctile.sel{color:#FFFFFF;background:linear-gradient(150deg,var(--c),color-mix(in srgb,var(--c) 55%,#021B44));border-color:transparent;box-shadow:0 20px 40px color-mix(in srgb,var(--c) 40%,transparent)}
.ctile.sel b,.ctile.sel .ct-s{color:#FFFFFF}
.ctile.sel .ct-s{opacity:.88}
.ctile.sel .ct-ic{background:rgba(255,255,255,.22);color:#FFFFFF}
.ctile.sel .ct-tag{background:rgba(255,255,255,.2);color:#FFFFFF}
.ctile.sel .ct-sw{background:rgba(255,255,255,.35)}
.ctile.dim{opacity:.3}
.ct-nav{position:absolute;top:50%;z-index:2;translate:0 -50%;width:44px;height:44px;border-radius:50%;border:none;background:#FFFFFF;color:var(--navy);box-shadow:0 10px 24px rgba(2,47,110,.18);display:flex;align-items:center;justify-content:center;cursor:pointer}
.ct-nav.prev{left:-10px}.ct-nav.next{right:-10px}
.ct-nav:hover{background:var(--navy);color:#FFFFFF}
.cfg-sum{background:linear-gradient(160deg,#021B44,#04489A 70%,#6A3FD8);border-color:transparent;color:#FFFFFF}
/* fila completa + resumen horizontal */
.cfg-grid{flex-direction:column;gap:20px}
.cfg-left{flex:none;width:100%}
.cfg .fchips{flex-wrap:wrap}
.ct-rail{margin:0 -8px}
.ctiles{padding:14px 24px 26px}
.ct-nav.prev{left:0}.ct-nav.next{right:0}
.cfg-sum{position:relative;top:auto;flex:none;width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.1fr);gap:20px 32px;align-items:center;padding:26px 30px}
.cfg-sum .cs-kicker{grid-column:1 / -1}
.cfg-sum .gauge{grid-row:2 / span 2;margin:0;width:150px;height:150px}
.cfg-sum .cs-plan{grid-column:2}
.cfg-sum .cs-list{grid-column:2}
.cfg-sum .cs-cta{grid-column:3;grid-row:2 / span 2;border-top:none;border-left:1px solid rgba(255,255,255,.15);padding:0 0 0 28px}
.cfg-sum .cs-cta .btn{width:auto}
.cfg-sum .cs-cta > div{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:900px){.cfg-sum{grid-template-columns:1fr}.cfg-sum .gauge{grid-row:auto;margin:0 auto}.cfg-sum .cs-plan,.cfg-sum .cs-list,.cfg-sum .cs-cta{grid-column:1;grid-row:auto}.cfg-sum .cs-cta{border-left:none;border-top:1px solid rgba(255,255,255,.15);padding:14px 0 0}.cfg-sum .cs-cta .btn{width:100%}}
.ctiles{padding:14px 60px 26px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%);scroll-padding:0 60px}
.cfg-sum .cs-list{align-self:start}
.cfg-wrap{padding:0;position:relative}
.cfg-wrap .cfg{margin-top:0;border-radius:0}

/* Médico + fondo médico animado en el configurador */
.cfg-fx{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.cf{position:absolute;bottom:-40px;scale:var(--s);opacity:0;animation:cfRise var(--d) linear infinite;animation-delay:var(--dl)}
@keyframes cfRise{0%{transform:translate(0,0) rotate(0);opacity:0}10%{opacity:.28}50%{transform:translate(30px,-60vh) rotate(90deg)}85%{opacity:.18}100%{transform:translate(-20px,-130vh) rotate(200deg);opacity:0}}
.cfg-ecg{position:absolute;left:0;top:44%;width:100%;height:100px;z-index:-1;pointer-events:none;opacity:.8}
.cfg-ecg .base{stroke:rgba(4,72,154,.08)}
.cfg-ecg .beam{stroke:#D10A16;stroke-dasharray:110 890;filter:drop-shadow(0 0 5px rgba(209,10,22,.6));animation:beam 5s linear infinite}
.cfg-row{display:flex;align-items:flex-end;gap:0}
.cfg-doc{flex:0 0 260px;position:relative;margin:0 -30px -40px 0;z-index:3;align-self:flex-end}
.cfg-doc img{position:relative;width:100%;height:auto;display:block;transform-origin:50% 100%;filter:drop-shadow(0 24px 30px rgba(2,47,110,.22));
  -webkit-mask-image:linear-gradient(180deg,#000 85%,transparent 100%);mask-image:linear-gradient(180deg,#000 85%,transparent 100%);animation:docPoint 4s ease-in-out infinite}
@keyframes docPoint{0%,100%{transform:translate(0,0) rotate(0)}30%{transform:translate(8px,-6px) rotate(1.8deg)}60%{transform:translate(2px,-10px) rotate(-.6deg)}}
.cd-ring{position:absolute;left:4%;right:4%;bottom:4%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,#FFFFFF,rgba(255,255,255,.6) 60%,transparent);box-shadow:0 0 0 2px rgba(1,92,233,.08)}
.cd-ring::after{content:'';position:absolute;inset:-10px;border-radius:50%;border:2px dashed rgba(209,10,22,.3);animation:spin 26s linear infinite}
.cd-tip{position:absolute;right:-10px;top:12%;padding:8px 14px;border-radius:16px 16px 16px 4px;background:var(--red);color:#FFFFFF;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:0 12px 26px rgba(209,10,22,.35);animation:tipBob 2s ease-in-out infinite}
@keyframes tipBob{50%{transform:translate(6px,-4px)}}
.cfg-row .ct-rail{flex:1;min-width:0}
@media (max-width:900px){.cfg-row{flex-direction:column;align-items:stretch}.cfg-doc{flex:none;width:220px;margin:0 auto -20px}.cd-tip{right:-40px}}
.cfg-doc{flex-basis:280px;margin:-30px 16px -24px 0}
.cd-tip{right:auto;left:58%;top:4%}
.cfg-row .ct-nav.prev{left:4px}
.cfg-doc{margin-top:10px}

/* Filtros automáticos */
.cfg .fchip{position:relative;overflow:hidden}
.cfg .fchip.run::after{content:'';position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--iris);transform-origin:left;animation:chipRun 5s linear forwards}
@keyframes chipRun{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.ctile.hide{display:none}
.ctiles{transition:opacity .28s,transform .28s}
.ctiles.swap{opacity:0;transform:translateY(10px)}
.ctile.enter{animation:tileIn .5s cubic-bezier(.3,1.4,.5,1) both,tileBob 5s ease-in-out .6s infinite;animation-delay:calc(var(--k) * 80ms),calc(var(--k) * 80ms + .6s)}
@keyframes tileIn{from{opacity:0;transform:translateY(24px) scale(.9)}}
/* Sección más baja: el médico toca el pie de página */
.cfg-wrap .cfg{padding:72px 0 0}
.cfg-doc{margin:0 16px 0 0}
.cfg-doc img{-webkit-mask-image:none;mask-image:none;animation:docPointB 4s ease-in-out infinite;transform-origin:50% 100%}
@keyframes docPointB{0%,100%{transform:rotate(0)}30%{transform:rotate(1.6deg) translateX(6px)}60%{transform:rotate(-.6deg)}}
.cd-ring{bottom:0}
.cfg-row .ct-rail{align-self:center;padding-bottom:40px}
.cfg-ecg{top:auto;bottom:120px}
@media (max-width:900px){.cfg-doc{margin:0 auto}.cfg-row{flex-direction:column-reverse}.cfg-row .ct-rail{padding-bottom:10px}}

/* ================= SOLUCIONES ================= */
.sx-hero{position:relative;overflow:hidden;isolation:isolate;padding:64px 0 0;color:#FFFFFF;background:radial-gradient(800px 500px at 80% 100%,rgba(1,92,233,.55),transparent 70%),radial-gradient(600px 400px at 0% 0%,rgba(209,10,22,.22),transparent 70%),linear-gradient(170deg,#021B44,#03245A 60%,#04489A)}
.sx-hero::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%);mask-image:linear-gradient(180deg,#000,transparent 85%)}
.sx-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(60px);opacity:.5}
.sx-orb.o1{width:420px;height:420px;right:-80px;top:-120px;background:#BE6AFA;animation:aur2 18s ease-in-out infinite}
.sx-orb.o2{width:360px;height:360px;left:30%;bottom:-160px;background:#09DCFC;opacity:.3;animation:aur3 20s ease-in-out infinite}
.sx-hero-grid{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end}
.sx-copy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:20px;padding-bottom:72px}
.sx-hero .crumbs,.sx-hero .crumbs a{color:#B9C8E2}.sx-hero .crumbs span[aria-current]{color:#FFFFFF}
.sx-hero .eyebrow{color:#FF6B73}
.sx-copy h1{color:#FFFFFF;font-weight:700;font-size:clamp(36px,4.8vw,62px);line-height:1.04;letter-spacing:-.03em}
.sx-copy h1 em{font-style:normal;background:linear-gradient(90deg,#3FE3FF,#D49BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.sx-hero .lead{color:#D5E0F2}
.skyline{flex:1 1 520px;min-width:0;position:relative;display:flex;align-items:flex-end;justify-content:center;gap:14px;padding:0 10px;min-height:330px}
.skyline .ground{position:absolute;left:-20px;right:-20px;bottom:0;height:4px;background:var(--iris);box-shadow:0 0 24px rgba(63,227,255,.6)}
.bld{position:relative;flex:1 1 0;max-width:120px;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#FFFFFF;padding-bottom:44px;animation:bldUp .9s cubic-bezier(.2,.9,.3,1.2) both;animation-delay:var(--d)}
@keyframes bldUp{from{transform:translateY(60px);opacity:0}}
.bld-top{width:30px;height:30px;border-radius:50%;background:#D10A16;display:flex;align-items:center;justify-content:center;margin-bottom:8px;box-shadow:0 0 0 6px rgba(209,10,22,.18);transition:transform .3s}
.bld-body{width:100%;height:var(--h);border-radius:10px 10px 0 0;background:linear-gradient(180deg,#FFFFFF,#C9D8EE);display:grid;grid-template-columns:repeat(var(--cols),1fr);gap:7px;padding:12px 10px;align-content:start;transition:transform .35s cubic-bezier(.3,1.5,.5,1),box-shadow .3s}
.bld-body i{height:14px;border-radius:3px;background:#0B2E6B;animation:twinkle 4s ease-in-out infinite}
@keyframes twinkle{0%,100%{background:#0B2E6B}40%,60%{background:#FFD76A;box-shadow:0 0 8px rgba(255,215,106,.8)}}
.bld b{position:absolute;bottom:10px;font-size:12px;font-weight:700;white-space:nowrap;color:#D5E0F2;transition:color .3s}
.bld:hover .bld-body{transform:translateY(-10px);box-shadow:0 20px 40px rgba(63,227,255,.3)}
.bld:hover .bld-top{transform:translateY(-10px) scale(1.15)}
.bld:hover b{color:#FFFFFF}
/* Sub-navegación fija */
.sx-nav{position:sticky;top:88px;z-index:30;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.sx-nav .wrap{display:flex;gap:6px;overflow-x:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none}
.sx-nav a{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 16px;border-radius:999px;color:var(--ink);text-decoration:none;font-weight:600;font-size:14px;transition:background .25s,color .25s}
.sx-nav a span{font-size:11px;font-weight:700;color:#9AA6BA}
.sx-nav a:hover{background:var(--mist)}
.sx-nav a.on{background:var(--navy);color:#FFFFFF}.sx-nav a.on span{color:#FF8A91}
/* Secciones */
.sx-sec{position:relative;overflow:hidden;padding:110px 0;isolation:isolate}
.sx-sec.alt-bg{background:linear-gradient(180deg,#F1F5FC,#FFFFFF)}
.sx-num{position:absolute;z-index:-1;top:30px;right:4%;font-family:var(--display);font-weight:700;font-size:clamp(120px,18vw,260px);line-height:1;color:transparent;-webkit-text-stroke:2px rgba(4,72,154,.08)}
.sx-sec.alt-bg .sx-num{right:auto;left:4%}
.sx-row{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.sx-row.rev{flex-direction:row-reverse}
.sx-scene{flex:1.1 1 460px;min-width:0;position:relative;perspective:1200px;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .9s}
.js .sx-scene.pending[data-from="left"]{transform:translateX(-80px);opacity:0}
.js .sx-scene.pending[data-from="right"]{transform:translateX(80px);opacity:0}
.scene-card{border-radius:28px;overflow:hidden;box-shadow:0 40px 80px rgba(2,47,110,.25);transform:rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg));transition:transform .4s ease;background:#021B44}
.scene-card svg{display:block;width:100%;height:auto}
.sfloat{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#FFFFFF;color:var(--navy);font-size:13px;font-weight:700;box-shadow:0 14px 34px rgba(2,47,110,.2);white-space:nowrap}
.sfloat svg{color:#FFFFFF;background:#13A24A;border-radius:50%;padding:3px;width:20px;height:20px}
.sfloat.f1{left:-18px;top:14%;animation:floatA 6s ease-in-out infinite}
.sfloat.f2{right:-18px;bottom:12%;animation:floatB 7s ease-in-out infinite}
.sx-text{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:18px}
.sx-text h2{font-weight:700;font-size:clamp(28px,3.2vw,42px);line-height:1.1;letter-spacing:-.02em}
.sx-meter{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:600;color:var(--muted)}
.bars5{display:flex;gap:5px;align-items:flex-end}
.bars5 i{width:12px;border-radius:3px;background:#E3EAF5}
.bars5 i:nth-child(1){height:10px}.bars5 i:nth-child(2){height:14px}.bars5 i:nth-child(3){height:18px}.bars5 i:nth-child(4){height:22px}.bars5 i:nth-child(5){height:26px}
.bars5 i.on{background:linear-gradient(180deg,#015CE9,#BE6AFA)}
.sx-mods b{display:block;font-size:14px;color:var(--navy);margin-bottom:10px}
.mchips{display:flex;flex-wrap:wrap;gap:8px}
.mchip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;background:#FFFFFF;border:1.5px solid color-mix(in srgb,var(--c) 25%,#FFFFFF);font-size:13px;font-weight:600;color:var(--navy);box-shadow:0 6px 16px color-mix(in srgb,var(--c) 12%,transparent);transition:transform .25s}
.mchip:hover{transform:translateY(-2px)}
.mchip i{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--c);color:#FFFFFF}
.sx-sec.inview .mchip{animation:pop .45s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--k) * 70ms + .3s)}
.sx-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-top:6px}
.plan-pill{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;border:1.5px solid #B9CBE6;text-decoration:none;font-size:14px;color:var(--muted);transition:border-color .2s}
.plan-pill b{font-family:var(--display);background:linear-gradient(90deg,#04489A,#BE6AFA);-webkit-background-clip:text;background-clip:text;color:transparent}
.plan-pill:hover{border-color:var(--blue)}
/* Animaciones de las escenas */
.scene-card .w{fill:#0B2E6B;animation:winLit 5s ease-in-out infinite}
.scene-card .w.lit{fill:#FFD76A}
@keyframes winLit{0%,100%{fill:#0B2E6B}35%,65%{fill:#FFD76A}}
.mon{stroke-dasharray:100;stroke-dashoffset:100;animation:draw 2s linear infinite}
.open{animation:blink 2s ease-in-out infinite}
.xc{transform-box:fill-box;transform-origin:center;animation:coreBeat 1.6s ease-in-out infinite}
.doc-fig{animation:floatB 4s ease-in-out infinite}
.spec{animation:specPop 2.8s ease-in-out infinite}
@keyframes specPop{0%,100%{opacity:.35}50%{opacity:1}}
.tag-f{animation:floatA 5s ease-in-out infinite;animation-delay:calc(var(--x) * -1.4s)}
.flowd{animation:dash 1.2s linear infinite}
.beacon{animation:blink .9s ease-in-out infinite}
.amb{animation:drive 7s linear infinite}
@keyframes drive{0%{transform:translateX(-120px)}100%{transform:translateX(640px)}}
.siren{animation:siren .5s steps(1) infinite}
@keyframes siren{0%{fill:#FF4D57}50%{fill:#3FA9FF}}
.site{animation:floatA 5s ease-in-out infinite}
.hubpulse{transform-box:fill-box;transform-origin:center;animation:hubP 2.4s ease-out infinite}
@keyframes hubP{from{transform:scale(.8);opacity:.5}to{transform:scale(1.8);opacity:0}}
@media (max-width:900px){.sx-nav{top:76px}.sfloat.f1{left:6px}.sfloat.f2{right:6px}.skyline{min-height:260px}.bld b{font-size:10px}.sx-copy{padding-bottom:24px}}
@media (max-width:520px){.bld:nth-child(2),.bld:nth-child(4){display:none}}
@media (prefers-reduced-motion:reduce){.js .sx-scene.pending{transform:none;opacity:1}}
.sx-num{top:24px;-webkit-text-stroke:2px rgba(4,72,154,.05)}
.demo-area{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.2);font-size:14px}
/* Carrusel de fondo en la cabecera de Soluciones */
.sx-bg{position:absolute;inset:0;z-index:-2}
.sx-bg .slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.6s ease}
.sx-bg .slide.on{opacity:1}
.sx-bg img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transform:scale(1.05);animation:ftZoom 12s ease-in-out infinite alternate}
.sx-bg::after{content:'';position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(2,27,68,.95) 0%,rgba(2,27,68,.86) 40%,rgba(2,27,68,.6) 70%,rgba(2,27,68,.5) 100%),
  linear-gradient(0deg,rgba(2,27,68,.92) 0%,rgba(2,27,68,0) 40%),
  radial-gradient(700px 500px at 8% 110%,rgba(209,10,22,.30),transparent 70%)}
.sx-hero{background:var(--navy)}
/* ===== Soluciones en un solo carrusel ===== */
.sx-slider{position:relative;padding:56px 0 40px;background:radial-gradient(700px 400px at 90% 10%,rgba(190,106,250,.10),transparent 70%),radial-gradient(600px 400px at 0% 100%,rgba(1,92,233,.10),transparent 70%),linear-gradient(180deg,#FFFFFF,#F1F5FC)}
.sx-bar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.sx-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:6px;border-radius:999px;background:#FFFFFF;border:1px solid var(--line);box-shadow:0 8px 24px rgba(2,47,110,.06)}
.sx-tab{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:none;background:transparent;color:var(--ink);font-family:var(--body);font-weight:600;font-size:14px;cursor:pointer;transition:background .3s,color .3s}
.sx-tab span{font-size:11px;font-weight:700;color:#9AA6BA}
.sx-tab:hover{background:var(--mist)}
.sx-tab.on{background:var(--navy);color:#FFFFFF}.sx-tab.on span{color:#FF8A91}
.sx-tab i{position:absolute;left:14px;right:14px;bottom:4px;height:2px;border-radius:2px;background:var(--iris);transform:scaleX(0);transform-origin:left}
.sx-tab.on.run i{animation:chipRun var(--dur,7s) linear forwards}
.sx-ctrl{display:flex;align-items:center;gap:8px}
.sx-count{font-family:var(--display);font-size:15px;color:#9AA6BA;margin-right:6px}
.sx-count b{font-size:28px;color:var(--navy)}
.sx-btn{width:42px;height:42px;border-radius:50%;border:1.5px solid #B9CBE6;background:#FFFFFF;color:var(--navy);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}
.sx-btn:hover{background:var(--navy);color:#FFFFFF;border-color:var(--navy)}
.sx-view{overflow:hidden;position:relative}
.sx-track{display:flex;transition:transform .9s cubic-bezier(.7,0,.25,1);will-change:transform}
.sx-slide{flex:0 0 100%;min-width:0;padding:56px 0 64px;background:transparent !important}
.sx-slide .sx-num{right:4% !important;left:auto !important;transition:transform 1s cubic-bezier(.2,.8,.2,1),opacity 1s;transform:translateX(120px);opacity:0}
.sx-slide.active .sx-num{transform:none;opacity:1}
.sx-slide .sx-scene{transition:transform .9s cubic-bezier(.2,.8,.2,1) .15s,opacity .9s .15s;transform:translateX(90px) scale(.96);opacity:0}
.sx-slide .sx-text > *{transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .7s;transform:translateX(60px);opacity:0}
.sx-slide.active .sx-scene,.sx-slide.active .sx-text > *{transform:none;opacity:1}
.sx-slide.active .sx-text > *:nth-child(2){transition-delay:.08s}.sx-slide.active .sx-text > *:nth-child(3){transition-delay:.16s}.sx-slide.active .sx-text > *:nth-child(4){transition-delay:.24s}.sx-slide.active .sx-text > *:nth-child(5){transition-delay:.32s}.sx-slide.active .sx-text > *:nth-child(6){transition-delay:.4s}
.sx-slide .sx-row.rev{flex-direction:row}
@media (max-width:900px){.sx-bar{flex-direction:column;align-items:stretch}.sx-tabs{border-radius:20px;justify-content:center}.sx-ctrl{justify-content:center}.sx-slide{padding:32px 0 40px}}
@media (prefers-reduced-motion:reduce){.sx-track{transition:none}}
/* Fondo médico animado del carrusel */
.sx-slider{overflow:hidden;isolation:isolate;background:linear-gradient(135deg,#FFF5F6 0%,#F3F0FF 35%,#EAF6FF 70%,#F0FFF8 100%)}
.sx-fx{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.sf{position:absolute;bottom:-40px;scale:var(--s);opacity:0;animation:cfRise var(--d) linear infinite;animation-delay:var(--dl)}
.sx-ecg{position:absolute;left:0;bottom:40px;width:100%;height:100px;z-index:-1;pointer-events:none}
.sx-ecg .base{stroke:rgba(4,72,154,.08)}
.sx-ecg .beam{stroke:#D10A16;stroke-dasharray:110 890;filter:drop-shadow(0 0 5px rgba(209,10,22,.6));animation:beam 4.5s linear infinite}
.sx-slider .blob{z-index:-2}
.sx-slide .sx-num{-webkit-text-stroke:2px rgba(4,72,154,.07)}
/* Médico en la cabecera de Soluciones */
.sx-hero-grid{align-items:flex-end}
.sx-doc{flex:1 1 420px;min-width:0;max-width:500px;margin:0 0 0 auto;position:relative;display:flex;flex-direction:column;align-items:center}
.sd-halo{position:absolute;left:8%;right:8%;top:10%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(63,227,255,.35),rgba(1,92,233,.25) 60%,transparent);animation:ring 8s ease-in-out infinite}
.sd-halo::after{content:'';position:absolute;inset:4%;border-radius:50%;border:2px dashed rgba(255,255,255,.2);animation:spin 40s linear infinite}
.sx-doc img{position:relative;width:100%;max-width:420px;height:auto;display:block;transform-origin:50% 100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.4));animation:docPointL 4.5s ease-in-out infinite}
@keyframes docPointL{0%,100%{transform:rotate(0)}30%{transform:rotate(-1.6deg) translateX(-6px)}60%{transform:rotate(.6deg)}}
.sd-cap{position:absolute;left:50%;bottom:22px;translate:-50% 0;z-index:2;display:flex;align-items:center;gap:10px;white-space:nowrap;padding:14px 22px;border-radius:999px;background:rgba(2,27,68,.82);border:1px solid rgba(63,227,255,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#FFFFFF;font-family:var(--display);font-weight:700;font-size:18px;box-shadow:0 18px 40px rgba(0,0,0,.4);animation:floatB 6s ease-in-out infinite}
.sd-ic{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#015CE9,#BE6AFA);color:#FFFFFF}
@media (max-width:900px){.sx-doc{margin:0 auto;max-width:360px}.sd-cap{font-size:15px;padding:11px 16px}}
/* Cabecera de Planes con carrusel y doctora */
.pl-hero{position:relative;overflow:hidden;isolation:isolate;padding:56px 0 0;color:#FFFFFF;background:var(--navy)}
.pl-grid{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end}
.pl-copy{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:20px;padding-bottom:80px}
.pl-hero .crumbs,.pl-hero .crumbs a{color:#B9C8E2}.pl-hero .crumbs span[aria-current]{color:#FFFFFF}
.pl-hero .eyebrow{color:#FF6B73}
.pl-copy h1{color:#FFFFFF;font-weight:700;font-size:clamp(36px,4.8vw,60px);line-height:1.05;letter-spacing:-.03em}
.pl-copy h1 em{font-style:normal;color:#FF4D57}
.pl-hero .lead{color:#D5E0F2;max-width:560px}
.pl-chips{display:flex;flex-wrap:wrap;gap:10px}
.pl-chips span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);font-size:14px;font-weight:600}
.pl-chips svg{color:#3BE07A}
.pl-doc{flex:1 1 380px;min-width:0;max-width:460px;margin:0 0 0 auto;position:relative;display:flex;justify-content:center}
.pl-doc img{position:relative;width:100%;height:auto;display:block;transform-origin:50% 100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.4));animation:docPointL 4.5s ease-in-out infinite}
@media (max-width:900px){.pl-doc{margin:0 auto;max-width:340px}.pl-copy{padding-bottom:20px}}
/* ===== Planes: explorador animado ===== */
.pe{position:relative;overflow:hidden;isolation:isolate;padding:96px 0 110px;background:linear-gradient(135deg,#FFF5F6 0%,#F3F0FF 35%,#EAF6FF 70%,#F0FFF8 100%)}
.pe .blob{z-index:-2}
.pe-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pe-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:6px;border-radius:999px;background:#FFFFFF;border:1px solid var(--line);box-shadow:0 8px 24px rgba(2,47,110,.06)}
.pe-tab{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;border:none;background:transparent;font-family:var(--body);font-weight:700;font-size:15px;color:var(--ink);cursor:pointer;transition:background .3s,color .3s}
.pe-tab span{font-size:11px;color:#9AA6BA}
.pe-tab em{font-style:normal;font-size:10px;padding:3px 8px;border-radius:999px;background:var(--red);color:#FFFFFF}
.pe-tab.on{background:var(--navy);color:#FFFFFF}.pe-tab.on span{color:#FF8A91}
.pe-tab i{position:absolute;left:14px;right:14px;bottom:4px;height:2px;background:var(--iris);transform:scaleX(0);transform-origin:left}
.pe-tab.on.run i{animation:chipRun 4.5s linear forwards}
.pe-grid{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end}
.pe-doc{flex:0 1 360px;min-width:0;position:relative;margin:0 0 -110px;align-self:flex-end}
.pe-doc img{position:relative;width:100%;height:auto;display:block;transform-origin:50% 100%;filter:drop-shadow(0 30px 40px rgba(2,47,110,.22));animation:docPres 5s ease-in-out infinite}
@keyframes docPres{0%,100%{transform:rotate(0) translateY(0)}35%{transform:rotate(1.4deg) translateY(-6px)}65%{transform:rotate(-.6deg)}}
.pe-doc.hop img{animation:docHop .6s cubic-bezier(.3,1.6,.5,1),docPres 5s ease-in-out .6s infinite}
.pe-bub{position:absolute;right:-6%;top:40%;padding:10px 16px;border-radius:16px 16px 16px 4px;background:var(--navy);color:#FFFFFF;font-weight:700;font-size:14px;white-space:nowrap;box-shadow:0 14px 30px rgba(2,27,68,.3);transition:transform .3s,opacity .3s}
.pe-bub.swap{opacity:0;transform:translateX(-10px)}
.pe-card{flex:1 1 560px;min-width:0;align-self:stretch;display:flex;flex-direction:column;gap:18px;padding:30px;border-radius:30px;background:rgba(255,255,255,.88);border:1px solid rgba(4,72,154,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 30px 70px rgba(2,47,110,.14);margin-bottom:0}
.pe-card.pe-in{animation:peFlip .6s cubic-bezier(.2,.8,.2,1)}
@keyframes peFlip{0%{opacity:.2;transform:translateX(40px) scale(.98)}100%{opacity:1;transform:none}}
.pe-head{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.pe-kick{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.pe-name{font-family:var(--display);font-size:clamp(30px,3.4vw,42px);line-height:1;background:linear-gradient(90deg,#04489A,#BE6AFA);-webkit-background-clip:text;background-clip:text;color:transparent}
.pe-for{font-size:15px;color:var(--muted)}
.pe-gauge{--v:0;width:118px;height:118px;border-radius:50%;padding:9px;background:conic-gradient(from 210deg,#09DCFC,#015CE9 calc(var(--v) * .5%),#BE6AFA calc(var(--v) * 1%),#E3EAF5 0);flex-shrink:0}
.pe-gauge > div{width:100%;height:100%;border-radius:50%;background:#FFFFFF;display:flex;flex-direction:column;align-items:center;justify-content:center}
.pe-gauge b{font-family:var(--display);font-size:34px;line-height:1;color:var(--navy)}
.pe-gauge span{font-size:10px;color:var(--muted)}
.pe-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pe-m{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:14px;border:1.5px solid var(--line);background:#FFFFFF;opacity:.45;filter:grayscale(1);transition:all .45s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--k) * 45ms)}
.pm-ic{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#EEF2F8;color:#8A9AB5;transition:inherit}
.pm-n{flex:1;font-size:14px;font-weight:600;color:var(--navy)}
.pm-st i{display:none;font-style:normal}
.pm-st .n{display:inline;color:#9AA6BA}
.pm-st .y{width:22px;height:22px;border-radius:50%;background:#13A24A;color:#FFFFFF;align-items:center;justify-content:center}
.pe-m.in{opacity:1;filter:none;border-color:color-mix(in srgb,var(--c) 40%,#FFFFFF);box-shadow:0 8px 20px color-mix(in srgb,var(--c) 14%,transparent);transform:translateX(4px)}
.pe-m.in .pm-ic{background:var(--c);color:#FFFFFF}
.pe-m.in .pm-st .n{display:none}.pe-m.in .pm-st .y{display:flex}
.pe-extra{min-height:0;font-size:14px;font-weight:600;color:var(--blue)}
.pe-extra:not(:empty)::before{content:'+ '}
#peGo{align-self:flex-start}
@media (max-width:900px){.pe-doc{margin:0 auto -40px;max-width:260px;order:2}.pe-bub{right:-20%}.pe-list{grid-template-columns:1fr}}
/* ===== Ruta de contratación ===== */
.rm{position:relative;overflow:hidden;isolation:isolate;padding:110px 0;color:#FFFFFF;background:linear-gradient(180deg,#021B44,#03163A)}
.rm::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.3;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:40px 40px}
.rm-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.45}
.rm-glow.g1{width:460px;height:460px;left:-140px;top:10%;background:#015CE9;animation:aur1 18s ease-in-out infinite}
.rm-glow.g2{width:420px;height:420px;right:-120px;bottom:0;background:#BE6AFA;animation:aur2 20s ease-in-out infinite}
.rm-head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.rm-head .eyebrow{color:#FF6B73}
.rm .h2{color:#FFFFFF}
.rm .h2 span{display:block;background:linear-gradient(90deg,#3FE3FF,#D49BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.rm-line{position:relative;list-style:none;margin:0 auto;padding:0;max-width:980px;width:100%;display:flex;flex-direction:column;gap:40px}
.rm-track{position:absolute;left:50%;top:0;bottom:0;width:4px;margin-left:-2px;border-radius:2px;background:rgba(255,255,255,.1)}
.rm-track i{position:absolute;left:0;top:0;width:100%;height:var(--fill,0%);border-radius:2px;background:linear-gradient(180deg,#09DCFC,#015CE9,#BE6AFA,#13A24A);box-shadow:0 0 18px rgba(63,227,255,.6)}
.rm-track em{position:absolute;left:50%;top:var(--fill,0%);width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#FFFFFF;box-shadow:0 0 0 6px rgba(63,227,255,.3),0 0 20px #3FE3FF}
.rm-step{position:relative;display:flex;min-height:150px}
.rm-step.l{justify-content:flex-start}.rm-step.r{justify-content:flex-end}
.rm-dot{position:absolute;left:50%;top:30px;translate:-50% 0;z-index:1;width:56px;height:56px;border-radius:50%;background:#0B1C3D;border:3px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;transition:all .5s cubic-bezier(.3,1.5,.5,1)}
.rm-dot i{display:flex;opacity:.35;transition:opacity .4s}
.rm-step.on .rm-dot{background:var(--c);border-color:#FFFFFF;box-shadow:0 0 0 8px color-mix(in srgb,var(--c) 30%,transparent),0 0 30px var(--c);transform:scale(1.08)}
.rm-step.on .rm-dot i{opacity:1}
.rm-card{position:relative;width:calc(50% - 64px);padding:26px 28px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:10px;opacity:.25;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .7s,border-color .5s,background .5s}
.rm-step.l .rm-card{transform:translateX(-50px)}.rm-step.r .rm-card{transform:translateX(50px)}
.rm-step.on .rm-card{opacity:1;transform:none;border-color:color-mix(in srgb,var(--c) 60%,transparent);background:linear-gradient(150deg,color-mix(in srgb,var(--c) 22%,transparent),rgba(255,255,255,.04))}
.rm-n{position:absolute;right:20px;top:12px;font-family:var(--display);font-weight:700;font-size:54px;line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.18)}
.rm-ic{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#FFFFFF}
.rm-step.on .rm-ic{background:var(--c)}
.rm-card b{font-family:var(--display);font-size:21px}
.rm-card p{font-size:15px;line-height:1.6;color:#C3D2EA}
.rm-end{align-self:center;display:flex;align-items:center;gap:12px;padding:14px 22px;border-radius:999px;background:rgba(19,162,74,.15);border:1px solid rgba(59,224,122,.4);opacity:.3;transform:scale(.9);transition:all .6s cubic-bezier(.3,1.5,.5,1)}
.rm-end.on{opacity:1;transform:none;box-shadow:0 0 30px rgba(59,224,122,.3)}
.rm-flag{width:34px;height:34px;border-radius:50%;background:#13A24A;display:flex;align-items:center;justify-content:center}
.rm-end b{font-family:var(--display);font-size:16px}
@media (max-width:760px){.rm-track{left:28px}.rm-dot{left:28px}.rm-step.l,.rm-step.r{justify-content:flex-end}.rm-card{width:calc(100% - 76px)}.rm-step.l .rm-card,.rm-step.r .rm-card{transform:translateX(30px)}.rm-step.on .rm-card{transform:none}}
/* Ruta compacta + médico pensando */
.rm{padding:90px 0 0;background:
  radial-gradient(600px 400px at 85% 60%,rgba(9,220,252,.22),transparent 70%),
  radial-gradient(500px 400px at 10% 20%,rgba(209,10,22,.18),transparent 70%),
  linear-gradient(135deg,#04489A 0%,#022F6E 45%,#021B44 100%)}
.rm::before{opacity:.5;background-image:radial-gradient(rgba(255,255,255,.14) 1.2px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 70%);mask-image:linear-gradient(90deg,#000,transparent 70%)}
.rm::after{content:'';position:absolute;inset:-50% auto -50% -30%;width:40%;z-index:-1;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);transform:rotate(18deg);animation:beamMove 9s linear infinite}
@keyframes beamMove{to{left:120%}}
.rm-glow{display:none}
.rm-grid{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-end}
.rm-left{flex:1.4 1 560px;min-width:0;display:flex;flex-direction:column;gap:18px;padding-bottom:80px}
.rm-line{max-width:none;gap:12px}
.rm-track{left:28px}
.rm-step{min-height:0;justify-content:flex-end !important}
.rm-dot{left:28px;top:14px;width:46px;height:46px}
.rm-card{width:calc(100% - 72px);padding:16px 20px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 14px;transform:translateX(24px) !important}
.rm-step.on .rm-card{transform:none !important}
.rm-card .rm-ic{width:40px;height:40px;border-radius:12px}
.rm-card b{font-size:18px;flex:1 1 auto}
.rm-card p{flex-basis:100%;font-size:14px;margin:0}
.rm-n{font-size:34px;top:10px}
.rm-end{align-self:flex-start;margin-left:72px}
.rm-doc{flex:1 1 320px;min-width:0;max-width:400px;position:relative;margin:0 auto;display:flex;justify-content:center}
.rm-doc img{position:relative;width:100%;max-width:360px;height:auto;display:block;transform-origin:50% 100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.4));animation:docThink 6s ease-in-out infinite}
@keyframes docThink{0%,100%{transform:rotate(0) translateY(0)}40%{transform:rotate(-1.2deg) translateY(-6px)}70%{transform:rotate(.8deg)}}
.rm-ring{position:absolute;left:6%;right:6%;top:14%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(63,227,255,.35),rgba(1,92,233,.2) 60%,transparent)}
.rm-ring::after{content:'';position:absolute;inset:5%;border-radius:50%;border:2px dashed rgba(255,255,255,.22);animation:spin 36s linear infinite}
.rm-think{position:absolute;left:-10px;top:4%;display:flex;align-items:flex-end;gap:4px;z-index:2;animation:floatA 5s ease-in-out infinite}
.rm-think i{width:10px;height:10px;border-radius:50%;background:#FFFFFF;opacity:.85}
.rm-think i:nth-child(2){width:16px;height:16px;margin-bottom:8px}
.rm-think b{order:-1;margin-right:6px;padding:12px 16px;border-radius:20px;background:#FFFFFF;color:var(--navy);font-family:var(--display);font-size:15px;white-space:nowrap;box-shadow:0 14px 30px rgba(0,0,0,.3);transition:opacity .3s}
.rm-think{flex-direction:row-reverse}
@media (max-width:900px){.rm-left{padding-bottom:20px}.rm-doc{max-width:280px}.rm-think{left:-30px}}

/* Cabecera de Nosotros con carrusel y equipo médico */
.ns-sub{margin:-6px 0 0;font-family:var(--display);font-weight:700;font-size:clamp(20px,2vw,26px);color:#FFFFFF;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:12px}
.ns-sub::before{content:'';width:34px;height:3px;border-radius:3px;background:linear-gradient(90deg,#D10A16,#FF4D57)}
.ns-doc{flex:1 1 520px;min-width:0;max-width:640px;margin:0 0 0 auto;position:relative;display:flex;justify-content:center;align-self:flex-end}
.ns-doc .sd-halo{left:14%;right:14%;top:0}
.ns-doc img{position:relative;width:100%;height:auto;display:block;transform-origin:50% 100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.45));animation:nsTeam 6s ease-in-out infinite,nsIn 1.1s cubic-bezier(.2,.8,.2,1) both}
@keyframes nsTeam{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.012)}}
@keyframes nsIn{from{opacity:0;translate:60px 0}to{opacity:1;translate:0 0}}
.ns-cap{bottom:18px}
@media (max-width:900px){.ns-doc{margin:0 auto;max-width:480px}.ns-cap{bottom:12px}}
@media (prefers-reduced-motion:reduce){.ns-doc img{animation:none}}
/* Nosotros — Nuestra filosofía: órbita del isotipo */
.nf{position:relative;overflow:hidden;isolation:isolate;padding:112px 0;background:radial-gradient(1200px 600px at 20% 50%,#EEF4FF 0,#FFFFFF 60%)}
.nf-aur{position:absolute;z-index:-1;width:520px;height:520px;border-radius:50%;filter:blur(90px);opacity:.35;pointer-events:none}
.nf-aur.a1{left:-160px;top:-120px;background:#09DCFC;animation:aur1 18s ease-in-out infinite}
.nf-aur.a2{right:-180px;bottom:-200px;background:#BE6AFA;animation:aur2 22s ease-in-out infinite}
.nf-grid{display:grid;grid-template-columns:minmax(0,520px) minmax(0,600px);justify-content:space-between;align-items:center;gap:72px}
.nf-orb{position:relative;width:100%;aspect-ratio:1;perspective:1100px}
.nf-tilt{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.8,.2,1);transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.nf-ring{position:absolute;border-radius:50%;inset:var(--in);border:1.5px solid rgba(1,92,233,.16)}
.nf-ring.r1{--in:4%;border-style:dashed;border-color:rgba(1,92,233,.28);animation:spin 60s linear infinite}
.nf-ring.r2{--in:17%;border-color:rgba(190,106,250,.25);animation:spin 40s linear infinite reverse}
.nf-ring.r3{--in:30%;background:radial-gradient(closest-side,rgba(9,220,252,.14),transparent);border-color:rgba(9,220,252,.3);animation:ring 6s ease-in-out infinite}
.nf-ring.r1::after,.nf-ring.r2::after{content:'';position:absolute;top:-5px;left:50%;width:10px;height:10px;border-radius:50%;background:#D10A16;box-shadow:0 0 0 6px rgba(209,10,22,.15)}
.nf-ring.r2::after{background:#015CE9;box-shadow:0 0 0 6px rgba(1,92,233,.15);top:auto;bottom:-5px}
.nf-ecg{position:absolute;left:8%;right:8%;top:50%;width:84%;height:16%;translate:0 -50%;opacity:.55}
.nf-ecg path{stroke:#D10A16;stroke-dasharray:22 78;animation:nfEcg 3.2s linear infinite}
@keyframes nfEcg{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
.nf-orbit{position:absolute;inset:4%;animation:spin 50s linear infinite}
.nf-node{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--a)) translateY(calc(-1 * min(46vw,240px)))}
.nf-n{position:absolute;left:0;top:0;translate:-50% -50%;display:flex;flex-direction:column;align-items:center;gap:6px;animation:spin 50s linear infinite reverse}
.nf-n{rotate:calc(-1 * var(--a))}
.nf-ic{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#FFFFFF;color:#04489A;border:1px solid rgba(1,92,233,.18);box-shadow:0 14px 30px rgba(4,72,154,.16);animation:nfLit 10s ease-in-out infinite;animation-delay:calc(var(--i) * 2s)}
.nf-n b{font-family:var(--display);font-size:13px;font-weight:700;color:#04489A;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 6px 14px rgba(4,72,154,.1);white-space:nowrap}
@keyframes nfLit{0%,22%,100%{background:#FFFFFF;color:#04489A;transform:scale(1)}4%,16%{background:linear-gradient(135deg,#D10A16,#FF4D57);color:#FFFFFF;transform:scale(1.14);box-shadow:0 16px 34px rgba(209,10,22,.35)}}
.nf-core{position:absolute;inset:32%;display:flex;align-items:center;justify-content:center;transform:translateZ(60px)}
.nf-glow{position:absolute;inset:-6%;border-radius:50%;background:conic-gradient(from 0deg,#09DCFC,#015CE9,#BE6AFA,#D10A16,#09DCFC);filter:blur(28px);opacity:.45;animation:spin 9s linear infinite}
.nf-logo{position:relative;width:86%;height:auto;filter:drop-shadow(0 18px 30px rgba(4,72,154,.35));animation:nfIn 1.4s cubic-bezier(.2,.8,.2,1) both,coreBeat 2.6s ease-in-out 1.4s infinite}
@keyframes nfIn{0%{opacity:0;transform:scale(.4) rotate(-30deg);filter:blur(10px)}70%{opacity:1;filter:blur(0)}100%{transform:scale(1) rotate(0)}}
.nf-shine{position:absolute;left:7%;right:7%;top:50%;aspect-ratio:440/368;translate:0 -50%;-webkit-mask:url(../valua-isotipo.png) center/contain no-repeat;mask:url(../valua-isotipo.png) center/contain no-repeat;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.85) 50%,transparent 65%) -150% 0/250% 100% no-repeat;animation:nfShine 4s ease-in-out 1.6s infinite;pointer-events:none}
@keyframes nfShine{0%{background-position:-150% 0}55%,100%{background-position:150% 0}}
.nf-copy{display:flex;flex-direction:column;gap:20px;max-width:600px}
.nf-h{font-family:var(--display);font-weight:700;color:var(--navy);font-size:clamp(30px,3.4vw,46px);line-height:1.08;letter-spacing:-.025em;text-wrap:balance;margin:0}
.nf-h em{font-style:normal;background:linear-gradient(90deg,#D10A16,#BE6AFA,#015CE9);-webkit-background-clip:text;background-clip:text;color:transparent}
.nf-p{margin:0;font-size:17px;line-height:1.7;color:var(--slate,#4A5873);text-wrap:pretty;text-align:left}
.nf-p mark{background:none;color:inherit;font-weight:600;padding:0 2px;margin:0 -2px;border-radius:4px;white-space:nowrap;animation:nfMark 10s ease-in-out infinite;animation-delay:calc(var(--i) * 2s)}
@keyframes nfMark{0%,22%,100%{color:inherit;background:transparent}4%,16%{color:#D10A16;background:rgba(209,10,22,.08)}}
.nf-pills{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.nf-pills li{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 10px;border-radius:999px;background:#FFFFFF;border:1px solid rgba(1,92,233,.16);box-shadow:0 10px 24px rgba(4,72,154,.08);font-family:var(--display);font-weight:700;color:var(--navy);animation:floatA 5s ease-in-out infinite;animation-delay:calc(var(--k) * .6s)}
.nf-pills span{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#FFFFFF;background:linear-gradient(135deg,#015CE9,#09DCFC)}
.nf-pills li:nth-child(2) span{background:linear-gradient(135deg,#BE6AFA,#015CE9)}
.nf-pills li:nth-child(3) span{background:linear-gradient(135deg,#D10A16,#FF4D57)}
@media (max-width:980px){.nf{padding:80px 0}.nf-grid{grid-template-columns:1fr;gap:48px}.nf-orb{max-width:440px;margin:0 auto}.nf-node{transform:rotate(var(--a)) translateY(calc(-1 * min(40vw,200px)))}.nf-ic{width:46px;height:46px;border-radius:14px}}
@media (max-width:480px){.nf-n b{display:none}}
@media (prefers-reduced-motion:reduce){.nf *{animation:none!important}}
/* Nosotros — VALUA y TEKMA: retroalimentación + consola */
.vt{position:relative;overflow:hidden;isolation:isolate;padding:112px 0;background:radial-gradient(900px 520px at 50% 55%,#06397F 0%,#032257 55%,#021638 100%);color:#FFFFFF}
.vt-aur{position:absolute;z-index:-1;border-radius:50%;filter:blur(100px);opacity:.55;pointer-events:none}
.vt-aur.o1{width:520px;height:520px;left:-140px;top:-160px;background:#09DCFC;animation:aur1 18s ease-in-out infinite}
.vt-aur.o2{width:480px;height:480px;right:-160px;bottom:-180px;background:#EA5B0C;opacity:.45;animation:aur2 20s ease-in-out infinite}
.vt-aur.o3{width:420px;height:420px;left:40%;top:30%;background:#BE6AFA;opacity:.35;animation:aur1 24s ease-in-out infinite reverse}
.vt-grid-bg{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px;-webkit-mask:radial-gradient(ellipse at center,#000 30%,transparent 75%);mask:radial-gradient(ellipse at center,#000 30%,transparent 75%);animation:vtGrid 20s linear infinite}
@keyframes vtGrid{to{background-position:48px 48px}}
.vt-head{max-width:760px;margin:0 auto 56px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.vt-head .eyebrow{color:#FF8A3D}
.vt-head h2{margin:0;color:#FFFFFF!important;font-family:var(--display);font-weight:700;font-size:clamp(30px,3.6vw,48px);line-height:1.08;letter-spacing:-.025em;text-wrap:balance}
.vt-head h2 em{font-style:normal;background:linear-gradient(90deg,#09DCFC,#BE6AFA,#FF8A3D);-webkit-background-clip:text;background-clip:text;color:transparent}
.vt-head p{margin:0;color:#C9D6EE;font-size:17px;line-height:1.65;text-wrap:pretty}
.vt-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr);gap:60px;align-items:stretch}.vt-term{align-self:center}
.vt-flow{position:absolute;left:10%;right:10%;height:2px;z-index:0;background:linear-gradient(90deg,rgba(9,220,252,.5),rgba(255,255,255,.45),rgba(234,91,12,.5))}
.vt-flow.top{top:44%}.vt-flow.bot{top:56%}
.vt-flow i{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;translate:-50% -50%;animation:vtFlowL 3.6s linear infinite;animation-delay:var(--d)}
.vt-flow.top i{background:#FF8A3D;box-shadow:0 0 14px 4px rgba(234,91,12,.7)}
.vt-flow.bot i{background:#09DCFC;box-shadow:0 0 14px 4px rgba(9,220,252,.7);animation-name:vtFlowR}
@keyframes vtFlowL{0%{left:100%;opacity:0}10%,90%{opacity:1}100%{left:0;opacity:0}}
@keyframes vtFlowR{0%{left:0;opacity:0}10%,90%{opacity:1}100%{left:100%;opacity:0}}
.vt-lbl{position:absolute;left:50%;translate:-50% 0;white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#E8EEFA;padding:6px 14px;border-radius:999px;background:rgba(2,27,68,.7);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px)}
.vt-flow.top .vt-lbl{bottom:14px;border-color:rgba(234,91,12,.55)}.vt-flow.bot .vt-lbl{top:14px;border-color:rgba(9,220,252,.55)}
.vt-card{position:relative;z-index:1;display:flex;flex-direction:column;gap:14px;padding:32px 28px;border-radius:24px;background:#FFFFFF;color:#2F3B52;box-shadow:0 30px 60px rgba(0,0,0,.35);animation:floatA 6s ease-in-out infinite}
.vt-card.t{animation-delay:-3s}
.vt-pulse{position:absolute;inset:-2px;border-radius:26px;pointer-events:none;border:2px solid transparent;animation:vtPulse 3.6s ease-in-out infinite}
.vt-card.v .vt-pulse{--c:#09DCFC}.vt-card.t .vt-pulse{--c:#EA5B0C;animation-delay:1.8s}
@keyframes vtPulse{0%,60%,100%{border-color:transparent;box-shadow:none}20%{border-color:var(--c);box-shadow:0 0 0 6px color-mix(in srgb,var(--c) 25%,transparent),0 0 40px color-mix(in srgb,var(--c) 50%,transparent)}}
.vt-logo{height:58px;display:flex;align-items:center}.vt-logo img{height:54px;width:auto;max-width:100%}
.vt-card.t .vt-logo img{height:48px}
.vt-tag{align-self:flex-start;font-family:var(--display);font-weight:700;font-size:19px;color:var(--navy)}
.vt-card p{margin:0;font-size:15px;line-height:1.65;text-wrap:pretty}
.vt-io{list-style:none;margin:6px 0 0;padding:14px 0 0;border-top:1px dashed #D8E1F0;display:flex;flex-direction:column;gap:8px}
.vt-io li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--navy)}
.vt-io svg{flex:none;color:#015CE9}.vt-card.t .vt-io svg{color:#EA5B0C}
.vt-term{position:relative;z-index:2;border-radius:18px;overflow:hidden;background:rgba(3,10,28,.92);border:1px solid rgba(255,255,255,.14);box-shadow:0 40px 80px rgba(0,0,0,.55),0 0 0 1px rgba(9,220,252,.15),0 0 60px rgba(9,220,252,.18)}
.vt-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08)}
.vt-bar i{width:12px;height:12px;border-radius:50%;background:#FF5F57}.vt-bar i:nth-child(2){background:#FEBC2E}.vt-bar i:nth-child(3){background:#28C840}
.vt-bar span{margin-left:10px;font:500 12px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#8FA3C4}
.vt-out{margin:0;height:300px;overflow:hidden;padding:18px 20px;font:500 13px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#D6E2F5;white-space:pre-wrap;word-break:break-word;display:flex;flex-direction:column;justify-content:flex-end}
.vt-out .p{color:#09DCFC}.vt-out .c{color:#FFFFFF}.vt-out .ok{color:#3BE07A}.vt-out .in{color:#FF8A3D}.vt-out .dim{color:#7F93B5}.vt-out .vl{color:#FF4D57;font-weight:700}
.vt-out .cur{display:inline-block;width:8px;height:15px;background:#09DCFC;vertical-align:-2px;animation:blink 1s steps(1) infinite}
.vt-prog{height:4px;background:rgba(255,255,255,.08)}.vt-prog span{display:block;height:100%;width:0;background:linear-gradient(90deg,#09DCFC,#BE6AFA,#D10A16);transition:width .4s ease}
@media (max-width:1080px){.vt-stage{grid-template-columns:1fr;gap:28px;max-width:620px;margin:0 auto}.vt-flow{display:none}.vt-card{animation:none}}
@media (max-width:560px){.vt{padding:80px 0}.vt-out{height:260px;font-size:12px;padding:14px}}
@media (prefers-reduced-motion:reduce){.vt *{animation:none!important}}
.vt-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:40px;font-size:14px;font-weight:600;color:#DCE5F5}
.vt-legend span{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;background:rgba(2,27,68,.55);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px)}
.vt-legend i{width:10px;height:10px;border-radius:50%}
.vt-legend .o i{background:#FF8A3D;box-shadow:0 0 10px 3px rgba(234,91,12,.6)}.vt-legend .b i{background:#09DCFC;box-shadow:0 0 10px 3px rgba(9,220,252,.6)}
@media (max-width:1080px){.vt-stage{gap:28px}}
.vt-fx .sf{opacity:0}
.vt-fx{-webkit-mask:linear-gradient(#000 0,#000 100%);opacity:.5}
.vt-ecg{top:50%;bottom:auto;translate:0 -50%;height:120px}
.vt-ecg .base{stroke:rgba(255,255,255,.07)}
.vt .vt-head .eyebrow{color:#FF6B73}
.vt-head h2 em{background:linear-gradient(90deg,#5FA8FF,#09DCFC)!important;-webkit-background-clip:text!important;background-clip:text!important}
/* Soporte — cabecera con carrusel y doc7 */
.sp-doc{max-width:600px}
.sp-doc img{animation:spDoc 7s ease-in-out infinite,nsIn 1.1s cubic-bezier(.2,.8,.2,1) both}
@keyframes spDoc{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-8px) rotate(-.8deg)}70%{transform:translateY(-3px) rotate(.5deg)}}
.sp-hero .pl-copy{padding-bottom:96px}
@media (prefers-reduced-motion:reduce){.sp-doc img{animation:none}}
@media (max-width:900px){.sp-hero .pl-copy{padding-bottom:12px}}
/* Soporte — canales animados con barra de progreso */
.sp-ch{padding:72px 0 96px}
.sp-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sp-c{position:relative;display:flex;flex-direction:column;gap:12px;padding:30px 26px 28px;border-radius:24px;background:#FFFFFF;border:1px solid #DCE4F1;box-shadow:0 8px 24px rgba(4,72,154,.05);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s,border-color .5s,opacity .5s;cursor:pointer}
.sp-c h3{margin:4px 0 0;font-family:var(--display);font-size:21px;color:var(--navy)}
.sp-c p{margin:0;font-size:15px;line-height:1.6;color:#4A5873;text-wrap:pretty}
.sp-val{margin-top:auto;font-size:15px;color:var(--navy);font-weight:700;letter-spacing:.01em}
.sp-c .btn{margin-top:auto}
.sp-ic{position:relative;width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#FFFFFF;background:linear-gradient(135deg,var(--c),var(--c2));box-shadow:0 12px 24px color-mix(in srgb,var(--c) 35%,transparent);transition:transform .5s}
.sp-ic i{position:absolute;inset:-6px;border-radius:22px;border:2px solid var(--c2);opacity:0}
.sp-badge{position:absolute;top:30px;right:22px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 10px;border-radius:999px;color:var(--c);background:color-mix(in srgb,var(--c) 10%,#FFFFFF);opacity:.0;translate:0 -6px;transition:opacity .4s,translate .4s}
.sp-cards.run .sp-c:not(.on){opacity:.82}
.sp-c.on{transform:translateY(-10px);border-color:color-mix(in srgb,var(--c) 45%,#FFFFFF);box-shadow:0 26px 50px color-mix(in srgb,var(--c) 22%,transparent)}
.sp-c.on .sp-ic{transform:scale(1.06) rotate(-4deg)}
.sp-c.on .sp-ic i{animation:spRing 1.6s ease-out infinite}
.sp-c.on .sp-badge{opacity:1;translate:0 0}
@keyframes spRing{0%{opacity:.9;transform:scale(.9)}100%{opacity:0;transform:scale(1.35)}}
.sp-prog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:40px}
.sp-seg{position:relative;height:10px;border-radius:999px;background:#E6ECF6;cursor:pointer}
.sp-fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--c) 60%,#015CE9),var(--c));box-shadow:0 0 14px color-mix(in srgb,var(--c) 60%,transparent)}
.sp-fill::after{content:'';position:absolute;right:-6px;top:50%;width:18px;height:18px;border-radius:50%;translate:0 -50%;background:#FFFFFF;border:4px solid var(--c);box-shadow:0 0 0 6px color-mix(in srgb,var(--c) 22%,transparent);opacity:0;transition:opacity .3s}
.sp-seg.done .sp-fill{width:100%}
.sp-seg.on .sp-fill{animation:spFill var(--dur,3.6s) linear forwards}
.sp-seg.on .sp-fill::after{opacity:1}
@keyframes spFill{from{width:0}to{width:100%}}
.sp-seg em{position:absolute;left:0;top:20px;font-style:normal;font-size:13px;font-weight:600;color:#7A879E;white-space:nowrap;transition:color .3s}
.sp-seg em b{font-family:var(--display);color:inherit;margin-right:4px}
.sp-seg.on em,.sp-seg.done em{color:var(--navy)}
.sp-seg.on em b{color:var(--c)}
.sp-msg{margin:64px auto 0;text-align:center;font-family:var(--display);font-weight:700;font-size:clamp(18px,1.8vw,22px);color:var(--navy);transition:opacity .35s,translate .35s}
.sp-msg.out{opacity:0;translate:0 8px}
@media (max-width:1080px){.sp-cards,.sp-prog{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-prog{row-gap:44px}}
@media (max-width:560px){.sp-cards{grid-template-columns:1fr}.sp-prog{grid-template-columns:repeat(4,1fr);gap:8px}.sp-seg em{display:none}.sp-c.on{transform:none}}
@media (prefers-reduced-motion:reduce){.sp-c,.sp-fill{transition:none;animation:none!important}.sp-seg .sp-fill{width:100%}}
/* Soporte — Ruta VALUA (metro) */
.mt{position:relative;overflow:hidden;isolation:isolate;padding:104px 0 112px;background:linear-gradient(180deg,#F3F7FE 0%,#FFFFFF 100%)}
.mt-bgrid{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(4,72,154,.13) 1.2px,transparent 1.3px);background-size:26px 26px;-webkit-mask:radial-gradient(ellipse at 50% 45%,#000 35%,transparent 78%);mask:radial-gradient(ellipse at 50% 45%,#000 35%,transparent 78%)}
.mt-head{max-width:760px;margin:0 auto 40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
.mt-head h2{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(30px,3.6vw,48px);line-height:1.08;letter-spacing:-.025em;color:var(--navy);text-wrap:balance}
.mt-head h2 em{font-style:normal;color:var(--red)}
.mt-head p{margin:0;color:#4A5873;font-size:17px;line-height:1.65;text-wrap:pretty}
.mt-board{position:relative;border-radius:28px;background:#FFFFFF;border:1px solid #DCE4F1;box-shadow:0 30px 70px rgba(4,72,154,.1);padding:28px 28px 24px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:center}
.mt-mapwrap{min-width:0}
.mt-svg{width:100%;height:auto;display:block;overflow:visible}
.mt-main-bg{fill:none;stroke:#E3EAF6;stroke-width:14;stroke-linecap:round}
.mt-main{fill:none;stroke:url(#mtG);stroke-width:8;stroke-linecap:round;opacity:.35}
.mt-main-run{fill:none;stroke:url(#mtG);stroke-width:8;stroke-linecap:round}
.mt-br{fill:none;stroke:var(--c);stroke-width:6;stroke-linecap:round;opacity:.22;stroke-dasharray:1000;stroke-dashoffset:0;transition:opacity .4s}
.mt.br-on .mt-br{opacity:1;stroke-dasharray:1000;animation:mtDraw 1.6s ease-out both}
@keyframes mtDraw{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
.mt-bl rect{fill:#FFFFFF;stroke:var(--c);stroke-width:2}
.mt-bl text{font:700 16px var(--display),sans-serif;fill:var(--c)}
.mt-bl{opacity:.55;transition:opacity .4s}.mt.br-on .mt-bl{opacity:1}
.mt-mini{fill:var(--c);stroke:#FFFFFF;stroke-width:3;opacity:0;filter:drop-shadow(0 0 6px var(--c))}
.mt.br-on .mt-mini{opacity:1}
.mt-st .dot{fill:#FFFFFF;stroke:#B7C6DE;stroke-width:5;transition:stroke .4s,fill .4s}
.mt-st .halo{fill:rgba(209,10,22,.15);opacity:0;transform-box:fill-box;transform-origin:center}
.mt-st .num{font:800 16px var(--display),sans-serif;fill:#7A879E;transition:fill .4s}
.mt-name{font:700 21px var(--display),sans-serif;fill:#7A879E;transition:fill .4s}
.mt-st.done .dot{stroke:#015CE9}.mt-st.done .num{fill:#015CE9}.mt-st.done .mt-name{fill:var(--navy)}
.mt-st.on .dot{stroke:#D10A16;fill:#D10A16}.mt-st.on .num{fill:#FFFFFF}.mt-st.on .mt-name{fill:#D10A16}
.mt-st.on .halo{opacity:1;animation:mtHalo 1.4s ease-out infinite}
@keyframes mtHalo{from{transform:scale(.7);opacity:1}to{transform:scale(1.5);opacity:0}}
.mt-end rect{fill:#E3EAF6;transition:fill .4s}.mt.fin .mt-end rect{fill:#13A24A}
.mt-train{filter:drop-shadow(0 6px 10px rgba(209,10,22,.45))}
.mt-panel{position:relative;border-radius:22px;padding:22px;background:linear-gradient(160deg,#021B44,#04489A);color:#FFFFFF;min-height:300px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 40px rgba(2,27,68,.3);overflow:hidden}
.mt-panel::before{content:'';position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(closest-side,rgba(9,220,252,.35),transparent);animation:ring 6s ease-in-out infinite}
.mp-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.mp-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18)}
.mp-chip i{width:8px;height:8px;border-radius:50%;background:#3BE07A;box-shadow:0 0 0 4px rgba(59,224,122,.25);animation:blink 1.2s ease-in-out infinite}
.mp-line{color:#9FB4D8}
.mp-main{display:flex;gap:16px;align-items:flex-start;transition:opacity .3s,translate .3s}
.mp-main.swap{opacity:0;translate:0 10px}
.mp-n{flex:none;width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:22px;background:linear-gradient(135deg,#D10A16,#FF4D57);box-shadow:0 12px 24px rgba(209,10,22,.4)}
.mp-main h3{margin:2px 0 6px;font-family:var(--display);font-size:21px;line-height:1.2;color:#FFFFFF}
.mp-main p{margin:0;font-size:14.5px;line-height:1.6;color:#C9D6EE}
.mp-roles{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:0;opacity:0;overflow:hidden;transition:max-height .6s ease,opacity .4s}
.mt.br-on .mp-roles{max-height:320px;opacity:1}
.mp-roles li{display:grid;grid-template-columns:30px 1fr;column-gap:10px;align-items:center;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.07);border-left:3px solid var(--c);animation:mtRole .5s both;animation-delay:calc(var(--k,0) * .1s)}
.mp-roles li span{grid-row:span 2;width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--c);color:#FFFFFF}
.mp-roles li b{font-size:13.5px}.mp-roles li small{font-size:12px;color:#B9C8E2}
@keyframes mtRole{from{opacity:0;translate:12px 0}}
.mp-prog{margin-top:auto;height:6px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}
.mp-prog span{display:block;height:100%;width:0;background:linear-gradient(90deg,#09DCFC,#BE6AFA,#FF4D57);border-radius:inherit}
.mt-tickets{margin-top:56px}
.mt-tk-head{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px;text-align:center}
.mt-tk-head h3{margin:0;font-family:var(--display);font-size:clamp(22px,2.2vw,28px);color:var(--navy)}
.mt-tk-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.mt-tk{position:relative;display:grid;grid-template-columns:96px 1fr;border-radius:20px;background:#FFFFFF;border:1px solid #DCE4F1;box-shadow:0 14px 30px rgba(4,72,154,.08);overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.mt-tk:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 24px 44px rgba(4,72,154,.16)}
.mt.fin .mt-tk{animation:mtTk 1.2s ease-in-out both;animation-delay:calc(var(--k) * .18s)}
@keyframes mtTk{0%,100%{transform:none}40%{transform:translateY(-10px);box-shadow:0 26px 46px rgba(1,92,233,.2)}}
.tk-a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(160deg,#04489A,#015CE9);color:#FFFFFF;border-right:2px dashed #FFFFFF}
.mt-tk:nth-child(2) .tk-a{background:linear-gradient(160deg,#6A3FD8,#BE6AFA)}.mt-tk:nth-child(3) .tk-a{background:linear-gradient(160deg,#D10A16,#FF4D57)}
.tk-a::before,.tk-a::after{content:'';position:absolute;right:-11px;width:20px;height:20px;border-radius:50%;background:#F7FAFE;border:1px solid #DCE4F1}
.tk-a::before{top:-11px}.tk-a::after{bottom:-11px}
.tk-ic{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.18)}
.tk-code{font:800 15px ui-monospace,Menlo,monospace;letter-spacing:.12em}
.tk-b{padding:18px 20px 22px;display:flex;flex-direction:column;gap:4px}
.tk-lbl{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7A879E}
.tk-b h3{margin:0;font-family:var(--display);font-size:19px;color:var(--navy)}
.tk-b p{margin:0;font-size:14px;line-height:1.55;color:#4A5873}
.tk-stamp{position:absolute;right:14px;top:14px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#D10A16;border:2px solid #D10A16;border-radius:8px;padding:3px 8px;rotate:-8deg;opacity:.85;background:rgba(255,255,255,.8)}
@media (max-width:1080px){.mt-board{grid-template-columns:1fr}.mt-tk-row{grid-template-columns:1fr;max-width:560px;margin:0 auto}}
@media (max-width:640px){.mt-board{padding:16px}.mt-name,.mt-bl text{display:none}.mt-bl rect{display:none}.tk-b{padding-top:22px}}
@media (prefers-reduced-motion:reduce){.mt *{animation:none!important;transition:none!important}}
.tk-stamp{position:static!important;align-self:flex-start;margin-top:10px}
.mt{padding-bottom:64px}
/* ===== Variantes de cierre ===== */
.cx-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
/* Soluciones: marquesina */
.cx-mq{position:relative;overflow:hidden;padding:0;color:#FFFFFF;background:linear-gradient(120deg,#D10A16,#A8077A 45%,#6A3FD8 75%,#015CE9)}
.cx-mq-in{text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:64px;padding-bottom:64px}
.cx-mq h2{color:#FFFFFF;font-weight:700;font-size:clamp(28px,3.6vw,46px);line-height:1.1;max-width:900px}
.cx-mq p{color:rgba(255,255,255,.85);font-size:18px;margin-top:14px;max-width:620px}
.cx-mq .cx-btns{justify-content:center}
.mq{overflow:hidden;white-space:nowrap;background:rgba(0,0,0,.14);border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);padding:14px 0}
.mq-t{display:inline-flex;gap:14px;animation:mq 40s linear infinite}
.mq.bot .mq-t{animation-direction:reverse}
.mq-i{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.12);font-size:14px;font-weight:600}
@keyframes mq{to{transform:translateX(-50%)}}
/* Planes: pasos */
.cx-steps{display:flex;flex-wrap:wrap;gap:40px;align-items:center;padding:48px;border-radius:32px;background:linear-gradient(#FFFFFF,#FFFFFF) padding-box,var(--iris) border-box;border:2px solid transparent;box-shadow:0 30px 70px rgba(2,47,110,.12)}
.cxs-copy{flex:1 1 380px;min-width:0}
.cxs-copy h2{font-weight:700;font-size:clamp(26px,3vw,38px);line-height:1.12}
.cxs-copy p{color:var(--muted);font-size:17px;line-height:1.6;margin-top:12px}
.cxs-list{flex:1.2 1 460px;min-width:0;position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cxs-line{position:absolute;left:12%;right:12%;top:27px;height:3px;border-radius:2px;background:#E3EAF5;overflow:hidden}
.cxs-line i{display:block;height:100%;width:30%;background:var(--iris);animation:lineRun 3s linear infinite}
@keyframes lineRun{from{transform:translateX(-100%)}to{transform:translateX(340%)}}
.cxs-list li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.cs-i{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#FFFFFF;border:2px solid #E3EAF5;color:var(--blue);animation:stepOn 6s ease-in-out infinite;animation-delay:calc(var(--k) * 1.5s)}
@keyframes stepOn{0%,20%{background:linear-gradient(135deg,#D10A16,#F0414B);color:#FFFFFF;border-color:transparent;transform:scale(1.12);box-shadow:0 12px 26px rgba(209,10,22,.3)}30%,100%{background:#FFFFFF;color:var(--blue);border-color:#E3EAF5;transform:none;box-shadow:none}}
.cxs-list b{font-family:var(--display);font-size:15px;color:var(--navy)}
.cxs-list small{font-size:12px;color:var(--muted);line-height:1.4}
/* Nosotros: cita */
.cx-quote{position:relative;overflow:hidden;padding:110px 0;background:radial-gradient(600px 400px at 50% 0%,rgba(1,92,233,.10),transparent 70%),#F1F5FC;text-align:center}
.cq-mark{position:absolute;left:50%;top:50%;width:520px;translate:-50% -50%;opacity:.06;animation:spin 60s linear infinite;pointer-events:none}
.cq-in{position:relative;display:flex;flex-direction:column;align-items:center}
.cq-q{font-family:Georgia,serif;font-size:140px;line-height:.6;background:var(--iris);-webkit-background-clip:text;background-clip:text;color:transparent;height:60px}
.cx-quote h2{font-weight:700;font-size:clamp(28px,3.6vw,48px);line-height:1.12;max-width:900px}
.cx-quote p{color:var(--muted);font-size:18px;margin-top:14px;max-width:620px}
.cq-sign{margin-top:28px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
/* Soporte: chat */
.cx-chat{display:flex;flex-wrap:wrap;gap:40px;align-items:center;padding:48px;border-radius:32px;color:#FFFFFF;background:radial-gradient(500px 300px at 100% 0%,rgba(19,162,74,.25),transparent 70%),linear-gradient(140deg,#021B44,#04489A)}
.cxc-copy{flex:1 1 380px;min-width:0}
.cxc-copy h2{color:#FFFFFF;font-weight:700;font-size:clamp(26px,3vw,38px);line-height:1.12}
.cxc-copy p{color:var(--soft);font-size:17px;line-height:1.6;margin-top:12px}
.phone{flex:0 1 340px;min-width:0;margin:0 auto;border-radius:30px;background:#FFFFFF;color:var(--ink);overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.4);border:8px solid #0B1C3D}
.ph-top{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#F1F5FC;border-bottom:1px solid var(--line)}
.ph-top img{width:34px;height:34px;border-radius:50%;background:#FFFFFF;padding:4px}
.ph-top b{font-size:14px;color:var(--navy)}
.ph-top small{display:flex;align-items:center;gap:6px;font-size:12px;color:#13A24A}
.ph-top small i{width:7px;height:7px;border-radius:50%;background:#13A24A}
.ph-body{display:flex;flex-direction:column;gap:10px;padding:18px 14px;min-height:270px}
.bb{max-width:82%;padding:10px 14px;border-radius:18px;font-size:13px;line-height:1.45;opacity:0;animation:bub 12s ease infinite}
.bb.me{align-self:flex-end;background:var(--blue);color:#FFFFFF;border-bottom-right-radius:6px}
.bb.them{align-self:flex-start;background:#EEF2F8;color:var(--ink);border-bottom-left-radius:6px}
.bb.typing{align-self:flex-start;background:#EEF2F8;display:flex;gap:4px;animation-name:typ}
.bb.typing i{width:7px;height:7px;border-radius:50%;background:#9AA6BA;animation:blink 1s infinite}
.bb.typing i:nth-child(2){animation-delay:.2s}.bb.typing i:nth-child(3){animation-delay:.4s}
.b1{animation-delay:0s}.b2{animation-delay:1.2s}.b3{animation-delay:2.6s}.b4{animation-delay:4.2s}.b5{animation-delay:5.6s}
@keyframes bub{0%{opacity:0;transform:translateY(10px) scale(.95)}4%,85%{opacity:1;transform:none}92%,100%{opacity:0}}
@keyframes typ{0%{opacity:0;max-height:0;padding:0 14px}3%,10%{opacity:1;max-height:40px;padding:12px 14px}12%,100%{opacity:0;max-height:0;padding:0 14px;margin:-5px 0}}
@media (max-width:760px){.cxs-list{grid-template-columns:1fr 1fr}.cxs-line{display:none}.cx-steps,.cx-chat{padding:28px}}
@media (prefers-reduced-motion:reduce){.bb{opacity:1;animation:none}.bb.typing{display:none}}
/* Marquesina en tonos sobrios de la marca */
.cx-mq{background:radial-gradient(700px 300px at 15% 50%,rgba(209,10,22,.18),transparent 70%),radial-gradient(700px 300px at 85% 50%,rgba(190,106,250,.16),transparent 70%),linear-gradient(135deg,#021B44,#03245A 55%,#04489A)}
.cx-mq p{color:#C3D2EA}
.mq{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}
.mq-i{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:#D5E0F2}
.mq-i svg{color:#7FD9FF}
.sx-slider{padding-bottom:24px}
.sx-slider{padding-bottom:0}
.sx-slide{padding-bottom:28px}
.sx-ecg{bottom:-10px;height:80px}
.sx-track{align-items:flex-start}.sx-view{transition:height .6s cubic-bezier(.7,0,.25,1)}

/* línea roja que une las secciones con el pie */
footer.ft{border-top:3px solid #D10A16!important;border-image:none!important;margin-top:0}
.cx-chat.cx-flush{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;margin-bottom:0!important}
/* Soporte — Tekki, asistente con IA (compacto) */
.tk-sec{padding:40px 0 0}
.tk-card{position:relative;overflow:visible;isolation:isolate;display:grid;grid-template-columns:200px minmax(0,1fr) 340px;gap:32px;align-items:center;padding:28px 40px;border-radius:28px 28px 0 0;background:linear-gradient(120deg,#021B44 0%,#04489A 70%,#0A5FC4 100%);color:#FFFFFF;box-shadow:0 -10px 40px rgba(2,27,68,.12)}
.tk-orb{position:absolute;inset:0;z-index:-1;border-radius:inherit;overflow:hidden;background:radial-gradient(420px 220px at 12% 60%,rgba(9,220,252,.28),transparent 70%),radial-gradient(380px 200px at 92% 30%,rgba(190,106,250,.22),transparent 70%)}
.tk-bot{position:relative;margin:-70px 0 -28px;align-self:end;display:flex;justify-content:center}
.tk-bot img{position:relative;width:100%;max-width:210px;height:auto;filter:drop-shadow(0 18px 26px rgba(0,0,0,.4));animation:tkBob 4.2s ease-in-out infinite;transform-origin:50% 80%}
@keyframes tkBob{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-10px) rotate(-3deg)}60%{transform:translateY(-4px) rotate(2deg)}}
.tk-glow{position:absolute;left:10%;right:10%;bottom:6%;height:34%;border-radius:50%;background:radial-gradient(closest-side,rgba(9,220,252,.55),transparent);filter:blur(6px);animation:ring 4.2s ease-in-out infinite}
.tk-247{position:absolute;top:22%;right:-6px;font-family:var(--display);font-weight:800;font-size:14px;padding:6px 10px;border-radius:12px;background:#D10A16;color:#FFFFFF;box-shadow:0 10px 20px rgba(209,10,22,.45);rotate:8deg;animation:floatB 5s ease-in-out infinite}
.tk-copy{display:flex;flex-direction:column;gap:12px;min-width:0}
.tk-ai{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:rgba(9,220,252,.14);border:1px solid rgba(9,220,252,.45);color:#9EEBFF}
.tk-ai i{width:8px;height:8px;border-radius:50%;background:#09DCFC;box-shadow:0 0 0 4px rgba(9,220,252,.25);animation:blink 1.2s ease-in-out infinite}
.tk-copy h2{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(24px,2.4vw,32px);line-height:1.15;color:#FFFFFF;text-wrap:balance}
.tk-copy h2 em{font-style:normal;color:#5FE3FF}
.tk-copy p{margin:0;color:#C9D6EE;font-size:15.5px;line-height:1.6;max-width:520px}
.tk-copy .cx-btns{margin-top:4px}
.tk-chat{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);min-height:170px;justify-content:center}
.tq{max-width:88%;font-size:13.5px;line-height:1.45;padding:10px 13px;border-radius:16px;opacity:0;translate:0 8px;transition:opacity .4s,translate .4s}
.tq.me{align-self:flex-end;background:#FFFFFF;color:var(--navy);border-bottom-right-radius:5px}
.tq.bot{align-self:flex-start;background:linear-gradient(135deg,#015CE9,#09A9E0);color:#FFFFFF;border-bottom-left-radius:5px}
.tq.bot b{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin-bottom:2px}
.tq.typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:rgba(255,255,255,.16)}
.tq.typing i{width:7px;height:7px;border-radius:50%;background:#FFFFFF;animation:blink 1s ease-in-out infinite}.tq.typing i:nth-child(2){animation-delay:.2s}.tq.typing i:nth-child(3){animation-delay:.4s}
.tk-chat.s1 .me,.tk-chat.s2 .me,.tk-chat.s3 .me{opacity:1;translate:0 0}
.tk-chat.s2 .typing{opacity:1;translate:0 0}
.tk-chat.s3 .typing{display:none}.tk-chat.s3 .bot{opacity:1;translate:0 0}
@media (max-width:1080px){.tk-card{grid-template-columns:160px minmax(0,1fr);padding:28px}.tk-chat{grid-column:1/-1}.tk-bot{margin:-60px 0 0}}
@media (max-width:640px){.tk-card{grid-template-columns:1fr;text-align:left;padding:24px 20px}.tk-bot{margin:-80px auto 0;max-width:150px}}
@media (prefers-reduced-motion:reduce){.tk-card *{animation:none!important}.tq{opacity:1;translate:0 0}.tq.typing{display:none}}
.tk-card{grid-template-columns:190px minmax(0,1fr) 320px;padding:24px 36px;gap:28px}
.tk-copy{gap:10px}
.tk-copy .cx-btns{flex-wrap:nowrap;gap:10px}
.tk-copy .btn{padding:11px 18px;font-size:14.5px;white-space:nowrap}
.tk-chat{min-height:150px;padding:14px}
.tk-bot{margin:-64px 0 -24px}
@media (max-width:1180px){.tk-copy .cx-btns{flex-wrap:wrap}}
@media (max-width:1080px){.tk-card{grid-template-columns:150px minmax(0,1fr);padding:24px 28px}.tk-chat{grid-column:1/-1}.tk-bot{margin:-56px 0 0}}
@media (max-width:640px){.tk-card{grid-template-columns:1fr;padding:22px 18px;gap:18px}.tk-bot{margin:-70px auto 0;max-width:140px}.tk-copy .btn{white-space:normal}.tk-copy .cx-btns{flex-direction:column;align-items:stretch}}
/* Navbar — botón Iniciar sesión sólido */
.btn.nav-login{background:#04489A;color:#FFFFFF;border:2px solid #FFFFFF;box-shadow:0 0 0 1px #04489A,0 8px 18px rgba(4,72,154,.25)}
.btn.nav-login:hover{background:#015CE9;color:#FFFFFF;border-color:#FFFFFF}
.nav-logo{height:46px}@media (max-width:640px){.nav-logo{height:38px}}
/* ===== Botones flotantes: WhatsApp con menú + Tekki ===== */
.wa{display:none!important}
.fab{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:14px;pointer-events:none}
.fab>*{pointer-events:auto}
.fab-btn{position:relative;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.fab-btn:hover{transform:scale(1.07)}
.fab-wa{width:62px;height:62px;border-radius:50%;background:linear-gradient(145deg,#2EE27A,#128C4A);color:#FFFFFF;box-shadow:0 12px 28px rgba(18,140,74,.45)}
.fab-wa>svg{position:relative;z-index:2;width:32px;height:32px}
.sonar{position:absolute;inset:0;border-radius:50%;border:3px solid #25D366;opacity:0;animation:sonar 2.4s cubic-bezier(.2,.6,.3,1) infinite}
.sonar.s2{animation-delay:.8s}.sonar.s3{animation-delay:1.6s}
@keyframes sonar{0%{transform:scale(1);opacity:.75}100%{transform:scale(2.1);opacity:0}}
.fab-wa[aria-expanded=true] .sonar{animation:none;opacity:0}
.fab-badge{position:absolute;top:-2px;right:-2px;z-index:3;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#D10A16;color:#FFFFFF;font:800 11px/20px var(--display),sans-serif;text-align:center;border:2px solid #FFFFFF;animation:pop .5s 1.2s both}
.fab-wa.seen .fab-badge{display:none}
.fab-tk{width:62px;height:62px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#0B2F6B,#021B44);box-shadow:0 12px 28px rgba(2,27,68,.45),0 0 0 3px rgba(9,220,252,.55);overflow:visible}
.fab-tk img{width:54px;height:auto;margin-top:2px;animation:tkBob 3.6s ease-in-out infinite}
.fab-tk::after{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px dashed rgba(9,220,252,.55);animation:spin 14s linear infinite}
.fab-tip{position:absolute;right:74px;top:50%;translate:0 -50%;white-space:nowrap;padding:10px 14px;border-radius:14px 14px 4px 14px;background:#FFFFFF;color:var(--navy);font:700 14px var(--display),sans-serif;box-shadow:0 12px 30px rgba(2,27,68,.2);opacity:0;scale:.9;transform-origin:right center;transition:opacity .35s,scale .35s;pointer-events:none}
.fab-tip.on{opacity:1;scale:1}
.fab-panel{width:min(370px,calc(100vw - 32px));border-radius:22px;background:#FFFFFF;box-shadow:0 30px 70px rgba(2,27,68,.3);overflow:hidden;transform-origin:bottom right;animation:fabIn .32s cubic-bezier(.2,.8,.2,1)}
.fab-panel[hidden]{display:none}
@keyframes fabIn{from{opacity:0;transform:translateY(14px) scale(.96)}}
.wm-head,.tkw-head{display:flex;align-items:center;gap:12px;padding:14px 16px;color:#FFFFFF}
.wm-head{background:linear-gradient(135deg,#128C4A,#25D366)}
.tkw-head{background:linear-gradient(135deg,#021B44,#04489A)}
.wm-av{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center}.wm-av svg{width:24px;height:24px}
.tkw-head img{width:44px;height:auto;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35))}
.wm-ht{display:flex;flex-direction:column;flex:1;min-width:0}.wm-ht b{font:700 16px var(--display),sans-serif}.wm-ht small{display:flex;align-items:center;gap:6px;font-size:12.5px;opacity:.9}
.wm-ht small i{width:8px;height:8px;border-radius:50%;background:#B8FFD3;box-shadow:0 0 0 3px rgba(184,255,211,.3)}
.tkw-head .wm-ht small i{background:#09DCFC;box-shadow:0 0 0 3px rgba(9,220,252,.3)}
.fab-x{width:32px;height:32px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#FFFFFF;font-size:22px;line-height:1;cursor:pointer}
.fab-x:hover{background:rgba(255,255,255,.3)}
.wm-body{padding:14px;display:flex;flex-direction:column;gap:8px;background:#F3F7F4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Ccircle cx='4' cy='4' r='1.2' fill='%2325D366' fill-opacity='.18'/%3E%3C/svg%3E")}
.wm-hi{margin:0 0 4px;align-self:flex-start;padding:10px 13px;border-radius:4px 14px 14px 14px;background:#FFFFFF;color:#1F2B3D;font-size:14.5px;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.wm-it{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;background:#FFFFFF;color:var(--navy);text-decoration:none;border:1px solid #E2EBE5;transition:transform .2s,border-color .2s,box-shadow .2s;animation:mtRole .4s both;animation-delay:calc(var(--k) * .06s)}
.wm-it:hover{transform:translateX(-3px);border-color:#25D366;box-shadow:0 8px 18px rgba(18,140,74,.14);color:var(--navy)}
.wm-ic{flex:none;width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#E7F8EE;color:#128C4A}
.wm-tx{display:flex;flex-direction:column;flex:1;min-width:0}.wm-tx b{font-size:14.5px}.wm-tx small{font-size:12.5px;color:#5E6B80}
.wm-go{color:#25D366;display:flex}
.wm-foot{padding:10px 16px;font-size:12px;color:#5E6B80;text-align:center;border-top:1px solid #E6ECF2}
.tkw{display:flex;flex-direction:column;height:min(560px,calc(100vh - 140px))}
.tkw[hidden]{display:none}
.tkw-log{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:10px;background:#F4F7FD;scroll-behavior:smooth}
.tm{max-width:88%;font-size:14.2px;line-height:1.55;padding:10px 13px;border-radius:16px;animation:fabIn .25s ease-out}
.tm.u{align-self:flex-end;background:#04489A;color:#FFFFFF;border-bottom-right-radius:5px}
.tm.b{align-self:flex-start;background:#FFFFFF;color:#22314A;border-bottom-left-radius:5px;box-shadow:0 2px 8px rgba(4,72,154,.08)}
.tm.b b{color:var(--navy)}
.tm ul{margin:6px 0 0;padding-left:18px}.tm li{margin:2px 0}
.tm .tm-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tm .tm-acts a{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;background:#EAF1FD;color:#04489A}
.tm .tm-acts a.w{background:#E7F8EE;color:#128C4A}
.tm .tm-acts a:hover{filter:brightness(.95)}
.tm .src{display:block;margin-top:8px;font-size:12px;color:#7A879E}
.tm.typing{display:flex;gap:4px;padding:13px 14px}.tm.typing i{width:7px;height:7px;border-radius:50%;background:#9FB0CB;animation:blink 1s ease-in-out infinite}.tm.typing i:nth-child(2){animation-delay:.2s}.tm.typing i:nth-child(3){animation-delay:.4s}
.tkw-chips{display:flex;gap:6px;overflow-x:auto;padding:10px 12px 4px;background:#F4F7FD;scrollbar-width:none}
.tkw-chips::-webkit-scrollbar{display:none}
.tk-chip{flex:none;border:1px solid #C9D7EE;background:#FFFFFF;color:#04489A;font:600 13px var(--body,inherit);padding:7px 12px;border-radius:999px;cursor:pointer}
.tk-chip:hover{border-color:#04489A;background:#EAF1FD}
.tkw-in{display:flex;gap:8px;padding:12px;border-top:1px solid #E3EAF6;background:#FFFFFF}
.tkw-in input{flex:1;min-width:0;border:1px solid #D3DEEF;border-radius:999px;padding:11px 16px;font:inherit;font-size:14.5px;outline:none}
.tkw-in input:focus{border-color:#015CE9;box-shadow:0 0 0 3px rgba(1,92,233,.15)}
.tkw-in button{flex:none;width:44px;height:44px;border-radius:50%;border:0;background:linear-gradient(135deg,#D10A16,#FF4D57);color:#FFFFFF;display:flex;align-items:center;justify-content:center;cursor:pointer}
.ft-tekma{color:#FFFFFF;font-weight:800;letter-spacing:.06em;text-decoration:none;border-bottom:2px solid #EA5B0C;padding-bottom:1px;transition:color .2s}
.ft-tekma:hover{color:#FF8A3D}
@media (max-width:560px){.fab{right:14px;bottom:14px;gap:12px}.fab-wa,.fab-tk{width:56px;height:56px}.fab-tk img{width:48px}.fab-tip{display:none}.tkw{height:calc(100vh - 170px)}}
@media (prefers-reduced-motion:reduce){.sonar,.fab-tk img,.fab-tk::after{animation:none!important}}
/* Etiquetas al pasar el ratón por los botones flotantes */
.fab-lbl{position:absolute;right:76px;top:50%;translate:8px -50%;white-space:nowrap;padding:9px 14px;border-radius:12px;font:700 14px var(--display),sans-serif;color:#FFFFFF;box-shadow:0 10px 24px rgba(2,27,68,.25);opacity:0;pointer-events:none;transition:opacity .25s,translate .25s;z-index:4}
.fab-lbl::after{content:'';position:absolute;right:-6px;top:50%;width:12px;height:12px;translate:0 -50%;rotate:45deg;background:inherit;border-radius:2px}
.fab-wa .fab-lbl{background:#128C4A}
.fab-tk .fab-lbl{background:#04489A}
.fab-btn:hover .fab-lbl,.fab-btn:focus-visible .fab-lbl{opacity:1;translate:0 -50%}
.fab-btn[aria-expanded=true] .fab-lbl,.fab-tk:has(.fab-tip.on) .fab-lbl{opacity:0!important}
@media (hover:none){.fab-lbl{display:none}}
/* Estilo tipo burbuja (referencia) */
.fab-wa{background:#25D366!important;box-shadow:0 10px 26px rgba(37,211,102,.55)}
.fab-wa:hover{background:#2BE070!important}
.sonar{border-color:#25D366}
.fab-lbl{right:74px;background:#FFFFFF!important;color:#0B1B3A!important;font:800 15px var(--display),sans-serif;padding:12px 18px;border-radius:999px;box-shadow:0 12px 28px rgba(2,27,68,.28);rotate:-3deg}
.fab-lbl::after{display:none}
.fab-btn:hover .fab-lbl,.fab-btn:focus-visible .fab-lbl,.fab-wa.hint .fab-lbl{opacity:1;translate:0 -50%}
.fab-wa.hint .fab-lbl{animation:lblPop .5s cubic-bezier(.2,.9,.3,1.4)}
@keyframes lblPop{from{opacity:0;scale:.6}to{opacity:1;scale:1}}
.fab-tk{background:radial-gradient(circle at 50% 40%,#2C7BE5,#04489A)!important;box-shadow:0 0 0 4px #FFFFFF,0 12px 26px rgba(2,27,68,.35)!important}
.fab-tk::after{display:none}
.fab-on{position:absolute;top:1px;right:1px;width:15px;height:15px;border-radius:50%;background:#25D366;border:3px solid #FFFFFF;z-index:3}
.fab-tk[aria-expanded=true] .fab-lbl{opacity:0!important}
@media (hover:none){.fab-lbl{display:block}.fab-btn:hover .fab-lbl{opacity:0}.fab-wa.hint .fab-lbl{opacity:1}.fab-tk .fab-lbl{display:none}}
@media (max-width:560px){.fab-lbl{font-size:13px;padding:10px 14px;right:66px}}
