/* Mejoras visuales — animaciones sobrias para abogadogiovanni.com */
:root{--mj-gold:#b68929;--mj-gold-2:#d4aa4f;--mj-navy:#15182d;--mj-ease:cubic-bezier(.16,.84,.44,1)}

/* Barra de progreso de lectura */
.mj-progress{position:fixed;top:0;left:0;right:0;height:3px;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--mj-gold),var(--mj-gold-2));z-index:70;pointer-events:none}

/* Navegación */
nav{transition:box-shadow .35s var(--mj-ease),padding .35s var(--mj-ease)}
nav img{transition:height .35s var(--mj-ease)}
nav.mj-scrolled{box-shadow:0 8px 28px rgba(21,24,45,.09)}
nav.mj-scrolled img{height:44px!important}
.gv-navlink{transition:color .25s,border-color .25s}
.gv-navlink.mj-active{color:var(--color-accent);border-color:var(--mj-gold)}

/* Botones: destello al pasar el cursor */
.btn{transition:background .25s,color .25s,transform .25s var(--mj-ease),box-shadow .25s}
.btn-primary{position:relative;overflow:hidden}
.btn-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--mj-ease);pointer-events:none}
.btn-primary:hover::after{transform:translateX(120%)}
.btn:hover{transform:translateY(-2px)}
.btn-primary:hover{box-shadow:0 10px 24px rgba(21,24,45,.22)}

/* Titular del encabezado: palabras que ascienden */
.mj-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.mj-word>span{display:inline-block;transform:translateY(110%);animation:mjRise 1s var(--mj-ease) forwards}
@keyframes mjRise{to{transform:none}}
.mj-line{background:linear-gradient(var(--mj-gold),var(--mj-gold)) no-repeat 0 94%/0% .07em;-webkit-box-decoration-break:clone;box-decoration-break:clone;animation:mjUnder 1.1s var(--mj-ease) 1.2s forwards}
@keyframes mjUnder{to{background-size:100% .07em}}

/* Fotografías: blanco y negro, color al pasar el cursor, movimiento lento */
.mj-fig{position:relative}
.mj-frame{overflow:hidden;position:relative;height:100%}
.mj-bw{filter:grayscale(1) contrast(1.08);transition:filter 1.2s var(--mj-ease)}
.mj-fig:hover .mj-bw{filter:grayscale(.15) contrast(1.02)}
.mj-ken{animation:mjKen 24s ease-in-out infinite alternate;transform-origin:60% 40%}
@keyframes mjKen{from{transform:scale(1.02)}to{transform:scale(1.13) translate(-1.5%,1%)}}
.mj-corner{position:absolute;width:56px;height:56px;pointer-events:none;z-index:2}
.mj-corner::before,.mj-corner::after{content:"";position:absolute;background:var(--mj-gold);transition:transform 1s var(--mj-ease) 1s}
.mj-corner::before{height:3px;width:100%}
.mj-corner::after{width:3px;height:100%}
.mj-c1{top:-10px;left:-10px}.mj-c1::before,.mj-c1::after{top:0;left:0}
.mj-c2{bottom:-10px;right:-10px}.mj-c2::before,.mj-c2::after{bottom:0;right:0}
.mj-c1::before,.mj-c2::before{transform:scaleX(0)}
.mj-c1::after,.mj-c2::after{transform:scaleY(0)}
.mj-c1::before{transform-origin:0 0}.mj-c1::after{transform-origin:0 0}
.mj-c2::before{transform-origin:100% 0}.mj-c2::after{transform-origin:0 100%}
.mj-ready .mj-corner::before,.mj-ready .mj-corner::after{transform:none}

