/* ═══════════════════════════════════════════════════════════════════════
 * Guías por ciudad (/guia_ciudad/malaga → /guia/psicologo-malaga)
 * Prefijo .vg- · móvil primero · sin dependencias.
 * Paleta de marca: navy #1A3151, terracota #B75A44, crema #F8F2E8 y los
 * suaves de la home v2 (melocotón, salvia, arena, cielo, lila). Nada de teal.
 * Los enlaces van con dos clases (.vg .vg-x) para ganar a «body.vs a».
 * ═════════════════════════════════════════════════════════════════════ */

.vg{
  --navy:#1A3151; --navy-2:#24406A; --navy-3:#0F2138;
  --cta:#B75A44; --cta-h:#9B4532; --acc:#C96A54;
  --cream:#F8F2E8; --cream-2:#F3EEE6;
  --melo:#F2CDB9; --salvia:#B5C9AE; --arena:#EBDDBE; --cielo:#C9D9EA; --lila:#DCD3EA;
  --line:#E3DDD4; --txt:#1A3151; --txt-2:#455976; --txt-3:#5B6F8B;
  --r-s:12px; --r:18px; --r-l:28px;
  --sh-1:0 1px 2px rgba(26,49,81,.05),0 6px 18px rgba(26,49,81,.06);
  --sh-2:0 2px 4px rgba(26,49,81,.04),0 24px 48px -20px rgba(26,49,81,.28);
  --ease:cubic-bezier(.2,.7,.2,1);
  --disp:"Bricolage Grotesque","Bricolage Reserva",Arial,sans-serif;
  --serif:"Instrument Serif","Instrument Reserva","Times New Roman",serif;
  --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --top:calc(var(--vs-hdr,64px) + 12px);
  background:var(--cream);
  color:var(--txt)!important;
  font-family:var(--sans);
  font-size:16px;
  line-height:1.6;
  overflow-x:clip;
}
.vg *,.vg *::before,.vg *::after{box-sizing:border-box}
.vg :where(h1,h2,h3,h4){margin:0;color:var(--navy)!important;letter-spacing:-.02em}
.vg :where(p,ul,ol){margin:0}
.vg :where(ul,ol){padding:0;list-style:none}
.vg em{font-family:var(--serif)!important;font-style:italic;font-weight:400;letter-spacing:-.01em;padding-right:.04em}
.vg a{color:var(--navy)!important;text-decoration-thickness:1px;text-underline-offset:3px}
.vg .vg-p a,.vg .vg-step p a,.vg .vg-check__foot a,.vg .vg-faq__a a,.vg .vg-note a,.vg .vg-check__txt a{color:var(--navy)!important;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--cta) 55%,transparent)}
.vg .vg-p a:hover,.vg .vg-step p a:hover,.vg .vg-faq__a a:hover,.vg .vg-check__foot a:hover{color:var(--cta-h)!important;text-decoration-color:currentColor}
.vg :focus-visible{outline:3px solid var(--cta);outline-offset:3px;border-radius:6px}
.vg-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.vg-wrap{width:100%;max-width:1200px;margin-inline:auto;padding-inline:16px}
@media (min-width:640px){.vg-wrap{padding-inline:24px}}

/* ── Piezas comunes ─────────────────────────────────────────────────── */
.vg .vg-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cta-h)!important;margin-bottom:12px}
.vg .vg-kicker--light{color:var(--melo)!important}
.vg .vg-kicker--cta{color:var(--cta)!important}
.vg-dot{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 18%,transparent)}
.vg-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:999px;border:1.5px solid transparent;font:700 16px/1 var(--sans);text-decoration:none!important;cursor:pointer;transition:background-color .25s var(--ease),color .25s var(--ease),transform .25s var(--ease),box-shadow .3s var(--ease),border-color .25s var(--ease)}
.vg .vg-btn--pri{background:var(--cta);color:#fff!important;box-shadow:0 10px 24px -10px rgba(183,90,68,.65)}
.vg .vg-btn--pri:hover{background:var(--cta-h);color:#fff!important;transform:translateY(-2px);box-shadow:0 16px 30px -12px rgba(155,69,50,.7)}
.vg .vg-btn--ghost{background:transparent;color:var(--navy)!important;border-color:color-mix(in srgb,var(--navy) 22%,transparent)}
.vg .vg-btn--ghost:hover{border-color:var(--navy);background:#fff;color:var(--navy)!important}
.vg .vg-btn--light{background:#fff;color:var(--navy)!important}
.vg .vg-btn--light:hover{background:var(--cream);color:var(--navy)!important}
.vg-btn .bi{transition:transform .25s var(--ease)}
.vg-btn:hover .bi-arrow-right{transform:translateX(4px)}
.vg-btn--wide{width:100%}
.vg-btn__meta{font-size:12px;font-weight:700;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.2)}
.vg .vg-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--navy)!important;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;transition:border-color .2s ease,background-color .2s ease,transform .2s var(--ease)}
.vg .vg-chip:hover{border-color:var(--navy);transform:translateY(-1px);color:var(--navy)!important}
.vg .vg-chip--tel{background:var(--navy);border-color:var(--navy);color:#fff!important;font-variant-numeric:tabular-nums}
.vg .vg-chip--tel:hover{background:var(--navy-2);color:#fff!important}
.vg .vg-chip--flat{background:var(--cream-2);border-color:transparent;color:var(--txt-2)!important}
.vg .vg-chip .bi-box-arrow-up-right{font-size:11px;opacity:.7}
.vg-tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--salvia) 55%,#fff);color:#2F4A2A!important;font-size:11.5px;font-weight:700;letter-spacing:.02em;text-transform:none}

/* ═══ Hero ═══════════════════════════════════════════════════════════ */
.vg-hero{position:relative;isolation:isolate;padding:28px 0 36px;overflow:hidden}
.vg-hero::before{content:"";position:absolute;z-index:-1;inset:-20% -10% auto -10%;height:120%;background:
  radial-gradient(38% 42% at 88% 18%,color-mix(in srgb,var(--melo) 85%,transparent),transparent 70%),
  radial-gradient(34% 40% at 6% 4%,color-mix(in srgb,var(--cielo) 80%,transparent),transparent 70%),
  radial-gradient(30% 36% at 60% 90%,color-mix(in srgb,var(--lila) 70%,transparent),transparent 70%);
  filter:blur(8px);pointer-events:none}
.vg-hero__grid{display:grid;gap:28px}
.vg-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13.5px;color:var(--txt-3)!important;margin-bottom:22px}
.vg .vg-crumbs a{color:var(--txt-2)!important;text-decoration:none}
.vg .vg-crumbs a:hover{text-decoration:underline}
.vg-h1{font-family:var(--disp);font-weight:750;font-size:clamp(2.15rem,1.35rem + 3.6vw,4.1rem);line-height:1.04!important;letter-spacing:-.028em;margin-bottom:18px}
.vg-h1 em{color:var(--cta)!important}
.vg-lead{font-size:clamp(1.05rem,.98rem + .3vw,1.2rem);color:var(--txt-2)!important;max-width:60ch;margin-bottom:24px}
.vg-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px}
.vg-hero__cta .vg-btn{flex:1 1 auto}
@media (min-width:520px){.vg-hero__cta .vg-btn{flex:0 0 auto}}
.vg-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;color:var(--txt-3)!important}
.vg-meta .bi{color:var(--cta)!important}
.vg-quick{position:relative;align-self:start;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);border:1px solid rgba(255,255,255,.9);border-radius:var(--r-l);box-shadow:var(--sh-2);padding:22px}
.vg-quick__k{font-family:var(--disp);font-weight:700;font-size:18px;margin-bottom:14px;color:var(--navy)!important}
.vg-quick__l{display:grid;gap:14px;counter-reset:q}
.vg-quick__l li{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}
.vg-quick__l strong{display:block;font-size:15.5px;color:var(--navy)!important;margin-bottom:2px}
.vg-quick__l span:not(.vg-quick__n){display:block;font-size:14.5px;color:var(--txt-2)!important;line-height:1.5}
.vg-quick__n{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font:700 15px/1 var(--disp);color:var(--navy)!important;background:var(--melo)}
.vg-quick__l li:nth-child(2) .vg-quick__n{background:var(--arena)}
.vg-quick__l li:nth-child(3) .vg-quick__n{background:var(--cielo)}
.vg-quick__sos{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);font-size:14px;color:var(--txt-2)!important}
.vg-quick__sos .bi{color:var(--cta)!important}
.vg .vg-quick__sos a{font-weight:800;color:var(--cta-h)!important}
.vg-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:30px}
.vg-stats li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px 16px 14px}
.vg-stats strong{display:block;font:750 clamp(2rem,1.6rem + 1.6vw,2.8rem)/1 var(--disp);color:var(--navy)!important;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-bottom:6px}
.vg-stats li:nth-child(3) strong{color:var(--cta)!important}
.vg-stats span{display:block;font-size:13.5px;line-height:1.4;color:var(--txt-2)!important}
@media (min-width:960px){
  .vg-hero{padding:40px 0 56px}
  .vg-hero__grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:56px;align-items:center}
  .vg-quick{padding:28px}
  .vg-stats{grid-template-columns:repeat(4,1fr);gap:14px}
}

