/* =========================================================
   Red Nacional de Especialistas Médicos · Capa visual v2
   Institucional + tecnológico. Se carga después del CSS base
   de cada página y solo lo refina; no cambia el contenido.
   ========================================================= */
:root{
  --noche:#06172A;--azul:#0E2A47;--inst:#1F4E79;--acero:#8FB3D1;--senal:#7CC4E8;
  --bronce:#A67C3D;--bronce-c:#C9A063;--marfil:#F7F3EA;--niebla:#E4E9EF;--piedra:#5C6672;
  --linea:rgba(14,42,71,.10);--linea-c:rgba(247,243,234,.14);
  --sombra:0 1px 2px rgba(6,23,42,.05),0 10px 30px -10px rgba(6,23,42,.18);
  --sombra-g:0 30px 80px -30px rgba(6,23,42,.45);
  --radio:16px;--mono:ui-monospace,'SFMono-Regular','Cascadia Mono','Segoe UI Mono',Menlo,Consolas,monospace;
}
body{background:#fff}
::selection{background:var(--bronce-c);color:var(--noche)}

/* ---------- Encabezado de cristal ---------- */
.enc{background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(1.6) blur(16px);backdrop-filter:saturate(1.6) blur(16px);border-bottom:1px solid var(--linea)}
.enc .nav a{position:relative}
.enc .nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1.5px;background:var(--bronce);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.enc .nav a:hover::after,.enc .nav a[aria-current]::after{transform:scaleX(1)}
.enc-cta{background:var(--noche);border-color:var(--noche)}

/* ---------- Botones ---------- */
.btn{border-radius:10px;letter-spacing:.01em;transition:background .25s,border-color .25s,color .25s,transform .25s,box-shadow .25s}
.btn:hover{transform:translateY(-1px)}
.btn-oro{background:linear-gradient(180deg,#B88B47,#9A7035);border-color:#9A7035;color:#fff;box-shadow:0 10px 24px -10px rgba(166,124,61,.7)}
.btn-oro:hover{background:linear-gradient(180deg,#C49752,#A67C3D);border-color:#A67C3D;color:#fff}
.btn .flecha{transition:transform .25s}.btn:hover .flecha{transform:translateX(3px)}

/* ---------- Títulos de sección ---------- */
.eb{display:inline-flex;align-items:center;gap:10px}
.eb::before{content:"";width:22px;height:1.5px;background:currentColor;opacity:.7}
.eb[data-i]::before{content:attr(data-i);width:auto;height:auto;background:none;font-family:var(--mono);letter-spacing:.06em;opacity:.65}
h2{letter-spacing:-.005em}
.s{padding:96px 0}
.tit{margin-bottom:48px}
.s-n{background:var(--noche)}
.cuad{position:relative;isolation:isolate}
.cuad::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(var(--linea) 1px,transparent 1px),linear-gradient(90deg,var(--linea) 1px,transparent 1px);
  background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 75%)}
.s-n.cuad::before,.oscuro.cuad::before{background-image:linear-gradient(var(--linea-c) 1px,transparent 1px),linear-gradient(90deg,var(--linea-c) 1px,transparent 1px)}

/* ---------- Capas parallax ---------- */
.px-cont{position:relative;overflow:hidden;isolation:isolate}
.px{position:absolute;left:0;right:0;top:-190px;bottom:-190px;z-index:-2;background-size:cover;background-position:center;will-change:transform}
.px-velo{position:absolute;inset:0;z-index:-1;pointer-events:none}

/* ---------- Héroe de portada ---------- */
.hx{color:var(--marfil);background:var(--noche);min-height:min(100svh,920px);display:flex;align-items:center;padding:120px 0 72px}
.hx .px{background-image:url(../img/fondos/red-nocturna-mexico.webp)}
.hx .px-velo{background:
  radial-gradient(ellipse 60% 70% at 78% 40%,rgba(31,78,121,.35),transparent 70%),
  linear-gradient(100deg,rgba(6,23,42,.97) 0%,rgba(6,23,42,.86) 45%,rgba(6,23,42,.55) 100%)}
.hx .red-c{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.55}
.hx .c{position:relative;width:100%}
.hx-g{display:grid;gap:48px;align-items:center}
.hx h1{color:#fff;font-size:clamp(40px,6.4vw,74px);line-height:1.02;letter-spacing:-.015em;max-width:13ch}
.hx h1 em{font-style:normal;background:linear-gradient(90deg,#E6CB98,#B88B47);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx .lead{color:#C9D3DE;font-size:clamp(17px,1.6vw,20px);margin-top:22px;max-width:52ch}
.hx .eb{color:var(--bronce-c)}
.chip-vivo{display:inline-flex;align-items:center;gap:10px;font:500 13px/1 var(--sans);color:#DCE6EF;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);padding:9px 14px;border-radius:999px;margin-bottom:22px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.chip-vivo i{width:8px;height:8px;border-radius:50%;background:#58D39B;box-shadow:0 0 0 0 rgba(88,211,155,.6);animation:latido 2s infinite}
@keyframes latido{70%{box-shadow:0 0 0 9px rgba(88,211,155,0)}100%{box-shadow:0 0 0 0 rgba(88,211,155,0)}}
.vidrio{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:28px;-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);box-shadow:var(--sombra-g)}
.vidrio h2{color:#fff;font-size:24px;margin-bottom:6px}
.vidrio p.sub{color:#B9C6D3;font-size:15px;margin-bottom:20px}
.vidrio label{color:#DCE6EF}
.vidrio select{background:rgba(6,23,42,.55);color:#fff;border-color:rgba(255,255,255,.22)}
.vidrio select option{color:var(--azul);background:#fff}
.vidrio .bus{background:transparent;border:0;box-shadow:none;padding:0}
.vidrio .bus .btn{width:100%;background:linear-gradient(180deg,#B88B47,#9A7035);border-color:#9A7035;color:#fff}
.vidrio .bus-g{grid-template-columns:minmax(0,1fr)!important;gap:14px}
.vidrio .bus-g .btn{margin-top:6px}
.vidrio .res{background:rgba(255,255,255,.96);color:var(--azul)}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:44px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden}
.kpis div{background:rgba(6,23,42,.55);padding:18px 20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.kpis b{display:block;font:600 clamp(26px,3vw,34px)/1 var(--serif);color:#fff;font-variant-numeric:tabular-nums}
.kpis span{display:block;font:500 11px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#9FB2C5;margin-top:8px}
.kpis div:first-child b{color:var(--bronce-c)}
.bajar{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);width:26px;height:42px;border:1.5px solid rgba(255,255,255,.35);border-radius:14px}
.bajar::after{content:"";position:absolute;left:50%;top:8px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:rueda 1.8s infinite}
@keyframes rueda{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* ---------- Franja "solo Google" ---------- */
.franja{background:var(--noche);border-top:1px solid rgba(255,255,255,.08);color:#C9D3DE;overflow:hidden}
.franja .c{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 28px;padding-top:20px;padding-bottom:20px}
.franja strong{font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--bronce-c)}
.franja ul{display:flex;flex-wrap:wrap;gap:10px 26px;list-style:none;margin:0;padding:0}
.franja li{margin:0;display:flex;align-items:center;gap:8px;font:500 14px/1 var(--sans)}
.franja li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--senal);box-shadow:0 0 10px var(--senal)}

/* ---------- Tarjetas ---------- */
.t{border-radius:var(--radio);border-color:var(--linea);transition:border-color .3s,transform .3s,box-shadow .3s}
.t:hover{box-shadow:var(--sombra)}
a.t:hover{transform:translateY(-3px)}
.cif .t b{font-variant-numeric:tabular-nums}

/* ---------- Miedos (estudio de público) ---------- */
.miedos{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
.miedo{position:relative;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:26px 24px 22px;overflow:hidden;transition:transform .35s,box-shadow .35s,border-color .35s}
.miedo:hover{transform:translateY(-4px);box-shadow:var(--sombra);border-color:rgba(166,124,61,.45)}
.miedo::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--bronce),transparent)}
.miedo .q{font:600 19px/1.3 var(--serif);color:var(--azul);margin:0 0 14px}
.miedo .q::before{content:"“";color:var(--bronce);margin-right:2px}
.miedo .q::after{content:"”";color:var(--bronce)}
.miedo .r{display:flex;gap:10px;font-size:15.5px;color:var(--piedra);margin:0;border-top:1px dashed var(--linea);padding-top:14px}
.miedo .r b{color:var(--azul);font-weight:600}
.miedo .r svg{flex:none;width:18px;height:18px;margin-top:3px;stroke:var(--bronce);fill:none;stroke-width:2}
.sindrome{display:grid;gap:28px;align-items:center;margin-bottom:56px}
.sindrome .marco{position:relative;border-radius:22px;overflow:hidden;min-height:340px;box-shadow:var(--sombra-g)}
.sindrome .marco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sindrome .marco::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,23,42,.85))}
.sindrome .marco figcaption{position:absolute;left:22px;right:22px;bottom:20px;z-index:1;color:#fff;font:600 13px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.sindrome blockquote{margin:0;font:600 clamp(24px,3vw,34px)/1.2 var(--serif);color:var(--azul)}
.sindrome blockquote span{color:var(--bronce)}

/* ---------- Bandas de imagen con parallax ---------- */
.banda{color:#fff;padding:140px 0;text-align:left}
.banda .px-velo{background:linear-gradient(90deg,rgba(6,23,42,.94) 0%,rgba(6,23,42,.78) 50%,rgba(6,23,42,.5) 100%)}
.banda h2{color:#fff;font-size:clamp(30px,4.4vw,52px);max-width:18ch;line-height:1.08}
.banda .lead{color:#C9D3DE;margin-top:18px}
.banda .eb{color:var(--bronce-c)}
.banda-cdmx .px-velo{background:linear-gradient(90deg,rgba(6,23,42,.95) 0%,rgba(6,23,42,.86) 55%,rgba(6,23,42,.8) 100%)}
.banda-cdmx .px{background-image:url(../img/fondos/zocalo-cdmx.webp)}
.banda-quir .px{background-image:url(../img/fondos/quirofano-monocromo.webp);filter:grayscale(.3)}
.banda-tec .px-velo{background:linear-gradient(90deg,rgba(6,23,42,.95),rgba(6,23,42,.86))}
.banda-tec .px{background-image:url(../img/fondos/tecnologia-imagen-medica.webp)}
.banda-hosp .px{background-image:url(../img/fondos/hospital-fachada.webp)}

/* ---------- Mapa vivo ---------- */
.red-mapa{display:grid;gap:40px;align-items:center}
.mapa-v{position:relative}
.mapa-v svg{width:100%;height:auto;overflow:visible}
.mapa-v .pais{fill:rgba(143,179,209,.08);stroke:rgba(143,179,209,.55);stroke-width:1.2;stroke-linejoin:round}
.mapa-v .enl{stroke:rgba(201,160,99,.55);stroke-width:1;fill:none;stroke-dasharray:3 5;animation:flujo 18s linear infinite}
@keyframes flujo{to{stroke-dashoffset:-400}}
.mapa-v .pt{fill:#0E2A47;stroke:var(--acero);stroke-width:1.5;cursor:pointer;transition:r .2s,fill .2s}
.mapa-v .pt:hover,.mapa-v .pt:focus{fill:var(--senal);outline:none}
.mapa-v .pt.oc{fill:var(--bronce-c);stroke:#fff}
.mapa-v .halo{fill:none;stroke:var(--bronce-c);stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center;animation:halo 2.6s ease-out infinite}
@keyframes halo{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(4.2)}}
.mapa-tip{position:absolute;pointer-events:none;background:#fff;color:var(--azul);border-radius:10px;padding:10px 12px;font:500 13px/1.35 var(--sans);box-shadow:var(--sombra-g);opacity:0;transform:translate(-50%,-115%);transition:opacity .15s;white-space:nowrap;z-index:3}
.mapa-tip b{font-family:var(--serif);font-size:15px;display:block}
.mapa-tip.v{opacity:1}
.mapa-ley{display:flex;gap:18px;flex-wrap:wrap;font:500 13px/1 var(--sans);color:#B9C6D3;margin-top:14px}
.mapa-ley span{display:inline-flex;align-items:center;gap:8px}
.mapa-ley i{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--acero);background:var(--azul)}
.mapa-ley i.o{background:var(--bronce-c);border-color:#fff}
.s-claro .mapa-v .pais{fill:#EEF2F6;stroke:#B9C8D6}
.s-claro .mapa-v .pt{fill:#fff;stroke:var(--inst)}
.s-claro .mapa-ley{color:var(--piedra)}
.cont-v{display:flex;gap:28px;flex-wrap:wrap;margin:26px 0}
.cont-v div b{display:block;font:600 40px/1 var(--serif);color:#fff;font-variant-numeric:tabular-nums}
.cont-v div span{font:500 12px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#9FB2C5}
.cont-v div:first-child b{color:var(--bronce-c)}

/* ---------- Comparativo ---------- */
.tb{border-radius:var(--radio);box-shadow:var(--sombra);border-color:var(--linea)}

/* ---------- Proceso rápido ---------- */
.rapido{display:grid;gap:18px;grid-template-columns:minmax(0,1fr);counter-reset:p;position:relative}
.paso3{position:relative;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:30px 26px 26px}
.paso3 .num{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--noche);color:var(--bronce-c);font:600 18px/1 var(--mono);margin-bottom:18px;box-shadow:0 10px 20px -10px rgba(6,23,42,.6)}
.paso3 h3{margin-bottom:8px}
.paso3 p{color:var(--piedra);font-size:16px;margin:0}
.paso3 .dur{display:inline-block;margin-top:16px;font:600 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--bronce-t,#7E5A26);background:#F6EEDF;border-radius:999px;padding:7px 11px}
.paso3.listo{background:linear-gradient(160deg,#0E2A47,#06172A);border-color:#0E2A47;color:#fff}
.paso3.listo h3{color:#fff}.paso3.listo p{color:#C9D3DE}
.paso3.listo .num{background:var(--bronce);color:#fff}
.paso3.listo .dur{background:rgba(255,255,255,.1);color:var(--bronce-c)}

/* ---------- Ruta de maduración ---------- */
.ruta{position:relative;display:grid;gap:22px;grid-template-columns:minmax(0,1fr)}
.ruta::before{content:"";position:absolute;left:22px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--senal),var(--bronce-c));opacity:.5}
.hito{position:relative;padding-left:64px}
.hito .pto{position:absolute;left:12px;top:4px;width:22px;height:22px;border-radius:50%;background:var(--noche);border:2px solid var(--senal);box-shadow:0 0 0 6px rgba(124,196,232,.12)}
.hito:last-child .pto{border-color:var(--bronce-c);background:var(--bronce);box-shadow:0 0 0 6px rgba(201,160,99,.18)}
.hito .cuando{font:600 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--senal)}
.hito:last-child .cuando{color:var(--bronce-c)}
.hito h3{color:#fff;margin:10px 0 8px;font-size:22px}
.hito p{color:#B9C6D3;font-size:16px;margin:0}
.hito ul{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.hito li{margin:0;font:500 13px/1 var(--sans);color:#DCE6EF;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 11px}
.barra-mad{height:6px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:16px}
.barra-mad i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--senal),var(--bronce-c));transition:width 1.6s cubic-bezier(.2,.7,.2,1)}
.v .barra-mad i,.barra-mad.v i{width:var(--w)}
.nota-ruta{color:#9FB2C5;font-size:14px;margin-top:28px;max-width:70ch}

/* ---------- Tranquilidad (garantía sutil) ---------- */
.tranq{display:grid;gap:24px;align-items:stretch}
.tranq .bloq{border-radius:var(--radio);padding:30px;border:1px solid var(--linea);background:#fff}
.tranq .bloq.dest{background:linear-gradient(160deg,#FBF7EE,#F3EBDB);border-color:#E6D7B9}
.tranq .bloq h3{margin-bottom:10px}
.tranq .bloq p{color:var(--piedra);font-size:16px}
.sello-90{display:flex;gap:16px;align-items:center;margin-bottom:14px}
.sello-90 svg{width:58px;height:58px;flex:none}

/* ---------- Una hora al mes ---------- */
.lista-mes{display:grid;gap:0 32px;grid-template-columns:minmax(0,1fr)}
.lista-mes li{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1);margin:0;color:#DCE6EF}
.lista-mes li svg{flex:none;width:20px;height:20px;stroke:var(--bronce-c);fill:none;stroke-width:2;margin-top:2px}
.reloj{display:flex;align-items:center;gap:18px;margin:6px 0 30px}
.reloj b{font:600 64px/1 var(--serif);color:var(--bronce-c)}
.reloj span{color:#C9D3DE;font-size:16px;max-width:30ch}

/* ---------- Miembros ---------- */
.miembros{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}
.mbr{position:relative;display:block;border-radius:var(--radio);overflow:hidden;background:var(--noche);color:#fff;text-decoration:none;aspect-ratio:3/4;box-shadow:var(--sombra);isolation:isolate}
.mbr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s;filter:saturate(.9)}
.mbr::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,23,42,0) 35%,rgba(6,23,42,.92) 88%)}
.mbr:hover img{transform:scale(1.05);filter:saturate(1)}
.mbr .ins2{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;font:600 11px/1 var(--sans);letter-spacing:.06em;color:var(--azul);background:rgba(255,255,255,.92);border-radius:999px;padding:6px 9px 6px 6px}
.mbr .ins2 img{position:static;inset:auto;z-index:auto;width:16px;height:16px;filter:none;transform:none}
.mbr .dat{position:absolute;left:16px;right:16px;bottom:16px}
.mbr .dat b{display:block;font:600 clamp(16px,1.6vw,19px)/1.2 var(--serif)}
.mbr .dat span{display:block;margin-top:6px;font:500 13px/1.35 var(--sans);color:#C9D3DE}
.mbr .dat em{font-style:normal;color:var(--bronce-c)}
.mbr.libre{background:linear-gradient(160deg,#0E2A47,#06172A);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:22px;border:1px dashed rgba(201,160,99,.6)}
.mbr.libre::after{display:none}
.mbr.libre b{font:600 22px/1.2 var(--serif);color:#fff}
.mbr.libre span{color:#B9C6D3;font-size:14px;margin:10px 0 16px}
.mbr.libre i{font-style:normal;font:600 14px/1 var(--sans);color:var(--bronce-c)}

/* ---------- Criterios ---------- */
.chips li{border-radius:999px}

/* ---------- Preguntas ---------- */
.acc details{border-color:var(--linea)}
.acc summary{font-family:var(--serif);font-size:19px}

/* ---------- Cierre con imagen ---------- */
.cierre2{color:#fff;padding:130px 0}
.cierre2 .px{background-image:url(../img/fondos/quirofano-moderno.webp)}
.cierre2 .px-velo{background:linear-gradient(180deg,rgba(6,23,42,.88),rgba(6,23,42,.96))}
.cierre2 h2{color:#fff;font-size:clamp(30px,4.2vw,48px);max-width:20ch}
.cierre2 .eb{color:var(--bronce-c)}

/* ---------- Pie ---------- */
.pie{background:var(--noche)!important;position:relative}
.pie::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--bronce-c),transparent);opacity:.6}

/* ---------- Héroes interiores (todas las páginas) ---------- */
.hero{position:relative;isolation:isolate;background:var(--noche)}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(ellipse 50% 80% at 85% 20%,rgba(31,78,121,.55),transparent 70%),
  linear-gradient(var(--linea-c) 1px,transparent 1px) 0 0/56px 56px,
  linear-gradient(90deg,var(--linea-c) 1px,transparent 1px) 0 0/56px 56px;
  -webkit-mask-image:linear-gradient(180deg,#000 40%,rgba(0,0,0,.35));mask-image:linear-gradient(180deg,#000 40%,rgba(0,0,0,.35))}
.hero::after{content:"";position:absolute;inset:0;z-index:-2;background:url(../img/fondos/red-nocturna-mexico-900.webp) center/cover;opacity:.22}
.hero.hx::before,.hero.hx::after{display:none}
.hero-sm{padding:72px 0 80px}
.hero .ret{border-radius:18px;box-shadow:var(--sombra-g)}

/* ---------- Explorador de plazas ---------- */
.mtz{border-radius:var(--radio)}
.vis-tit{font:600 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--piedra);margin:0 0 10px}

/* ---------- Animaciones de entrada ---------- */
.js .sube{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.js .sube.v{opacity:1;transform:none}
.js .sube[data-r="1"]{transition-delay:.08s}.js .sube[data-r="2"]{transition-delay:.16s}.js .sube[data-r="3"]{transition-delay:.24s}.js .sube[data-r="4"]{transition-delay:.32s}.js .sube[data-r="5"]{transition-delay:.4s}

/* ---------- Responsivo ---------- */
@media (min-width:640px){
  .miedos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
  .rapido{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lista-mes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .miembros{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1024px){
  .hx-g{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:64px}
  .miedos{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sindrome{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px}
  .red-mapa{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}
  .ruta{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
  .ruta::before{left:10px;right:10px;top:11px;bottom:auto;width:auto;height:2px;background:linear-gradient(90deg,var(--senal),var(--bronce-c))}
  .hito{padding-left:0;padding-top:46px}
  .hito .pto{left:0;top:0}
  .tranq{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  .miembros{grid-template-columns:repeat(4,minmax(0,1fr))}
  .rapido::before{content:"";position:absolute;left:12%;right:12%;top:53px;height:1px;background:repeating-linear-gradient(90deg,var(--bronce) 0 6px,transparent 6px 12px);opacity:.5;z-index:0}
  .paso3{z-index:1}
}
@media (max-width:767px){
  .s{padding:72px 0}
  .hx{padding:104px 0 64px;min-height:auto}
  .banda{padding:96px 0}
  .bajar{display:none}
}
@media (prefers-reduced-motion:reduce){
  .px{transform:none!important;top:0;bottom:0}
  .js .sube{opacity:1;transform:none;transition:none}
  .mapa-v .enl,.mapa-v .halo,.chip-vivo i,.bajar::after{animation:none}
}

/* ---------- Página de plazas ---------- */
.edos{columns:1;column-gap:18px}
@media (min-width:700px){.edos{columns:2}}@media (min-width:1050px){.edos{columns:3}}
.edo{break-inside:avoid;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:18px 20px 8px;margin:0 0 18px}
.edo ul{list-style:none;padding:0;margin:0}
.edo li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--linea);margin:0}
.edo li a{font:600 16px/1.3 var(--serif);color:var(--azul);text-decoration:none}
.edo li a:hover{color:var(--bronce)}
.edo li small{color:var(--piedra);font-size:13.5px}
.edo .occ{font:600 11px/1 var(--sans);color:#fff;background:var(--bronce);border-radius:999px;padding:5px 8px;margin-right:8px}
.ciu-t{position:relative;padding:20px 20px 18px}
.ciu-t h3{font-size:19px}
.ciu-t p{margin:6px 0 0;font-size:14.5px}
.ciu-t p b{color:var(--azul);font-family:var(--serif);font-size:18px}
.ciu-t .occ{position:absolute;top:16px;right:14px;font:600 11px/1 var(--sans);letter-spacing:.04em;color:#fff;background:var(--bronce);border-radius:999px;padding:5px 8px}
.esp-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}
.esp-chips li{margin:0}
.esp-chips a{display:inline-block;padding:10px 15px;border:1px solid var(--linea);border-radius:999px;text-decoration:none;color:var(--azul);font:500 15px/1 var(--sans);background:#fff;transition:all .2s}
.esp-chips a:hover{border-color:var(--bronce);background:#FBF7EE}
.vist button{border-radius:10px}
.mz{border-radius:var(--radio);box-shadow:var(--sombra)}
#lista{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start;max-height:720px;overflow:auto;padding:4px 6px 4px 0;scrollbar-width:thin}
@media (min-width:768px){#lista{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){#lista{grid-template-columns:repeat(3,minmax(0,1fr))}}
#lista details{margin:0!important;border-radius:12px;background:#fff}
#lista details[open]{grid-column:1/-1}

.edos2{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.edos2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.edos2{grid-template-columns:repeat(4,minmax(0,1fr))}}
.edo2{display:block;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:18px 18px 16px;text-decoration:none;color:inherit;transition:transform .3s,box-shadow .3s,border-color .3s}
.edo2:hover{transform:translateY(-3px);box-shadow:var(--sombra);border-color:rgba(166,124,61,.45)}
.edo2 .vis-tit{font-size:10.5px;letter-spacing:.08em;margin:0 0 8px;display:block}
.edo2 h3{font-size:20px}
.edo2 p{margin:6px 0 0;font-size:14.5px;color:var(--piedra)}
.edo2 p b{color:var(--azul);font-family:var(--serif);font-size:18px}
.edo2 ul{list-style:none;padding:0;margin:12px 0 0;border-top:1px solid var(--linea)}
.edo2 li{margin:0;padding:8px 0 0;font-size:13px;line-height:1.4;color:var(--azul)}
.edo2 .occ{display:inline-block;font:600 10px/1 var(--sans);letter-spacing:.04em;color:#fff;background:var(--bronce);border-radius:999px;padding:4px 7px;margin-right:6px;vertical-align:1px}

/* ---------- Qué es una plaza ---------- */
.plaza-g{display:grid;gap:22px;align-items:start}
.plaza-r{display:grid;gap:16px}
.plaza-r .t h3{font-size:20px}
.plaza-demo{position:relative;border-radius:20px;padding:26px;background:linear-gradient(160deg,#0E2A47,#06172A);color:#fff;box-shadow:var(--sombra-g);overflow:hidden}
.plaza-demo::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(201,160,99,.25),transparent 70%)}
.plaza-demo .vis-tit{color:var(--bronce-c)}
.pd-cab{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.05)}
.pd-cab svg{flex:none;width:40px;height:40px;padding:9px;border-radius:12px;background:var(--bronce);stroke:#fff;fill:none;stroke-width:1.8}
.pd-cab b{display:block;font:600 20px/1.2 var(--serif)}
.pd-cab span{display:block;font-size:13.5px;color:#B9C6D3;margin-top:4px}
.pd-sub{margin:18px 0 10px;font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#9FB2C5}
.plaza-demo ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.plaza-demo li{margin:0;display:flex;align-items:center;gap:10px;font-size:15.5px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.06)}
.plaza-demo li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--bronce-c);box-shadow:0 0 10px rgba(201,160,99,.7)}
.pd-pie{margin:16px 0 0;color:#DCE6EF;font-size:15px}
@media (min-width:1024px){.plaza-g{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px}}

/* ---------- WhatsApp flotante con mensaje ---------- */
.wa-f{background:#25D366!important;border:0!important;width:60px!important;height:60px!important;box-shadow:0 12px 28px -8px rgba(37,211,102,.6)!important;animation:wa-pulso 2.8s infinite}
.wa-f:hover{background:#1EBE5A!important}
@keyframes wa-pulso{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55)}70%{box-shadow:0 0 0 16px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
.wa-burbuja{position:fixed;right:20px;bottom:96px;z-index:45;width:min(320px,calc(100vw - 40px));background:#fff;color:var(--azul);border-radius:16px;box-shadow:0 24px 60px -20px rgba(6,23,42,.45);border:1px solid var(--linea);padding:16px 16px 14px;opacity:0;transform:translateY(10px) scale(.98);pointer-events:none;transition:opacity .35s,transform .35s}
.wa-burbuja.v{opacity:1;transform:none;pointer-events:auto}
.wa-burbuja::after{content:"";position:absolute;right:24px;bottom:-8px;width:16px;height:16px;background:#fff;border-right:1px solid var(--linea);border-bottom:1px solid var(--linea);transform:rotate(45deg)}
.wa-burbuja .wb-cab{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.wa-burbuja .wb-cab img{width:34px;height:34px;border-radius:50%;background:var(--noche);padding:5px}
.wa-burbuja .wb-cab b{display:block;font:600 14px/1.2 var(--sans)}
.wa-burbuja .wb-cab small{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--piedra)}
.wa-burbuja .wb-cab small i{width:7px;height:7px;border-radius:50%;background:#25D366}
.wa-burbuja p{margin:0 0 12px;font:500 15px/1.45 var(--sans)}
.wa-burbuja a.wb-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:#25D366;color:#fff;text-decoration:none;font:600 15px/1 var(--sans);padding:12px;border-radius:10px}
.wa-burbuja a.wb-btn:hover{background:#1EBE5A}
.wa-burbuja .wb-x{position:absolute;top:8px;right:8px;background:none;border:0;font-size:20px;line-height:1;color:var(--piedra);cursor:pointer;padding:6px}
@media (max-width:1023px){.wa-burbuja{bottom:84px}}
.bar .btn-2{background:#25D366;border-color:#25D366;color:#fff}

/* ---------- Microtexto bajo los botones ---------- */
.micro{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;font:500 13px/1.4 var(--sans);color:var(--piedra)}
.micro span{display:inline-flex;align-items:center;gap:6px}
.micro span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--bronce)}
.hx .micro,.banda .micro,.cierre2 .micro,.s-n .micro,.hero .micro,.vidrio .micro{color:#B9C6D3}
.btn-wa{background:#25D366;border-color:#25D366;color:#fff}
.btn-wa:hover{background:#1EBE5A;border-color:#1EBE5A;color:#fff}
.btn-wa .ic{fill:currentColor;stroke:none}

/* ---------- Independencia y médicos fuera de México ---------- */
.indep{display:grid;gap:26px;align-items:center}
.indep .marco{position:relative;border-radius:22px;overflow:hidden;min-height:360px;box-shadow:var(--sombra-g)}
.indep .marco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.beneficios{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);list-style:none;padding:0;margin:20px 0 0}
.beneficios li{margin:0;display:flex;gap:12px;padding:14px 16px;border:1px solid var(--linea);border-radius:12px;background:#fff}
.beneficios li b{display:block;font:600 16px/1.3 var(--serif);color:var(--azul)}
.beneficios li span{font-size:14.5px;color:var(--piedra)}
.beneficios li svg{flex:none;width:22px;height:22px;stroke:var(--bronce);fill:none;stroke-width:1.8;margin-top:2px}
.extranjero{display:flex;flex-wrap:wrap;gap:18px 30px;align-items:center;justify-content:space-between;padding:28px 30px;border-radius:20px;background:linear-gradient(120deg,#0E2A47,#06172A);color:#fff;box-shadow:var(--sombra-g)}
.extranjero h2{color:#fff;font-size:clamp(22px,2.6vw,30px)}
.extranjero p{color:#C9D3DE;margin:8px 0 0;max-width:60ch}
@media (min-width:640px){.beneficios{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.indep{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px}}

/* ---------- Ronda 6: miembros con sitio, respuesta rápida, confianza ---------- */
.mbr .mbr-l{color:#fff;text-decoration:none}
.mbr .mbr-l::after{content:"";position:absolute;inset:0;z-index:1}
.mbr .mbr-web{position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:600 12.5px/1 var(--sans);color:var(--noche);background:rgba(255,255,255,.92);padding:8px 11px;border-radius:999px;text-decoration:none;transition:background .2s}
.mbr .mbr-web:hover{background:var(--bronce-c);color:#fff}
.mbr .ins2{z-index:2}
.s-res{padding:56px 0 0}
.s-res .resp{max-width:none;border-radius:var(--radio);border-left:3px solid var(--bronce);background:linear-gradient(120deg,#FBF7EE,#fff)}
.kpis-c{margin:6px 0 30px}
.confian{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 8px}
.confian li{margin:0}
.confian a{display:inline-block;font:500 14px/1 var(--sans);color:#DCE6EF;text-decoration:none;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:9px 13px;transition:all .2s}
.confian a:hover{border-color:var(--bronce-c);color:#fff}

/* ---------- Animación de red (secciones de texto) ---------- */
.red-anim{position:absolute;pointer-events:none;z-index:0;opacity:.55;width:min(560px,60vw);height:auto;right:-40px;top:20px}
.s-n .red-anim,.oscuro .red-anim{opacity:.35}
.red-anim line{stroke:var(--acero);stroke-width:1;stroke-dasharray:4 6;animation:flujo 14s linear infinite}
.red-anim circle{fill:var(--bronce-c);transform-box:fill-box;transform-origin:center;animation:nodo 3.2s ease-in-out infinite}
.red-anim circle:nth-child(3n){animation-delay:.8s}.red-anim circle:nth-child(3n+1){animation-delay:1.6s}
@keyframes nodo{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}
section.s{position:relative}
section.s > .c{position:relative;z-index:1}
@media (max-width:767px){.red-anim{width:320px;right:-80px;top:10px;opacity:.3}}

/* ---------- Héroes interiores con parallax ---------- */
.hero .px-int{position:absolute;left:0;right:0;top:-120px;bottom:-120px;z-index:-3;background-size:cover;background-position:center;opacity:.32;will-change:transform}
.hero.tiene-px::after{display:none}

/* ---------- Tarjetas interactivas ---------- */
@media (hover:hover) and (pointer:fine){
  .tilt{transition:transform .25s ease,box-shadow .3s}
  .tilt:hover{box-shadow:0 24px 50px -24px rgba(6,23,42,.4)}
}

/* ---------- WhatsApp con contraste accesible ---------- */
.btn-wa,.wa-burbuja a.wb-btn,.bar .btn-2{background:#15803d!important;border-color:#15803d!important;color:#fff!important}
.btn-wa:hover,.wa-burbuja a.wb-btn:hover{background:#166534!important;border-color:#166534!important}

/* ---------- Ajustes de celular ---------- */
@media (max-width:767px){
  .hx h1{font-size:clamp(34px,10vw,44px)}
  .hx .btns{display:grid;grid-template-columns:1fr;gap:10px}
  .hx .btns .btn{width:100%}
  .kpis b{font-size:24px}
  .vidrio{padding:20px}
  .miembros{gap:12px}
  .mbr .dat b{font-size:15px}
  .mbr .mbr-web{font-size:11.5px;padding:7px 9px}
  .banda h2,.cierre2 h2{font-size:clamp(28px,8vw,36px)}
  .btns{gap:10px}
  .btns .btn{flex:1 1 100%}
  .extranjero{padding:22px}
  .s-res{padding-top:40px}
  .tranq .bloq{padding:22px}
  .ruta{gap:18px}
  .franja ul{gap:8px 16px}
  .wa-burbuja{right:12px;width:calc(100vw - 24px)}
}
section.s,.s-res{overflow-x:clip}
body{overflow-x:clip}

/* ---------- Primera pantalla de páginas interiores (estilo de la portada) ---------- */
.hero-pro{min-height:min(84svh,760px);display:flex;align-items:center;padding:120px 0 72px;color:var(--marfil)}
.hero-pro .c{width:100%}
.hp-g{display:grid;gap:34px;align-items:center}
.hero-pro h1{color:#fff;font-size:clamp(34px,4.8vw,58px);line-height:1.05;letter-spacing:-.01em;max-width:18ch}
.hero-pro .lead{color:#C9D3DE;font-size:clamp(17px,1.5vw,19px);max-width:56ch}
.hero-pro .eb{color:var(--bronce-c)}
.hero-pro .px-int{opacity:.42!important}
.hero-pro::before{background:linear-gradient(100deg,rgba(6,23,42,.96) 0%,rgba(6,23,42,.86) 50%,rgba(6,23,42,.6) 100%)!important;-webkit-mask-image:none!important;mask-image:none!important}
.hp-card{align-self:center}
.hp-card h2{font-size:22px}
.hp-card .hp-wa{width:100%;margin-top:12px}
.hero-pro .migas{margin-bottom:18px}
@media (min-width:1024px){.hp-g{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:56px}}
@media (max-width:767px){.hero-pro{min-height:auto;padding:96px 0 48px}.hero-pro h1{font-size:clamp(30px,8.5vw,40px)}}
.hero-pro .chip-vivo{display:flex;width:max-content;max-width:100%;margin:0 0 18px}
.hero-pro .hp-txt > .eb{display:flex}
/* ===== Encabezado celular: nombre + Agendar ===== */
.enc .c>a:first-child{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}
.enc-nom{display:flex;flex-direction:column;font-family:var(--serif,Georgia,serif);font-size:15px;line-height:1.1;color:var(--noche,#0b1f33);font-weight:600;letter-spacing:.01em;white-space:nowrap}
.enc-nom small{font-family:inherit;font-size:11.5px;font-weight:400;color:var(--pizarra,#475569);letter-spacing:.02em;margin-top:2px}
.enc-wa{display:inline-flex;align-items:center;gap:6px;margin-left:auto;margin-right:6px;padding:8px 12px;min-height:40px;border-radius:999px;background:#15803d;color:#fff;font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap;box-shadow:0 4px 14px rgba(21,128,61,.28)}
.enc-wa svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.enc-wa:active{transform:scale(.97)}
@media (max-width:359px){.enc-nom small{display:none}.enc-wa span{display:none}.enc-wa{padding:8px 10px}}
@media (min-width:1024px){.enc-nom,.enc-wa{display:none}}
/* ===== Iconos en celular ===== */
.icm{display:inline-block;width:1.05em;height:1.05em;flex:none;vertical-align:-.17em;margin-right:.45em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.menu ul a .icm{width:20px;height:20px;margin-right:12px;opacity:.85}
.menu ul a{display:flex;align-items:center}
.pie ul a .icm{width:15px;height:15px;opacity:.7}
.eb .icm{color:var(--bronce,#a37a3f)}
summary .icm{color:var(--bronce,#a37a3f)}
.micro .icm{color:#15803d}
@media (min-width:1024px){.nav .icm{display:none}}
svg.icm,.bar svg.icm,.btn svg.icm{fill:none!important;stroke:currentColor}
.bar .btn .icm{width:18px;height:18px;margin-right:6px}
.micro span:has(.icm)::before{display:none}
.micro span .icm{margin-right:0;color:#4ade80}
@media (max-width:1023px){.bar .btn{white-space:nowrap;font-size:15px}}
.enc .c>a:first-child picture,.enc .c>a:first-child img{flex:none}
.enc-wa svg{flex:none}
@media (max-width:420px){.enc-nom{font-size:14px}.enc-nom small{font-size:10.5px}.enc-wa{padding:8px 11px;font-size:13.5px}.enc .c{gap:10px}}
@media (max-width:420px){.enc .c>a:first-child img{width:34px;height:34px}.enc .c>a:first-child{gap:8px}.enc-nom{min-width:0}.enc-nom small{white-space:normal;max-width:118px;line-height:1.15}.enc-wa{margin-right:2px}}
/* ===== Países ===== */
.paises{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.pais{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#E6ECF2;font:500 14px/1.2 var(--sans);text-decoration:none;transition:background .2s,border-color .2s,transform .2s}
.pais::before{content:"";width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.18)}
.pais:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4);transform:translateY(-1px)}
.paises-claro{margin:14px 0 26px}
.paises-claro .pais{color:var(--noche,#0b1f33);border-color:var(--linea,#dfe5ec);background:#fff}
.paises-claro .pais::before{background:#15803d;box-shadow:0 0 0 3px rgba(21,128,61,.14)}
.paises-claro .pais:hover{border-color:#15803d;background:#f3faf5}
.hp-sub{font-size:14px;color:#B9C6D3;margin:6px 0 14px}
form[data-pais] input{width:100%;min-height:46px;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.95);font:inherit;color:#0b1f33}
/* ===== Decoración de secciones sin imagen ===== */
.deco-s{position:relative;isolation:isolate}
.deco-s>.c{position:relative;z-index:1}
.deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.deco svg{position:absolute;display:block}
.deco-ecg svg{left:0;width:100%;height:90px;bottom:18px}
.deco-ecg.arriba svg{bottom:auto;top:14px}
.deco-ecg .b{fill:none;stroke:var(--bronce,#a37a3f);stroke-width:1.4;opacity:.24;vector-effect:non-scaling-stroke}
.deco-ecg .v{fill:none;stroke:var(--bronce,#a37a3f);stroke-width:2.2;opacity:.75;stroke-dasharray:160 1840;stroke-dashoffset:2000;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px rgba(163,122,63,.7));animation:ecg 4.2s linear infinite}
@keyframes ecg{to{stroke-dashoffset:0}}
.deco-part i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--bronce,#a37a3f);opacity:.28;animation:flota 14s ease-in-out infinite}
.deco-part i:nth-child(3n){width:3px;height:3px;opacity:.4}
.deco-part i:nth-child(4n){background:#2d6aa3;opacity:.22}
@keyframes flota{0%,100%{transform:translate(0,0)}33%{transform:translate(18px,-26px)}66%{transform:translate(-14px,16px)}}
.deco-nodos svg{right:-40px;top:-20px;width:min(460px,70vw);height:auto;opacity:.5}
.deco-nodos.izq svg{right:auto;left:-60px;top:auto;bottom:-30px}
.deco-nodos line{stroke:var(--bronce,#a37a3f);stroke-width:1;opacity:.35}
.deco-nodos circle{fill:var(--bronce,#a37a3f);opacity:.55;transform-box:fill-box;transform-origin:center;animation:late 3.6s ease-in-out infinite}
.deco-nodos circle:nth-child(2n){animation-delay:1.2s}.deco-nodos circle:nth-child(3n){animation-delay:2.1s}
@keyframes late{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(1.6);opacity:.9}}
.s-n .deco-ecg .b,.s-n .deco-ecg .v{stroke:#d9b77c}
.s-n .deco-part i{background:#d9b77c}
.deco-s:not(.vivo) .deco *{animation-play-state:paused}
@media (max-width:700px){.deco-ecg svg{height:60px;bottom:8px}.deco-nodos svg{opacity:.35}}
@media (prefers-reduced-motion:reduce){.deco *{animation:none!important}.deco-ecg .v{stroke-dashoffset:0;stroke-dasharray:none;opacity:.3}}
/* Pie de página 5 columnas */
@media (min-width:1024px){.pie-g{grid-template-columns:1.5fr repeat(4,minmax(0,1fr))!important}}
@media (max-width:1023px){.pie-g .pie-m{grid-column:1/-1}}

/* Iconos en contenido */
main h3 .icm{color:var(--bronce,#a37a3f);width:1em;height:1em;vertical-align:-.12em}
.s-n main h3 .icm,.s-n h3 .icm{color:#d9b77c}
main ul li>a>.icm{width:15px;height:15px;color:var(--bronce,#a37a3f);vertical-align:-.15em}
.btn .icm{width:18px;height:18px;vertical-align:-.2em}
.mbr-web .icm{width:14px;height:14px}
/* Reglas de la plaza */
.preglas{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}
.pr{position:relative;background:#fff;border:1px solid var(--linea,#dfe5ec);border-radius:18px;padding:22px 20px 18px;box-shadow:0 10px 30px rgba(11,31,51,.06);display:flex;flex-direction:column;gap:8px}
.pr-i{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#0E2A47,#06172A);color:#d9b77c}
.pr-i svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pr-n{position:absolute;top:16px;right:18px;font:600 28px/1 var(--serif,Georgia,serif);color:rgba(163,122,63,.25)}
.pr h3{font-size:18px;line-height:1.25;margin:6px 0 0}
.pr p{font-size:15px;margin:0;color:var(--pizarra,#475569)}
.pr-ej{margin-top:auto;align-self:flex-start;font:600 12.5px/1.3 var(--sans);color:#0E2A47;background:#f6efe3;border:1px solid #ead9bd;border-radius:999px;padding:6px 11px}
.pr h3 .icm{display:none}
@media (max-width:1100px){.preglas{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.preglas{grid-template-columns:1fr}.pr{padding:18px 16px 16px}}
/* Estados compactos */
.edos3{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.edo3{display:flex;flex-direction:column;gap:7px;padding:13px 14px;border-radius:14px;background:#fff;border:1px solid var(--linea,#dfe5ec);text-decoration:none;color:var(--noche,#0b1f33);transition:border-color .2s,transform .2s,box-shadow .2s}
.edo3:hover{border-color:var(--bronce,#a37a3f);transform:translateY(-2px);box-shadow:0 10px 24px rgba(11,31,51,.08)}
.edo3-n{font:600 15.5px/1.2 var(--serif,Georgia,serif);display:flex;align-items:center;gap:6px}
.edo3-n .icm{display:none}
.edo3-b{height:5px;border-radius:5px;background:#e9eef3;overflow:hidden}
.edo3-b i{display:block;height:100%;background:linear-gradient(90deg,#a37a3f,#d9b77c);min-width:0}
.edo3-d{font-size:13px;color:var(--pizarra,#475569)}
.edo3-d b{color:#15803d}
.edo3-o{color:#8a6430;font-weight:600}
.edo3.con{border-color:#ead9bd;background:linear-gradient(180deg,#fff,#fbf6ee)}
@media (max-width:620px){.edos3{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.edo3{padding:11px 12px}.edo3-n{font-size:14.5px}}
.plaza-g .preglas{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:620px){.plaza-g .preglas{grid-template-columns:1fr}}
/* ===== Landing de campañas y embudo ===== */
body.lp .nav,body.lp .ham,body.lp .menu,body.lp .enc-cta{display:none!important}
body.lp .enc-wa{display:inline-flex!important;margin-left:auto}
@media (min-width:1024px){body.lp .enc-wa{display:inline-flex!important}}
.lp-ic{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.lp-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.lp-pills span{font:500 13px/1.2 var(--sans,Inter,sans-serif);color:#E6ECF2;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);border-radius:999px;padding:7px 12px}
.lp-card .hp-sub{margin-bottom:12px}
.lead-f{display:grid;gap:10px}
.lf-c{display:grid;gap:5px}
.lf-c label{font:500 13px var(--sans,Inter,sans-serif);color:inherit}
.lf-c small{opacity:.7;font-weight:400}
.lead-f input:not([type=checkbox]),.lead-f select{width:100%;min-height:46px;padding:10px 12px;border-radius:10px;border:1px solid rgba(14,42,71,.22);background:#fff;font:400 15px var(--sans,Inter,sans-serif);color:#0b1f33}
.vidrio .lead-f input:not([type=checkbox]),.vidrio .lead-f select{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.95)}
.lf-av{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;line-height:1.4;opacity:.9}
.lf-av input{margin-top:2px;width:16px;height:16px;flex:none}
.lf-av a{color:inherit;text-decoration:underline}
.lf-b{width:100%;justify-content:center}
.lf-nota{font-size:13px;margin:0;min-height:0}
.lf-nota.mal{color:#fca5a5}.lp-form-caja .lf-nota.mal,.pop .lf-nota.mal{color:#9B2C2C}
.lf-nota.ok{color:#4ade80}
.hp-oc{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lp-datos{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-datos div{background:linear-gradient(135deg,#0E2A47,#06172A);color:#fff;border-radius:18px;padding:22px}
.lp-datos b{display:block;font:600 34px/1 var(--serif,Lora,Georgia,serif);color:#D9B77C;margin-bottom:10px}
.lp-datos p{color:#d3dce6;margin:0 0 10px;font-size:15px}
.lp-datos a{font-size:12px;color:#9fb0c2}
.lp-fuente{font-size:13px;color:var(--piedra,#5C6672);margin-top:14px}
.lp-dolor,.lp-piezas{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-piezas{grid-template-columns:repeat(4,minmax(0,1fr))}
.lp-piezas.lp-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-dolor>div,.lp-piezas>div{background:#fff;border:1px solid var(--niebla,#E4E9EF);border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(11,31,51,.05)}
.lp-dolor .lp-ic{color:#9B2C2C}
.lp-piezas .lp-ic{color:#A67C3D;width:30px;height:30px}
.lp-dolor h3,.lp-piezas h3{font-size:18px;margin:12px 0 6px}
.lp-dolor p,.lp-piezas p{margin:0;font-size:15px;color:var(--piedra,#5C6672)}
.lp-tabla{overflow-x:auto;border-radius:16px;border:1px solid var(--niebla,#E4E9EF);background:#fff}
.lp-tabla table{width:100%;border-collapse:collapse;min-width:640px;font-size:14.5px}
.lp-tabla th,.lp-tabla td{padding:13px 14px;border-bottom:1px solid var(--niebla,#E4E9EF);text-align:left;vertical-align:top}
.lp-tabla thead th{background:#0E2A47;color:#fff;font-weight:600}
.lp-tabla tbody th{color:#0E2A47;font-weight:600;width:22%}
.lp-tabla .rn{background:#f6efe3;font-weight:500;color:#0E2A47}
.lp-tabla thead .rn{background:#A67C3D;color:#fff}
.lp-equipo{display:grid;gap:30px;grid-template-columns:1.1fr .9fr;align-items:center}
.lp-equipo figure{margin:0;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px rgba(11,31,51,.15)}
.lp-equipo img{display:block;width:100%;height:auto}
.lp-chk{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:10px}
.lp-chk li{position:relative;padding-left:30px}
.lp-chk li:before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:#15803d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/13px no-repeat}
.lp-ruta{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.lp-ruta>div{position:relative;background:#fff;border:1px solid var(--niebla,#E4E9EF);border-top:4px solid #A67C3D;border-radius:16px;padding:20px}
.lp-ruta span{font:600 30px/1 var(--serif,Lora,Georgia,serif);color:rgba(166,124,61,.35)}
.lp-ruta b{display:block;font:600 18px/1.2 var(--serif,Lora,Georgia,serif);color:#0E2A47;margin:8px 0 6px}
.lp-ruta p{margin:0;font-size:14.5px;color:var(--piedra,#5C6672)}
.lp-tres{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.lp-tres>div{border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.lp-tres .t1{background:linear-gradient(135deg,#0E2A47,#06172A);color:#fff}.lp-tres .t1 h3{color:#fff}.lp-tres .t1 p{color:#cfd8e2}.lp-tres .t1 .lnk{color:#D9B77C;font-size:14px}
.lp-tres .t2{background:#f6efe3;border:1px solid #ead9bd}
.lp-tres .t3{background:#fff;border:1px solid var(--niebla,#E4E9EF)}
.lp-tres .lp-ic{width:32px;height:32px;color:#A67C3D}
.lp-tres h3{font-size:20px;margin:0}
.lp-tres p{margin:0 0 6px;font-size:15px}
.lp-tres .btn{margin-top:auto}
.lp-indice{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.lp-indice>div{background:#fff;border:1px solid var(--niebla,#E4E9EF);border-radius:16px;padding:20px}
.lp-indice b{font:600 26px/1 var(--serif,Lora,Georgia,serif);color:#A67C3D}
.lp-indice h3{font-size:17px;margin:8px 0 6px}.lp-indice p{margin:0;font-size:14.5px;color:var(--piedra,#5C6672)}
.lp-gracias .c{max-width:900px}
.lp-pasos{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 18px;counter-reset:p}
.lp-pasos li{counter-increment:p;font:500 13px var(--sans,Inter,sans-serif);color:#9fb0c2;display:flex;align-items:center;gap:6px}
.lp-pasos li:before{content:counter(p);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);font-size:12px}
.lp-pasos li:not(:last-child):after{content:"";width:28px;height:1px;background:rgba(255,255,255,.3);margin-left:6px}
.lp-pasos li.on{color:#fff}.lp-pasos li.on:before{background:#A67C3D;border-color:#A67C3D;color:#fff}
.lp-dos{display:grid;gap:34px;grid-template-columns:1fr 1fr;align-items:center}
.lp-video{aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#0E2A47,#06172A) center/cover;position:relative;box-shadow:0 20px 50px rgba(11,31,51,.2)}
.lp-video:before{content:"";position:absolute;inset:0;background:url(../img/fondos/consulta-digital-laptop.webp) center/cover;opacity:.35}
.lp-video-in{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;color:#fff;gap:6px}
.lp-video-in .lp-ic{width:58px;height:58px;color:#D9B77C}
.lp-video-in b{font:600 19px/1.25 var(--serif,Lora,Georgia,serif)}
.lp-video-in span{font-size:14px;color:#cfd8e2}
.lp-video-in small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#D9B77C;margin-top:6px}
.lp-num{padding-left:20px;display:grid;gap:8px}
.lp-form-caja{background:#fff;border:1px solid var(--niebla,#E4E9EF);border-radius:20px;padding:24px;box-shadow:0 14px 40px rgba(11,31,51,.08)}
.lp-estado{margin:6px 0 14px}
.lp-estado .res-libre,.lp-estado .res-ocu{display:inline-flex;align-items:center;gap:8px;font:600 15px var(--sans,Inter,sans-serif);border-radius:999px;padding:9px 16px;margin-bottom:10px}
.lp-estado .res-libre{background:rgba(74,222,128,.15);color:#4ade80;border:1px solid rgba(74,222,128,.4)}
.lp-estado .res-ocu{background:rgba(217,183,124,.15);color:#D9B77C;border:1px solid rgba(217,183,124,.4)}
.lp-sel{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.lp-sel label{display:grid;gap:5px;font-size:13px;color:#cfd8e2;flex:1 1 200px}
.lp-sel select{min-height:46px;border-radius:10px;border:0;padding:10px 12px;font:400 15px var(--sans,Inter,sans-serif)}
.ebook-box{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;background:linear-gradient(135deg,#0E2A47,#06172A);color:#fff;border-radius:20px;padding:24px;margin:30px 0}
.ebook-box h2,.ebook-box h3{color:#fff;margin:0 0 6px}
.ebook-box p{color:#cfd8e2;margin:0 0 12px;font-size:15px}
.ebook-box .eb-cov{aspect-ratio:3/4;border-radius:8px;background:linear-gradient(160deg,#0E2A47 0%,#06172A 60%),#06172A;border:1px solid rgba(217,183,124,.5);display:flex;flex-direction:column;justify-content:flex-end;padding:10px;font:600 12px/1.15 var(--serif,Lora,Georgia,serif);color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.ebook-box .eb-cov i{font-style:italic;color:#D9B77C;font-weight:400}
.ebook-box .lead-f{grid-template-columns:1fr auto;align-items:end}
.ebook-box .lead-f .lf-c,.ebook-box .lead-f .lf-av,.ebook-box .lead-f .lf-nota{grid-column:1/-1}
.ebook-box .lead-f .lf-c{grid-column:1}.ebook-box .lead-f .lf-b{grid-column:2;width:auto}
.ebook-box .lead-f input:not([type=checkbox]){background:#fff}
@media (max-width:1023px){.lp-piezas,.lp-ruta,.lp-indice{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-tres,.lp-datos,.lp-dolor,.lp-piezas.lp-6{grid-template-columns:1fr}.lp-equipo,.lp-dos{grid-template-columns:1fr}}
@media (max-width:620px){.lp-piezas,.lp-ruta,.lp-indice{grid-template-columns:1fr}.ebook-box{grid-template-columns:1fr}.ebook-box .eb-cov{display:none}.ebook-box .lead-f{grid-template-columns:1fr}.ebook-box .lead-f .lf-b{grid-column:1;width:100%}}
/* ===== Pop-ups ===== */
.pop-velo{position:fixed;inset:0;background:rgba(6,23,42,.55);backdrop-filter:blur(3px);z-index:90;opacity:0;transition:opacity .25s}
.pop-velo.v{opacity:1}
.pop{position:fixed;z-index:91;left:50%;top:50%;transform:translate(-50%,-46%);width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;color:#0b1f33;border-radius:22px;box-shadow:0 30px 80px rgba(6,23,42,.4);padding:28px 26px 22px;opacity:0;transition:opacity .25s,transform .25s}
.pop.v{opacity:1;transform:translate(-50%,-50%)}
.pop .pop-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:0;background:#f1f4f7;cursor:pointer;font-size:20px;line-height:1;color:#0E2A47}
.pop .eb{margin-bottom:4px}
.pop h2{font-size:23px;line-height:1.2;margin:4px 0 8px;padding-right:30px}
.pop p.pop-sub{color:#5C6672;font-size:15px;margin:0 0 14px}
.pop .pop-cab{display:flex;gap:12px;align-items:center;margin-bottom:6px}
.pop .pop-cab .lp-ic{width:34px;height:34px;color:#A67C3D}
.pop .pop-alt{font-size:13.5px;text-align:center;margin:12px 0 0;color:#5C6672}
.pop .pop-alt a{color:#15803d;font-weight:600}
@media (max-width:620px){.pop{left:0;right:0;top:auto;bottom:0;transform:translateY(100%);width:100%;max-width:none;border-radius:22px 22px 0 0;max-height:88vh;padding-bottom:calc(22px + env(safe-area-inset-bottom))}.pop.v{transform:none}}
.lf-av{display:block!important;position:relative;padding-left:24px}
.lf-av input{position:absolute;left:0;top:1px;margin:0}
.pop .lf-b,.lp-form-caja .lf-b{background:#0E2A47!important;color:#fff!important;border-color:#0E2A47!important}
.pop .pop-cab{padding-right:40px}
body.pop-abierto .wa-burbuja,body.pop-abierto .wa-f{display:none!important}
.s-n .lp-dos .eb{color:#D9B77C}

/* ganchos */
.sit4{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.sit{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--niebla,#E4E9EF);border-radius:18px;padding:22px;text-decoration:none;color:inherit;box-shadow:0 10px 28px rgba(11,31,51,.05);transition:transform .2s,border-color .2s}
.sit:hover{transform:translateY(-3px);border-color:#D9B77C}
.sit .lp-ic,.fr .lp-ic{width:30px;height:30px;color:#A67C3D;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sit h3,.fr h3{font-size:18px;margin:4px 0 0;line-height:1.25}
.sit p,.fr p{margin:0;font-size:15px;color:var(--piedra,#5C6672)}
.sit .lnk{margin-top:auto;padding-top:8px;font-size:14px;font-weight:600;color:#8A6428}
.hoy{display:grid;gap:36px;grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:center}
.hoy-n{background:linear-gradient(135deg,#0E2A47,#06172A);color:#fff;border-radius:22px;padding:28px}
.hoy-n .eb{color:#D9B77C}
.hoy-d b{display:block;font-family:Lora,Georgia,serif;font-size:54px;line-height:1.05;color:#D9B77C;margin-top:14px}
.hoy-d span{font-size:15px;color:#cfd8e2}
.hoy-2 b{font-size:30px;color:#fff;opacity:.75}
.hoy-n a{display:block;margin-top:16px;font-size:12.5px;color:#9fb0c3}
.hoy h2{margin-top:0}
.hoy-l{list-style:none;padding:0;margin:18px 0 22px;display:grid;gap:12px}
.hoy-l li{padding-left:18px;border-left:2px solid #D9B77C;font-size:16px;color:var(--piedra,#5C6672)}
.hoy-l b{color:var(--tinta,#0B1F33)}
.fr6{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.fr{background:#fff;border:1px solid var(--niebla,#E4E9EF);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.fr h3{font-family:Lora,Georgia,serif;font-style:italic;font-weight:600}
.gan-n{margin:18px 0 0;font-size:13.5px;color:var(--piedra,#5C6672)}
@media (max-width:1023px){.sit4,.fr6{grid-template-columns:repeat(2,minmax(0,1fr))}.hoy{grid-template-columns:1fr;gap:22px}}
@media (max-width:640px){.sit4,.fr6{grid-template-columns:1fr}.hoy-d b{font-size:44px}}

/* urgencia */
.urg{background:linear-gradient(90deg,#0B1F33,#12314F);color:#fff;padding:18px 0;border-top:1px solid rgba(217,183,124,.35)}
.urg .c{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.urg-t{display:flex;align-items:center;gap:12px;flex:1 1 420px}
.urg-t svg{flex:none;color:#D9B77C;width:22px!important;height:22px!important}
.urg p{margin:0;font-size:15.5px;color:#cfd8e2;line-height:1.45}.urg p b{color:#fff}
.urg .btn{flex:none}
.hero-urg{display:flex;align-items:flex-start;gap:8px;margin:14px 0 0;font-size:14px;color:#D9B77C;max-width:560px;line-height:1.45}
.hero-urg svg{flex:none;margin-top:2px}
@media (max-width:640px){.urg{padding:16px 0 20px}.urg .btn{width:100%;justify-content:center}}
