body.rxco-studio-active.rxco-animations-enabled{
  --rxco-duration:720ms;
  --rxco-distance:24px;
  --rxco-ease:cubic-bezier(.2,.75,.2,1);
}
body.rxco-studio-active.rxco-intensity-soft{--rxco-duration:520ms;--rxco-distance:14px}
body.rxco-studio-active.rxco-intensity-balanced{--rxco-duration:640ms;--rxco-distance:20px}
body.rxco-studio-active.rxco-intensity-cinematic{--rxco-duration:820ms;--rxco-distance:28px}

body.rxco-studio-active.rxco-animations-enabled .rxco-pending-reveal{
  opacity:0;visibility:hidden;transform:translate3d(0,var(--rxco-distance),0);
}
body.rxco-studio-active.rxco-animations-enabled .rxco-pending-reveal[data-rxco-direction="left"]{transform:translate3d(calc(var(--rxco-distance) * -1),0,0)}
body.rxco-studio-active.rxco-animations-enabled .rxco-pending-reveal[data-rxco-direction="right"]{transform:translate3d(var(--rxco-distance),0,0)}
body.rxco-studio-active.rxco-animations-enabled .rxco-reveal{
  transition:opacity var(--rxco-duration) var(--rxco-ease),transform var(--rxco-duration) var(--rxco-ease),visibility 0s linear;
  transition-delay:var(--rxco-delay,0ms);
}
body.rxco-studio-active.rxco-animations-enabled .rxco-reveal.is-visible,
body.rxco-studio-active .rxco-animation-fallback,
body.rxco-studio-active.rxco-animation-fallback .rxco-reveal{
  opacity:1!important;visibility:visible!important;transform:none!important;
}

/* Hero */
body.rxco-studio-active.rxco-animations-enabled .ronin-hero-desktop img,
body.rxco-studio-active.rxco-animations-enabled .ronin-hero-mobile img{
  transform:scale(1.025);will-change:transform;
}
body.rxco-studio-active.rxco-animations-enabled.rxco-hero-playing .ronin-hero-desktop img,
body.rxco-studio-active.rxco-animations-enabled.rxco-hero-playing .ronin-hero-mobile img{
  animation:rxco-ken-burns 13s ease-out both;
}
body.rxco-studio-active .ronin-hero-desktop::after,
body.rxco-studio-active .ronin-hero-mobile::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:var(--rxco-hero-light,.16);
  background:radial-gradient(circle at var(--rxco-pointer-x,70%) var(--rxco-pointer-y,30%),rgba(231,201,130,.18),transparent 26%);
  transition:opacity .35s ease;
}
@keyframes rxco-ken-burns{from{transform:scale(1.025)}to{transform:scale(1.07)}}

/* Header */
body.rxco-studio-active.rxco-animations-enabled .ronin-page-header-desktop,
body.rxco-studio-active.rxco-animations-enabled .rxco-desktop-header{
  transition:min-height .32s ease,background-color .32s ease,box-shadow .32s ease,transform .55s var(--rxco-ease);
  animation:rxco-header-in .7s var(--rxco-ease) both;
}
body.rxco-studio-active.rxco-header-scrolled .ronin-page-header-desktop,
body.rxco-studio-active.rxco-header-scrolled .rxco-desktop-header{background:rgba(5,5,5,.985)!important;box-shadow:0 18px 42px rgba(0,0,0,.42)!important}
body.rxco-studio-active.rxco-header-scrolled .ronin-page-header-desktop>.fusion-builder-row,
body.rxco-studio-active.rxco-header-scrolled .rxco-desktop-header>.fusion-builder-row{min-height:62px!important}
@keyframes rxco-header-in{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}

/* Menú móvil */
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav__toggle i{transition:transform .3s ease,opacity .2s ease}
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav__backdrop{
  transition:opacity .28s ease,visibility 0s linear .28s;
}
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav__panel{
  transition:transform .34s var(--rxco-ease),visibility 0s linear .34s;
}
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav[open] .rxco-mobile-nav__backdrop,
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav[open] .rxco-mobile-nav__panel{transition-delay:0s}
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav[open] li{
  animation:rxco-mobile-link-in .32s var(--rxco-ease) both;
  animation-delay:calc(var(--rxco-menu-index) * 52ms + 70ms);
}
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav a{
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease;
}
body.rxco-studio-active.rxco-animations-enabled .rxco-mobile-nav a:active{transform:scale(.985)}
@keyframes rxco-mobile-link-in{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}

