/* Transições discretas. O conteúdo permanece visível sem JavaScript. */
body.clv-site { --clv-motion-ready: 1; }
.clv-slider-stage { display: grid; isolation: isolate; overflow: hidden; }
.clv-hero.is-enhanced .clv-slide { grid-area: 1 / 1; position: relative; min-width: 0; isolation: isolate; }
.clv-hero.is-enhanced .clv-slide:not(.is-active):not(.is-exiting) { opacity: 0; visibility: hidden; pointer-events: none; }
.clv-hero.is-enhanced .clv-slide.is-active { z-index: 2; }
.clv-hero.is-enhanced .clv-slide.is-exiting { z-index: 1; pointer-events: none; }
.clv-hero .clv-hero-copy,.clv-hero .clv-hero-art { animation: none; }
.clv-motion-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.clv-hero { transition: background-color .65s ease; }
/* Revelação apenas uma vez ao entrar na tela. */
.clv-reveal { transition: opacity .8s ease, translate .9s cubic-bezier(.16,1,.3,1); transition-delay: var(--clv-reveal-delay,0ms); }
.clv-reveal:not(.is-revealed) { opacity: 0; translate: 0 30px; }
.clv-reveal.is-revealed { opacity: 1; translate: 0 0; }
.clv-section-heading h2 em { background: linear-gradient(#54278912,#54278912) no-repeat left bottom / 0% .15em; transition: background-size 1.1s cubic-bezier(.16,1,.3,1) .4s; }
.clv-section-heading.is-revealed h2 em { background-size: 100% .15em; }
.clv-button { position: relative; overflow: hidden; isolation: isolate; }
.clv-button::after { content: ''; position: absolute; inset: -50% auto -50% -70%; width: 45%; pointer-events: none; transform: skewX(-20deg); background: linear-gradient(90deg,transparent,#ffffff35,transparent); }
.clv-button>.clv-icon:last-child,.clv-card-link>.clv-icon,.clv-event-photo>span { transition: transform .4s cubic-bezier(.16,1,.3,1),background .3s,color .3s; }
.clv-course-card { transition: opacity .8s ease,translate .9s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .4s; transition-delay: var(--clv-reveal-delay,0ms),var(--clv-reveal-delay,0ms),0ms,0ms,0ms; }
.clv-course-card .clv-icon-box { transition: transform .45s cubic-bezier(.16,1,.3,1),background .3s; }
@media(hover:hover) and (pointer:fine) {
  .clv-button:hover::after { animation: clv-button-shine .75s ease-out; }
  .clv-button:hover>.clv-icon:last-child,.clv-course-card:hover .clv-card-link>.clv-icon { transform: translate(3px,-3px); }
  .clv-course-card:hover { transform: translateY(-7px); border-color: #b996d4; box-shadow: 0 18px 42px #54278912; }
  .clv-course-card:hover .clv-icon-box { transform: rotate(-6deg) scale(1.08); background: #e9def4; }
  .clv-event-card:hover .clv-event-photo>span { transform: rotate(8deg); background: var(--clv-purple); color: #fff; }
  .clv-event-card:hover .clv-event-photo>img { transform: scale(1.065); }
}

@keyframes clv-button-shine { to { left: 135%; } }
@media(prefers-reduced-motion:reduce) {
  .clv-hero *,.clv-hero *::before,.clv-hero *::after { animation: none!important; transition: none!important; }
  .clv-reveal,.clv-reveal:not(.is-revealed) { opacity: 1!important; translate: none!important; transition: none!important; }
}
@media print {
  .clv-reveal,.clv-reveal:not(.is-revealed) { opacity: 1!important; translate: none!important; }
  .clv-hero.is-enhanced .clv-slide:not(.is-active) { display: none!important; }
}