/* Distintivos flotantes sobre la foto */
.mj-badge{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--mj-navy);padding:10px 14px;border-left:3px solid var(--mj-gold);box-shadow:0 14px 34px rgba(21,24,45,.22);font-family:var(--font-heading);opacity:0;transform:translateY(16px);transition:opacity .8s var(--mj-ease),transform .8s var(--mj-ease)}
.mj-bob{display:flex;align-items:center;gap:10px}
.mj-badge b{display:block;font-size:13px;font-weight:800;line-height:1.2}
.mj-badge small{display:block;font-size:11px;font-weight:400;opacity:.7;line-height:1.3}
.mj-badge svg{width:22px;height:22px;color:var(--mj-gold);flex:0 0 auto}
.mj-b1{left:-18px;bottom:28px}
.mj-b2{right:-18px;top:28px}
.mj-ready .mj-b1{opacity:1;transform:none;transition-delay:1.5s}
.mj-ready .mj-b2{opacity:1;transform:none;transition-delay:1.8s}
.mj-ready .mj-b1>span,.mj-ready .mj-b2>span{animation:mjBob 6s ease-in-out infinite}
.mj-dot{position:relative;width:10px;height:10px;border-radius:50%;background:#2f9e5f;flex:0 0 auto}
.mj-dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid #2f9e5f;animation:mjPulse 2s ease-out infinite}
@keyframes mjPulse{from{transform:scale(.5);opacity:1}to{transform:scale(1.6);opacity:0}}
@keyframes mjBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media (max-width:780px){.mj-b1{left:10px;bottom:14px}.mj-b2{right:10px;top:14px}}

/* Cinta de materias en movimiento */
.mj-marquee{background:var(--mj-navy);color:#f3f2f2;overflow:hidden;border-bottom:2px solid var(--color-divider);position:relative}
.mj-marquee::before,.mj-marquee::after{content:"";position:absolute;top:0;bottom:0;width:80px;z-index:1;pointer-events:none}
.mj-marquee::before{left:0;background:linear-gradient(90deg,var(--mj-navy),transparent)}
.mj-marquee::after{right:0;background:linear-gradient(-90deg,var(--mj-navy),transparent)}
.mj-track{display:flex;width:max-content;animation:mjMarquee 48s linear infinite}
.mj-marquee:hover .mj-track{animation-play-state:paused}
.mj-track span{display:inline-flex;align-items:center;gap:22px;padding:18px 0 18px 22px;font-family:var(--font-heading);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.mj-track span::after{content:"";width:7px;height:7px;background:var(--mj-gold);transform:rotate(45deg)}
@keyframes mjMarquee{to{transform:translateX(-50%)}}

/* Cifras: línea dorada que crece */
.gv-statgrid>div{position:relative}
.gv-statgrid>div::before{content:"";position:absolute;left:-2px;top:0;width:2px;height:0;background:var(--mj-gold);transition:height 1.1s var(--mj-ease) .2s}
.gv-statgrid>div.gv-in::before{height:100%}

/* Tarjetas con foco de luz que sigue al cursor */
.mj-card{position:relative;overflow:hidden;isolation:isolate;transition:background .35s}
.mj-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(182,137,41,.13),transparent 60%)}
.mj-card::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--mj-gold);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--mj-ease)}
.mj-card:hover{background:#fff!important}
.mj-card:hover::before{opacity:1}
.mj-card:hover::after{transform:scaleX(1)}
.mj-card svg{transition:transform .5s var(--mj-ease)}
.mj-card:hover svg{transform:translateY(-3px) rotate(-6deg) scale(1.08)}

/* Títulos y etiquetas que aparecen */
.mj-anim .mj-rv{opacity:0;transform:translateY(18px);transition:opacity .9s var(--mj-ease),transform .9s var(--mj-ease)}
.mj-anim .mj-rv.mj-on{opacity:1;transform:none}
.mj-kick::before{content:"";display:inline-block;width:0;height:2px;background:var(--mj-gold);vertical-align:middle;margin-right:0;transition:width .8s var(--mj-ease) .2s,margin .8s var(--mj-ease) .2s}
.mj-kick.mj-on::before{width:28px;margin-right:10px}

/* Lista de razones (honorarios) */
.mj-anim .mj-list li{opacity:0;transform:translateX(-14px);transition:opacity .6s var(--mj-ease),transform .6s var(--mj-ease)}
.mj-anim .mj-list.mj-on li{opacity:1;transform:none}

/* Foto del despacho: cortina que se abre */
.mj-anim .mj-wipe .mj-frame{clip-path:inset(0 100% 0 0);transition:clip-path 1.4s var(--mj-ease)}
.mj-anim .mj-wipe.mj-on .mj-frame{clip-path:inset(0 0 0 0)}

/* Ilustraciones animadas */
.mj-illu{position:absolute;right:20px;pointer-events:none;color:var(--mj-navy)}
.mj-illu svg{display:block;width:100%;height:auto;overflow:visible}
@media (max-width:1060px){.mj-illu{display:none}}
.mj-illu-scale{top:clamp(40px,5vw,72px);width:250px}
.mj-illu-route{top:clamp(48px,6vw,88px);width:330px}
.mj-illu-doc{top:clamp(40px,5vw,72px);width:250px}
.mj-ink{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mj-gold{fill:none;stroke:var(--mj-gold);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.mj-goldfill{fill:var(--mj-gold)}
.mj-soft{fill:rgba(182,137,41,.12)}

/* Balanza */
.mj-beam{transform-origin:120px 46px;animation:mjSway 6s ease-in-out infinite alternate}
.mj-pan{animation:mjSwayBack 6s ease-in-out infinite alternate}
.mj-pan-l{transform-origin:40px 46px}
.mj-pan-r{transform-origin:200px 46px}
@keyframes mjSway{from{transform:rotate(-6deg)}to{transform:rotate(6deg)}}
@keyframes mjSwayBack{from{transform:rotate(6deg)}to{transform:rotate(-6deg)}}
.mj-orbit{transform-origin:120px 110px;animation:mjSpin 40s linear infinite}
@keyframes mjSpin{to{transform:rotate(360deg)}}
.mj-spark{animation:mjFloat 5s ease-in-out infinite}
.mj-spark:nth-of-type(2){animation-delay:-1.7s}
.mj-spark:nth-of-type(3){animation-delay:-3.2s}
@keyframes mjFloat{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(-10px);opacity:1}}

/* Ruta del caso */
.mj-trail{stroke-dasharray:1;stroke-dashoffset:1;animation:mjTrail 8s var(--mj-ease) infinite}
@keyframes mjTrail{0%{stroke-dashoffset:1}70%,88%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.mj-node{fill:var(--color-bg,#f3f2f2);stroke:currentColor;stroke-width:2}
.mj-node-t{font:800 10px var(--font-heading);fill:currentColor;text-anchor:middle}

/* Documento que se firma */
.mj-l{transform-box:fill-box;transform-origin:0 50%;animation:mjLine 7s var(--mj-ease) infinite}
.mj-l:nth-of-type(2){animation-delay:.15s}.mj-l:nth-of-type(3){animation-delay:.3s}.mj-l:nth-of-type(4){animation-delay:.45s}.mj-l:nth-of-type(5){animation-delay:.6s}
@keyframes mjLine{0%{transform:scaleX(0)}18%,90%{transform:scaleX(1);opacity:1}100%{transform:scaleX(1);opacity:0}}
.mj-sign{stroke-dasharray:1;stroke-dashoffset:1;animation:mjSign 7s ease-in-out infinite}
@keyframes mjSign{0%,28%{stroke-dashoffset:1}55%,90%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.mj-seal{transform-box:fill-box;transform-origin:50% 50%;animation:mjSeal 7s var(--mj-ease) infinite}
@keyframes mjSeal{0%,58%{transform:scale(0) rotate(-30deg);opacity:0}66%{transform:scale(1.15) rotate(0);opacity:1}72%,90%{transform:scale(1);opacity:1}100%{opacity:0}}

/* Banda final: columnas que se dibujan y luz que recorre */
.mj-cta{position:relative;overflow:hidden}
.mj-cta>*{position:relative;z-index:1}
.mj-cta>.mj-court{position:absolute;z-index:0;right:-40px;bottom:-10px;width:min(520px,70vw);opacity:.16;color:#fff}
.mj-cta>.mj-sweep{position:absolute;z-index:0;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(212,170,79,.16) 50%,transparent 65%);background-size:250% 100%;animation:mjSweep 9s ease-in-out infinite}
@keyframes mjSweep{0%{background-position:120% 0}60%,100%{background-position:-20% 0}}
.mj-court path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.6s var(--mj-ease)}
.mj-court.mj-on path{stroke-dashoffset:0}

/* Retrato en la banda final */
.mj-cta>.mj-ctaphoto{position:absolute;z-index:0;top:0;right:0;bottom:0;width:min(46%,660px);margin:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%);mask-image:linear-gradient(90deg,transparent 0,#000 38%)}
.mj-ctaphoto img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.mj-ctaphoto figcaption{position:absolute;right:24px;bottom:24px;margin:0;background:rgba(21,24,45,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;padding:10px 14px;border-left:3px solid var(--mj-gold);font-family:var(--font-heading)}
.mj-ctaphoto figcaption b{display:block;font-size:14px;font-weight:800}
.mj-ctaphoto figcaption span{display:block;font-size:11px;opacity:.75;letter-spacing:.06em;text-transform:uppercase}
.mj-cta-photo>.mj-court{display:none}
.mj-cta-photo>div:not([class]){pointer-events:none}
.mj-cta-photo>div:not([class])>*{pointer-events:auto}
@media (min-width:961px){.mj-cta-photo h2{max-width:13ch}}
@media (max-width:960px){.mj-cta>.mj-ctaphoto{position:relative;width:100%;height:380px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 30%);mask-image:linear-gradient(180deg,transparent 0,#000 30%)}}

/* Botones flotantes */
.mj-fab{position:fixed;right:20px;bottom:20px;z-index:65;width:58px;height:58px;border-radius:50%;background:var(--mj-navy);color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px rgba(21,24,45,.35);transform:scale(0);animation:mjPop .6s var(--mj-ease) 2.4s forwards;text-decoration:none}
.mj-fab svg{width:26px;height:26px}
.mj-fab:hover{color:#fff;background:#23283f}
.mj-fab-ring{position:absolute;inset:0;border-radius:50%;border:2px solid var(--mj-gold);animation:mjRing 2.8s ease-out 3s infinite;opacity:0}
@keyframes mjRing{from{transform:scale(1);opacity:.9}to{transform:scale(1.55);opacity:0}}
@keyframes mjPop{to{transform:scale(1)}}
.mj-fab-tip{position:absolute;right:70px;top:50%;transform:translate(8px,-50%);opacity:0;white-space:nowrap;background:#fff;color:var(--mj-navy);font:800 13px var(--font-heading);padding:8px 12px;border-left:3px solid var(--mj-gold);box-shadow:0 8px 24px rgba(21,24,45,.18);transition:opacity .3s,transform .3s;pointer-events:none}
.mj-fab:hover .mj-fab-tip,.mj-fab:focus-visible .mj-fab-tip{opacity:1;transform:translate(0,-50%)}
.mj-top{position:fixed;right:29px;bottom:92px;z-index:64;width:40px;height:40px;display:grid;place-items:center;background:#fff;color:var(--mj-navy);border:1px solid var(--color-divider);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .3s,transform .3s}
.mj-top svg{width:18px;height:18px}
.mj-top.mj-show{opacity:1;transform:none;pointer-events:auto}
.mj-top:hover{color:var(--mj-gold)}

/* Banderas y servicio internacional */
.mj-flag{position:relative;display:inline-block;overflow:hidden;line-height:0;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.mj-flag svg{display:block;width:100%;height:100%}
.mj-flag::after{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:soft-light;background:linear-gradient(100deg,rgba(0,0,0,.14) 0%,rgba(255,255,255,.3) 17%,rgba(0,0,0,.12) 34%,rgba(255,255,255,.26) 50%,rgba(0,0,0,.14) 67%,rgba(255,255,255,.3) 84%,rgba(0,0,0,.14) 100%);background-size:200% 100%;animation:mjWave 5s linear infinite}
@keyframes mjWave{to{background-position:-200% 0}}
.mj-flags-mini{display:inline-flex;gap:4px;flex:0 0 auto;margin-top:3px}
.mj-flags-mini .mj-flag{width:22px;height:14px}
.mj-intl{border-top:2px solid var(--color-divider);position:relative;overflow:hidden}
.mj-intl-in{max-width:1200px;margin:0 auto;padding:clamp(56px,7vw,96px) 20px;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,5vw,72px);align-items:center}
.mj-intl-art{position:relative;height:320px}
.mj-intl-art .mj-orbitbox{position:absolute;left:50%;top:50%;width:300px;height:300px;margin:-150px 0 0 -150px;color:var(--mj-gold)}
.mj-intl-art .mj-orbitbox svg{width:100%;height:100%;overflow:visible}
.mj-intl-art .mj-flag{position:absolute;z-index:1;box-shadow:0 18px 40px rgba(21,24,45,.28)}
.mj-f-cr{left:4%;top:30px;width:min(250px,58%);aspect-ratio:5/3;transform:rotate(-5deg)}
.mj-f-us{right:4%;bottom:30px;width:min(270px,62%);aspect-ratio:19/10;transform:rotate(4deg)}
.mj-anim .mj-f-cr{animation:mjFlagA 7s ease-in-out infinite}
.mj-anim .mj-f-us{animation:mjFlagB 7s ease-in-out infinite}
@keyframes mjFlagA{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(-3.5deg) translateY(-9px)}}
@keyframes mjFlagB{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(2.5deg) translateY(9px)}}
.mj-intl-kick{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-700);margin-bottom:16px}
.mj-intl h2{font-family:var(--font-heading);font-weight:800;font-size:clamp(30px,3.4vw,44px);line-height:1.08;letter-spacing:-.02em;margin:0}
.mj-intl-lead{font-size:16px;line-height:1.65;margin:20px 0 0;color:color-mix(in srgb,var(--color-text) 80%,transparent);max-width:56ch}
.mj-intl ul{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:16px}
.mj-intl li{display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.55}
.mj-intl li svg{width:22px;height:22px;flex:0 0 auto;color:var(--mj-gold);margin-top:1px}
.mj-intl li b{font-family:var(--font-heading);font-weight:800}
.mj-intl-en{margin:24px 0 0;font-size:14px;font-style:italic;color:color-mix(in srgb,var(--color-text) 70%,transparent)}
.mj-intl .btn{margin-top:24px}
@media (max-width:820px){.mj-intl-in{grid-template-columns:1fr}.mj-intl-art{height:250px}}
@media (prefers-reduced-motion:reduce){.mj-flag::after,.mj-f-cr,.mj-f-us{animation:none!important}}

/* Urgencias penales */
.mj-urg{background:var(--mj-navy);color:#f3f2f2;position:relative;overflow:hidden;border-bottom:2px solid var(--color-divider)}
.mj-urg::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 400px at 85% 20%,rgba(182,137,41,.18),transparent 70%);pointer-events:none}
.mj-urg-in{position:relative;max-width:1200px;margin:0 auto;padding:clamp(56px,7vw,96px) 20px}
.mj-urg-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center}
.mj-urg-kick{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mj-gold-2);margin-bottom:22px}
.mj-urg-dot{position:relative;width:10px;height:10px;border-radius:50%;background:#e24b3b;flex:0 0 auto}
.mj-urg-dot::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid #e24b3b;animation:mjPulse 1.6s ease-out infinite}
.mj-urg h2{font-family:var(--font-heading);font-weight:800;font-size:clamp(34px,4.2vw,58px);line-height:1.02;letter-spacing:-.025em;margin:0;color:#fff}
.mj-urg h2 em{font-style:normal;color:var(--mj-gold-2)}
.mj-urg-lead{font-size:clamp(16px,1.3vw,18px);line-height:1.65;margin:24px 0 0;color:rgba(243,242,242,.82);max-width:54ch}
.mj-urg-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.mj-urg .btn-gold{background:var(--mj-gold);color:var(--mj-navy);font-size:16px;padding:14px 22px}
.mj-urg .btn-gold:hover{background:var(--mj-gold-2)}
.mj-urg .btn-line{border:1px solid rgba(255,255,255,.45);color:#fff;font-size:16px;padding:14px 22px}
.mj-urg .btn-line:hover{background:rgba(255,255,255,.1)}
.mj-urg-promise{display:flex;align-items:center;gap:16px;margin-top:32px;padding:16px 20px;border:1px solid rgba(182,137,41,.5);background:rgba(182,137,41,.08);max-width:520px}
.mj-urg-promise b{display:block;font-family:var(--font-heading);font-weight:800;font-size:18px;color:#fff;line-height:1.2}
.mj-urg-promise span{display:block;font-size:13px;color:rgba(243,242,242,.75);margin-top:4px}
.mj-clock{width:54px;height:54px;flex:0 0 auto;color:var(--mj-gold-2)}
.mj-clock .mj-hand{transform-origin:27px 27px;animation:mjClock 12s linear infinite}
.mj-clock .mj-hand-s{animation-duration:4s}
@keyframes mjClock{to{transform:rotate(360deg)}}
.mj-urg-cards{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}
.mj-urg-card{background:var(--mj-navy);padding:26px 24px;position:relative;overflow:hidden;transition:background .35s}
.mj-urg-card::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--mj-gold);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--mj-ease)}
.mj-urg-card:hover{background:#1c2040}
.mj-urg-card:hover::after{transform:scaleX(1)}
.mj-urg-card svg{width:28px;height:28px;color:var(--mj-gold-2);margin-bottom:14px;transition:transform .5s var(--mj-ease)}
.mj-urg-card:hover svg{transform:translateY(-3px) scale(1.08)}
.mj-urg-card h3{font-family:var(--font-heading);font-weight:800;font-size:17px;margin:0 0 8px;color:#fff;line-height:1.2}
.mj-urg-card p{font-size:13.5px;line-height:1.55;margin:0;color:rgba(243,242,242,.72)}
.mj-anim .mj-urg-card{opacity:0;transform:translateY(16px);transition:opacity .7s var(--mj-ease),transform .7s var(--mj-ease),background .35s}
.mj-anim .mj-urg-cards.mj-on .mj-urg-card{opacity:1;transform:none}
.mj-urg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:clamp(40px,5vw,64px);padding-top:28px;border-top:1px solid rgba(255,255,255,.14);position:relative}
.mj-urg-steps::before{content:"";position:absolute;left:0;top:-1px;height:2px;width:0;background:var(--mj-gold);transition:width 2.4s var(--mj-ease)}
.mj-urg-steps.mj-on::before{width:100%}
.mj-urg-step{padding:0 24px 0 0}
.mj-urg-step span{font-family:var(--font-heading);font-weight:800;font-size:12px;letter-spacing:.1em;color:var(--mj-gold-2)}
.mj-urg-step b{display:block;font-family:var(--font-heading);font-weight:800;font-size:17px;margin:8px 0 6px;color:#fff}
.mj-urg-step p{margin:0;font-size:13.5px;line-height:1.55;color:rgba(243,242,242,.72)}
.gv-navlink.mj-navurg{color:#b45309}
.gv-navlink.mj-navurg:hover,.gv-navlink.mj-navurg.mj-active{color:#b45309;border-color:#b45309}
.mj-btn-urg{border-color:#b45309!important;color:#7c2d12!important}
.mj-btn-urg:hover{background:rgba(180,83,9,.08)!important}
@media (max-width:900px){.mj-urg-grid{grid-template-columns:1fr}.mj-urg-steps{grid-template-columns:1fr;gap:20px}}
@media (max-width:520px){.mj-urg-cards{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.mj-urg-dot::after,.mj-clock .mj-hand{animation:none!important}.mj-urg-steps::before{width:100%}}

/* Respeto a quien prefiere menos movimiento */
@media (prefers-reduced-motion:reduce){
  .mj-ken,.mj-track,.mj-beam,.mj-pan,.mj-orbit,.mj-spark,.mj-trail,.mj-l,.mj-sign,.mj-seal,.mj-sweep,.mj-fab-ring,.mj-dot::after,.mj-ready .mj-b1>span,.mj-ready .mj-b2>span{animation:none!important}
  .mj-trail,.mj-sign,.mj-court path{stroke-dashoffset:0!important}
  .mj-seal,.mj-l{transform:none!important;opacity:1!important}
  .mj-fab{transform:none;animation:none}
  .mj-track{flex-wrap:wrap;width:auto;justify-content:center}
  .mj-track span[aria-hidden]{display:none}
}
@media print{.mj-progress,.mj-fab,.mj-top,.mj-marquee,.mj-illu{display:none!important}}
