/* Rivela: elegant 3.7s opening sequence */
.rivela-intro{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;overflow:hidden;background:#350d20;color:#f5eadd;pointer-events:all;animation:rivela-intro-out .65s ease-in-out 3.05s forwards}
.rivela-intro::before{content:"";position:absolute;inset:-30%;background:radial-gradient(ellipse at 78% 78%,rgba(187,145,163,.18),transparent 45%);opacity:0;animation:rivela-intro-light 3.4s ease-out forwards}
.rivela-intro-content{text-align:center;position:relative;padding:1.5rem;width:100%}
.rivela-intro-word{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(5rem,13vw,10rem);font-weight:400;line-height:1.1;letter-spacing:-.055em;clip-path:inset(0 100% 0 0);animation:rivela-intro-reveal 1.35s cubic-bezier(.22,1,.36,1) .2s forwards}
.rivela-intro-tagline{display:block;margin-top:1.1rem;font-family:Georgia,"Times New Roman",serif;font-size:clamp(.85rem,2.1vw,1.5rem);letter-spacing:.13em;opacity:0;transform:translateY(9px);animation:rivela-intro-tagline-in .9s ease 1.25s forwards}
@keyframes rivela-intro-reveal{to{clip-path:inset(0 0 0 0)}}
@keyframes rivela-intro-tagline-in{to{opacity:1;transform:translateY(0)}}
@keyframes rivela-intro-light{35%,75%{opacity:1}100%{opacity:0}}
@keyframes rivela-intro-out{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(prefers-reduced-motion:reduce){.rivela-intro{display:none!important}}
