:root{--black:#050505;--ink:#111;--white:#f5f4ef;--acid:#d8ff36;--violet:#7357ff;--line:rgba(245,244,239,.24);--pad:clamp(1.15rem,3vw,3rem)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;background:var(--black);color:var(--white);font-family:"DM Mono",monospace;font-size:16px;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
.skip{position:fixed;left:1rem;top:-5rem;z-index:99;background:var(--acid);color:#000;padding:.75rem 1rem}.skip:focus{top:1rem}
.topbar{position:fixed;z-index:40;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:1rem var(--pad);mix-blend-mode:difference;color:#fff}
.wordmark{font-family:"Archivo Black",sans-serif;font-size:1.15rem;letter-spacing:-.05em}.pulse-dot{display:inline-block;width:.42rem;height:.42rem;margin-left:.28rem;border-radius:50%;background:var(--acid);animation:pulse 1.8s infinite}
.topbar nav{display:flex;align-items:center;gap:clamp(.7rem,2vw,2rem);text-transform:uppercase;font-size:.76rem;letter-spacing:.08em}
.topbar nav a{padding:.55rem 0}.book-mini{border:1px solid currentColor!important;border-radius:999px;padding:.55rem .9rem!important}
.hero{height:100svh;min-height:620px;position:relative;display:grid;place-items:center;overflow:hidden;background:#111}
.hero-video{position:absolute;inset:-4%;width:108%;height:108%;max-width:none;object-fit:cover;filter:saturate(.9) contrast(1.15)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.04) 45%,rgba(0,0,0,.72))}
.grain{position:absolute;inset:0;opacity:.13;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.hero-content{position:relative;width:min(84vw,980px);text-align:center;will-change:transform}.hero-logo{width:100%;filter:invert(1);margin:auto}.kicker{display:flex;justify-content:space-between;margin:1rem .8rem 0;font-size:.72rem;letter-spacing:.14em;text-align:left}
.hero-footer{position:absolute;left:var(--pad);right:var(--pad);bottom:1.35rem;display:flex;justify-content:space-between;align-items:end;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em}.hero-footer p{margin:0;max-width:9rem}.scroll-cue{display:flex;gap:.55rem;align-items:center}.scroll-cue span{color:var(--acid);font-size:1.2rem}
.intro{padding:clamp(7rem,14vw,13rem) var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:2rem}.eyebrow{margin:0;text-transform:uppercase;font-size:.75rem;letter-spacing:.13em}.intro h1{grid-column:1/-1;margin:clamp(2rem,5vw,5rem) 0;font:clamp(3.3rem,10vw,10rem)/.84 "Archivo Black",sans-serif;letter-spacing:-.075em}.intro h1 span,.booking h2 span{color:var(--acid)}.intro-copy{grid-column:2;max-width:36rem;font:clamp(1.05rem,2vw,1.45rem)/1.55 "DM Mono",monospace}.text-link{display:inline-flex;gap:1rem;margin-top:1.5rem;border-bottom:1px solid var(--white);padding-bottom:.45rem;text-transform:uppercase;font-size:.82rem}
.portrait-section{position:relative;height:clamp(560px,85vw,1000px);overflow:hidden}.portrait-wrap{height:112%;will-change:transform}.portrait-wrap img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.portrait-section:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(5,5,5,.7))}.portrait-marquee{position:absolute;z-index:2;bottom:3%;left:-3%;width:106%;overflow:hidden;transform:rotate(-2deg);background:var(--acid);color:#050505;padding:.5rem 0;font:clamp(2rem,6vw,6rem)/1 "Archivo Black",sans-serif;white-space:nowrap}.portrait-marquee div{width:max-content;animation:marquee 18s linear infinite}
.mixes{padding:clamp(7rem,13vw,12rem) var(--pad);background:var(--white);color:var(--ink)}.section-head{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;margin-bottom:clamp(3rem,8vw,8rem)}.section-head h2{margin:0;font:clamp(4rem,11vw,11rem)/.8 "Archivo Black",sans-serif;letter-spacing:-.08em;text-align:center}.section-head>p:last-child{margin:0 0 .4rem auto;max-width:12rem;font-size:.78rem;line-height:1.5}
.mix-card{border-top:2px solid var(--ink);padding:1rem 0 clamp(5rem,10vw,9rem);display:grid;grid-template-columns:1fr 1.55fr;gap:clamp(1rem,4vw,5rem)}.mix-meta{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;text-transform:uppercase;font-size:.74rem;letter-spacing:.08em}.mix-meta span:last-child{text-align:right}.mix-card h3{margin:.5rem 0 0;font:clamp(3.8rem,9vw,9rem)/.82 "Archivo Black",sans-serif;letter-spacing:-.07em}.video-shell,.embed-shell{margin-top:1.5rem;align-self:start;background:#000;box-shadow:12px 12px 0 var(--acid);overflow:hidden}.video-shell video{width:100%;aspect-ratio:16/9;object-fit:cover}.embed-shell{background:#101010;border-radius:24px;box-shadow:12px 12px 0 var(--violet)}.embed-shell iframe{display:block;border:0;border-radius:24px}.mix-parts{display:flex;align-items:center;gap:.45rem;padding:.75rem;background:#0a0a0a;color:var(--white);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.mix-parts span{margin-right:auto}.mix-parts button{width:2rem;height:2rem;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:transparent;color:inherit;font:inherit;cursor:pointer}.mix-parts button:hover,.mix-parts button:focus-visible,.mix-parts button.active{background:var(--acid);border-color:var(--acid);color:#050505;outline:none}
.mix-card--gospel{padding-bottom:1rem}.mix-card--gospel h3{color:var(--violet)}
.connect{display:grid;grid-template-columns:1fr 1fr}.connect-card{min-height:65svh;padding:var(--pad);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:background .25s,color .25s}.connect-card strong{font:clamp(3.2rem,7vw,7rem)/.84 "Archivo Black",sans-serif;letter-spacing:-.07em}.connect-card .arrow{position:absolute;right:var(--pad);bottom:var(--pad);font-size:2rem}.events{background:var(--violet)}.events:hover{background:#5c42e8}.social{background:var(--acid);color:#050505}.social:hover{background:#efffa7}
.booking{min-height:92svh;padding:clamp(7rem,13vw,12rem) var(--pad) 3rem;display:flex;flex-direction:column}.booking h2{font:clamp(4rem,11vw,11rem)/.84 "Archivo Black",sans-serif;letter-spacing:-.08em;margin:auto 0}.book-button{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.4rem 0;display:flex;justify-content:space-between;font-size:clamp(1rem,2vw,1.35rem);text-transform:uppercase;transition:color .2s}.book-button:hover{color:var(--acid)}
footer{padding:1.2rem var(--pad);display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;border-top:1px solid var(--line);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}footer a{text-align:center}footer span:last-child{text-align:right}
.reveal{opacity:0;transform:translateY(38px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
@keyframes pulse{50%{opacity:.25;transform:scale(.7)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:760px){.topbar nav a:first-child{display:none}.hero{min-height:560px}.hero-content{width:91vw}.kicker{font-size:.62rem;margin:.8rem 0}.intro{grid-template-columns:1fr;padding-top:6rem}.intro h1{font-size:clamp(3.15rem,15vw,6rem)}.intro-copy{grid-column:1}.portrait-section{height:74svh}.portrait-wrap img{object-position:58% 50%}.section-head{grid-template-columns:1fr}.section-head h2{text-align:left;margin:2.2rem 0 1rem}.section-head>p:last-child{margin:0}.mix-card{grid-template-columns:1fr}.mix-card h3{font-size:clamp(4rem,19vw,7rem)}.mix-parts{gap:.25rem}.mix-parts span{display:none}.mix-parts button{width:1.85rem;height:1.85rem}.connect{grid-template-columns:1fr}.connect-card{min-height:52svh}.booking h2{font-size:clamp(3.5rem,16vw,6rem)}footer{grid-template-columns:1fr}footer a,footer span:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pulse-dot,.portrait-marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}.hero-video{display:none}.hero{background:url('assets/mix-poster.jpg') center/cover}}
