*{box-sizing:border-box;margin:0;padding:0}:root{--deep-purple:#2a1143;--medium-purple:#9853a1;--blue-gray:#7c8197;--coral:#f37b70;--peach:#fab383;--light-gray-blue:#b3b3c6}html{scroll-behavior:smooth}body{background:var(--deep-purple);min-height:100vh;color:var(--light-gray-blue);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:Courier New,monospace;line-height:1.6;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--deep-purple)}::-webkit-scrollbar-thumb{background:var(--medium-purple);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--coral)}.header{z-index:100;background:linear-gradient(135deg,#2a1143 0%,#9853a1 100%);border-bottom:4px solid #f37b70;padding:1rem 2rem;position:sticky;top:0;box-shadow:0 4px 8px #00000080}.header-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;display:flex}.logo-link{align-items:center;display:flex}.logo{filter:drop-shadow(2px 2px 4px #000000b3);width:auto;height:60px;transition:transform .3s}.logo:hover{transform:scale(1.05)}.nav{align-items:center;gap:2rem;display:flex}.nav-link{color:#fab383;letter-spacing:2px;text-shadow:2px 2px 4px #000c;border:2px solid #0000;padding:.5rem 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s;position:relative}.nav-link:hover{color:#f37b70;text-shadow:0 0 10px #f37b70;transform:translateY(-2px)}.nav-link.active{color:#f37b70;background:#f37b701a;border:2px solid #f37b70}@media (width<=768px){.header-container{text-align:center;flex-direction:column}.nav{flex-wrap:wrap;justify-content:center;gap:1rem}.nav-link{padding:.4rem .8rem;font-size:.9rem}.logo{height:50px}}.footer{background:linear-gradient(135deg,#2a1143 0%,#9853a1 100%);border-top:4px solid #f37b70;margin-top:auto;padding:2rem;box-shadow:0 -4px 8px #00000080}.footer-container{flex-direction:column;align-items:center;gap:1.5rem;max-width:1200px;margin:0 auto;display:flex}.social-links{justify-content:center;gap:2rem;display:flex}.social-link{color:#fab383;justify-content:center;align-items:center;transition:all .3s;display:flex}.social-link:hover{color:#f37b70;filter:drop-shadow(0 0 8px #f37b70);transform:translateY(-4px)scale(1.1)}.footer-text{text-align:center;color:#b3b3c6}.footer-text p{margin:.5rem 0;font-family:Courier New,monospace;font-size:.9rem}.tagline{color:#fab383;text-shadow:2px 2px 4px #000c;font-style:italic;font-weight:700}@media (width<=768px){.social-links{gap:1.5rem}.social-link svg{width:28px;height:28px}}.home-page{min-height:100vh}.hero{text-align:center;background:linear-gradient(135deg,#2a1143 0%,#9853a1 50%,#7c8197 100%);border-bottom:4px solid #f37b70;padding:6rem 2rem;box-shadow:0 4px 12px #00000080}.hero-content{max-width:900px;margin:0 auto}.hero-title{color:#fab383;text-shadow:4px 4px 8px #000000e6;letter-spacing:4px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:4rem;animation:3s ease-in-out infinite glowPulse}@keyframes glowPulse{0%,to{text-shadow:4px 4px 8px #000000e6,0 0 20px #f37b70}50%{text-shadow:4px 4px 8px #000000e6,0 0 40px #f37b70}}.hero-subtitle{color:#f37b70;text-shadow:2px 2px 4px #000c;letter-spacing:2px;margin:0 0 1.5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.5rem}.hero-description{color:#b3b3c6;max-width:600px;margin:0 auto;font-family:Courier New,monospace;font-size:1.2rem;line-height:1.6}.about-section,.cta-section{background:#2a1143;padding:4rem 2rem}.cta-section{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#2a1143 100%);border-top:4px solid #f37b70}.about-content{color:#b3b3c6;margin-bottom:3rem;font-family:Courier New,monospace;font-size:1.1rem;line-height:1.8}.about-content p{margin-bottom:1.5rem}.subsection-title{color:#f37b70;text-shadow:2px 2px 4px #000c;letter-spacing:2px;text-align:center;margin:0 0 2rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.8rem}.members-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-top:2rem;display:grid}.member-card{text-align:center;background:#9853a133;border:2px solid #9853a1;border-radius:8px;padding:2rem;transition:all .3s}.member-card:hover{border-color:#f37b70;transform:translateY(-8px);box-shadow:0 8px 16px #f37b7066}.member-icon{margin-bottom:1rem;font-size:3rem}.member-card h4{color:#fab383;letter-spacing:1px;margin:0 0 .5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.3rem}.member-card p{color:#b3b3c6;margin:0;font-family:Courier New,monospace;font-size:.9rem}.cta-section h2{color:#fab383;text-shadow:3px 3px 6px #000c;letter-spacing:3px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:2.5rem}.cta-section p{color:#b3b3c6;margin:0 0 2rem;font-family:Courier New,monospace;font-size:1.2rem}.cta-buttons{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.cta-button{color:#2a1143;letter-spacing:2px;text-shadow:none;background:#f37b70;border:3px solid #f37b70;border-radius:4px;padding:1rem 2.5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:4px 4px #00000080}.cta-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #00000080}.cta-button.secondary{color:#fab383;background:0 0;border-color:#fab383}.cta-button.secondary:hover{background:#fab3831a}@media (width<=768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.hero-description{font-size:1rem}.section-title{font-size:2rem}.members-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.cta-buttons{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:300px}}.shows-page{background:#2a1143;min-height:100vh}.shows-hero{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border-bottom:4px solid #f37b70;padding:4rem 2rem}.page-title{color:#fab383;text-shadow:4px 4px 8px #000000e6;letter-spacing:4px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:3.5rem}.page-subtitle{color:#b3b3c6;margin:0;font-family:Courier New,monospace;font-size:1.2rem}.shows-section,.past-shows-section{padding:4rem 2rem}.past-shows-section{background:#9853a11a;border-top:2px solid #9853a1}.section-title{color:#fab383;text-shadow:3px 3px 6px #000c;letter-spacing:3px;text-align:center;margin:0 0 2rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:2.5rem}.shows-list{flex-direction:column;gap:2rem;margin-bottom:4rem;display:flex}.show-card{background:#9853a133;border:3px solid #9853a1;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;transition:all .3s;display:flex}.show-card.upcoming:hover{border-color:#f37b70;transform:translate(8px);box-shadow:-8px 8px #f37b7066}.show-date{flex-direction:column;min-width:150px;display:flex}.date-text{color:#f37b70;letter-spacing:1px;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.3rem}.time-text{color:#fab383;margin-top:.5rem;font-family:Courier New,monospace;font-size:1rem}.show-details{flex:1;min-width:200px}.venue-name{color:#fab383;letter-spacing:2px;margin:0 0 .5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.8rem}.location{color:#b3b3c6;margin:0;font-family:Courier New,monospace;font-size:1.1rem}.show-action{min-width:120px}.tickets-button{color:#2a1143;letter-spacing:1px;cursor:pointer;background:#f37b70;border:3px solid #f37b70;border-radius:4px;padding:.8rem 1.5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1rem;font-weight:700;transition:all .3s;box-shadow:3px 3px #00000080}.tickets-button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px #00000080}.booking-cta{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border:3px solid #fab383;border-radius:8px;padding:3rem 2rem}.booking-cta h3{color:#fab383;letter-spacing:2px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:2rem}.booking-cta p{color:#b3b3c6;margin:0 0 1.5rem;font-family:Courier New,monospace;font-size:1.1rem}.book-button{color:#2a1143;letter-spacing:2px;background:#f37b70;border:3px solid #f37b70;border-radius:4px;padding:1rem 2.5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:4px 4px #00000080}.book-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #00000080}.past-shows-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.show-card.past{background:#7c819733;border:2px solid #7c8197;flex-direction:column;align-items:flex-start;padding:1.5rem}.show-card.past:hover{border-color:#9853a1;transform:translateY(-4px);box-shadow:0 4px 8px #9853a14d}.show-date-past{color:#fab383;margin-bottom:.5rem;font-family:Courier New,monospace;font-size:.9rem}.show-details-past h4{color:#b3b3c6;letter-spacing:1px;margin:0 0 .3rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem}.show-details-past p{color:#7c8197;margin:0;font-family:Courier New,monospace;font-size:.9rem}@media (width<=768px){.page-title{font-size:2.5rem}.show-card{flex-direction:column;align-items:flex-start}.show-action,.tickets-button{width:100%}.past-shows-list{grid-template-columns:1fr}}.setlist-page{background:#2a1143;min-height:100vh}.setlist-hero{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border-bottom:4px solid #f37b70;padding:4rem 2rem}.setlist-section{padding:4rem 2rem}.setlist-intro{text-align:center;max-width:800px;margin:0 auto 3rem}.setlist-intro p{color:#b3b3c6;margin-bottom:1rem;font-family:Courier New,monospace;font-size:1.1rem;line-height:1.8}.controls{flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;display:flex}.search-input{color:#b3b3c6;background:#2a114399;border:2px solid #9853a1;border-radius:4px;flex:1;min-width:250px;padding:1rem 1.5rem;font-family:Courier New,monospace;font-size:1rem;transition:all .3s}.search-input:focus{border-color:#fab383;outline:none;box-shadow:0 0 10px #fab3834d}.search-input::placeholder{color:#7c8197}.genre-filter{letter-spacing:1px;color:#fab383;cursor:pointer;background:#2a1143;border:2px solid #9853a1;border-radius:4px;min-width:180px;padding:1rem 1.5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1rem;transition:all .3s}.genre-filter option{color:#fab383;background:#2a1143;padding:.5rem}.genre-filter:focus{border-color:#fab383;outline:none;box-shadow:0 0 10px #fab3834d}.genre-filter:hover{border-color:#f37b70}.results-count{color:#fab383;text-align:right;margin-bottom:1rem;font-family:Courier New,monospace;font-size:.9rem}.table-container{background:#2a114366;border:3px solid #9853a1;border-radius:8px;margin-bottom:3rem;overflow-x:auto}.setlist-table{border-collapse:collapse;width:100%}.setlist-table thead{z-index:10;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);position:sticky;top:0}.setlist-table th{color:#fab383;text-align:left;letter-spacing:2px;border-bottom:2px solid #f37b70;padding:1rem 1.5rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem}.setlist-table tbody tr{border-bottom:1px solid #7c81974d;transition:all .3s}.setlist-table tbody tr:hover{background:#9853a133}.setlist-table tbody tr:last-child{border-bottom:none}.setlist-table td{padding:1rem 1.5rem;font-family:Courier New,monospace;font-size:1rem}.artist-cell{color:#fab383;min-width:180px;font-weight:700}.song-cell{color:#b3b3c6;min-width:250px}.genre-cell{color:#7c8197;min-width:150px;font-size:.9rem}.no-results{text-align:center;color:#7c8197;padding:3rem;font-family:Courier New,monospace;font-size:1.1rem;font-style:italic}.setlist-footer{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border:3px solid #fab383;border-radius:8px;padding:3rem 2rem}.setlist-footer h3{color:#fab383;letter-spacing:2px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:2rem}.setlist-footer p{color:#b3b3c6;margin:0;font-family:Courier New,monospace;font-size:1.1rem}@media (width<=768px){.controls{flex-direction:column}.search-input,.genre-filter{width:100%;min-width:100%}.setlist-table th,.setlist-table td{padding:.75rem 1rem;font-size:.9rem}.artist-cell,.song-cell,.genre-cell{min-width:unset}.genre-cell{font-size:.8rem}.results-count{text-align:left}}.gallery-page{background:#2a1143;min-height:100vh}.gallery-hero{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border-bottom:4px solid #f37b70;padding:4rem 2rem}.gallery-section{padding:4rem 2rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-bottom:4rem;display:grid}.gallery-item{aspect-ratio:16/9;cursor:pointer;background:#9853a133;border:3px solid #9853a1;border-radius:8px;transition:all .3s;position:relative;overflow:hidden}.gallery-item:hover{border-color:#f37b70;transform:scale(1.05);box-shadow:0 8px 20px #f37b7066}.gallery-placeholder{background:linear-gradient(135deg,#2a1143cc 0%,#7c819799 100%);flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.placeholder-icon{opacity:.7;margin-bottom:1rem;font-size:4rem}.placeholder-label{color:#b3b3c6;letter-spacing:2px;opacity:.8;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem}.gallery-overlay{background:linear-gradient(#0000 0%,#2a1143f2 100%);padding:1.5rem;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.gallery-item:hover .gallery-overlay{transform:translateY(0)}.gallery-overlay h3{color:#fab383;letter-spacing:1px;margin:0;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem}.gallery-item.video:before{content:"▶";color:#f37b70;z-index:10;text-shadow:2px 2px 8px #000000e6;pointer-events:none;opacity:.9;font-size:3rem;transition:all .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gallery-item.video:hover:before{opacity:1;transform:translate(-50%,-50%)scale(1.2)}.gallery-cta{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border:3px solid #fab383;border-radius:8px;padding:3rem 2rem}.gallery-cta h3{color:#fab383;letter-spacing:2px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:2rem}.gallery-cta p{color:#b3b3c6;margin:0 0 2rem;font-family:Courier New,monospace;font-size:1.1rem}.social-buttons{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.social-button{color:#fab383;letter-spacing:2px;background:0 0;border:3px solid #fab383;border-radius:4px;padding:.8rem 2rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:3px 3px #00000080}.social-button:hover{color:#2a1143;background:#fab383;transform:translate(-2px,-2px);box-shadow:5px 5px #00000080}@media (width<=768px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.social-buttons{flex-direction:column;align-items:center}.social-button{width:100%;max-width:250px}}.contact-page{background:#2a1143;min-height:100vh}.contact-hero{text-align:center;background:linear-gradient(135deg,#9853a1 0%,#7c8197 100%);border-bottom:4px solid #f37b70;padding:4rem 2rem}.contact-section{padding:4rem 2rem}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.contact-info,.contact-form-section{background:#9853a133;border:3px solid #9853a1;border-radius:8px;padding:3rem}.section-title{color:#fab383;text-shadow:3px 3px 6px #000c;letter-spacing:2px;margin:0 0 2rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:2rem}.info-block{margin-bottom:2.5rem}.info-block h3{color:#f37b70;letter-spacing:1px;margin:0 0 1rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.3rem}.info-block p{color:#b3b3c6;margin:0;font-family:Courier New,monospace;font-size:1.1rem;line-height:1.6}.contact-link{color:#fab383;text-decoration:none;transition:all .3s}.contact-link:hover{color:#f37b70;text-shadow:0 0 8px #f37b70}.services-list{margin:0;padding:0;list-style:none}.services-list li{color:#b3b3c6;padding:.5rem 0 .5rem 1.5rem;font-family:Courier New,monospace;font-size:1.1rem;position:relative}.services-list li:before{content:"▸";color:#f37b70;position:absolute;left:0}.social-links-vertical{flex-direction:column;gap:.8rem;display:flex}.social-link-item{color:#fab383;letter-spacing:1px;padding:.5rem 0;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.1rem;text-decoration:none;transition:all .3s;display:inline-block}.social-link-item:hover{color:#f37b70;text-shadow:0 0 8px #f37b70;transform:translate(8px)}.form-description{color:#b3b3c6;margin-bottom:2rem;font-family:Courier New,monospace;font-size:1.1rem;line-height:1.6}.email-button{color:#2a1143;letter-spacing:2px;text-align:center;background:#f37b70;border:3px solid #f37b70;border-radius:4px;margin-bottom:2rem;padding:1.2rem 2rem;font-family:Bebas Neue,Arial Black,Impact,sans-serif;font-size:1.2rem;font-weight:700;text-decoration:none;transition:all .3s;display:block;box-shadow:4px 4px #00000080}.email-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #00000080}@media (width<=1024px){.contact-grid{grid-template-columns:1fr;gap:2rem}}@media (width<=768px){.contact-info,.contact-form-section{padding:2rem}.section-title{font-size:1.5rem}.info-block h3{font-size:1.1rem}.info-block p,.services-list li{font-size:1rem}}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%}.content-container{max-width:1200px;margin:0 auto}.main-content>div{animation:.5s ease-in fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
