/* Wicion V31 · Efectos de la frase principal de portada */
.cover .wicion-cover-phrase{
  max-width:330px;
  margin:0 auto;
  font-size:15px;
  line-height:1.35;
  text-shadow:0 2px 10px rgba(0,0,0,.42);
  white-space:pre-line;
  opacity:1;
  transform:none;
  filter:none;
}

.wicion-cover-phrase.wcf-fade{
  animation:wcfFade var(--wcf-duration,.8s) ease both;
}
@keyframes wcfFade{from{opacity:0}to{opacity:1}}

.wicion-cover-phrase.wcf-up{
  animation:wcfUp var(--wcf-duration,.8s) cubic-bezier(.2,.8,.2,1) both;
}
@keyframes wcfUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}

.wicion-cover-phrase.wcf-reveal{
  animation:wcfReveal var(--wcf-duration,1s) cubic-bezier(.2,.8,.2,1) both;
}
@keyframes wcfReveal{
  from{opacity:0;clip-path:inset(0 100% 0 0);transform:translateX(-8px)}
  to{opacity:1;clip-path:inset(0 0 0 0);transform:none}
}

.wicion-cover-phrase.wcf-focus{
  animation:wcfFocus var(--wcf-duration,1s) ease-out both;
}
@keyframes wcfFocus{
  from{opacity:0;filter:blur(10px);transform:scale(1.04)}
  to{opacity:1;filter:blur(0);transform:scale(1)}
}

.wicion-cover-phrase.wcf-tracking{
  animation:wcfTracking var(--wcf-duration,1s) cubic-bezier(.2,.8,.2,1) both;
}
@keyframes wcfTracking{
  from{opacity:0;letter-spacing:.32em}
  to{opacity:1;letter-spacing:normal}
}

.wicion-cover-phrase.wcf-typing::after{
  content:'|';
  display:inline-block;
  margin-left:.06em;
  animation:wcfCursor .72s steps(1,end) infinite;
}
@keyframes wcfCursor{0%,48%{opacity:1}49%,100%{opacity:0}}

.wicion-cover-phrase .wcf-word,
.wicion-cover-phrase .wcf-letter{
  display:inline-block;
  opacity:0;
}

.wicion-cover-phrase .wcf-word.wcf-word-in{
  animation:wcfWordIn .62s cubic-bezier(.2,.85,.2,1) forwards;
  animation-delay:var(--wcf-delay,0ms);
}
@keyframes wcfWordIn{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:none}
}

.wicion-cover-phrase .wcf-letter.wcf-wave-in{
  animation:wcfWave .68s cubic-bezier(.2,.85,.2,1) forwards;
  animation-delay:var(--wcf-delay,0ms);
}
@keyframes wcfWave{
  0%{opacity:0;transform:translateY(16px) rotate(-3deg)}
  65%{opacity:1;transform:translateY(-3px) rotate(1deg)}
  100%{opacity:1;transform:none}
}

@media (prefers-reduced-motion: reduce){
  .wicion-cover-phrase,
  .wicion-cover-phrase *,
  .wicion-cover-phrase::after{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    clip-path:none!important;
  }
}