/* Tarjetas, portafolio, proceso y equipo */
body.rxco-studio-active.rxco-animations-enabled .ronin-service-card,
body.rxco-studio-active.rxco-animations-enabled .ronin-team-card,
body.rxco-studio-active.rxco-animations-enabled .ronin-process-card,
body.rxco-studio-active.rxco-animations-enabled .ronin-portfolio-card,
body.rxco-studio-active.rxco-animations-enabled .rxco-package-card{
  transition:transform .42s var(--rxco-ease),border-color .35s ease,box-shadow .42s ease;
}
@media(hover:hover) and (pointer:fine){
  body.rxco-studio-active.rxco-animations-enabled .ronin-service-card:hover,
  body.rxco-studio-active.rxco-animations-enabled .ronin-team-card:hover,
  body.rxco-studio-active.rxco-animations-enabled .ronin-process-card:hover,
  body.rxco-studio-active.rxco-animations-enabled .ronin-portfolio-card:hover,
  body.rxco-studio-active.rxco-animations-enabled .rxco-package-card:hover{
    transform:translateY(-5px) perspective(900px) rotateX(var(--rxco-tilt-x,0deg)) rotateY(var(--rxco-tilt-y,0deg));
    border-color:rgba(231,201,130,.5)!important;box-shadow:0 24px 60px rgba(0,0,0,.4),0 0 30px rgba(212,175,98,.08);
  }
  body.rxco-studio-active.rxco-animations-enabled .ronin-team-card img,
  body.rxco-studio-active.rxco-animations-enabled .ronin-portfolio-card img,
  body.rxco-studio-active.rxco-animations-enabled .ronin-service-card img{transition:transform 1.1s var(--rxco-ease)}
  body.rxco-studio-active.rxco-animations-enabled .ronin-team-card:hover img,
  body.rxco-studio-active.rxco-animations-enabled .ronin-portfolio-card:hover img,
  body.rxco-studio-active.rxco-animations-enabled .ronin-service-card:hover img{transform:scale(1.045)}
}

/* Botones */
body.rxco-studio-active.rxco-animations-enabled .rxco-button,
body.rxco-studio-active.rxco-animations-enabled .rxco-package-wa{
  position:relative;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
body.rxco-studio-active.rxco-animations-enabled .rxco-button::after,
body.rxco-studio-active.rxco-animations-enabled .rxco-package-wa::after{
  content:"";position:absolute;top:-70%;bottom:-70%;left:-45%;width:28%;transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);transition:left .65s var(--rxco-ease);
}
@media(hover:hover){
  body.rxco-studio-active.rxco-animations-enabled .rxco-button:hover,
  body.rxco-studio-active.rxco-animations-enabled .rxco-package-wa:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.25)}
  body.rxco-studio-active.rxco-animations-enabled .rxco-button:hover::after,
  body.rxco-studio-active.rxco-animations-enabled .rxco-package-wa:hover::after{left:120%}
}
body.rxco-studio-active.rxco-animations-enabled .rxco-button:active,
body.rxco-studio-active.rxco-animations-enabled .rxco-package-wa:active{transform:translateY(0) scale(.985)}
.rxco-ripple{position:absolute!important;z-index:3!important;width:10px;height:10px;border-radius:50%;pointer-events:none;background:rgba(247,242,232,.32);transform:translate(-50%,-50%) scale(0);animation:rxco-ripple .55s ease-out forwards}
@keyframes rxco-ripple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}

/* Paquetes y acordeones */
body.rxco-studio-active.rxco-animations-enabled .rxco-package-category>summary,
body.rxco-studio-active.rxco-animations-enabled .rxco-package-toggle i{transition:background-color .25s ease,border-color .25s ease,transform .3s ease}
body.rxco-studio-active.rxco-animations-enabled .rxco-package-category[open] .rxco-package-panel{animation:rxco-panel-reveal .38s var(--rxco-ease) both}
body.rxco-studio-active.rxco-animations-enabled .ronin-wedding-accordion .panel-body,
body.rxco-studio-active.rxco-animations-enabled .ronin-wedding-accordion .fusion-panel-body{animation:rxco-panel-reveal .38s var(--rxco-ease) both}
@keyframes rxco-panel-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* Barra de progreso y partículas */
.rxco-scroll-progress{position:fixed;z-index:10000;top:0;left:0;width:100%;height:2px;pointer-events:none;background:transparent}
body.admin-bar .rxco-scroll-progress{top:32px}@media(max-width:782px){body.admin-bar .rxco-scroll-progress{top:46px}}
.rxco-scroll-progress i{display:block;width:100%;height:100%;transform:scaleX(var(--rxco-scroll-progress,0));transform-origin:left;background:linear-gradient(90deg,var(--rxco-gold),var(--rxco-gold-light));box-shadow:0 0 12px rgba(212,175,98,.45)}
.rxco-ambient-particles{position:fixed;z-index:0;inset:0;pointer-events:none;overflow:hidden;opacity:.42}
.rxco-ambient-particles i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--rxco-gold);box-shadow:0 0 12px rgba(212,175,98,.55);animation:rxco-particle var(--rxco-particle-duration,18s) linear infinite;animation-delay:var(--rxco-particle-delay,0s)}
@keyframes rxco-particle{from{transform:translate3d(0,105vh,0);opacity:0}15%{opacity:.7}85%{opacity:.45}to{transform:translate3d(var(--rxco-particle-drift,20px),-10vh,0);opacity:0}}
body.rxco-paused *,body.rxco-paused *::before,body.rxco-paused *::after{animation-play-state:paused!important}

