
.music-page { --pink:#cbabff; --muted:#b9b1d0; --music-header-height:96px; color:#f4f0ff; font-family:Outfit,sans-serif; background:radial-gradient(ellipse at 90% 12%,#38205966,transparent 35%),radial-gradient(ellipse at 0% 44%,#28245577,transparent 35%),#100d20 !important; }
.music-page * { box-sizing:border-box; }
.music-page a { color:inherit; }
.music-page :focus-visible { outline:3px solid #cfb2ff; outline-offset:5px; }
.music-page .landing-topbar { height:var(--music-header-height); background:#100d20ee; border-bottom:1px solid #ffffff19; backdrop-filter:blur(20px); }
.music-page .landing-nav a,.music-page .landing-nav-dropdown-toggle { color:#e6dcff; text-shadow:none; }
.music-page .landing-nav-dropdown-menu { background:#211a36; border-color:#ffffff30; }
.music-page .landing-topbar > a { pointer-events:auto; }
.music-page main { padding-top:var(--music-header-height); width:100%; margin:0; }
.music-skip { position:fixed; top:-100px; left:15px; z-index:100; padding:15px; background:#221a36; }
.music-skip:focus { top:15px; }
.music-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 5vw; border-bottom:1px solid #ffffff12; }
.music-artists { display:flex; flex-wrap:wrap; gap:28px; font-size:11px; letter-spacing:1.5px; text-transform:uppercase; }
.music-artists a { text-decoration:none; color:#bfb1db; }
.music-artists a:hover { color:white; }
#music-motion { background:transparent; color:#cdbbe5; border:1px solid #ffffff25; border-radius:30px; padding:8px 13px; font:11px Outfit,sans-serif; cursor:pointer; }
.music-hero { position:relative; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:5vw; min-height:calc(100svh - 156px); padding:52px 7vw 88px; overflow:hidden; background:radial-gradient(ellipse at 80% 50%,#7342af33,transparent 60%); }
.music-hero-copy { position:relative; z-index:1; }
.music-eyebrow { color:var(--muted); font-size:10px; letter-spacing:2.5px; text-transform:uppercase; margin:0 0 18px; line-height:1.6; }
.music-hero h1 { font-size:clamp(100px,12vw,210px); font-weight:900; line-height:.9; letter-spacing:-.075em; margin:26px 0; background:linear-gradient(135deg,#fff 20%,#c9c7ff 55%,#a884e8); color:transparent; background-clip:text; }
.music-hero h1 span { display:inline-block; font-size:.3em; vertical-align:top; margin-left:12px; color:#c2a1ff; }
.music-tagline { font-size:clamp(22px,2.2vw,38px); font-weight:500; margin:0 0 18px; letter-spacing:-.7px; }
.music-intro { color:var(--muted); font-size:16px; line-height:1.8; margin:0 0 28px; }
.music-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
.music-button { display:inline-flex; justify-content:center; align-items:center; gap:10px; padding:15px 23px; border-radius:3px; background:#d2b6ff; color:#1a102b !important; text-decoration:none; font-weight:600; font-size:14px; transition:background .2s,transform .2s; }
.music-button:hover { background:#eadcff; transform:translateY(-2px); }
.music-meet-link { font-size:13px; text-decoration:none; border-bottom:1px solid #ffffff40; padding-bottom:5px; }
.music-upload-note { color:#b9abc9; font-size:12px; margin:28px 0 0; }
.music-upload-note span { display:inline-block; width:6px; height:6px; background:#ba95ef; border-radius:50%; margin-right:8px; box-shadow:0 0 12px #bc91ff; }
.music-album-art { display:block; position:relative; margin:0; padding:0; text-decoration:none; border:1px solid #c8a5ff55; box-shadow:0 0 80px #9c66ff25,0 25px 70px #0008; transform:rotate(2deg); transition:transform .4s; }
.music-album-art:hover { transform:rotate(0deg); }
.music-album-art img { display:block; width:100%; height:auto; }
.album-art-label { display:flex; justify-content:space-between; gap:15px; padding:16px 18px; background:#1c142d; font-size:12px; letter-spacing:2px; }
.album-art-label span { font-size:9px; color:#bcadd1; align-self:center; }
.music-hero-bottom { position:absolute; bottom:25px; left:7vw; right:7vw; display:flex; justify-content:space-between; gap:20px; color:#a89abc; font-size:9px; letter-spacing:2px; }
.music-particles { position:absolute; inset:0; pointer-events:none; }
.music-particles i { position:absolute; left:var(--x); top:var(--y); font-style:normal; font-size:var(--size); color:#c8b2ff66; animation:musicDrift var(--duration) ease-in-out var(--delay) infinite; }
.music-section { padding:80px 7vw; border-top:1px solid #ffffff14; scroll-margin-top:calc(var(--music-header-height) + 20px); }
.music-section h2 { font-size:clamp(32px,4vw,66px); font-weight:500; letter-spacing:-1.8px; line-height:1.1; margin:0; }
.music-pink { color:var(--pink); }
.music-section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:35px; }
.music-section-heading .music-eyebrow { margin-bottom:12px; }
.music-section-note { color:#a79bbd; font-size:11px; }
.music-tracklist { display:grid; grid-template-columns:1fr 1.1fr; gap:7vw; background:linear-gradient(120deg,#22183188,#17122588); }
.album-manifest > p:not(.music-eyebrow) { color:var(--muted); max-width:360px; font-size:15px; line-height:1.8; margin:24px 0; }
.album-signature { display:block; margin-top:42px; font-size:27px; letter-spacing:9px; color:#c5ade7; }
.album-track-list { list-style:none; margin:0; padding:0; }
.album-track-list a { display:grid; grid-template-columns:30px 1fr auto 16px; align-items:center; gap:20px; padding:19px 12px; border-bottom:1px solid #ffffff19; text-decoration:none; font-size:22px; transition:background .2s,color .2s; }
.album-track-list li:first-child a { border-top:1px solid #ffffff19; }
.album-track-list a:hover { background:#c4a1ff12; color:#dcc7ff; }
.track-number { color:#a999c3; font-size:12px; font-variant-numeric:tabular-nums; }
.track-platform { color:#a999c3; font-size:9px; letter-spacing:1px; }
.music-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; align-items:start; }
.music-card { min-width:0; overflow:hidden; background:#1b162a; border:1px solid #ffffff17; border-radius:8px; scroll-margin-top:calc(var(--music-header-height) + 20px); transition:border-color .2s; }
.music-card:target { border-color:#c29af9; box-shadow:0 0 25px #b584ff22; }
.music-cover { position:relative; aspect-ratio:1; }
.music-cover img { display:block; width:100%; height:100%; object-fit:cover; }
.music-cover > span { position:absolute; left:12px; top:12px; padding:7px 10px; background:#100d20dd; color:#fff; border:1px solid #ffffff30; font-size:9px; letter-spacing:2px; }
.music-card-body { padding:20px; }
.music-card-body .music-eyebrow { font-size:9px; margin-bottom:8px; }
.music-card h3 { margin:0 0 20px; font-size:25px; font-weight:500; }
.music-card iframe { display:block; width:100%; height:160px; border:0; border-radius:4px; background:#100d20; }
.music-card iframe[src*="youtube"] { height:auto; aspect-ratio:16/9; }
.music-card-body > a { display:flex; justify-content:space-between; gap:8px; font-size:12px; color:#cdb5ef; text-decoration:none; border-top:1px solid #ffffff18; padding-top:16px; margin-top:18px; }
.music-listen-panel { min-height:160px; padding:16px; text-align:center; background:radial-gradient(ellipse at center,#61339d44,#100d20); }
.music-listen-panel > span { font-size:28px; color:#cdb5ef; }
.music-listen-panel p { font-size:12px; line-height:1.6; color:var(--muted); }
.music-listen-panel .music-button { font-size:11px; padding:12px; }
.music-member-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.music-members-intro { max-width:700px; line-height:1.8; color:var(--muted); margin:-12px 0 32px; font-size:15px; }
.music-member { min-width:0; border:1px solid #ffffff20; background:#1b162a; border-radius:6px; overflow:hidden; }
.music-member-portrait { position:relative; aspect-ratio:4/5; overflow:hidden; }
.music-member-portrait img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .4s; }
.music-member:hover img { transform:scale(1.04); }
.music-member-number { position:absolute; left:12px; top:12px; font-size:9px; padding:7px 10px; background:#100d20cc; }
.music-member-copy { padding:20px; border-top:2px solid var(--member-color); }
.music-member-copy .music-eyebrow { color:var(--member-color); font-size:9px; margin-bottom:6px; }
.music-member h3 { font-size:30px; font-weight:500; margin:0 0 20px; }
.music-member-copy a { text-decoration:none; font-size:12px; color:#c2b5d6; }
.music-event { position:relative; display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:5vw; padding-top:50px; padding-bottom:50px; overflow:hidden; background:radial-gradient(ellipse at 25% 70%,#53309770,transparent 65%),#151025; }
.event-art { position:relative; height:560px; }
.event-art img { position:absolute; bottom:0; height:100%; width:65%; object-fit:contain; object-position:bottom; filter:drop-shadow(0 0 25px #b083fb33); }
.event-art img:first-child { left:-6%; }
.event-art img:last-child { right:-6%; }
.music-badge { display:inline-block; padding:8px 12px; border:1px solid #c39eec60; color:#d8b9ff; font-size:9px; letter-spacing:2px; border-radius:30px; margin-bottom:26px; }
.music-event h2 { font-size:clamp(44px,5vw,84px); }
.event-copy > p:not(.music-eyebrow) { color:#c3b7d8; font-size:16px; line-height:1.8; }
.event-copy .event-note { font-size:12px !important; color:#9e91b4 !important; margin-bottom:24px; }
.music-polaroids { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.music-gallery .music-polaroid { display:block; padding:12px; border:1px solid #ffffff20; background:#1e172e; text-decoration:none; transition:transform .25s; }
.music-gallery .music-polaroid:hover { transform:translateY(-5px); }
.music-gallery .music-polaroid img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; }
.music-polaroid-caption { display:flex; justify-content:space-between; align-items:center; padding:18px 6px 8px; color:#dac6f5; font-size:18px; }
.music-polaroid-caption small { display:block; color:#a89abb; font-size:9px; letter-spacing:2px; margin-bottom:8px; }
.music-footer { padding:50px 7vw; text-align:center; border-top:1px solid #ffffff18; }
.music-footer-mark { font-size:30px; letter-spacing:6px; }
.music-footer p { color:var(--muted); font-size:12px; letter-spacing:2px; }
.music-footer a { display:inline-block; margin-top:18px; font-size:12px; color:#c9b1ed; text-decoration:none; }
.music-lyrics { margin-top: 18px; border: 1px solid #9464b044; border-radius: 12px; background: #fff8; overflow: hidden; }
.music-lyrics summary { padding: 15px; cursor: pointer; font-weight: 600; font-size: 14px; color: #622681; }
.music-lyrics summary:hover { background: #ecd9fb88; }
.music-lyrics[open] summary { border-bottom: 1px solid #9464b030; }
.music-lyrics-status { padding: 0 16px; font-size: 13px; line-height: 1.6; }
.music-lyrics-status:empty { display: none; }
.music-lyrics-content { max-height: 65svh; overflow-y: auto; overscroll-behavior: contain; padding: 0 18px; scrollbar-width: thin; scrollbar-color: #ad75ce #efe5f9; color: #352443; }
.music-lyrics-content:empty { display: none; }
.music-lyrics-content p { margin: 18px 0; white-space: pre-line; overflow-wrap: anywhere; font: 400 15px/1.85 Outfit, sans-serif; }
.music-lyrics-content h4 { margin: 24px 0 12px; font-size: 14px; line-height: 1.6; color: #762d94; }
.music-lyrics-content strong { color: #752591; }
.music-lyrics-content em { color: #684c79; }
.music-lyrics-content hr { border: 0; border-top: 1px solid #956bab30; margin: 26px 0; }
.music-lyrics > a { display: block; padding: 14px 16px; border-top: 1px solid #9464b030; font-size: 11px; color: #683284; }
.music-lightbox { width: min(1120px,94vw); max-width: 94vw; max-height: 94dvh; padding: 20px; border: 1px solid #fff; border-radius: 16px; background: #f5edfff5; color: #39204e; box-shadow: 0 25px 100px #29183f50; }
.music-lightbox::backdrop { background: #3921539c; backdrop-filter: blur(12px); }
.music-lightbox-toolbar, .music-lightbox-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 13px; }
.music-lightbox button { min-height: 44px; padding: 10px 16px; border: 1px solid #ae88c250; border-radius: 30px; background: #ffffffa0; color: #4d2964; font: 500 13px Outfit,sans-serif; cursor: pointer; }
.music-lightbox button:hover { background: #e7d4fb; }
.music-lightbox figure { margin: 14px 0; }
.music-lightbox figure img { display: block; width: 100%; height: min(68dvh,850px); object-fit: contain; }
.music-lightbox figcaption { text-align: center; margin-top: 14px; font-size: 14px; }

.music-lyrics { background:#110d2080; border-color:#ffffff20; }
.music-lyrics summary { color:#d3b7f8; }
.music-lyrics summary:hover,.music-lyrics[open] summary { background:#b88be819; border-color:#ffffff20; }
.music-lyrics-content { color:#d8cee8; }
.music-lyrics > a { color:#cfb1fa; }
.music-lyrics-status { color:#beafd2; }
@keyframes musicDrift { 50% { transform:translateY(-18px) rotate(12deg); opacity:.35; } }
.is-paused *, .is-hidden * { animation-play-state:paused !important; }
@media(min-width:1800px) { .music-hero,.music-section { padding-left:max(7vw,calc((100vw - 1600px)/2)); padding-right:max(7vw,calc((100vw - 1600px)/2)); } }
@media(max-width:1100px) { .music-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .music-hero { gap:4vw; padding-left:5vw; padding-right:5vw; } .music-section { padding:60px 5vw; } .music-member-grid { gap:12px; } .music-member-copy { padding:15px; } .event-art { height:440px; } }
@media(max-width:700px) {
.music-page { --music-header-height:76px; }
.music-toolbar { align-items:start; padding:16px 5vw; gap:12px; }
.music-artists { gap:12px; font-size:9px; letter-spacing:.7px; }
#music-motion { font-size:9px; padding:6px 9px; }
.music-hero { grid-template-columns:1fr; min-height:0; padding:38px 6vw 74px; gap:32px; }
.music-hero h1 { font-size:clamp(100px,26vw,180px); margin:20px 0; }
.music-hero .music-eyebrow { font-size:9px; }
.music-tagline { font-size:26px; }
.music-intro { font-size:14px; }
.music-hero-actions { gap:20px; }
.music-button { font-size:12px; padding:14px 18px; }
.music-album-art { max-width:460px; width:94%; margin:0 auto; transform:rotate(1deg); }
.music-hero-bottom { left:6vw; right:6vw; font-size:7px; letter-spacing:1px; }
.music-section { padding:45px 5vw; }
.music-tracklist { grid-template-columns:1fr; gap:28px; }
.album-manifest h2 br { display:none; }
.album-signature { display:none; }
.album-manifest > p:not(.music-eyebrow) { max-width:none; margin-bottom:0; }
.album-track-list a { font-size:20px; gap:12px; padding:18px 5px; }
.music-section-heading { align-items:start; flex-direction:column; gap:15px; margin-bottom:28px; }
.music-section-note { font-size:10px; }
.music-grid { grid-template-columns:1fr; gap:24px; }
.music-card-body { padding:24px; }
.music-member-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.music-member-copy .music-eyebrow { font-size:8px; letter-spacing:1px; }
.music-member h3 { font-size:26px; }
.music-member-copy a { font-size:11px; }
.music-event { grid-template-columns:1fr; gap:20px; }
.event-art { height:300px; order:2; }
.event-art img { width:60%; }
.event-art img:first-child { left:0; }
.event-art img:last-child { right:0; }
.music-event h2 { font-size:55px; }
.music-polaroids { grid-template-columns:1fr; gap:22px; }
.music-lightbox { padding:12px; }
.music-lightbox figure img { height:58dvh; }
.music-lightbox-controls > span { display:none; }
}
@media(prefers-reduced-motion:reduce) { .music-page *, .music-page *::before,.music-page *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

.music-lyrics-content h4,.music-lyrics-content strong { color:#d2b3fa; }
.music-lyrics-content em { color:#bbaeCD; }

.music-album-video { width:100%; aspect-ratio:16/9; overflow:hidden; border:1px solid #c8a5ff40; border-radius:8px; background:#090712; box-shadow:0 20px 65px #0004; }
.music-album-video iframe { display:block; width:100%; height:100%; border:0; }
.music-album-player-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-top:20px; color:var(--muted); font-size:12px; line-height:1.6; }
.music-album-player-footer a { color:var(--pink); text-decoration:none; }
.music-album-player-footer a:hover { text-decoration:underline; }