/* ═══ Test ═══════════════════════════════════════════════════════════ */
.vg-test{position:relative;isolation:isolate;background:var(--navy);color:#fff!important;padding:52px 0;overflow:hidden;scroll-margin-top:var(--top)}
.vg-test::before{content:"";position:absolute;z-index:-1;inset:0;background:
  radial-gradient(40% 60% at 100% 0%,rgba(183,90,68,.35),transparent 70%),
  radial-gradient(40% 60% at 0% 100%,rgba(201,217,234,.16),transparent 70%)}
.vg-test__grid{display:grid;gap:28px}
.vg .vg-test h2{color:#fff!important;font-family:var(--disp);font-weight:750;font-size:clamp(2rem,1.4rem + 2.4vw,3.2rem);line-height:1.04;letter-spacing:-.03em;margin-bottom:14px}
.vg-test h2 em{color:var(--melo)!important}
.vg-test__copy>p{color:rgba(255,255,255,.82)!important;font-size:17px;max-width:46ch}
.vg-test__ticks{display:grid;gap:10px;margin-top:20px}
.vg-test__ticks li{display:flex;gap:10px;font-size:15px;color:rgba(255,255,255,.86)!important}
.vg-test__ticks .bi{color:var(--melo)!important;font-size:18px;line-height:1.3}
@media (min-width:960px){
  .vg-test{padding:80px 0}
  .vg-test__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}
}

.vg-quiz{position:relative;background:#fff;color:var(--navy)!important;border-radius:var(--r-l);box-shadow:0 30px 80px -30px rgba(0,0,0,.55);padding:20px;min-height:460px;display:flex;flex-direction:column}
@media (min-width:640px){.vg-quiz{padding:30px;min-height:500px}}
.vg-quiz__top{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.vg-quiz__top[hidden],.vg-quiz__bar[hidden]{display:none}
.vg-quiz__back,.vg-quiz__sos,.vg-quiz__link{appearance:none;border:0;background:none;padding:6px 8px;margin:-6px -8px;border-radius:8px;font:600 14px/1.2 var(--sans);color:var(--txt-2)!important;cursor:pointer}
.vg-quiz__back:hover{color:var(--navy)!important;background:var(--cream-2)}
.vg-quiz__back:disabled{visibility:hidden}
.vg-quiz__count{flex:1;text-align:center;font-size:13px;font-weight:700;color:var(--txt-3)!important;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.vg-quiz__sos{color:var(--cta-h)!important;font-weight:700}
.vg-quiz__sos:hover,.vg-quiz__link:hover{background:color-mix(in srgb,var(--melo) 45%,#fff)}
.vg-quiz__bar{height:6px;border-radius:99px;background:var(--cream-2);overflow:hidden;margin-bottom:22px}
.vg-quiz__bar span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--acc),var(--cta));transition:width .5s var(--ease)}
.vg-quiz__body{flex:1;display:flex;flex-direction:column}
.vg-quiz__body>*{animation:vg-in .45s var(--ease) both}
.vg-quiz__body.is-back>*{animation-name:vg-in-back}
@keyframes vg-in{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes vg-in-back{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
.vg-quiz__intro{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;flex:1;gap:12px}
.vg-quiz__art{position:relative;width:132px;height:96px;margin-bottom:8px}
.vg-quiz__art span{position:absolute;border-radius:50%;mix-blend-mode:multiply;animation:vg-float 7s ease-in-out infinite}
.vg-quiz__art span:nth-child(1){width:72px;height:72px;left:0;top:10px;background:var(--melo)}
.vg-quiz__art span:nth-child(2){width:64px;height:64px;left:44px;top:0;background:var(--cielo);animation-delay:-2s}
.vg-quiz__art span:nth-child(3){width:56px;height:56px;left:70px;top:36px;background:var(--salvia);animation-delay:-4s}
@keyframes vg-float{0%,100%{transform:translate(0,0)}50%{transform:translate(4px,-6px)}}
.vg .vg-quiz__q{font-family:var(--disp);font-weight:700;font-size:clamp(1.35rem,1.15rem + .9vw,1.75rem);line-height:1.15;letter-spacing:-.02em;color:var(--navy)!important}
.vg-quiz__q:focus{outline:none}
.vg-quiz__hint{color:var(--txt-2)!important;font-size:15px;margin-top:6px}
.vg-quiz__intro .vg-quiz__hint{margin:0 0 10px;max-width:36ch}
.vg-quiz__saved{font-size:14px;color:var(--txt-2)!important}
.vg-quiz__saved button{appearance:none;border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--cta-h)!important;text-decoration:underline;cursor:pointer}
.vg-quiz__link{margin:0;color:var(--cta-h)!important;text-decoration:underline;text-underline-offset:3px}
.vg-opts{display:grid;gap:10px;margin-top:18px}
.vg-opts--2{grid-template-columns:1fr}
@media (min-width:520px){.vg-opts--2{grid-template-columns:1fr 1fr}}
.vg-opt{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px 14px;border-radius:14px;border:1.5px solid var(--line);background:#fff;color:var(--navy)!important;text-align:left;font:600 15.5px/1.3 var(--sans);cursor:pointer;transition:border-color .2s ease,background-color .2s ease,transform .2s var(--ease),box-shadow .25s var(--ease)}
.vg-opt:hover{border-color:var(--navy);transform:translateY(-1px);box-shadow:var(--sh-1)}
.vg-opt[aria-pressed="true"]{border-color:var(--cta);background:color-mix(in srgb,var(--melo) 30%,#fff);box-shadow:0 0 0 3px color-mix(in srgb,var(--cta) 18%,transparent)}
.vg-opt__k{flex:0 0 26px;display:grid;place-items:center;width:26px;height:26px;border-radius:7px;border:1px solid var(--line);font:700 12px/1 var(--sans);color:var(--txt-3)!important;background:var(--cream)}
.vg-opt[aria-pressed="true"] .vg-opt__k{background:var(--cta);border-color:var(--cta);color:#fff!important}
.vg-opt__t{flex:1}
.vg-opt__t small{display:block;font-weight:500;font-size:13.5px;color:var(--txt-3)!important;margin-top:2px}
.vg-opt--risk{border-style:dashed}
.vg-quiz__kbd{margin-top:auto;padding-top:16px;font-size:12.5px;color:var(--txt-3)!important;display:none}
@media (hover:hover) and (min-width:960px){.vg-quiz__kbd{display:block}}
.vg-quiz__kbd kbd{display:inline-block;padding:1px 6px;border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;background:var(--cream);font:600 11.5px/1.4 var(--sans);color:var(--navy)!important}

/* Resultado */
.vg-res-h{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.vg-res-h__k{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cta-h)!important}
.vg-route{display:grid;gap:10px;counter-reset:r}
.vg-route__s{position:relative;padding:14px 14px 14px 52px;border-radius:16px;background:var(--cream);border:1px solid var(--line)}
.vg-route__s::before{counter-increment:r;content:counter(r);position:absolute;left:14px;top:14px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff!important;font:700 13px/1 var(--disp)}
.vg-route__s--pri{background:color-mix(in srgb,var(--melo) 32%,#fff);border-color:color-mix(in srgb,var(--cta) 30%,transparent)}
.vg-route__s--pri::before{background:var(--cta)}
.vg .vg-route__s h4{font-family:var(--disp);font-size:16.5px;font-weight:700;margin-bottom:4px}
.vg-route__s p{font-size:14.5px;color:var(--txt-2)!important;line-height:1.5}
.vg-route__s .vg-card__a{margin-top:10px}
.vg-route__s .vg-btn{min-height:46px;font-size:15px;margin-top:10px}
.vg-read-mini{margin-top:14px;font-size:14px;color:var(--txt-2)!important}
.vg-read-mini ul{display:grid;gap:6px;margin-top:6px}
.vg .vg-read-mini a{color:var(--navy)!important;font-weight:600;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--cta) 50%,transparent);text-underline-offset:3px}
.vg-res-note{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--cream-2);font-size:13.5px;color:var(--txt-2)!important;line-height:1.5}
.vg-res-act{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.vg-res-act button{appearance:none;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font:600 13.5px/1 var(--sans);color:var(--navy)!important;cursor:pointer}
.vg-res-act button:hover{border-color:var(--navy)}

/* Pantalla de crisis dentro del test */
.vg-crisis{display:flex;flex-direction:column;gap:12px}
.vg-crisis__ico{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:color-mix(in srgb,var(--melo) 60%,#fff);color:var(--cta-h)!important;font-size:24px}
.vg-crisis p{color:var(--txt-2)!important;font-size:15.5px}
.vg-crisis__l{display:grid;gap:10px;margin-top:4px}
.vg .vg-crisis__l a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:var(--navy);color:#fff!important;text-decoration:none;transition:transform .2s var(--ease),background-color .2s ease}
.vg .vg-crisis__l a:hover{background:var(--navy-2);transform:translateY(-1px);color:#fff!important}
.vg-crisis__l strong{font:750 26px/1 var(--disp);min-width:64px;font-variant-numeric:tabular-nums}
.vg-crisis__l span{font-size:14.5px;line-height:1.35;color:rgba(255,255,255,.88)!important}
.vg .vg-crisis__l li:first-child a{background:var(--cta)}
.vg .vg-crisis__l li:first-child a:hover{background:var(--cta-h)}

/* ═══ Layout con índice ═════════════════════════════════════════════ */
.vg-layout{display:block;padding-top:8px;padding-bottom:40px}
.vg-main{min-width:0}
.vg-toc{position:sticky;top:var(--vs-hdr,0px);z-index:20;margin:0 -16px;padding:10px 16px;background:color-mix(in srgb,var(--cream) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:top .3s var(--ease)}
.vg-toc__t,.vg-toc__cta{display:none}
.vg-toc__l{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent);scroll-snap-type:x proximity}
.vg-toc__l::-webkit-scrollbar{display:none}
.vg-toc__l li{flex:0 0 auto;scroll-snap-align:start}
.vg .vg-toc__l a{display:block;padding:7px 12px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--txt-2)!important;text-decoration:none;white-space:nowrap;transition:background-color .2s ease,color .2s ease}
.vg .vg-toc__l a:hover{color:var(--navy)!important;background:#fff}
.vg .vg-toc__l a[aria-current="true"]{background:var(--navy);color:#fff!important}
@media (min-width:640px){.vg-toc{margin:0 -24px;padding:10px 24px}}
@media (min-width:1080px){
  .vg-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:56px;padding-top:56px;padding-bottom:64px}
  .vg-toc{top:var(--top);align-self:start;margin:0;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;max-height:calc(100vh - var(--top) - 24px);overflow:auto}
  .vg-toc__t{display:block;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--txt-3)!important;margin-bottom:12px}
  .vg-toc__l{flex-direction:column;gap:2px;overflow:visible;-webkit-mask-image:none;mask-image:none;border-left:2px solid var(--line)}
  .vg .vg-toc__l a{position:relative;border-radius:0 10px 10px 0;margin-left:-2px;padding:8px 12px 8px 16px;border-left:2px solid transparent;font-size:14.5px;white-space:normal}
  .vg .vg-toc__l a[aria-current="true"]{background:#fff;color:var(--navy)!important;border-left-color:var(--cta);box-shadow:var(--sh-1)}
  .vg .vg-toc__cta{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 16px;border-radius:999px;background:var(--navy);color:#fff!important;font-weight:700;font-size:14.5px;text-decoration:none}
  .vg .vg-toc__cta:hover{background:var(--navy-2);color:#fff!important}
}

/* Secciones */
.vg-sec{padding:44px 0 8px;scroll-margin-top:calc(var(--vs-hdr,0px) + 64px)}
@media (min-width:1080px){.vg-sec{padding:0 0 72px;scroll-margin-top:var(--top)}}
.vg .vg-sec h2{font-family:var(--disp);font-weight:750;font-size:clamp(1.75rem,1.3rem + 1.8vw,2.6rem);line-height:1.06;letter-spacing:-.03em;margin-bottom:14px;max-width:22ch}
.vg-sec h2 em{color:var(--cta)!important}
.vg .vg-h2s{font-size:clamp(1.4rem,1.2rem + .8vw,1.8rem)!important}
.vg .vg-h3{font-family:var(--disp);font-weight:700;font-size:clamp(1.2rem,1.1rem + .4vw,1.4rem);margin:30px 0 8px}
.vg-p{color:var(--txt-2)!important;font-size:16.5px;max-width:68ch;margin-bottom:14px}
.vg-p--s{font-size:14.5px;color:var(--txt-3)!important}

/* Pasos (sanidad pública) */
.vg-steps{position:relative;display:grid;gap:12px;margin:24px 0}
.vg-step{position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px;border-radius:var(--r);background:#fff;border:1px solid var(--line)}
.vg-step__n{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--navy);color:#fff!important;font:750 18px/1 var(--disp)}
.vg-step:nth-child(2) .vg-step__n{background:var(--navy-2)}
.vg-step:nth-child(3) .vg-step__n{background:var(--cta)}
.vg-step:nth-child(4) .vg-step__n{background:var(--melo);color:var(--navy)!important}
.vg .vg-step h3{font-family:var(--disp);font-size:17.5px;font-weight:700;margin:2px 0 6px}
.vg-step p{color:var(--txt-2)!important;font-size:15.5px;margin-bottom:10px}
.vg-step p:last-child{margin-bottom:0}
@media (min-width:760px){.vg-steps{grid-template-columns:1fr 1fr;gap:14px}}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .vg-step,.vg-card,.vg-res__i,.vg-urg__card{animation:vg-rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
  }
}
@keyframes vg-rise{from{opacity:.001;transform:translateY(18px)}to{opacity:1;transform:none}}

.vg-note{display:flex;gap:12px;padding:16px 18px;border-radius:var(--r);background:color-mix(in srgb,var(--cielo) 45%,#fff);border:1px solid color-mix(in srgb,var(--cielo) 80%,var(--navy) 6%);margin-bottom:8px}
.vg-note .bi{font-size:20px;color:var(--navy)!important;line-height:1.3}
.vg-note p{font-size:15px;color:var(--navy)!important;line-height:1.55}

/* Tarjetas USMC */
.vg-cards{display:grid;gap:12px;margin:14px 0 18px}
@media (min-width:700px){.vg-cards--usmc{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1280px){.vg-cards--usmc{grid-template-columns:repeat(3,1fr)}}
.vg-card{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:var(--r);background:#fff;border:1px solid var(--line);transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.vg-card:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}
.vg .vg-card__t{font-family:var(--disp);font-size:17px;font-weight:700}
.vg-card__d{font-size:14.5px;color:var(--txt-2)!important;line-height:1.45}
.vg-card__d .bi{color:var(--cta)!important}
.vg-card__s{font-size:13px;color:var(--txt-3)!important}
.vg-card__a{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px}

/* Desplegables */
.vg-more{border-radius:var(--r);background:#fff;border:1px solid var(--line);margin-top:10px;overflow:hidden}
.vg-more summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer;list-style:none;font-weight:700;color:var(--navy)!important}
.vg-more summary::-webkit-details-marker{display:none}
.vg-more summary .bi{transition:transform .3s var(--ease)}
.vg-more[open] summary .bi{transform:rotate(45deg)}
.vg-more__b{padding:0 18px 18px}
.vg-more--s summary{padding:12px 16px;font-size:15px}
.vg-list{display:grid;gap:8px;font-size:14.5px;color:var(--txt-2)!important;line-height:1.5}
.vg-list li{padding-left:16px;position:relative}
.vg-list li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--acc)}
.vg .vg-list a{color:var(--navy)!important;font-weight:600}
@media (min-width:700px){.vg-list--cols{grid-template-columns:1fr 1fr;column-gap:24px}}
.vg-list--num{counter-reset:f}
.vg-list--num li::before{counter-increment:f;content:counter(f) ".";width:auto;height:auto;background:none;top:0;font-weight:700;color:var(--txt-3)!important;font-size:13px}
.vg-list--num li{padding-left:26px}

/* ═══ Distritos ═════════════════════════════════════════════════════ */
.vg-dist{display:grid;gap:16px;margin:20px 0 12px}
.vg-dist__pick{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0;min-width:0}
.vg-dist__opt{position:relative;margin:0;cursor:pointer}
.vg-dist__opt input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.vg-dist__opt span{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:999px;background:#fff;border:1.5px solid var(--line);font-size:14.5px;font-weight:600;color:var(--navy)!important;transition:all .2s var(--ease)}
.vg-dist__opt:hover span{border-color:var(--navy)}
.vg-dist__opt input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff!important;box-shadow:0 8px 18px -10px rgba(26,49,81,.6)}
.vg-dist__opt input:focus-visible+span{outline:3px solid var(--cta);outline-offset:2px}
.vg-dist__panels{position:relative;min-height:140px}
.vg-dist__empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:140px;padding:20px;border-radius:var(--r);border:1.5px dashed var(--line);color:var(--txt-3)!important;font-size:15px;text-align:center}
.vg-dist__panel{border-radius:var(--r-l);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);padding:20px}
.vg-dist.is-js .vg-dist__panel{display:none}
.vg-dist.is-js .vg-dist__panel.is-on{display:block;animation:vg-pop .4s var(--ease) both}
.vg-dist.is-js.has-pick .vg-dist__empty{display:none}
.vg-dist:not(.is-js) .vg-dist__empty{display:none}
.vg-dist:not(.is-js) .vg-dist__panels{display:grid;gap:12px}
@keyframes vg-pop{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
.vg .vg-dist__name{font-family:var(--disp);font-size:clamp(1.3rem,1.15rem + .6vw,1.6rem);font-weight:750;margin-bottom:14px}
.vg-dist__cols{display:grid;gap:12px}
@media (min-width:760px){.vg-dist__cols{grid-template-columns:1.2fr 1fr}}
.vg-dist__box{padding:16px;border-radius:var(--r);background:var(--cream);display:flex;flex-direction:column;gap:12px}
.vg-dist__box--alt{background:color-mix(in srgb,var(--lila) 40%,#fff)}
.vg-dist__box p{font-size:14.5px;color:var(--txt-2)!important}
.vg-dist__lab{font-size:12px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--txt-3)!important}
.vg-dist__cssc{display:flex;flex-direction:column;gap:4px}
.vg-dist__cssc strong{font-family:var(--disp);font-size:17px;color:var(--navy)!important}
.vg-dist__cssc>span:not(.vg-card__a){font-size:14.5px;color:var(--txt-2)!important}
.vg-dist__cssc .bi-geo-alt{color:var(--cta)!important}
.vg-dist__cssc .vg-card__a{padding-top:6px}
.vg-dist__fine{font-size:13.5px!important;color:var(--txt-3)!important}

/* ═══ Urgencias ═════════════════════════════════════════════════════ */
.vg-urg{display:grid;gap:12px;margin:22px 0 10px}
@media (min-width:760px){.vg-urg{grid-template-columns:1.4fr 1fr 1fr}}
.vg .vg-urg__card{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--r-l);background:#fff;border:1px solid var(--line);color:var(--navy)!important;text-decoration:none;transition:transform .25s var(--ease),box-shadow .3s var(--ease)}
.vg .vg-urg__card:hover{transform:translateY(-3px);box-shadow:var(--sh-2);color:var(--navy)!important}
.vg .vg-urg__card--main{background:var(--cta);border-color:var(--cta);color:#fff!important}
.vg .vg-urg__card--main:hover{color:#fff!important;background:var(--cta-h)}
.vg-urg__num{font:750 clamp(2.4rem,2rem + 1.6vw,3.2rem)/1 var(--disp);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.vg-urg__t{font-weight:700;font-size:16px;line-height:1.3}
.vg-urg__d{font-size:14px;line-height:1.45;opacity:.85}
.vg-two{display:grid;gap:8px 32px}
@media (min-width:760px){.vg-two{grid-template-columns:1fr 1fr}}

/* ═══ Checklist ═════════════════════════════════════════════════════ */
.vg-check{margin:22px 0;border-radius:var(--r-l);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);overflow:hidden}
.vg-check__head{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fff;border-bottom:1px solid var(--line)}
.vg-ring{flex:0 0 48px;width:48px;height:48px;transform:rotate(-90deg)}
.vg-ring circle{fill:none;stroke:var(--cream-2);stroke-width:5}
.vg-ring .vg-ring__v{stroke:var(--cta);stroke-linecap:round;stroke-dasharray:0 100;transition:stroke-dasharray .6s var(--ease),stroke .3s ease}
.vg-check.is-done .vg-ring__v{stroke:#5E8A55}
.vg-check__score{font:700 17px/1.2 var(--disp);color:var(--navy)!important;font-variant-numeric:tabular-nums}
.vg-check__msg{font-size:14px;color:var(--txt-2)!important}
.vg-check__l li+li{border-top:1px solid var(--line)}
.vg-check__i{display:grid;grid-template-columns:28px 1fr;gap:14px;padding:16px 18px;margin:0;cursor:pointer;transition:background-color .2s ease}
.vg-check__i:hover{background:var(--cream)}
.vg-check__i input{position:absolute;opacity:0;width:1px;height:1px}
.vg-check__box{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;border:2px solid color-mix(in srgb,var(--navy) 30%,transparent);background:#fff;transition:all .25s var(--ease)}
.vg-check__box svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset .35s var(--ease) .05s}
.vg-check__i input:checked+.vg-check__box{background:var(--cta);border-color:var(--cta);transform:scale(1.04)}
.vg-check__i input:checked+.vg-check__box svg{stroke-dashoffset:0}
.vg-check__i input:focus-visible+.vg-check__box{outline:3px solid var(--cta);outline-offset:3px}
.vg-check__txt strong{display:block;font-size:15.5px;color:var(--navy)!important;line-height:1.4;margin-bottom:3px}
.vg-check__txt>span{display:block;font-size:14px;color:var(--txt-2)!important;line-height:1.5}
.vg-check__i:has(input:checked) .vg-check__txt strong{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--cta) 60%,transparent);text-decoration-thickness:2px}
.vg-check__foot{padding:14px 18px;background:var(--cream);font-size:14px;color:var(--txt-2)!important;border-top:1px solid var(--line)}

.vg-copao{display:grid;gap:14px;padding:20px;border-radius:var(--r-l);background:var(--navy);color:#fff!important;margin-bottom:10px}
.vg .vg-copao h3{color:#fff!important;font-family:var(--disp);font-size:clamp(1.15rem,1.05rem + .5vw,1.4rem);font-weight:700;margin:4px 0 6px}
.vg-copao p{color:rgba(255,255,255,.82)!important;font-size:14.5px}
.vg-copao .vg-dist__lab{color:var(--melo)!important}
.vg .vg-copao .vg-chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff!important}
.vg .vg-copao .vg-chip:hover{background:rgba(255,255,255,.16);border-color:#fff}
.vg .vg-copao .vg-chip--tel{background:var(--cta);border-color:var(--cta)}

/* ═══ Comparativa ═══════════════════════════════════════════════════ */
.vg-prio{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.vg-prio__b,.vg-filter__b{appearance:none;min-height:40px;padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font:600 14px/1.2 var(--sans);color:var(--navy)!important;cursor:pointer;transition:all .2s var(--ease)}
.vg-prio__b:hover,.vg-filter__b:hover{border-color:var(--navy)}
.vg-prio__b[aria-pressed="true"],.vg-filter__b[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff!important}
.vg-prio__b[aria-pressed="true"]::before{content:"✓ ";font-weight:800}
.vg-cmp{border-radius:var(--r-l);background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:var(--sh-1)}
.vg-cmp__t{width:100%;border-collapse:collapse;font-size:14.5px;margin:0}
.vg-cmp__t th,.vg-cmp__t td{padding:14px 16px;text-align:left;vertical-align:top;border:0;border-bottom:1px solid var(--line);line-height:1.45}
.vg-cmp__t thead th{font:700 15px/1.2 var(--disp);color:var(--navy)!important;background:var(--cream)}
.vg-cmp__ico{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;margin-bottom:8px;color:var(--cta)!important;font-size:17px}
.vg-cmp__t tbody th{font-weight:700;color:var(--navy)!important;width:22%}
.vg-cmp__t td{color:var(--txt-2)!important;transition:background-color .3s ease,color .3s ease}
.vg-cmp__t td.is-yes{color:var(--navy)!important;font-weight:600}
.vg-cmp__t td.is-yes::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#6E9A64;margin-right:8px;vertical-align:.1em}
.vg-cmp__t tr:last-child th,.vg-cmp__t tr:last-child td{border-bottom:0}
.vg-cmp [data-col].is-win{background:color-mix(in srgb,var(--melo) 34%,#fff)}
.vg-cmp__t thead th.is-win{background:color-mix(in srgb,var(--melo) 70%,#fff)}
.vg-cmp__t thead th.is-win::after{content:attr(data-win);display:block;margin-top:6px;font:700 11.5px/1 var(--sans);color:var(--cta-h)!important;letter-spacing:.04em;text-transform:uppercase}
.vg-cmp tr.is-hl th{color:var(--cta-h)!important}
@media (max-width:759px){
  .vg-cmp{background:none;border:0;box-shadow:none;overflow:visible}
  .vg-cmp__t,.vg-cmp__t tbody,.vg-cmp__t tr,.vg-cmp__t th,.vg-cmp__t td{display:block;width:auto}
  .vg-cmp__t thead{display:none}
  .vg-cmp__t tr{background:#fff;border:1px solid var(--line);border-radius:var(--r);margin-bottom:10px;overflow:hidden}
  .vg-cmp__t tbody th{width:auto;padding:12px 14px;background:var(--cream);font-family:var(--disp);font-size:15.5px}
  .vg-cmp__t td{display:grid;grid-template-columns:118px 1fr;gap:10px;padding:10px 14px}
  .vg-cmp__t td::after{content:none}
  .vg-cmp__t td[data-l]::before{content:attr(data-l);font-weight:700;font-size:12.5px;color:var(--txt-3)!important;text-transform:uppercase;letter-spacing:.04em;width:auto;height:auto;border-radius:0;background:none;margin:0;display:block}
  .vg-cmp__t td.is-yes{position:relative}
  .vg-cmp__t td.is-yes[data-l]::before{color:#4C7A43!important}
  .vg-cmp__t tr:last-child td{border-bottom:1px solid var(--line)}
  .vg-cmp__t tr td:last-child{border-bottom:0}
}

/* ═══ Online (Viving) ═══════════════════════════════════════════════ */
.vg-online{padding-bottom:44px}
@media (min-width:1080px){.vg-online{padding-bottom:72px}}
.vg-online__in{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;background:var(--navy);color:#fff!important;padding:28px 20px}
.vg-online__in::before{content:"";position:absolute;z-index:-1;width:520px;height:520px;right:-180px;top:-220px;border-radius:50%;background:radial-gradient(circle,rgba(183,90,68,.55),transparent 65%)}
.vg-online__in::after{content:"";position:absolute;z-index:-1;width:420px;height:420px;left:-160px;bottom:-240px;border-radius:50%;background:radial-gradient(circle,rgba(220,211,234,.22),transparent 65%)}
@media (min-width:760px){.vg-online__in{padding:44px}}
.vg .vg-online h2{color:#fff!important}
.vg-online h2 em{color:var(--melo)!important}
.vg-online__in>p{color:rgba(255,255,255,.84)!important;font-size:16.5px;max-width:62ch}
.vg-online__cols{display:grid;gap:14px;margin:22px 0}
@media (min-width:760px){.vg-online__cols{grid-template-columns:1fr 1fr}}
.vg-online__cols>div{padding:18px;border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.vg-online__lab{font-weight:700;margin-bottom:8px!important;color:#fff!important}
.vg-online__lab .bi{color:var(--melo)!important}
.vg-online__cols ul{display:grid;gap:6px}
.vg-online__cols li{position:relative;padding-left:16px;font-size:15px;color:rgba(255,255,255,.84)!important}
.vg-online__cols li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--melo)}
.vg .vg-online a:not(.vg-btn){color:#fff!important;text-decoration:underline;text-decoration-color:rgba(242,205,185,.6);text-underline-offset:3px}
.vg-online__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.vg-online__n{font-size:14.5px;color:rgba(255,255,255,.8)!important}
.vg-online__temas{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;font-size:14px;color:rgba(255,255,255,.7)!important}
.vg .vg-online__temas a{display:inline-flex;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.2);text-decoration:none!important;font-weight:600;font-size:13.5px;transition:background-color .2s ease}
.vg .vg-online__temas a:hover{background:rgba(255,255,255,.12)}
.vg-online__fine{margin-top:18px;font-size:13.5px;color:rgba(255,255,255,.7)!important}

/* ═══ Recursos ══════════════════════════════════════════════════════ */
.vg-filter{display:flex;gap:8px;margin:18px 0;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.vg-filter::-webkit-scrollbar{display:none}
.vg-filter__b{flex:0 0 auto;white-space:nowrap}
@media (min-width:760px){.vg-filter{flex-wrap:wrap;overflow:visible}}
.vg-res{display:grid;gap:12px}
@media (min-width:760px){.vg-res{grid-template-columns:repeat(2,1fr)}}
.vg-res__i{--c:var(--cielo);position:relative;display:flex;flex-direction:column;gap:6px;padding:18px 18px 18px 22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);overflow:hidden}
.vg-res__i::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--c)}
.vg-res__i--crisis{--c:var(--cta)}
.vg-res__i--violencia{--c:var(--lila)}
.vg-res__i--jovenes{--c:var(--melo)}
.vg-res__i--duelo{--c:var(--arena)}
.vg-res__i--adicciones{--c:var(--navy-2)}
.vg-res__i--familias{--c:var(--salvia)}
.vg-res__i--soledad{--c:var(--acc)}
.vg-res__i--social{--c:var(--cielo)}
.vg-res__i[hidden]{display:none}
.vg-res__cat{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--txt-3)!important}
.vg .vg-res__t{font-family:var(--disp);font-size:17px;font-weight:700;line-height:1.25}
.vg-res__d{font-size:14.5px;color:var(--txt-2)!important;line-height:1.5}
.vg-res__dir{font-size:13.5px;color:var(--txt-3)!important}
.vg-res__dir .bi{color:var(--cta)!important}

/* ═══ FAQ ═══════════════════════════════════════════════════════════ */
.vg-faq{display:grid;gap:10px;margin-top:20px}
.vg-faq__i{border-radius:var(--r);background:#fff;border:1px solid var(--line);transition:box-shadow .3s var(--ease),border-color .3s ease}
.vg-faq__i[open]{box-shadow:var(--sh-1);border-color:color-mix(in srgb,var(--navy) 18%,var(--line))}
/* Safari de iOS antiguo no aplica flex a <summary>: el icono va en absoluto para que no dependa de ello. */
.vg-faq__i summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 64px 18px 18px;cursor:pointer;list-style:none}
.vg-faq__i summary::-webkit-details-marker{display:none}
.vg .vg-faq__i h3{font-family:var(--disp)!important;font-size:16.5px;font-weight:650;line-height:1.35;letter-spacing:-.01em;margin:0}
.vg-faq__ico{display:block;position:absolute;right:18px;top:calc(50% - 15px);flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--cream-2);transition:background-color .3s ease,transform .35s var(--ease)}
.vg-faq__ico::before,.vg-faq__ico::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:2px;background:var(--navy);transition:transform .35s var(--ease),background-color .3s ease}
.vg-faq__ico::after{transform:rotate(90deg)}
.vg-faq__i[open] .vg-faq__ico{background:var(--cta);transform:rotate(180deg)}
.vg-faq__i[open] .vg-faq__ico::before,.vg-faq__i[open] .vg-faq__ico::after{background:#fff}
.vg-faq__i[open] .vg-faq__ico::after{transform:rotate(0deg)}
.vg-faq__a{padding:0 18px 18px}
.vg-faq__a p{font-size:15.5px;color:var(--txt-2)!important;line-height:1.65;max-width:70ch}
@supports (interpolate-size:allow-keywords){
  .vg{interpolate-size:allow-keywords}
  @media (prefers-reduced-motion:no-preference){
    .vg-faq__i::details-content,.vg-more::details-content{block-size:0;overflow:hidden;transition:block-size .4s var(--ease),content-visibility .4s allow-discrete}
    .vg-faq__i[open]::details-content,.vg-more[open]::details-content{block-size:auto}
  }
}

/* Seguir leyendo */
.vg-read{display:grid;gap:10px;margin-top:16px;margin-bottom:16px}
@media (min-width:700px){.vg-read{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1280px){.vg-read{grid-template-columns:repeat(3,1fr)}}
.vg .vg-read a{display:flex;flex-direction:column;gap:6px;height:100%;padding:16px 18px;border-radius:var(--r);background:#fff;border:1px solid var(--line);font:650 16px/1.3 var(--disp);color:var(--navy)!important;text-decoration:none;transition:transform .25s var(--ease),box-shadow .3s var(--ease)}
.vg .vg-read a:hover{transform:translateY(-2px);box-shadow:var(--sh-2);color:var(--navy)!important}
.vg-read span{font:700 11.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--cta-h)!important}

.vg-src{padding-bottom:20px}

/* ═══ Bloque de ayuda (siempre visible) ═════════════════════════════ */
.vg-help{background:var(--navy-3);color:#fff!important;padding:48px 0 56px;scroll-margin-top:var(--top)}
.vg .vg-help h2{color:#fff!important;font-family:var(--disp);font-weight:750;font-size:clamp(1.8rem,1.4rem + 1.6vw,2.6rem);letter-spacing:-.03em;margin-bottom:8px}
.vg-help h2 em{color:var(--melo)!important}
.vg-help>.vg-wrap>p{color:rgba(255,255,255,.8)!important;max-width:60ch}
.vg-help__l{display:grid;gap:10px;margin:22px 0 16px}
@media (min-width:760px){.vg-help__l{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.vg-help__l{grid-template-columns:repeat(4,1fr)}}
.vg .vg-help__l a{display:flex;flex-direction:column;gap:6px;height:100%;padding:18px;border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff!important;text-decoration:none;transition:background-color .25s ease,transform .25s var(--ease)}
.vg .vg-help__l a:hover{background:rgba(255,255,255,.12);transform:translateY(-2px);color:#fff!important}
.vg .vg-help__l li:first-child a{background:var(--cta);border-color:var(--cta)}
.vg-help__l strong{font:750 30px/1 var(--disp);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.vg-help__l span{font-size:14px;line-height:1.45;color:rgba(255,255,255,.86)!important}
.vg-help__s{font-size:14.5px;color:rgba(255,255,255,.75)!important}
.vg .vg-help__s a{color:#fff!important;font-weight:700}

/* ═══ Botón flotante + diálogo ══════════════════════════════════════ */
.vg-fab{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:1030;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 16px 0 14px;border:0;border-radius:999px;background:#fff;color:var(--navy)!important;font:700 14.5px/1 var(--sans);box-shadow:0 10px 30px -8px rgba(15,33,56,.45),0 0 0 1px rgba(26,49,81,.08);cursor:pointer;transform:translateY(140%);opacity:0;transition:transform .45s var(--ease),opacity .3s ease,background-color .2s ease}
.vg-fab.is-on{transform:none;opacity:1}
.vg-fab:hover{background:var(--cream)}
.vg-fab:focus-visible{outline:3px solid var(--cta);outline-offset:3px}
.vg-fab__dot{position:relative;width:10px;height:10px;border-radius:50%;background:var(--cta)}
.vg-fab__dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--cta);opacity:0;animation:vg-ping 2.4s var(--ease) infinite}
@keyframes vg-ping{0%{transform:scale(.6);opacity:.8}80%,100%{transform:scale(1.5);opacity:0}}
body:has(.viving-cc:not([hidden]):not(.d-none)) .vg-fab{bottom:calc(96px + env(safe-area-inset-bottom))}

.vg-sos{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:var(--r-l);background:#fff;color:var(--navy)!important;box-shadow:0 40px 100px -20px rgba(0,0,0,.5)}
.vg-sos::backdrop{background:rgba(15,33,56,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.vg-sos[open]{animation:vg-pop .35s var(--ease) both}
.vg-sos__in{position:relative;padding:26px 22px 22px}
.vg .vg-sos h2{font-family:var(--disp);font-size:22px;font-weight:750;margin:0 36px 14px 0;line-height:1.2}
.vg-sos__x{position:absolute;right:14px;top:14px;width:36px;height:36px;border-radius:50%;border:0;background:var(--cream-2);color:var(--navy)!important;font-size:22px;line-height:1;cursor:pointer}
.vg-sos__x:hover{background:var(--line)}
.vg-sos__l{display:grid;gap:8px;margin-bottom:14px}
.vg .vg-sos__l a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--cream);color:var(--navy)!important;font-weight:600;font-size:15px;text-decoration:none;transition:background-color .2s ease}
.vg .vg-sos__l a:hover{background:var(--cream-2);color:var(--navy)!important}
.vg .vg-sos__l li:first-child a{background:var(--cta);color:#fff!important}
.vg-sos__l strong{font:750 20px/1 var(--disp);min-width:92px;font-variant-numeric:tabular-nums}
.vg-sos p{font-size:14px;color:var(--txt-2)!important}

/* ═══ Movimiento reducido ═══════════════════════════════════════════ */
@media (prefers-reduced-motion:reduce){
  .vg *,.vg *::before,.vg *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ═══ Impresión: el resultado del test y la guía, sin adornos ═══════ */
@media print{
  .vg{background:#fff}
  .vg-hero::before,.vg-test::before,.vg-toc,.vg-fab,.vg-sos,.vg-hero__cta,.vg-res-act,.vg-quiz__top,.vg-quiz__bar,.vg-filter,.vg-prio{display:none!important}
  .vg-test,.vg-online__in,.vg-help,.vg-copao{background:#fff!important;color:#000!important}
  .vg-test *,.vg-online__in *,.vg-help *,.vg-copao *{color:#000!important}
  .vg-layout{display:block}
  .vg-faq__i:not([open]) .vg-faq__a{display:block}
  .vg a[href^="http"]::after{content:" (" attr(href) ")";font-size:10px;word-break:break-all}
}

/* ═══════════════════════════════════════════════════════════════════════
 * v2 (2026-10-04): landing de conversión. Hero con profesionales, cinta,
 * tres caminos, carrusel, precios con calculadora, mapa de distritos,
 * barra inferior en móvil. Todo funciona sin JS; .vg-js solo añade
 * movimiento.
 * ═════════════════════════════════════════════════════════════════════ */
@property --vg-ang{syntax:"<angle>";inherits:false;initial-value:0deg}

/* Barra de lectura (scroll-driven; si el navegador no lo soporta, no sale) */
.vg-prog{display:none}
@supports (animation-timeline:scroll()){
  .vg-prog{display:block;position:fixed;inset:0 0 auto;height:3px;z-index:1040;background:linear-gradient(90deg,var(--cta),#E08A6E);transform-origin:0 50%;transform:scaleX(0);animation:vg-prog linear both;animation-timeline:scroll(root)}
}
@keyframes vg-prog{to{transform:scaleX(1)}}

/* Aparición al hacer scroll */
.vg-js .vg-rv{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .8s var(--ease);transition-delay:var(--d,0s)}
.vg-js .vg-rv.is-in{opacity:1;transform:none}

/* Enlaces y píldoras */
.vg .vg-link{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--navy)!important;text-decoration:none;margin-top:auto}
.vg .vg-link .bi{transition:transform .25s var(--ease)}
.vg .vg-link:hover{color:var(--cta-h)!important}
.vg .vg-link:hover .bi{transform:translateX(4px)}
.vg-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--salvia) 50%,#fff);color:#2F4A2A!important;font-size:12px;font-weight:700;line-height:1.2}
.vg-btn__meta--dark{background:color-mix(in srgb,var(--navy) 9%,transparent);color:var(--navy)!important}
.vg .vg-chip--cta{background:var(--cta);border-color:var(--cta);color:#fff!important}
.vg .vg-chip--cta:hover{background:var(--cta-h);border-color:var(--cta-h);color:#fff!important}

/* Cabeceras de sección a ancho completo */
.vg-sec2{padding:64px 0;scroll-margin-top:calc(var(--vs-hdr,64px) + 8px)}
@media (min-width:960px){.vg-sec2{padding:96px 0}}
.vg-head{max-width:760px;margin-bottom:32px}
.vg-head--row{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.vg-head--row>div:first-child{max-width:720px}
.vg .vg-h2{font-family:var(--disp);font-weight:750;font-size:clamp(1.9rem,1.3rem + 2.3vw,3.1rem);line-height:1.04;letter-spacing:-.032em;margin-bottom:14px}
.vg-h2 em{color:var(--cta)!important}
.vg-head .vg-p{font-size:clamp(1rem,.96rem + .2vw,1.12rem)}

/* ═══ Hero v2 ═══════════════════════════════════════════════════════ */
.vg-hero::before{display:none}
.vg-hero__aura{position:absolute;z-index:-1;inset:0;pointer-events:none;overflow:hidden}
.vg-hero__aura i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.75}
.vg-hero__aura i:nth-child(1){width:520px;height:520px;right:-120px;top:-160px;background:var(--melo)}
.vg-hero__aura i:nth-child(2){width:420px;height:420px;left:-160px;top:-120px;background:var(--cielo)}
.vg-hero__aura i:nth-child(3){width:380px;height:380px;left:40%;bottom:-220px;background:var(--lila)}
@media (prefers-reduced-motion:no-preference){
  .vg-hero__aura i{animation:vg-drift 18s ease-in-out infinite alternate}
  .vg-hero__aura i:nth-child(2){animation-duration:22s;animation-delay:-6s}
  .vg-hero__aura i:nth-child(3){animation-duration:26s;animation-delay:-12s}
}
@keyframes vg-drift{0%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,30px) scale(1.08)}100%{transform:translate(-30px,10px) scale(.95)}}
.vg-hero{padding:20px 0 28px}
.vg-hero .vg-h1{font-size:clamp(2.1rem,1.25rem + 3.3vw,3.75rem);text-wrap:balance}
.vg-hero .vg-h1 em{display:inline-block;position:relative}
.vg-hero .vg-h1 em::after{content:"";position:absolute;left:2%;right:4%;bottom:.04em;height:.12em;border-radius:99px;background:color-mix(in srgb,var(--cta) 30%,transparent);transform-origin:0 50%;transform:scaleX(0);animation:vg-under 1s .5s var(--ease) forwards}
@keyframes vg-under{to{transform:scaleX(1)}}
.vg-hero__copy>*{animation:vg-up .8s var(--ease) both}
.vg-hero__copy>:nth-child(2){animation-delay:.05s}
.vg-hero__copy>:nth-child(3){animation-delay:.1s}
.vg-hero__copy>:nth-child(4){animation-delay:.18s}
.vg-hero__copy>:nth-child(5){animation-delay:.26s}
.vg-hero__copy>:nth-child(6){animation-delay:.34s}
@keyframes vg-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

.vg-proof{display:flex;align-items:center;gap:14px;max-width:560px}
.vg-proof__faces{display:flex;flex:0 0 auto}
.vg-proof__faces span{position:relative;display:grid;place-items:center;width:40px;height:40px;margin-left:-10px;border-radius:50%;border:2.5px solid var(--cream);background:var(--arena);overflow:hidden;box-shadow:0 4px 10px -4px rgba(26,49,81,.35)}
.vg-proof__faces span:first-child{margin-left:0}
.vg-proof__faces span:nth-child(2){background:var(--salvia)}
.vg-proof__faces span:nth-child(3){background:var(--cielo)}
.vg-proof__faces span:nth-child(4){background:var(--lila)}
.vg-proof__faces img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vg-proof__faces b{font:700 13px/1 var(--disp);color:var(--navy)!important}
.vg-proof p{font-size:14.5px;line-height:1.45;color:var(--txt-2)!important}
.vg-proof strong{color:var(--navy)!important}

/* Abanico de tarjetas */
.vg-hero__side{display:none}
.vg-fan{position:relative;height:440px;max-width:460px;margin-inline:auto;perspective:1200px}
.vg .vg-fan__c{position:absolute;left:50%;top:50%;width:250px;margin:-180px 0 0 -125px;display:flex;flex-direction:column;border-radius:24px;background:#fff;box-shadow:0 30px 60px -24px rgba(26,49,81,.45),0 0 0 1px rgba(26,49,81,.06);overflow:hidden;text-decoration:none;color:var(--navy)!important;transition:transform .7s var(--ease),box-shadow .4s var(--ease);animation:vg-deal 1s var(--ease) both}
.vg-fan__c--0{z-index:3;--t:translate(0,0) rotate(-1deg);transform:var(--t);animation-delay:.25s}
.vg-fan__c--1{z-index:2;--t:translate(-118px,26px) rotate(-10deg) scale(.92);transform:var(--t);animation-delay:.1s}
.vg-fan__c--2{z-index:1;--t:translate(118px,30px) rotate(9deg) scale(.92);transform:var(--t);animation-delay:0s}
@keyframes vg-deal{from{opacity:0;transform:translate(0,60px) rotate(0) scale(.85)}to{opacity:1;transform:var(--t)}}
.vg-fan:hover .vg-fan__c--1{transform:translate(-150px,14px) rotate(-14deg) scale(.92)}
.vg-fan:hover .vg-fan__c--2{transform:translate(150px,18px) rotate(13deg) scale(.92)}
.vg .vg-fan__c:hover{z-index:4;transform:translateY(-10px) rotate(0) scale(1.02);box-shadow:0 40px 70px -24px rgba(26,49,81,.55)}
.vg-fan__ph{position:relative;display:grid;place-items:center;aspect-ratio:1/1;background:linear-gradient(160deg,var(--arena),var(--melo))}
.vg-fan__c--1 .vg-fan__ph{background:linear-gradient(160deg,var(--cielo),var(--lila))}
.vg-fan__c--2 .vg-fan__ph{background:linear-gradient(160deg,var(--salvia),var(--arena))}
.vg-fan__ph picture,.vg-fan__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vg-fan__ini{font:750 56px/1 var(--disp);color:rgba(26,49,81,.4)!important}
.vg-fan__b{display:grid;gap:4px;padding:14px 16px 16px}
.vg-fan__b strong{font:700 16.5px/1.2 var(--disp);letter-spacing:-.01em}
.vg-fan__b>span:not(.vg-fan__meta){font-size:13px;color:var(--txt-3)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vg-fan__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}
.vg-fan__eur{font-size:13px;color:var(--txt-2)!important}
.vg-fan__eur b{color:var(--navy)!important;font-size:15px}
.vg-float{position:absolute;z-index:5;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 14px 30px -12px rgba(26,49,81,.4);font-size:13.5px;font-weight:700;color:var(--navy)!important;white-space:nowrap}
.vg-float .bi{color:var(--cta)!important;font-size:16px}
.vg-float--a{left:-8px;top:34px}
.vg-float--b{right:-4px;bottom:-6px}
@media (prefers-reduced-motion:no-preference){
  .vg-float--a{animation:vg-bob 6s ease-in-out infinite}
  .vg-float--b{animation:vg-bob 7s ease-in-out -3s infinite}
}
@keyframes vg-bob{50%{transform:translateY(-10px)}}

.vg-sosbar{display:flex;align-items:center;gap:12px;margin-top:28px;padding:12px 16px;border-radius:16px;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:14px;color:var(--txt-2)!important}
.vg-sosbar .bi{color:var(--cta)!important;font-size:20px}
.vg .vg-sosbar a{color:var(--cta-h)!important;text-decoration:none}
@media (min-width:960px){
  .vg-hero{padding:36px 0 40px}
  .vg-hero__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center}
  .vg-hero__side{display:block}
  .vg-sosbar{display:inline-flex;margin-top:12px}
}

/* ═══ Cinta en movimiento ═══════════════════════════════════════════ */
.vg-ribbon{position:relative;overflow:hidden;background:var(--navy);padding:14px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.vg-ribbon__t{display:flex;width:max-content;gap:40px;padding-inline:20px}
.vg-ribbon__t li{display:inline-flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:rgba(255,255,255,.9)!important;white-space:nowrap}
.vg-ribbon__t .bi{color:var(--melo)!important;font-size:16px}
@media (prefers-reduced-motion:no-preference){
  .vg-ribbon__t{animation:vg-marq 42s linear infinite}
  .vg-ribbon:hover .vg-ribbon__t{animation-play-state:paused}
}
@media (prefers-reduced-motion:reduce){.vg-ribbon__t{flex-wrap:wrap;width:auto;justify-content:center;gap:10px 28px}.vg-ribbon__t li[aria-hidden]{display:none}}
@keyframes vg-marq{to{transform:translateX(calc(-50% - 20px))}}

/* ═══ Tres caminos (bento) ══════════════════════════════════════════ */
.vg-bento{display:grid;gap:16px}
@media (min-width:860px){.vg-bento{grid-template-columns:1.25fr 1fr 1fr;align-items:stretch}}
.vg-way{position:relative;display:flex;flex-direction:column;gap:12px;padding:26px 24px 24px;border-radius:var(--r-l);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.vg-way:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.vg-way h3{font:750 23px/1.15 var(--disp);letter-spacing:-.02em}
.vg-way>p{font-size:15px;color:var(--txt-2)!important}
.vg-way__ico{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--cream-2);font-size:24px;color:var(--navy)!important}
.vg-way:nth-child(2) .vg-way__ico{background:color-mix(in srgb,var(--cielo) 70%,#fff)}
.vg-way:nth-child(3) .vg-way__ico{background:color-mix(in srgb,var(--arena) 80%,#fff)}
.vg-way__dl{display:grid;gap:0;margin:4px 0 8px;border-top:1px solid var(--line)}
.vg-way__dl div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.vg-way__dl dt{color:var(--txt-3)!important;font-weight:500}
.vg-way__dl dd{margin:0;text-align:right;font-weight:700;color:var(--navy)!important}
.vg-way .vg-btn{margin-top:auto}
.vg-way--onl{background:linear-gradient(170deg,#fff 0%,#FFF8F3 100%);border:2px solid transparent;background-clip:padding-box}
.vg-way--onl::before{content:"";position:absolute;inset:-2px;z-index:-1;border-radius:inherit;background:conic-gradient(from var(--vg-ang),var(--cta),var(--melo),var(--lila),var(--cielo),var(--cta))}
.vg-way--onl{isolation:auto}
.vg-bento{isolation:isolate}
@media (prefers-reduced-motion:no-preference){.vg-way--onl::before{animation:vg-spin 6s linear infinite}}
@keyframes vg-spin{to{--vg-ang:360deg}}
.vg-way--onl .vg-way__ico{background:var(--cta);color:#fff!important}
.vg-way__badge{position:absolute;top:-13px;left:24px;padding:5px 12px;border-radius:999px;background:var(--navy);color:#fff!important;font-size:12px;font-weight:700;letter-spacing:.02em}

/* ═══ Carrusel de profesionales ═════════════════════════════════════ */
.vg-pros{background:#fff;border-block:1px solid var(--line)}
.vg-car__nav{display:none;gap:10px;flex:0 0 auto}
@media (min-width:760px){.vg-car__nav{display:flex}}
.vg-car__b{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--navy)!important;font-size:18px;cursor:pointer;transition:all .25s var(--ease)}
.vg-car__b:hover:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff!important}
.vg-car__b:disabled{opacity:.35;cursor:default}
.vg-car{--pad:max(16px,calc((100vw - 1200px) / 2 + 24px));display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);padding:8px var(--pad) 28px;scrollbar-width:none;overscroll-behavior-x:contain}
.vg-car::-webkit-scrollbar{display:none}
.vg-car__i{flex:0 0 min(72vw,270px);scroll-snap-align:start}
.vg .vg-pro{display:flex;flex-direction:column;height:100%;border-radius:22px;background:var(--cream);border:1px solid var(--line);overflow:hidden;text-decoration:none;color:var(--navy)!important;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.vg .vg-pro:hover{transform:translateY(-6px);box-shadow:var(--sh-2);color:var(--navy)!important}
.vg-pro__ph{position:relative;display:grid;place-items:center;aspect-ratio:1/1;background:linear-gradient(160deg,var(--arena),var(--melo));overflow:hidden}
.vg-car__i:nth-child(4n+2) .vg-pro__ph{background:linear-gradient(160deg,var(--cielo),var(--lila))}
.vg-car__i:nth-child(4n+3) .vg-pro__ph{background:linear-gradient(160deg,var(--salvia),var(--arena))}
.vg-car__i:nth-child(4n+4) .vg-pro__ph{background:linear-gradient(160deg,var(--lila),var(--melo))}
.vg-pro__ph picture,.vg-pro__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.vg-pro:hover .vg-pro__ph img{transform:scale(1.05)}
.vg-pro__ini{font:750 64px/1 var(--disp);color:rgba(26,49,81,.4)!important}
.vg-pro__ph .vg-pill{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.vg-pro__b{display:flex;flex-direction:column;gap:4px;flex:1;padding:16px 16px 14px}
.vg .vg-pro__n{font:700 17px/1.2 var(--disp)!important;letter-spacing:-.01em;margin:0}
.vg-pro__e{font-size:13.5px;color:var(--txt-3)!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vg-pro__f{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:12px;font-size:13.5px;color:var(--txt-2)!important}
.vg-pro__f b{font-size:16px;color:var(--navy)!important}
.vg-pro__go{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--cta-h)!important}
.vg-pro__go .bi{transition:transform .25s var(--ease)}
.vg-pro:hover .vg-pro__go .bi{transform:translateX(4px)}
.vg .vg-pro--more{justify-content:center;align-items:flex-start;gap:12px;padding:26px;background:var(--navy);color:#fff!important;border-color:var(--navy)}
.vg .vg-pro--more:hover{color:#fff!important}
.vg-pro--more>span:nth-child(2){font-size:16px;line-height:1.4;color:rgba(255,255,255,.85)!important}
.vg-pro__big{font:750 64px/1 var(--disp);letter-spacing:-.04em;color:var(--melo)!important}
.vg-topics{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:14px;font-weight:700;color:var(--txt-3)!important}
.vg .vg-topics a{padding:7px 13px;border-radius:999px;background:var(--cream);border:1px solid var(--line);font-weight:600;font-size:14px;color:var(--navy)!important;text-decoration:none;transition:all .2s var(--ease)}
.vg .vg-topics a:hover{background:var(--navy);border-color:var(--navy);color:#fff!important}

/* ═══ Precios ═══════════════════════════════════════════════════════ */
.vg-price__grid{display:grid;gap:20px}
@media (min-width:960px){.vg-price__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:start}}
.vg-bars{padding:24px 20px;border-radius:var(--r-l);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1)}
@media (min-width:640px){.vg-bars{padding:30px}}
.vg-bars__row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"l v" "t t";gap:8px 16px;align-items:end;padding:14px 0;border-bottom:1px dashed var(--line)}
.vg-bars__l{grid-area:l;display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--navy)!important}
.vg-bars__l .bi{color:var(--txt-3)!important}
.vg-bars__v{grid-area:v;text-align:right;line-height:1.2}
.vg-bars__v strong{display:block;font:750 22px/1.1 var(--disp);font-variant-numeric:tabular-nums;color:var(--navy)!important}
.vg-bars__v small{font-size:12.5px;color:var(--txt-3)!important}
.vg-bars__track{grid-area:t;position:relative;height:14px;border-radius:99px;background:var(--cream-2)}
.vg-bars__zero{position:absolute;left:0;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:var(--salvia);box-shadow:0 0 0 4px color-mix(in srgb,var(--salvia) 35%,transparent)}
.vg-bars__r{position:absolute;top:0;bottom:0;left:var(--a);width:calc(var(--b) - var(--a));border-radius:99px;background:var(--navy);transform-origin:0 50%}
.vg-bars__row--onl .vg-bars__r{background:linear-gradient(90deg,var(--cta),#D9826A)}
.vg-bars__row--onl .vg-bars__l .bi{color:var(--cta)!important}
.vg-bars__dot{position:absolute;top:50%;left:var(--a);width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--cta);box-shadow:0 0 0 3px #fff}
.vg-js .vg-bars .vg-bars__r{transform:scaleX(0);transition:transform 1.1s var(--ease) .2s}
.vg-js .vg-bars.is-in .vg-bars__r{transform:scaleX(1)}
.vg-bars__axis{display:flex;justify-content:space-between;padding-top:10px;font-size:12px;color:var(--txt-3)!important;font-variant-numeric:tabular-nums}
.vg-bars__src{margin-top:14px;font-size:12.5px;line-height:1.5;color:var(--txt-3)!important}
.vg .vg-bars__src a{color:var(--txt-2)!important}

.vg-calc{display:grid;gap:18px;padding:24px 20px;border-radius:var(--r-l);background:var(--navy);color:#fff!important;box-shadow:var(--sh-2);position:relative;overflow:hidden;isolation:isolate}
@media (min-width:640px){.vg-calc{padding:30px}}
.vg-calc::before{content:"";position:absolute;z-index:-1;width:380px;height:380px;right:-160px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(183,90,68,.55),transparent 65%)}
.vg-calc__k{font:750 21px/1.2 var(--disp);color:#fff!important}
.vg-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;margin:0;border:0;border-radius:14px;background:rgba(255,255,255,.08);min-width:0}
.vg-seg legend{float:left;grid-column:1/-1;width:100%;margin-bottom:8px;padding:0;font-size:13px;font-weight:600;color:rgba(255,255,255,.7)!important}
.vg-seg label{position:relative;margin:0;cursor:pointer}
.vg-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.vg-seg span{display:grid;place-items:center;min-height:42px;padding:6px;border-radius:10px;font-size:13.5px;font-weight:700;text-align:center;line-height:1.15;color:rgba(255,255,255,.8)!important;transition:all .25s var(--ease)}
.vg-seg input:checked+span{background:#fff;color:var(--navy)!important;box-shadow:0 6px 14px -6px rgba(0,0,0,.4)}
.vg-seg input:focus-visible+span{outline:3px solid var(--melo);outline-offset:2px}
.vg-range{display:grid;gap:10px;margin:0}
.vg-range>span{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:rgba(255,255,255,.7)!important}
.vg-range output{font:750 16px/1 var(--disp);color:#fff!important}
.vg-range input{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:99px;background:linear-gradient(90deg,var(--cta) var(--p,30%),rgba(255,255,255,.18) var(--p,30%));cursor:pointer}
.vg-range input::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 5px rgba(183,90,68,.45),0 4px 10px rgba(0,0,0,.3)}
.vg-range input::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 5px rgba(183,90,68,.45)}
.vg-range input:focus-visible{outline:3px solid var(--melo);outline-offset:4px}
.vg-calc__out{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 0;border-block:1px solid rgba(255,255,255,.14)}
.vg-calc__out span{font-size:14px;color:rgba(255,255,255,.75)!important}
.vg-calc__out strong{font:750 clamp(2.2rem,1.8rem + 1.6vw,3rem)/1 var(--disp);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:#fff!important}
.vg-calc__fine{font-size:13px;line-height:1.5;color:rgba(255,255,255,.7)!important}
.vg-facts{display:grid;gap:12px;margin-top:20px}
@media (min-width:760px){.vg-facts{grid-template-columns:repeat(3,1fr)}}
.vg-facts li{display:flex;gap:14px;padding:18px;border-radius:var(--r);background:rgba(255,255,255,.6);border:1px solid var(--line)}
.vg-facts .bi{flex:0 0 auto;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#fff;color:var(--cta)!important;font-size:18px}
.vg-facts strong{display:block;font-size:15px;color:var(--navy)!important;margin-bottom:2px}
.vg-facts span{font-size:14px;line-height:1.5;color:var(--txt-2)!important}

/* ═══ Esperas ═══════════════════════════════════════════════════════ */
.vg-wait{display:grid;gap:12px;margin:14px 0 12px}
@media (min-width:700px){.vg-wait{grid-template-columns:repeat(3,1fr)}}
.vg-wait li{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--r);background:#fff;border:1px solid var(--line)}
.vg-wait strong{font:750 clamp(1.9rem,1.5rem + 1.4vw,2.6rem)/1 var(--disp);letter-spacing:-.03em;color:var(--cta)!important;font-variant-numeric:tabular-nums}
.vg-wait span{font-size:14.5px;line-height:1.5;color:var(--txt-2)!important}
.vg .vg-wait a{margin-top:auto;font-size:12.5px;color:var(--txt-3)!important}

/* ═══ Mapa de distritos ═════════════════════════════════════════════ */
.vg-map{margin:0;padding:16px;border-radius:var(--r-l);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1)}
.vg-map svg{display:block;width:100%;height:auto;max-height:520px;overflow:visible}
.vg-map__d{cursor:pointer;outline:none}
.vg-map__d path{fill:var(--cream-2);stroke:#fff;stroke-width:3;stroke-linejoin:round;transition:fill .3s var(--ease)}
.vg-map__d:nth-child(5n+1) path{fill:color-mix(in srgb,var(--cielo) 55%,#fff)}
.vg-map__d:nth-child(5n+2) path{fill:color-mix(in srgb,var(--arena) 70%,#fff)}
.vg-map__d:nth-child(5n+3) path{fill:color-mix(in srgb,var(--lila) 60%,#fff)}
.vg-map__d:nth-child(5n+4) path{fill:color-mix(in srgb,var(--salvia) 55%,#fff)}
.vg-map__d:nth-child(5n+5) path{fill:color-mix(in srgb,var(--melo) 55%,#fff)}
.vg-map__d:hover path,.vg-map__d:focus-visible path{fill:color-mix(in srgb,var(--cta) 35%,#fff)}
.vg-map__d.is-on path{fill:var(--navy)}
.vg-map__d circle{fill:#fff;stroke:var(--navy);stroke-width:2;transition:all .3s var(--ease)}
.vg-map__d text{font:700 17px/1 var(--sans);fill:var(--navy);text-anchor:middle;dominant-baseline:central;pointer-events:none}
.vg-map__d.is-on circle{fill:var(--cta);stroke:#fff}
.vg-map__d.is-on text{fill:#fff}
.vg-map__d:focus-visible circle{stroke:var(--cta);stroke-width:4}
.vg-js .vg-map:not(.is-in) .vg-map__d{opacity:0;transform:scale(.96);transform-origin:center;transform-box:fill-box}
.vg-js .vg-map .vg-map__d{transition:opacity .6s var(--ease),transform .6s var(--ease);transition-delay:calc(var(--i) * 60ms)}
.vg-map figcaption{margin-top:10px;font-size:12.5px;color:var(--txt-3)!important;text-align:center}
.vg-dist__pick b{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:var(--cream-2);font:700 11.5px/1 var(--sans);color:var(--navy)!important}
.vg-dist__opt input:checked+span b{background:var(--cta);color:#fff!important}
@media (min-width:1180px){
  .vg-dist--map{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
  .vg-dist--map .vg-map{grid-row:span 2;position:sticky;top:var(--top)}
  .vg-dist--map .vg-dist__cols{grid-template-columns:1fr}
}
.vg-dist__box--onl{background:color-mix(in srgb,var(--melo) 30%,#fff)!important;border-color:color-mix(in srgb,var(--melo) 70%,#fff)!important}

/* ═══ Online: pasos ═════════════════════════════════════════════════ */
.vg-how{display:grid;gap:10px;margin:4px 0 24px}
@media (min-width:760px){.vg-how{grid-template-columns:repeat(3,1fr)}}
.vg-how li{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.vg-how b{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--melo);color:var(--navy)!important;font:750 15px/1 var(--disp)}
.vg-how span{font-size:14.5px;line-height:1.35;color:rgba(255,255,255,.85)!important}
.vg-how strong{color:#fff!important}

/* ═══ Cierre ════════════════════════════════════════════════════════ */
.vg-final{padding:24px 0 72px}
.vg-final__in{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:48px 20px;border-radius:36px;background:linear-gradient(150deg,var(--melo),#F7DCCD 45%,var(--lila))}
.vg-final__in::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(50% 70% at 50% 0%,rgba(255,255,255,.7),transparent 70%)}
.vg .vg-final h2{font-family:var(--disp);font-weight:750;font-size:clamp(2rem,1.3rem + 2.8vw,3.4rem);line-height:1.04;letter-spacing:-.032em}
.vg-final h2 em{color:var(--cta-h)!important}
.vg-final p{max-width:52ch;font-size:16.5px;color:var(--txt-2)!important}
.vg-final__faces{display:flex}
.vg-final__faces img{width:56px;height:56px;margin-left:-14px;border-radius:50%;object-fit:cover;border:3px solid #fff;background:var(--arena);box-shadow:0 8px 18px -8px rgba(26,49,81,.5)}
.vg-final__faces img:first-child{margin-left:0}

/* ═══ Barra inferior / botón de ayuda ═══════════════════════════════ */
.vg-dock{position:fixed;z-index:1030;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;gap:8px;padding:6px;border-radius:999px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);box-shadow:0 18px 40px -12px rgba(15,33,56,.45),0 0 0 1px rgba(26,49,81,.08);transform:translateY(160%);transition:transform .5s var(--ease)}
.vg-dock.is-on{transform:none}
.vg .vg-dock__cta{flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;background:var(--cta);color:#fff!important;font-weight:700;font-size:15px;text-decoration:none;line-height:1.1}
.vg .vg-dock__cta:hover{background:var(--cta-h);color:#fff!important}
.vg-dock__cta span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vg-dock__cta small{display:block;font-size:12px;font-weight:600;opacity:.85}
.vg-dock__sos{flex:none;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 14px;border:0;border-radius:999px;background:var(--cream-2);color:var(--navy)!important;font:700 14px/1 var(--sans);cursor:pointer}
.vg-dock__sos:focus-visible{outline:3px solid var(--cta);outline-offset:2px}
@media (min-width:760px){
  .vg-dock{left:16px;right:auto;bottom:calc(16px + env(safe-area-inset-bottom));padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
  .vg .vg-dock__cta{display:none}
  .vg-dock__sos{background:#fff;box-shadow:0 10px 30px -8px rgba(15,33,56,.45),0 0 0 1px rgba(26,49,81,.08)}
}
body:has(.viving-cc:not([hidden]):not(.d-none)) .vg-dock{bottom:calc(96px + env(safe-area-inset-bottom))}
@media (max-width:767.98px){body:has(.viving-cc:not([hidden]):not(.d-none)) .vg-dock{transform:translateY(160%)}}
@media (max-width:759px){.vg-help{padding-bottom:110px}}
@media print{.vg-dock,.vg-prog,.vg-ribbon,.vg-car__nav,.vg-hero__aura,.vg-hero__side,.vg-calc{display:none!important}}

.vg-nw{white-space:nowrap}
