:root{color-scheme:dark;--rouge:#a52d50;--rouge-deep:#7d1e3a;--rose:#f6dce5;--surface:#110f12;--surface-raised:#1c181e;--surface-wine:#25151e;--text:#f7eff2;--muted:#bfb5bc;--line:#40343d;--accent-light:#e7a1b7}
body{background:var(--surface);color:var(--text)}
.hero{background:var(--surface)}
.hero-shade{pointer-events:none;background:linear-gradient(180deg,rgba(17,15,18,.35) 0%,rgba(17,15,18,.12) 30%,rgba(17,15,18,.4) 55%,rgba(17,15,18,.85) 80%,var(--surface) 100%)}
::selection{background:var(--rouge);color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--accent-light)}
.skip-link:focus{background:var(--rose);color:var(--rouge-deep)}
.section-heading{border-bottom-color:var(--line)}
.event-art,.event-thumbnail,.album-cover{background:var(--surface-raised)}
.event-thumbnail{border-color:var(--line)}
.event-thumbnail:hover{outline-color:var(--accent-light)}
.event-date{color:var(--accent-light)}
.event-meta,.empty-state{color:var(--muted)}
.event-copy h3 a:hover,.text-link:hover{color:var(--accent-light)}
.page-numbers{background:var(--surface-raised);color:var(--text)}
.page-numbers.current,.page-numbers:hover{background:var(--rouge);border-color:#c15a7b;color:#fff}
.page-numbers.dots{background:transparent}
.who{background:var(--surface-raised);color:var(--text);border-block:1px solid var(--line);padding:56px 0}
.who-grid{grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:clamp(24px,4vw,56px)}
@media(max-width:560px){.who{padding:40px 0}.who-grid{grid-template-columns:1fr;gap:20px}}
.who h2{color:var(--accent-light)}
.formatted-content blockquote{border-left-color:var(--accent-light)}
.formatted-content :where(figcaption,.wp-block-image figcaption,.wp-block-gallery figcaption){color:var(--muted)}
.marquee{background:var(--surface-wine);color:var(--accent-light);border-color:var(--line)}
.album-open{background:var(--rouge);color:#fff;border:1px solid #d57592}
.album-cover-placeholder{color:var(--accent-light)}
.inner-header,.site-footer{background:#0b090c}
.site-footer{border-top:1px solid var(--line)}
main :where(input:not([type=submit]):not([type=button]),textarea,select){background:var(--surface-raised);color:var(--text);border:1px solid var(--line);padding:10px 12px}
main :where(input[type=submit],button[type=submit]){background:var(--rouge);color:#fff;border:1px solid #c15a7b;padding:10px 20px;border-radius:999px}
.brand{flex-shrink:0}.header-logo{width:160px;height:auto}
.button{border-radius:999px;gap:20px;transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}
.button:hover{background:var(--surface-wine);border-color:var(--accent-light);color:var(--text)}
.button-primary{background:var(--rouge);border-color:#c15a7b;color:#fff}
.button-primary:hover{background:var(--rouge-deep);border-color:var(--rouge-deep);color:#fff}
.hero-actions{gap:14px;align-items:stretch}
.hero .button{min-height:64px;min-width:200px;padding:12px 16px 12px 26px;justify-content:space-between;gap:24px;font-size:13px;letter-spacing:.045em;box-shadow:0 6px 24px #0002}
.hero .button-primary{min-width:256px;border-color:#d57592}
.cta-icon{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#ffffff1c;font-size:23px;font-weight:400;line-height:1}
.cta-play{font-size:13px;padding-left:2px}
.hero .button-glass{background:#30151fe6;border-color:#d5a9b770;color:#fff;backdrop-filter:blur(12px)}
.hero .hero-actions .button-glass:hover{background:#61263d;border-color:#e4a6ba;color:#fff}
.hero a.button:hover{transform:translateY(-2px);box-shadow:0 8px 28px #0004}
.hero .button-coming-soon{background:#22181fe6;border-color:#ffffff30;color:#f5e9ed;opacity:1;cursor:default;padding-right:22px;gap:16px;backdrop-filter:blur(12px)}
.hero .hero-actions .button-coming-soon:hover{background:#22181fe6;border-color:#ffffff30;color:#f5e9ed}
.hero .coming-soon-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:#f6dce5;color:#64273b;font-size:9px;font-weight:800;letter-spacing:.065em;white-space:nowrap}
.coming-soon-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--rouge)}
.hero .button:focus-visible{outline:3px solid var(--rose);outline-offset:5px}
.event-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.event-actions .button{min-height:48px;padding:13px 22px;font-size:12px;gap:16px;white-space:nowrap}
.event-actions .button-directions{background:transparent;border-color:#96516a;color:var(--rose)}
.event-actions .button-directions:hover{background:var(--surface-wine);border-color:var(--accent-light);color:#fff}
.directions-icon{width:19px;height:19px;flex-shrink:0}
.single-event .event-actions{margin-top:28px}
@media(max-width:800px){.hero .button{min-width:175px;padding-left:22px;gap:16px}.hero .button-primary{min-width:230px}.event-actions{gap:10px}}
@media(max-width:560px){.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:380px;margin:0 auto}.hero .button-primary{grid-column:1/-1;width:100%;max-width:none;margin:0;min-width:0;justify-content:space-between;padding-left:24px}.hero .button{min-width:0;min-height:60px;padding:12px 16px;font-size:12px;gap:10px}.hero .button-coming-soon{flex-direction:column;justify-content:center;gap:6px;padding:10px}.hero .coming-soon-badge{font-size:8px;padding:5px 8px}.hero .cta-icon{width:30px;height:30px}.event-actions .button{gap:10px;padding:13px 17px}}
@media(max-width:360px){.hero .button-glass{padding:12px}.event-actions{gap:8px}.event-actions .button{font-size:11px;padding:12px}}
.hero-tagline{font-size:clamp(15px,1.8vw,24px);line-height:1.4;letter-spacing:.13em;text-transform:uppercase;margin:0 0 25px;text-shadow:0 2px 14px #0008}
.youtube-section{background:transparent;color:#fff;padding:44px 0}
.youtube-section>.site-shell{width:88%;max-width:1280px;padding:32px;background:#ff0033}
.youtube-section .youtube-heading{padding-bottom:24px}
.youtube-section .youtube-heading h2{font-size:clamp(32px,4vw,54px)}
.hero-bottom .motion-button{margin-left:auto}
.sponsors-section{padding-top:48px;padding-bottom:64px}
.sponsors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:28px}
.sponsor-card{display:flex;align-items:center;justify-content:center;min-width:0;height:150px;padding:24px;background:#1c181e;border:1px solid var(--line);border-radius:10px}
.sponsor-card img{width:100%;height:100%;object-fit:contain}
a.sponsor-card:hover{border-color:var(--rose);background:#261c24}
@media(max-width:560px){.youtube-section{padding:28px 0}.youtube-section>.site-shell{padding:24px 18px}.sponsors-grid{gap:10px}.sponsor-card{height:90px;padding:10px}.sponsors-section{padding-top:28px;padding-bottom:40px}.hero-actions>.button:only-child{grid-column:1/-1}}
.youtube-section a:focus-visible,.youtube-section button:focus-visible{outline-color:#141413}
.youtube-title{display:flex;flex-direction:column;gap:12px}
.youtube-section .youtube-heading h2{color:#fff}
.youtube-handle{margin:0;font-size:18px;font-weight:800;letter-spacing:.025em}
.youtube-handle a:hover{text-decoration:underline;text-underline-offset:4px}
.youtube-section .youtube-heading .button{background:#141413;color:#fff;border-color:#141413}
.youtube-section .youtube-heading .button:hover{background:#292326;color:#fff;border-color:#fff}
.youtube-section .youtube-fallback{font-weight:800}
.youtube-section .youtube-preview{border:1px solid #14141330}
.site-footer{padding:58px 0 26px}
.footer-main{display:flex;align-items:flex-start;justify-content:space-between;gap:35px;padding-bottom:40px}
.footer-copy{min-width:0}.footer-tagline{font:400 clamp(28px,3vw,42px)/1.15 var(--display);margin:0 0 15px}
.footer-message{font-size:17px;line-height:1.6;margin:0;color:#d4d4cb}
.footer-links{display:flex;flex-shrink:0;gap:30px;padding-top:8px;font-size:15px;font-weight:700}
.footer-links a{display:flex;gap:10px;align-items:center}
.footer-links a:hover,.footer-credit a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid #ffffff30;font-size:13px;color:#c9c9c2}
.footer-bottom p{margin:0}.footer-credit{margin-left:auto!important;text-align:right;white-space:nowrap}
.footer-credit a{color:#fff;font-weight:700}.credit-heart{color:#ff0033;font-size:16px;margin:0 3px}
@media(max-width:800px){.footer-main{flex-wrap:wrap;gap:24px}.footer-tagline{font-size:32px}.footer-links{padding-top:0}.header-logo{width:140px}}
@media(max-width:560px){.header-inner{gap:18px}.header-logo{width:110px}.site-nav{gap:12px;font-size:12px}.hero-tagline{font-size:14px;letter-spacing:.08em;margin-bottom:20px}.youtube-handle{font-size:16px}.youtube-section .youtube-heading{gap:22px}.youtube-title{gap:10px}.site-footer{padding:40px 0 24px}.footer-main{padding-bottom:28px}.footer-tagline{font-size:30px}.footer-message{font-size:16px}.footer-bottom{flex-wrap:wrap;gap:18px}.footer-credit{flex-basis:100%}}
@media(max-width:360px){.header-logo{width:90px}.header-inner{gap:10px}.site-nav{gap:10px;font-size:11px}#upcoming-events .section-heading{gap:12px}#upcoming-events .section-heading h2{font-size:34px}}
