@import url('https://fonts.googleapis.com/css2?family=Anton&family=Bangers&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--rvx-brand-acid:#d9ff43;--rvx-brand-pink:#ff4f8b;--rvx-brand-violet:#6d5cff;--rvx-brand-ink:#09090b;--rvx-brand-display:'Anton','Arial Narrow',Impact,sans-serif;--rvx-brand-script:'Bangers','Arial Black',sans-serif;--rvx-brand-body:'Space Grotesk',Arial,sans-serif}
body{font-family:var(--rvx-brand-body)}
.rvx-wordmark,.admin-brand,.authx-brand,.rv-wordmark{font-family:var(--rvx-brand-script)!important;letter-spacing:.025em!important;font-weight:400!important}
.rvx-wordmark{gap:10px!important;font-size:1.55rem!important;transform:rotate(-1deg)}
.rvx-wordmark-icon{background:transparent!important;background-image:url('../brand/regivox-mark.svg')!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;color:transparent!important;border-radius:0!important;width:43px!important;height:43px!important;box-shadow:none!important}
.admin-brand-mark{background:transparent url('../brand/regivox-mark.svg') center/contain no-repeat!important;border-radius:0!important;box-shadow:none!important}.admin-brand-mark:before,.admin-brand-mark:after{display:none!important}.admin-brand>span:last-child{font-family:var(--rvx-brand-script)!important;font-size:1.55rem;letter-spacing:.02em}.authx-logo{background:transparent url('../brand/regivox-mark.svg') center/contain no-repeat!important;color:transparent!important;box-shadow:none!important;border-radius:0!important}.authx-brand{font-size:1.6rem!important}
.page-heading h1,.panel-header h2,.stat-card strong,.authx h1,.authx-visual h2{font-family:var(--rvx-brand-body)!important}
.rvx-poster-title{font-family:var(--rvx-brand-display)!important;text-transform:uppercase;letter-spacing:-.055em;line-height:.86;position:relative;text-wrap:balance}
.rvx-poster-title .rvx-hit,.rvx-poster-title em{font-family:var(--rvx-brand-display)!important;font-weight:400!important;font-style:normal!important;color:var(--rvx-brand-acid);display:inline-block;letter-spacing:-.035em;transform:skewX(-2deg);text-shadow:3px 4px 0 rgba(0,0,0,.18)}
.rvx-poster-title .rvx-hit:after{content:'';display:block;height:8px;background:var(--rvx-brand-pink);transform:skewX(-10deg) rotate(-1deg);margin:-3px 2% 0;border-radius:2px;opacity:.95}
.rvx-sticker-heading{font-family:var(--rvx-brand-script)!important;font-weight:400!important;letter-spacing:.02em!important;transform:rotate(-1deg);display:inline-block}
@media(max-width:700px){.rvx-wordmark{font-size:1.35rem!important}.rvx-wordmark-icon{width:38px!important;height:38px!important}}


/* =========================================================
   REGIVOX v2.4.4 — SIGNATURE DISPLAY TYPE + PRELOADER
   Large public statements use a tall, condensed festival-poster face.
   Existing card/body/dashboard typography is intentionally untouched.
   ========================================================= */
.rvx-poster-title,
.rvx-hero h1,
.rvx-section-head h2,
.rvx-free-copy h2,
.rvx-editorial-copy h2,
.rvx-organizer-copy h2,
.rvx-newsletter h2,
.rvx-world-head h2,
.events-hero h1,
.events-toolbar h2,
.events-free-callout h2,
.about-hero h1,
.about-manifesto h2,
.about-split-copy h2,
.about-values-head h2,
.about-final h2{
    font-family:var(--rvx-brand-display)!important;
    font-weight:400!important;
    text-transform:uppercase;
    letter-spacing:-.045em!important;
    line-height:.86!important;
}
.rvx-poster-title .rvx-hit,
.rvx-poster-title em,
.rvx-hero .rvx-hit,
.events-hero .rvx-hit,
.about-page .rvx-hit{
    font-family:var(--rvx-brand-display)!important;
    letter-spacing:-.04em!important;
}

/* Signature Regivox preloader — short, non-blocking and fail-safe. */
.rvx-preloader{
    position:fixed;
    inset:0;
    z-index:99999;
    display:grid;
    place-items:center;
    background:#08090b;
    color:#fff;
    overflow:hidden;
    transition:opacity .42s ease,visibility .42s ease;
}
.rvx-preloader.is-done{opacity:0;visibility:hidden;pointer-events:none}
.rvx-preloader:before,
.rvx-preloader:after{
    content:"";
    position:absolute;
    border-radius:50%;
    filter:blur(50px);
    opacity:.45;
    pointer-events:none;
}
.rvx-preloader:before{width:32vw;height:32vw;min-width:260px;min-height:260px;background:#765cff;top:-14vw;right:-7vw}
.rvx-preloader:after{width:27vw;height:27vw;min-width:220px;min-height:220px;background:#d9ff43;left:-11vw;bottom:-14vw;opacity:.18}
.rvx-preloader-grid{position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 80%,transparent)}
.rvx-preloader-inner{position:relative;z-index:2;width:min(86vw,500px);text-align:center}
.rvx-preloader-logo{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:28px}
.rvx-preloader-logo-mark{width:66px;height:66px;background:url('../brand/regivox-mark.svg') center/contain no-repeat;animation:rvxLoaderMark .8s cubic-bezier(.2,.8,.2,1) both}
.rvx-preloader-logo strong{font-family:var(--rvx-brand-script);font-size:clamp(2.1rem,6vw,3.2rem);font-weight:400;letter-spacing:.025em;transform:rotate(-1.2deg)}
.rvx-preloader-kicker{font:700 .72rem/1 var(--rvx-brand-body);letter-spacing:.22em;color:var(--rvx-brand-acid);text-transform:uppercase;margin-bottom:12px}
.rvx-preloader-title{font-family:var(--rvx-brand-display);font-size:clamp(2.6rem,8vw,5rem);line-height:.84;letter-spacing:-.045em;text-transform:uppercase;margin:0 0 24px}
.rvx-preloader-title span{color:var(--rvx-brand-acid)}
.rvx-preloader-track{height:5px;background:rgba(255,255,255,.12);overflow:hidden;border-radius:999px;position:relative}
.rvx-preloader-progress{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,var(--rvx-brand-pink),var(--rvx-brand-acid));border-radius:inherit;transition:width .12s linear;box-shadow:0 0 20px rgba(217,255,67,.35)}
.rvx-preloader-meta{display:flex;justify-content:space-between;gap:20px;margin-top:11px;font:700 .68rem/1 var(--rvx-brand-body);letter-spacing:.11em;color:#979aa5;text-transform:uppercase}
.rvx-preloader-meta b{color:#fff;font-variant-numeric:tabular-nums}
body.rvx-is-loading{overflow:hidden}
@keyframes rvxLoaderMark{0%{opacity:0;transform:scale(.62) rotate(-12deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:640px){.rvx-preloader-logo-mark{width:54px;height:54px}.rvx-preloader-inner{width:min(84vw,390px)}.rvx-preloader-grid{background-size:34px 34px}}
@media(prefers-reduced-motion:reduce){.rvx-preloader-logo-mark{animation:none}.rvx-preloader,.rvx-preloader-progress{transition-duration:.15s}}

/* v2.4.5 richer Regivox story preloader */
.rvx-preloader-inner{width:min(90vw,620px)}
.rvx-loader-stage{position:relative;width:146px;height:146px;margin:0 auto 20px;display:grid;place-items:center}
.rvx-loader-stage .rvx-preloader-logo-mark{position:relative;z-index:4;width:74px;height:74px;margin:0;background:url('../brand/regivox-mark.svg') center/contain no-repeat;animation:rvxLoaderMark .72s cubic-bezier(.2,.8,.2,1) both,rvxLoaderFloat 2.6s ease-in-out .72s infinite}
.rvx-loader-ring{position:absolute;inset:15px;border:1px dashed rgba(217,255,67,.46);border-radius:50%;animation:rvxLoaderSpin 8s linear infinite}
.rvx-loader-orbit{position:absolute;z-index:3;width:38px;height:38px;border:2px solid #111;border-radius:13px;display:grid;place-items:center;color:#111;font-size:.76rem;box-shadow:3px 4px 0 rgba(0,0,0,.35)}
.rvx-loader-orbit-one{left:0;top:52px;background:#ff7b7f;animation:rvxLoaderBob 2.4s ease-in-out infinite}.rvx-loader-orbit-two{right:7px;top:5px;background:#ffb344;animation:rvxLoaderBob 2.8s ease-in-out -.7s infinite}.rvx-loader-orbit-three{right:-2px;bottom:17px;background:#5be2bd;animation:rvxLoaderBob 2.5s ease-in-out -1.2s infinite}.rvx-loader-orbit-four{left:15px;bottom:0;background:#a69aff;animation:rvxLoaderBob 2.7s ease-in-out -.4s infinite}
.rvx-preloader-logo{margin-bottom:16px;display:flex;flex-direction:column;gap:3px}.rvx-preloader-logo strong{font-size:clamp(2rem,5vw,3rem)}.rvx-preloader-logo small{font:800 .55rem/1 var(--rvx-brand-body);letter-spacing:.18em;color:#777c89}
.rvx-preloader-title{font-size:clamp(2.4rem,7vw,4.7rem);margin-bottom:17px}.rvx-loader-functions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 16px}.rvx-loader-functions span{min-height:42px;border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#707581;display:flex;align-items:center;justify-content:center;gap:7px;font:800 .58rem/1 var(--rvx-brand-body);letter-spacing:.05em;text-transform:uppercase;transition:.2s}.rvx-loader-functions span.active{background:rgba(217,255,67,.1);border-color:rgba(217,255,67,.55);color:var(--rvx-brand-acid);box-shadow:inset 0 0 18px rgba(217,255,67,.06)}
.rvx-loader-sparks i{position:absolute;width:6px;height:6px;background:var(--rvx-brand-acid);transform:rotate(45deg);opacity:.38;animation:rvxLoaderSpark 3s ease-in-out infinite}.rvx-loader-sparks i:nth-child(1){left:12%;top:18%}.rvx-loader-sparks i:nth-child(2){left:23%;bottom:21%;animation-delay:-1s;background:#ff4f8b}.rvx-loader-sparks i:nth-child(3){right:15%;top:22%;animation-delay:-1.8s}.rvx-loader-sparks i:nth-child(4){right:24%;bottom:18%;animation-delay:-.4s;background:#765cff}.rvx-loader-sparks i:nth-child(5){left:43%;top:8%;animation-delay:-2.1s}.rvx-loader-sparks i:nth-child(6){right:42%;bottom:8%;animation-delay:-1.4s;background:#ffb344}
@keyframes rvxLoaderSpin{to{transform:rotate(360deg)}}@keyframes rvxLoaderFloat{50%{transform:translateY(-6px) rotate(3deg)}}@keyframes rvxLoaderBob{50%{transform:translateY(-7px) rotate(7deg)}}@keyframes rvxLoaderSpark{50%{transform:translateY(-10px) rotate(135deg) scale(1.4);opacity:.8}}
@media(max-width:640px){.rvx-loader-stage{width:120px;height:120px;margin-bottom:13px}.rvx-loader-stage .rvx-preloader-logo-mark{width:60px;height:60px}.rvx-loader-orbit{width:31px;height:31px;border-radius:10px;font-size:.62rem}.rvx-loader-orbit-one{top:42px}.rvx-loader-functions{gap:4px}.rvx-loader-functions span{min-height:36px;font-size:.48rem;gap:4px}.rvx-preloader-title{font-size:clamp(2.2rem,12vw,3.6rem)}}
@media(prefers-reduced-motion:reduce){.rvx-loader-ring,.rvx-loader-stage .rvx-preloader-logo-mark,.rvx-loader-orbit,.rvx-loader-sparks i{animation:none!important}}

/* =========================================================
   REGIVOX v2.4.8 — UNIFIED BRAND SCALE
   Keep the mark readable and consistent across public surfaces.
   ========================================================= */
.rvx-wordmark{display:inline-flex!important;align-items:center!important;gap:12px!important;min-width:max-content;font-size:1.72rem!important;line-height:1!important}
.rvx-wordmark-icon{flex:0 0 50px!important;width:50px!important;height:50px!important}
.rvp-nav .rvx-wordmark{font-size:1.7rem!important}
.rvp-nav .rvx-wordmark-icon{width:48px!important;height:48px!important;flex-basis:48px!important}
.rvp-footer .rvx-wordmark-icon{width:46px!important;height:46px!important;flex-basis:46px!important}
@media(max-width:760px){.rvx-wordmark{font-size:1.38rem!important;gap:8px!important}.rvx-wordmark-icon,.rvp-nav .rvx-wordmark-icon{width:38px!important;height:38px!important;flex-basis:38px!important}}
