body:has(.cv-page-root){margin:0;background:#080809;color:#fff}
html:has(.cv-page-root){scroll-behavior:smooth;scroll-padding-top:8rem}
.cv-page-root .cv-body a{color:#ee9cfa;text-decoration:underline;text-underline-offset:.2em}
.cv-gallery-fallback img,.cv-page-root .cvfit-grid img{position:relative;transition:transform .3s ease,filter .3s ease,box-shadow .3s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cv-gallery-fallback img:hover,.cv-page-root .cvfit-grid img:hover{transform:translateY(-4px) scale(1.025);filter:brightness(1.12);box-shadow:0 8px 28px #b9149266;z-index:1}}
@media(prefers-reduced-motion:reduce){html:has(.cv-page-root){scroll-behavior:auto}}
.cv-page-root,.cv-page-root *{box-sizing:border-box}
.cv-page-root a{text-decoration:none}
.cv-page-root button,.cv-page-root a{touch-action:manipulation}
.cv-page-root a:focus-visible,.cv-page-root button:focus-visible,.cv-page-root summary:focus-visible{outline:3px solid #efcc69;outline-offset:4px}
.cv-page-root .cv-site-header{top:var(--cve-admin-offset,0px);transition:background .2s;justify-content:space-between}
.cv-header-logo{transition:opacity .2s,visibility .2s}
body:not(.elementor-editor-active) .cv-site-header:not(.cve-scrolled) .cv-header-logo{visibility:hidden;opacity:0}
.cv-site-header.cve-scrolled{background:#09050ff5;box-shadow:0 1px 0 #ffffff20}
.cv-page-root summary{position:relative;list-style:none;border:0}
.cv-page-root summary::-webkit-details-marker{display:none}
.cv-page-root summary:after{content:'';position:absolute;right:5%;top:50%;width:12px;height:12px;border-right:3px solid #ec008c;border-bottom:3px solid #ec008c;transform:rotate(45deg)}
.cv-page-root details[open]>summary:after{transform:rotate(225deg)}
.cv-page-root .cv-body ul{margin:0;padding-left:1.2em}.cv-page-root .cv-body li{margin-bottom:.75em}
.cv-shortcode-gallery:empty{display:none}
.cv-page-root .cvfit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.cv-contact-form .forminator-ui{margin:0!important}.cv-contact-form .forminator-row{margin-bottom:20px!important}
.cv-contact-form .forminator-label,.cv-contact-form .forminator-description,.cv-contact-form .forminator-count,.cv-contact-form .forminator-required{color:#ddd!important;font-size:16px!important}
.cv-contact-form .forminator-input,.cv-contact-form .forminator-textarea{background:#ffffff10!important;border:1px solid #ffffff36!important;color:#fff!important;border-radius:0!important;box-shadow:none!important;padding:12px!important;font-size:16px!important}
.cv-contact-form .forminator-textarea{min-height:120px!important}.cv-contact-form .forminator-button-submit{background:#ec008c!important;color:white!important;border-radius:0!important;font-weight:700!important;text-transform:uppercase!important;font-size:16px!important;min-height:46px!important}
.cv-contact-form .forminator-error-message{background:#3d1628!important;color:#fff!important}
@media(max-width:1024px){body:not(.elementor-editor-active) .cv-nav:not(.cve-menu-open){display:none!important}.cv-nav{max-height:calc(100svh - 130px);overflow:auto}}
@media(max-width:767px){.cv-page-root .cvfit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-events-grid>.cv-card:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:380px){.cv-page-root .cv-events-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.cv-page-root *{scroll-behavior:auto!important;transition:none!important}}
.cv-newsletter-form{flex:1;min-width:0;width:100%;font-size:18px;color:#fff}
.cv-newsletter-form .tnp-subscription{margin:0;max-width:none}
.cv-newsletter-form .tnp-field{margin-bottom:16px}
.cv-newsletter-form label{color:#fff;font-size:16px;line-height:1.5}
.cv-newsletter-form input.tnp-email,.cv-newsletter-form input.tnp-name{border:1px solid #766b82;background:#19121f;color:#fff;padding:14px;font-size:18px}
.cv-newsletter-form input.tnp-submit{background:#c80078;color:#fff;padding:16px 24px;font-size:18px;font-weight:700;cursor:pointer}
.cv-newsletter-form input.tnp-submit:hover{background:#ec008c}
.cv-newsletter-form input:focus-visible{outline:2px solid #e993ff;outline-offset:3px}
