/* Motion graphics de bienvenida: una entrada breve, sin reproducción continua. */
.portal-popup--motion .portal-popup__dialog{isolation:isolate;transition:opacity .22s ease,transform .22s ease}
.portal-popup--motion.is-visible .portal-popup__dialog{animation:itesco-welcome-card .72s cubic-bezier(.16,1,.3,1) both}
.portal-popup--motion .portal-popup__dialog:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;z-index:2;background:linear-gradient(90deg,#1b396a 0 48%,#b89148 48% 68%,#2d6b3f 68%);transform-origin:left}
.portal-popup--motion.is-visible .portal-popup__dialog:before{animation:itesco-welcome-line 1s .2s cubic-bezier(.22,1,.36,1) both}
.portal-popup--motion .portal-popup__close{z-index:5}
.portal-popup--motion.is-visible .portal-popup__badge{animation:itesco-welcome-copy .65s .14s both}
.portal-popup--motion .portal-popup__media{position:relative}
.portal-popup--motion.is-visible .portal-popup__media{animation:itesco-welcome-reveal 1.05s .18s cubic-bezier(.22,1,.36,1) both}
.portal-popup--motion.is-visible .portal-popup__media img{animation:itesco-welcome-image 1.65s .18s cubic-bezier(.22,1,.36,1) both}
.portal-popup--motion .portal-popup__media:after{content:'';position:absolute;inset:-50% -80%;background:linear-gradient(110deg,transparent 42%,#ffffff59 49%,transparent 56%);pointer-events:none;opacity:0}
.portal-popup--motion.is-visible .portal-popup__media:after{animation:itesco-welcome-shine 1.25s .55s both}
.portal-popup--motion .welcome-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.portal-popup--motion .welcome-word>span{display:inline-block}
.portal-popup--motion.is-visible .welcome-word>span{animation:itesco-welcome-word .7s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.32s + var(--word-index,0)*.045s)}
.portal-popup--motion.is-visible .portal-popup__content{animation:itesco-welcome-copy .7s .52s both}
.portal-popup--motion.is-visible .portal-popup__button{animation:itesco-welcome-copy .7s .68s both}
.portal-popup--motion .portal-popup__button{position:relative;overflow:hidden}
.portal-popup--motion .portal-popup__button:after{content:'';position:absolute;inset:-100%;background:linear-gradient(110deg,transparent 45%,#ffffff30 50%,transparent 55%);transform:translateX(-70%);pointer-events:none}
.portal-popup--motion.is-visible .portal-popup__button:after{animation:itesco-welcome-button-shine 1.2s 1.2s both}
.welcome-graphics{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.welcome-graphics__ring{position:absolute;left:50%;top:50%;width:min(84vw,860px);aspect-ratio:1;border:1px solid #d6b87366;border-radius:50%;opacity:0;transform:translate(-50%,-50%)}
.welcome-graphics__ring--two{width:min(96vw,1050px);border-style:dashed;border-color:#adc9e34d}
.portal-popup--motion.is-visible .welcome-graphics__ring{animation:itesco-welcome-ring 2.1s .1s both}
.portal-popup--motion.is-visible .welcome-graphics__ring--two{animation-delay:.3s}
.welcome-graphics__ribbon{position:absolute;left:calc(3% + var(--ribbon-index)*7%);top:40%;width:7px;height:20px;border-radius:2px;background:#b89148;opacity:0}
.welcome-graphics__ribbon:nth-of-type(3n){background:#6ba3d5}.welcome-graphics__ribbon:nth-of-type(3n+1){background:#7bb58b}
.portal-popup--motion.is-visible .welcome-graphics__ribbon{animation:itesco-welcome-ribbon 2s both;animation-delay:calc(.08s + var(--ribbon-index)*.035s)}
@keyframes itesco-welcome-card{from{opacity:0;transform:translateY(42px) scale(.93) rotateX(4deg)}to{opacity:1;transform:translateY(0) scale(1) rotateX(0)}}
@keyframes itesco-welcome-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes itesco-welcome-copy{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes itesco-welcome-word{from{opacity:0;transform:translateY(110%) rotate(3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes itesco-welcome-reveal{from{clip-path:inset(0 0 100% 0);opacity:.3}to{clip-path:inset(0);opacity:1}}
@keyframes itesco-welcome-image{from{transform:scale(1.09)}to{transform:scale(1)}}
@keyframes itesco-welcome-shine{0%{opacity:0;transform:translateX(-30%)}20%{opacity:1}100%{opacity:0;transform:translateX(35%)}}
@keyframes itesco-welcome-button-shine{from{transform:translateX(-70%)}to{transform:translateX(70%)}}
@keyframes itesco-welcome-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(.7) rotate(-15deg)}35%{opacity:.7}100%{opacity:0;transform:translate(-50%,-50%) scale(1.1) rotate(20deg)}}
@keyframes itesco-welcome-ribbon{0%{opacity:0;transform:translateY(90px) rotate(-25deg)}20%{opacity:.65}100%{opacity:0;transform:translateY(-200px) rotate(120deg)}}
@media(max-width:600px){.welcome-graphics__ribbon{width:5px;height:14px}.welcome-graphics__ribbon:nth-of-type(even){display:none}}
@media(prefers-reduced-motion:reduce){.portal-popup--motion .portal-popup__dialog,.portal-popup--motion .portal-popup__backdrop,.portal-popup--motion .portal-popup__dialog:before,.portal-popup--motion .portal-popup__badge,.portal-popup--motion .portal-popup__media,.portal-popup--motion .portal-popup__media img,.portal-popup--motion .portal-popup__media:after,.portal-popup--motion .welcome-word>span,.portal-popup--motion .portal-popup__content,.portal-popup--motion .portal-popup__button,.portal-popup--motion .portal-popup__button:after{animation:none!important;transition:none!important}.portal-popup--motion .welcome-graphics,.portal-popup--motion .portal-popup__media:after,.portal-popup--motion .portal-popup__button:after{display:none}}