@media(max-width:1100px){
  body.rxco-studio-active.rxco-animations-enabled{--rxco-duration:560ms;--rxco-distance:14px}
  body.rxco-studio-active.rxco-animations-enabled .ronin-hero-mobile img{animation:none!important;transform:none!important}
  body.rxco-studio-active.rxco-animations-enabled [data-rxco-tilt]{transform:none!important}
  .rxco-ambient-particles{opacity:.25}
}

@media(prefers-reduced-motion:reduce){
  body.rxco-studio-active *,body.rxco-studio-active *::before,body.rxco-studio-active *::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important;
  }
  body.rxco-studio-active .rxco-pending-reveal{opacity:1!important;visibility:visible!important;transform:none!important}
  .rxco-ambient-particles,.rxco-scroll-progress{display:none!important}
}

/* V28 · movimiento del Avada Layout Header/Footer */
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-shell{animation:rxco-v28-header-in .76s var(--rxco-ease) both;transition:height .3s ease,background-color .3s ease,box-shadow .3s ease}
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-shell.is-scrolled{background-color:rgba(3,3,3,.975);box-shadow:0 19px 58px rgba(0,0,0,.58)}
body.rxco-v28.rxco-animations-enabled .rxco-layout-brand-mark{animation:rxco-v28-mark-glow 3.8s ease-in-out infinite}
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i:nth-child(1){animation:rxco-v28-aura 6.2s ease-in-out infinite alternate}
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i:nth-child(2){animation:rxco-v28-aura 7.4s ease-in-out -1.7s infinite alternate-reverse}
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i:nth-child(3){animation:rxco-v28-aura 6.8s ease-in-out -2.8s infinite alternate}
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-line i{animation:rxco-v28-line-scan 4.7s cubic-bezier(.4,0,.2,1) 1.1s infinite}
body.rxco-v28.rxco-animations-enabled .rxco-layout-wa::after{animation:rxco-v28-wa-shine 4.1s var(--rxco-ease) 1.6s infinite}
body.rxco-v28.rxco-animations-enabled.rxco-layout-menu-open .rxco-layout-mobile-panel nav>a:not(.rxco-layout-mobile-wa){animation:rxco-v28-mobile-link .42s var(--rxco-ease) both;animation-delay:calc(var(--rxco-mobile-index) * 55ms + 75ms)}
body.rxco-v28.rxco-animations-enabled.rxco-layout-menu-open .rxco-layout-mobile-heading{animation:rxco-v28-mobile-heading .44s var(--rxco-ease) both}
body.rxco-v28.rxco-animations-enabled .rxco-layout-footer-glow{animation:rxco-v28-footer-breathe 7s ease-in-out infinite alternate}
body.rxco-v28.rxco-animations-enabled .rxco-layout-footer-shell::after{content:"";position:absolute;left:-25%;bottom:0;width:25%;height:1px;background:linear-gradient(90deg,transparent,var(--rxco-gold-light),transparent);filter:drop-shadow(0 0 8px var(--rxco-gold));animation:rxco-v28-footer-scan 7s ease-in-out infinite}

