/* UCM · v19.css — efectos: murciélagos, cursor, tilt, reveal, "ver más" */
#ucm-bats{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:3}
.ucm-cursor{position:fixed;left:0;top:0;width:340px;height:340px;margin:-170px 0 0 -170px;border-radius:50%;pointer-events:none;z-index:2;
 background:radial-gradient(circle,rgba(201,162,77,.16),transparent 65%);mix-blend-mode:screen;transition:opacity .3s;opacity:0}
.ucm-site.tema-octubre ~ .ucm-cursor,.tema-octubre .ucm-cursor{background:radial-gradient(circle,rgba(194,31,42,.2),transparent 65%)}
.ucm-dot{position:fixed;left:0;top:0;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--v11-gold,#C9A24D);pointer-events:none;z-index:9999;transition:width .2s,height .2s,margin .2s,background .2s,border-color .2s;border:1.5px solid transparent}
.ucm-dot.is-hover{width:40px;height:40px;margin:-20px 0 0 -20px;background:transparent;border-color:var(--v11-gold,#C9A24D)}
.ucm-site [data-tilt]{transform-style:preserve-3d;transition:transform .25s ease-out;will-change:transform}
.ucm-site .v19-split .w{display:inline-block;overflow:hidden;vertical-align:bottom}
.ucm-site .v19-split .w>span{display:inline-block;transform:translateY(105%);transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.ucm-site .v19-split.is-in .w>span{transform:none}
.ucm-site .v19-more{display:flex;justify-content:center;margin-top:34px}
.ucm-site .v19-more a{display:inline-flex;gap:10px;align-items:center;border:1px solid var(--v11-gold,#C9A24D);color:inherit;text-decoration:none;border-radius:999px;padding:14px 28px;letter-spacing:.14em;text-transform:uppercase;font-size:13px;transition:background .3s,color .3s}
.ucm-site .v19-more a:hover{background:var(--v11-gold,#C9A24D);color:#0a0906}
@media (hover:none),(prefers-reduced-motion:reduce){.ucm-cursor,.ucm-dot{display:none}}
@media (prefers-reduced-motion:reduce){#ucm-bats{display:none}.ucm-site .v19-split .w>span{transform:none}}

/* ===== UCM · Footer v22: horizontal, de borde a borde ===== */
.ucm-site{overflow-x:clip}
.site-footer.uf{--a:var(--v11-gold,#C9A24D);--bone:#ECE4D6;--mut:rgba(236,228,214,.58);--ln:rgba(236,228,214,.1);
 position:relative;width:100vw;max-width:none;margin:0 calc(50% - 50vw);padding:0!important;background:#050404;color:var(--bone);
 border-top:1px solid var(--ln);overflow:hidden;isolation:isolate;font-size:15px}
.uf *{box-sizing:border-box}
.uf a{color:inherit;text-decoration:none}
.uf-in{padding:0 clamp(20px,4vw,72px)}
.uf:before{content:"";position:absolute;inset:-40% -10% auto;height:120%;z-index:-1;pointer-events:none;
 background:radial-gradient(60% 50% at var(--mx,50%) 0%,color-mix(in srgb,var(--a) 22%,transparent),transparent 70%);transition:background .2s}
/* Marquesina */
.uf-mq{border-bottom:1px solid var(--ln);overflow:hidden;padding:22px 0;white-space:nowrap;user-select:none}
.uf-mq-t{display:inline-flex;gap:48px;animation:ufmq 38s linear infinite;padding-left:48px}
.uf-mq span{font-size:clamp(34px,5vw,72px);font-weight:900;letter-spacing:-.02em;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(236,228,214,.35);transition:color .3s,-webkit-text-stroke-color .3s}
.uf-mq span:hover{color:var(--a);-webkit-text-stroke-color:var(--a)}
.uf-mq i{font-style:normal;color:var(--a);font-size:clamp(20px,2.4vw,34px);align-self:center}
.uf-mq:hover .uf-mq-t{animation-play-state:paused}
@keyframes ufmq{to{transform:translateX(-50%)}}
/* Fila principal */
.uf-main{display:grid;grid-template-columns:minmax(300px,1.7fr) repeat(4,minmax(150px,1fr));gap:clamp(24px,3vw,56px);padding-top:clamp(48px,6vw,84px);padding-bottom:clamp(40px,5vw,64px)}
.uf-cta h2{font-size:clamp(40px,3.9vw,66px);line-height:.95;letter-spacing:-.03em;margin:0 0 18px;color:var(--bone)}
.uf-cta h2 em{font-style:normal;color:var(--a)}
.uf-cta p{color:var(--mut);margin:0 0 24px;max-width:440px;line-height:1.6}
.uf-btns{display:flex;gap:10px;flex-wrap:wrap}
.uf-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:99px;font-weight:700;font-size:14px;background:var(--a);color:#0b0908!important;transition:transform .25s,box-shadow .25s}
.uf-btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px -12px var(--a)}
.uf-btn.o{background:transparent;border:1px solid var(--ln);color:var(--bone)!important}
.uf-btn.o:hover{border-color:var(--a);box-shadow:none}
.uf-np{display:flex;align-items:center;gap:14px;margin-top:28px;padding:12px 18px 12px 12px;border:1px solid var(--ln);border-radius:18px;max-width:420px;background:rgba(236,228,214,.03);transition:border-color .3s}
.uf-np:hover{border-color:var(--a)}
.uf-np img{width:56px;height:56px;border-radius:10px;object-fit:cover;animation:ufspin 9s linear infinite;animation-play-state:paused}
.uf-np:hover img{animation-play-state:running;border-radius:50%}
.uf-np small{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--a)}
.uf-np b{font-size:17px}.uf-np span{color:var(--mut);font-size:13px}
.uf-eq{display:inline-flex;gap:3px;align-items:flex-end;height:14px;margin-left:auto}
.uf-eq i{width:3px;background:var(--a);border-radius:2px;animation:ufeq 1s ease-in-out infinite}
.uf-eq i:nth-child(2){animation-delay:.2s}.uf-eq i:nth-child(3){animation-delay:.4s}.uf-eq i:nth-child(4){animation-delay:.1s}
@keyframes ufeq{0%,100%{height:3px}50%{height:14px}}
@keyframes ufspin{to{transform:rotate(360deg)}}
.uf-col h3{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--a);margin:8px 0 18px;font-weight:600}
.uf-col h3 small{display:block;color:var(--mut);letter-spacing:.14em;margin-top:4px;font-size:10px}
.uf-col ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.uf-col a{color:var(--mut);position:relative;transition:color .25s,padding .25s}
.uf-col a:before{content:"";position:absolute;left:0;top:50%;width:0;height:1px;background:var(--a);transition:width .25s}
.uf-col a:hover{color:var(--bone);padding-left:16px}
.uf-col a:hover:before{width:10px}
/* Franja: ciudades + redes */
.uf-strip{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);padding-top:22px;padding-bottom:22px}
.uf-cities{display:flex;gap:28px;flex-wrap:wrap}
.uf-city{display:flex;align-items:center;gap:12px}
.uf-city i{width:8px;height:8px;border-radius:50%;background:var(--a);box-shadow:0 0 0 0 var(--a);animation:ufpulse 2s infinite}
@keyframes ufpulse{70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.uf-city b{font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.uf-city time{font-variant-numeric:tabular-nums;color:var(--mut);font-size:14px}
.uf-social{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.uf-social a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--ln);transition:all .25s}
.uf-social a:hover{background:var(--a);border-color:var(--a);color:#0b0908;transform:translateY(-3px)}
.uf-social svg{width:18px;height:18px;fill:currentColor}
.uf-top{display:inline-flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.uf-top b{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--a);color:var(--a);transition:transform .3s}
.uf-top:hover b{transform:translateY(-4px)}
/* Wordmark gigante con linterna */
.uf-mark{position:relative;padding:clamp(20px,3vw,40px) 0 0;line-height:.8;font-weight:900;letter-spacing:-.045em;font-size:12vw;white-space:nowrap;text-align:center;user-select:none;
 color:transparent;-webkit-text-stroke:1px rgba(236,228,214,.08);
 background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),var(--a),rgba(236,228,214,.07) 60%);-webkit-background-clip:text;background-clip:text;overflow:hidden}
.uf-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:22px;padding-bottom:26px;font-size:12px;color:var(--mut);border-top:1px solid var(--ln)}
.uf-bottom a:hover{color:var(--bone)}
.uf-legal{display:flex;gap:18px;flex-wrap:wrap}
/* Responsive */
@media(max-width:1180px){.uf-main{grid-template-columns:repeat(4,1fr)}.uf-cta{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px 40px;align-items:end}.uf-cta h2{grid-row:span 2}.uf-np{margin-top:10px}}
@media(max-width:760px){.uf-main{grid-template-columns:1fr 1fr}.uf-cta{display:block}.uf-strip{grid-template-columns:1fr;justify-items:start}.uf-social{justify-content:flex-start}.uf-mark{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.uf-mq-t,.uf-eq i,.uf-city i,.uf-np img{animation:none!important}}
/* Scoped v23 layout repair. Load after existing footer styles. */
.ucm-site .site-footer.uf{width:100%;max-width:100%;margin:0;--mut:rgba(236,228,214,.76)}
.site-footer.uf .uf-in{width:100%;max-width:1280px;margin-inline:auto;padding-inline:clamp(24px,4vw,64px)}
.site-footer.uf .uf-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.35fr);gap:48px 32px;padding-block:64px;align-items:start}
.site-footer.uf .uf-main>*{min-width:0}
.site-footer.uf .uf-cta{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 48px;align-items:start;padding-bottom:40px;border-bottom:1px solid var(--ln)}
.site-footer.uf .uf-cta h2{grid-column:1;grid-row:1/3;font-size:clamp(36px,4vw,56px);line-height:1.08;margin:0;overflow-wrap:normal}
.site-footer.uf .uf-cta p{grid-column:2;margin:0;max-width:44ch}
.site-footer.uf .uf-btns{grid-column:2;display:flex;flex-wrap:wrap;gap:12px}
.site-footer.uf .uf-btn{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.5;padding:12px 18px}
.site-footer.uf .uf-np{grid-column:1/-1;margin-top:4px;width:100%;max-width:360px}
.site-footer.uf .uf-col{display:block;position:static;width:auto;min-width:0;padding:0;margin:0;align-self:start}
.site-footer.uf .uf-col h3{display:block;margin:0 0 20px;line-height:1.5;font-size:12px;letter-spacing:.12em}
.site-footer.uf .uf-col h3 small{line-height:1.5;margin-top:6px}
.site-footer.uf .uf-col ul{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;width:100%;margin:0;padding:0;list-style:none}
.site-footer.uf .uf-col li{display:block;margin:0;padding:0;min-width:0}
.site-footer.uf .uf-col a{display:block;padding:5px 0;line-height:1.55;white-space:normal;overflow-wrap:anywhere;font-size:15px}
.site-footer.uf .uf-col a:hover{padding-left:0;color:var(--bone);text-decoration:underline;text-underline-offset:5px}
.site-footer.uf .uf-col a:before{display:none}
.site-footer.uf a:focus-visible{outline:2px solid var(--a);outline-offset:5px}
.site-footer.uf .uf-strip{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;padding-block:24px}
.site-footer.uf .uf-cities{gap:16px 24px}
.site-footer.uf .uf-mark{font-size:clamp(28px,8vw,110px)!important;padding-block:28px;line-height:1;letter-spacing:-.035em}
.site-footer.uf .uf-bottom{display:flex;gap:16px 40px;padding-block:24px 88px;line-height:1.7}
.site-footer.uf .uf-bottom span{flex:1 1 280px;min-width:0}
@media(max-width:960px){.site-footer.uf .uf-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}.site-footer.uf .uf-cta{gap:24px}.site-footer.uf .uf-cta h2{font-size:40px}}
@media(max-width:600px){.site-footer.uf .uf-main{grid-template-columns:1fr;padding-block:40px;gap:32px}.site-footer.uf .uf-cta{display:flex;flex-direction:column;gap:20px;padding-bottom:32px}.site-footer.uf .uf-cta h2{font-size:38px}.site-footer.uf .uf-btns{flex-direction:column;align-items:flex-start;width:100%}.site-footer.uf .uf-col h3{margin-bottom:12px}.site-footer.uf .uf-social{justify-content:flex-start}.site-footer.uf .uf-city{flex-wrap:wrap}.site-footer.uf .uf-mq{padding-block:18px}}