@keyframes rxco-v28-header-in{from{opacity:0;transform:translate3d(0,-18px,0)}to{opacity:1;transform:none}}
@keyframes rxco-v28-mark-glow{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.18),0 0 18px rgba(255,183,18,.20)}50%{box-shadow:0 0 0 1px rgba(255,255,255,.25),0 0 34px rgba(255,183,18,.46)}}
@keyframes rxco-v28-aura{from{transform:translate3d(-12px,0,0) scale(.88);opacity:.13}to{transform:translate3d(22px,8px,0) scale(1.18);opacity:.32}}
@keyframes rxco-v28-line-scan{0%,18%{left:-22%;opacity:0}28%{opacity:1}62%{opacity:.9}76%,100%{left:104%;opacity:0}}
@keyframes rxco-v28-wa-shine{0%,58%{left:-65%;opacity:0}65%{opacity:.85}82%,100%{left:135%;opacity:0}}
@keyframes rxco-v28-mobile-link{from{opacity:0;transform:translate3d(14px,0,0)}to{opacity:1;transform:none}}
@keyframes rxco-v28-mobile-heading{from{opacity:0;transform:translate3d(0,-10px,0)}to{opacity:1;transform:none}}
@keyframes rxco-v28-footer-breathe{from{opacity:.48;transform:translateX(-50%) scale(.88)}to{opacity:.9;transform:translateX(-50%) scale(1.12)}}
@keyframes rxco-v28-footer-scan{0%,12%{left:-25%;opacity:0}24%{opacity:1}68%{opacity:.7}82%,100%{left:110%;opacity:0}}

@media(max-width:1024px){
  body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i{animation-duration:8s}
  body.rxco-v28.rxco-animations-enabled .rxco-layout-brand-mark{animation-duration:5s}
}
@media(prefers-reduced-motion:reduce){
  body.rxco-v28 .rxco-layout-header-shell,body.rxco-v28 .rxco-layout-brand-mark,body.rxco-v28 .rxco-layout-header-aura i,body.rxco-v28 .rxco-layout-header-line i,body.rxco-v28 .rxco-layout-wa::after,body.rxco-v28 .rxco-layout-mobile-panel *,body.rxco-v28 .rxco-layout-footer-glow,body.rxco-v28 .rxco-layout-footer-shell::after{animation:none!important}
}
body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i:nth-child(1),body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i:nth-child(2),body.rxco-v28.rxco-animations-enabled .rxco-layout-header-aura i:nth-child(3){opacity:.09}
@keyframes rxco-v28-aura{from{transform:translate3d(-8px,0,0) scale(.92);opacity:.055}to{transform:translate3d(14px,4px,0) scale(1.08);opacity:.13}}

/* V28.1 · movimiento móvil refinado */
body.rxco-v281.rxco-animations-enabled .rxco-layout-header-shell{animation:rxco-v281-header-in .58s cubic-bezier(.22,1,.36,1) both}
body.rxco-v281.rxco-animations-enabled .rxco-layout-mobile-intro{animation:none}
body.rxco-v281.rxco-animations-enabled.rxco-layout-menu-open .rxco-layout-mobile-intro{animation:rxco-v281-mobile-intro .38s cubic-bezier(.22,1,.36,1) both}
body.rxco-v281.rxco-animations-enabled.rxco-layout-menu-open .rxco-layout-mobile-nav>a{animation:rxco-v281-mobile-link .38s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--rxco-mobile-index) * 42ms + 45ms)}
body.rxco-v281.rxco-animations-enabled.rxco-layout-menu-open .rxco-layout-mobile-wa{animation:rxco-v281-mobile-cta .44s cubic-bezier(.22,1,.36,1) .30s both}
body.rxco-v281.rxco-animations-enabled .rxco-layout-header-line i{animation:rxco-v281-line-scan 5.8s cubic-bezier(.4,0,.2,1) 1.4s infinite}
@keyframes rxco-v281-header-in{from{opacity:0;transform:translate3d(0,-12px,0)}to{opacity:1;transform:none}}
@keyframes rxco-v281-mobile-intro{from{opacity:0;transform:translate3d(0,-8px,0)}to{opacity:1;transform:none}}
@keyframes rxco-v281-mobile-link{from{opacity:0;transform:translate3d(0,9px,0)}to{opacity:1;transform:none}}
@keyframes rxco-v281-mobile-cta{from{opacity:0;transform:translate3d(0,12px,0) scale(.98)}to{opacity:1;transform:none}}
@keyframes rxco-v281-line-scan{0%,62%{left:-110px;opacity:0}68%{opacity:.9}84%{left:calc(100% + 20px);opacity:.7}100%{left:calc(100% + 20px);opacity:0}}
@media(prefers-reduced-motion:reduce){body.rxco-v281 .rxco-layout-mobile-intro,body.rxco-v281 .rxco-layout-mobile-nav>a,body.rxco-v281 .rxco-layout-mobile-wa,body.rxco-v281 .rxco-layout-header-line i{animation:none!important}}
