@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Roboto:wght@300;400;500;700&display=swap);header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--nav-bg);border-bottom:1px solid var(--divider);position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1rem 2rem}.logo{font-family:Montserrat,sans-serif;font-size:1.5rem;font-weight:700}.logo a{align-items:center;color:var(--text-primary);display:flex;letter-spacing:1px;text-decoration:none;text-shadow:0 0 10px var(--accent-primary)}.desktop-nav ul{display:flex;gap:2rem}.desktop-nav a{color:var(--text-primary);font-weight:500;padding-bottom:3px;position:relative}.desktop-nav a:after{background-color:var(--accent-primary);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s;width:0}.desktop-nav a:hover:after{width:100%}.header-controls{align-items:center;display:flex;gap:1rem}.theme-toggle{background:none;border:none;border-radius:50%;color:var(--text-primary);cursor:pointer;font-size:1.2rem;padding:.5rem;transition:background-color .3s,transform .3s}.theme-toggle:hover{background-color:var(--bg-tertiary);transform:rotate(30deg)}.mobile-menu-toggle{background:none;border:none;cursor:pointer;display:none;padding:.5rem;position:relative}.hamburger{display:flex;flex-direction:column;gap:5px;height:20px;justify-content:space-between;width:24px}.hamburger span{background-color:var(--text-primary);display:block;height:2px;transition:transform .3s,opacity .3s;width:100%}.hamburger.active span:first-child{transform:translateY(9px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.mobile-nav{background-color:var(--bg-secondary);display:none;overflow:hidden;transition:max-height .4s ease-in-out}.mobile-nav.open{border-bottom:1px solid var(--divider)}.mobile-nav ul{padding:1.5rem 2rem}.mobile-nav li{margin-bottom:1rem}.mobile-nav a{color:var(--text-primary);display:block;font-size:1.2rem;font-weight:500;padding:.5rem 0}.mobile-social-links{display:flex;flex-wrap:wrap;gap:1rem;padding:0 2rem 1.5rem}.mobile-social-links .social-icon-link{align-items:center;background-color:var(--bg-tertiary);border-radius:50%;color:var(--accent-primary);display:flex;font-size:1.5rem;height:40px;justify-content:center;transition:background-color .3s,transform .3s;width:40px}.mobile-social-links .social-icon-link:hover{background-color:var(--accent-primary);color:var(--bg-primary);transform:translateY(-3px)}@media (max-width:1024px){.header-content{padding:1rem}}@media (max-width:768px){.desktop-nav{display:none}.mobile-menu-toggle,.mobile-nav{display:block}}footer{background-color:var(--footer-bg);border-top:1px solid var(--divider);margin-top:auto;padding-bottom:60px}.footer-content{justify-content:center;margin:0 auto;max-width:1400px;padding:3rem 2rem}.footer-content,.footer-social{align-items:center;display:flex}.footer-social{flex-direction:column;text-align:center}.footer-social h3{font-size:1.2rem;margin-bottom:1.5rem;text-align:center}.social-icons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.social-icon-link{align-items:center;background-color:var(--bg-tertiary);border-radius:50%;color:var(--text-primary);display:inline-flex;height:40px;justify-content:center;transition:background-color .3s,color .3s,transform .2s;width:40px}.social-icon-link:hover{background-color:var(--accent-primary);color:var(--button-text);transform:translateY(-3px)}.footer-bottom{border-top:1px solid var(--divider);padding:1.5rem;text-align:center}.footer-bottom p{color:var(--text-tertiary);font-size:.9rem;margin:0}@media (max-width:768px){.footer-content{padding:2rem 1rem;text-align:center}}.mini-player{background-color:#222;background-color:var(--card-bg,#222);bottom:0;box-shadow:0 -4px 30px #00000026;display:block;left:0;pointer-events:none;position:fixed;right:0;transform:translateY(100%);transition:transform .3s ease;z-index:1000}.mini-player.active{pointer-events:all;transform:translateY(0)}.mini-player-content{align-items:center;display:flex;margin:0 auto;max-width:1200px;padding:.8rem 1.5rem;width:100%}.play-button{align-items:center;background-color:#ff4081;background-color:var(--accent-primary,#ff4081);border:none;border-radius:50%;color:#fff;color:var(--button-text,#fff);cursor:pointer;display:flex;flex-shrink:0;font-size:1rem;height:40px;justify-content:center;margin-right:1rem;transition:background-color .2s,transform .2s;width:40px}.play-button:hover{background-color:#ff80ab;background-color:var(--accent-secondary,#ff80ab);transform:scale(1.05)}.track-info{flex:1 1;overflow:hidden}.track-metadata{align-items:center;display:flex;margin-bottom:.5rem}.track-title{color:#fff;color:var(--text-primary,#fff);font-size:.9rem;margin:0}.track-album{color:#aaa;color:var(--text-tertiary,#aaa);font-size:.85rem}.progress-bar{background-color:#444;background-color:var(--bg-tertiary,#444);border-radius:2px;height:4px;overflow:hidden}.progress{background-color:#ff4081;background-color:var(--accent-primary,#ff4081);border-radius:2px;height:100%}.volume-controls{align-items:center;display:flex;margin-left:1.5rem;margin-right:1.5rem}.volume-button{background-color:initial;border:none;color:#fff;color:var(--text-primary,#fff);cursor:pointer;font-size:1rem;padding:.5rem;transition:color .2s}.volume-button:hover{color:#ff4081;color:var(--accent-primary,#ff4081)}.volume-slider{-webkit-appearance:none;appearance:none;background:#444;background:var(--bg-tertiary,#444);border-radius:2px;height:4px;margin-left:.5rem;outline:none;width:80px}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#ff4081;background:var(--accent-primary,#ff4081);border-radius:50%;cursor:pointer;height:12px;width:12px}.volume-slider::-moz-range-thumb{background:#ff4081;background:var(--accent-primary,#ff4081);border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}.close-button{background-color:initial;border:none;color:#ccc;color:var(--text-secondary,#ccc);cursor:pointer;font-size:1rem;padding:.5rem;transition:color .2s}.close-button:hover{color:#ff4081;color:var(--accent-primary,#ff4081)}@media (max-width:768px){.mini-player-content{padding:.5rem 1rem}.play-button{height:35px;margin-right:.8rem;width:35px}.volume-controls{margin-left:.8rem;margin-right:.8rem}.volume-slider{width:60px}}@media (max-width:480px){.volume-controls{display:none}}.hero-section{margin-bottom:2rem;padding:3rem 0}.hero-content{align-items:center;display:flex;gap:3rem;margin:0 auto;max-width:1200px}.profile-image-container{flex-shrink:0}.profile-image{border:4px solid var(--accent-primary);border-radius:50%;box-shadow:0 0 20px #8a2be280;height:250px;object-fit:cover;width:250px}.hero-text{flex:1 1}.hero-text h1{font-size:3rem;margin-bottom:1rem;text-shadow:0 0 10px var(--accent-tertiary)}.artist-bio{font-size:1.2rem;margin-bottom:2rem}.hero-buttons{display:flex;gap:1rem}.primary-button{align-items:center;border:none;border-radius:30px;cursor:pointer;display:inline-flex;font-weight:500;gap:.8rem;justify-content:center;padding:.8rem 1.5rem;text-decoration:none;transition:transform .2s,background-color .3s}.primary-button:hover{background-color:var(--accent-secondary);transform:translateY(-3px)}.music-carousel-section{align-items:center;border-top:1px solid var(--divider);display:flex;flex-direction:column;padding:3rem 0}.music-carousel-section h2{display:inline-block;font-size:2.5rem;margin-bottom:2rem;position:relative;text-align:center}.music-carousel-section h2:after{background-color:var(--accent-primary);border-radius:3px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.carousel-container{align-items:center;display:flex;gap:1rem;margin:2rem 0;max-width:1200px;position:relative;width:100%}.carousel-button{align-items:center;background-color:var(--bg-tertiary);border-radius:50%;color:var(--text-primary);display:flex;flex-shrink:0;font-size:2rem;height:40px;justify-content:center;transition:color .2s,transform .2s;width:40px;z-index:10}.carousel-button:hover{color:var(--accent-primary);transform:scale(1.1)}.release-carousel{flex:1 1;height:400px;overflow:hidden;position:relative}.release-card{background-color:var(--card-bg);border-radius:12px;box-shadow:0 8px 30px var(--card-shadow);display:flex;gap:2rem;height:360px;padding:2rem;transition:transform .3s,box-shadow .3s;width:100%}.release-image{border-radius:8px;flex-shrink:0;height:250px;overflow:hidden;position:relative;width:250px}.release-image img{height:100%;object-fit:cover;transition:transform .5s;width:100%}.release-overlay{align-items:center;background-color:var(--overlay-bg);bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.release-image:hover img{transform:scale(1.05)}.release-image:hover .release-overlay{opacity:1}.play-album-button{align-items:center;background-color:var(--accent-primary);border-radius:50%;box-shadow:0 4px 20px #0000004d;color:var(--button-text);display:flex;font-size:1.5rem;height:60px;justify-content:center;transition:background-color .3s,transform .2s;width:60px}.play-album-button:hover{background-color:var(--accent-secondary);transform:scale(1.1)}.release-info{display:flex;flex:1 1;flex-direction:column;height:100%;justify-content:space-between}.release-title-container{height:100px;min-height:100px}.release-info h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:1.8rem;margin-bottom:.3rem;overflow:hidden;text-overflow:ellipsis}.release-type{color:var(--text-tertiary);font-size:.9rem;margin-bottom:1rem}.release-description-container{display:flex;flex:1 1;flex-direction:column;margin-bottom:1.5rem;min-height:160px}.release-description{-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;margin:0;overflow:hidden;text-overflow:ellipsis}.streaming-links{display:flex;gap:1rem;height:40px}.streaming-link{align-items:center;background-color:var(--bg-tertiary);border-radius:50%;color:var(--text-primary);display:inline-flex;font-size:1.2rem;height:40px;justify-content:center;transition:background-color .3s,color .3s,transform .2s;width:40px}.streaming-link:hover{background-color:var(--accent-primary);color:var(--button-text);transform:translateY(-3px)}.carousel-indicators{display:flex;gap:.5rem;justify-content:center;margin-top:1.5rem}.indicator{background-color:var(--bg-tertiary);border-radius:50%;height:10px;transition:background-color .3s,transform .2s;width:10px}.indicator.active,.indicator:hover{background-color:var(--accent-primary);transform:scale(1.2)}.upcoming-shows-section{align-items:center;border-top:1px solid var(--divider);display:flex;flex-direction:column;padding:3rem 0}.upcoming-shows-section h2{display:inline-block;font-size:2.5rem;margin-bottom:2rem;position:relative;text-align:center}.upcoming-shows-section h2:after{background-color:var(--accent-primary);border-radius:3px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.tour-dates-list{margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:1200px;width:100%}.tour-date-card{min-height:120px}.tour-details h3,.tour-details p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tour-details p{color:var(--text-tertiary)}.booking-inquiries{margin:0 auto;max-width:600px;padding:2rem;text-align:center}.booking-inquiries h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:1rem}.booking-inquiries p{color:var(--text-secondary);font-size:1.1rem}.booking-inquiries a{color:var(--accent-primary);text-decoration:none;transition:color .3s}.booking-inquiries a:hover{color:var(--accent-secondary);text-decoration:underline}.gallery-preview-section{align-items:center;border-top:1px solid var(--divider);display:flex;flex-direction:column;padding:3rem 0}.gallery-preview-section h2{display:inline-block;font-size:2.5rem;margin-bottom:2rem;position:relative;text-align:center}.gallery-preview-section h2:after{background-color:var(--accent-primary);border-radius:3px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.gallery-preview{grid-gap:1.2rem;display:grid;gap:1.2rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:1200px;width:100%}.gallery-item{aspect-ratio:1/1;border-radius:8px;cursor:pointer;overflow:hidden;transition:opacity .5s ease-in-out}.gallery-item.fade-in{opacity:1}.gallery-item.fade-out{opacity:0}.gallery-item img{height:100%;object-fit:cover;transition:transform .5s;width:100%}.gallery-item:hover img{transform:scale(1.05)}.view-all-button{text-decoration:none}@keyframes swipeHint{0%{opacity:.7;transform:translateX(0)}25%{opacity:1;transform:translateX(-20px)}75%{opacity:1;transform:translateX(20px)}to{opacity:.7;transform:translateX(0)}}@media (max-width:1200px){.gallery-preview{gap:1rem;grid-template-columns:repeat(4,1fr);max-width:90%}.carousel-container,.gallery-preview,.hero-content,.tour-dates-list{max-width:90%}}@media (max-width:1024px){.profile-image{height:200px;width:200px}.hero-text h1{font-size:2.5rem}.gallery-preview-section h2,.music-carousel-section h2,.upcoming-shows-section h2{font-size:2.2rem}.artist-bio{font-size:1.1rem}.release-info h3{font-size:1.6rem}.booking-inquiries h3,.tour-details h3{font-size:1.4rem}}@media (max-width:992px){.gallery-preview{grid-template-columns:repeat(2,1fr)}.gallery-preview-section h2,.music-carousel-section h2,.upcoming-shows-section h2{font-size:2rem}.release-carousel{height:600px}.release-card{height:560px}.release-title-container{height:80px;min-height:80px}.release-description-container{min-height:320px}}@media (max-width:768px){.carousel-container{position:relative}.carousel-button{background-color:var(--bg-tertiary);color:var(--text-primary);font-size:1.5rem;height:35px;position:absolute;top:120px;width:35px;z-index:10}.carousel-button:hover{background-color:var(--accent-primary);color:var(--button-text);transform:scale(1.05)}.carousel-button.prev{left:30px}.carousel-button.next{right:30px}.release-carousel{width:100%}.hero-content{flex-direction:column;text-align:center}.hero-text h1{font-size:2.5rem;margin-bottom:1.5rem}.hero-buttons{display:inline-flex;justify-content:center;width:auto}.primary-button{max-width:fit-content;min-width:auto;width:auto}.gallery-preview-section h2,.music-carousel-section h2,.upcoming-shows-section h2{font-size:1.8rem;margin-bottom:1.5rem}.gallery-preview-section h2:after,.music-carousel-section h2:after,.upcoming-shows-section h2:after{bottom:-8px;width:50px}.artist-bio{font-size:1rem;margin-bottom:1.5rem}.release-card{align-items:center;flex-direction:column;height:600px;padding:1.5rem;text-align:center}.release-carousel{height:640px}.release-image{height:200px;margin-bottom:1.5rem;width:200px}.release-info{text-align:center;width:100%}.release-title-container{height:80px;min-height:80px}.release-description-container{min-height:250px}.release-info h3{font-size:1.5rem}.release-description{font-size:.95rem;margin-bottom:1rem}.streaming-links{justify-content:center}.gallery-preview{grid-template-columns:repeat(2,1fr)}.tour-date-card{flex-direction:column;min-height:180px;padding:1.5rem;text-align:center}.tour-date{font-size:1.1rem}.tour-date,.tour-details{margin-bottom:1rem;width:100%}.tour-details h3{font-size:1.3rem}.tour-details p{font-size:.95rem}.tour-action{margin:0}.booking-inquiries{padding:1.5rem}.booking-inquiries h3{font-size:1.3rem;margin-bottom:.7rem}.booking-inquiries p{font-size:1rem}}@media (max-width:480px){.profile-image{height:150px;width:150px}.hero-text h1{font-size:2rem;margin-bottom:1rem}.hero-buttons{display:inline-flex;width:auto}.primary-button{font-size:.95rem;gap:.6rem;max-width:fit-content;min-width:auto;padding:.6rem 1.2rem;width:auto}.gallery-preview-section h2,.music-carousel-section h2,.upcoming-shows-section h2{font-size:1.6rem;margin-bottom:1.2rem}.gallery-preview-section h2:after,.music-carousel-section h2:after,.upcoming-shows-section h2:after{bottom:-6px;height:2px;width:40px}.artist-bio{font-size:.95rem;margin-bottom:1.2rem}.carousel-button{font-size:1.2rem;height:30px;top:90px;width:30px}.carousel-button:hover{transform:scale(1.05)}.carousel-button.prev{left:30px}.carousel-button.next{right:30px}.release-carousel{height:580px}.release-card{height:540px}.release-image{height:160px;width:160px}.release-info h3{font-size:1.3rem}.release-description{font-size:.9rem}.release-type{font-size:.8rem}.gallery-preview{gap:1rem;grid-template-columns:minmax(auto,300px);justify-content:center;margin-left:auto;margin-right:auto;max-width:100%;width:100%}.gallery-item{width:100%}.tour-date{font-size:1rem}.tour-details h3{font-size:1.2rem}.tour-details p{font-size:.9rem}.booking-inquiries h3{font-size:1.2rem}.booking-inquiries p{font-size:.95rem}.view-all-button{font-size:.9rem;padding:.7rem 1.2rem}}.music-page h1{font-size:3rem;margin-bottom:3rem;text-align:center}.releases-grid{display:flex;flex-direction:column;gap:3rem}.release-full-card{background-color:var(--card-bg);border-radius:12px;box-shadow:0 8px 30px var(--card-shadow);display:flex;gap:2rem;padding:2rem}.release-artwork{border-radius:8px;flex-shrink:0;height:250px;overflow:hidden;position:relative;width:250px}.release-artwork img{height:100%;object-fit:cover;transition:transform .5s;width:100%}.artwork-overlay{align-items:center;background-color:var(--overlay-bg);bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.release-artwork:hover img{transform:scale(1.05)}.release-artwork:hover .artwork-overlay{opacity:1}.release-details{display:flex;flex:1 1;flex-direction:column;gap:1.5rem}.release-details h2{font-size:2rem;left:auto;margin-bottom:.3rem;text-align:left;transform:none}.release-details h2:after{left:0;transform:none}.release-details h3{font-size:1.3rem;margin-bottom:.8rem}.track-list{margin-top:1rem;width:100%}.track-item{border-bottom:1px solid var(--divider);padding:.8rem 0}.track-item,.track-play-button{align-items:center;display:flex}.track-play-button{background-color:var(--accent-primary);border-radius:50%;color:var(--button-text);flex-shrink:0;height:30px;justify-content:center;margin-right:1rem;transition:background-color .3s,transform .2s;width:30px}.track-play-button:hover{background-color:var(--accent-secondary);transform:scale(1.1)}.track-play-button.disabled{cursor:not-allowed;opacity:.5}.track-info{align-items:center;display:flex;justify-content:space-between;width:100%}.track-title{max-width:calc(100% - 60px);overflow:hidden;padding-right:10px;text-overflow:ellipsis;white-space:nowrap}.track-duration{color:var(--text-tertiary);flex-shrink:0}.streaming-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.streaming-header h3{margin:0}.streaming-buttons{display:flex;flex-wrap:wrap;gap:1rem}.streaming-button{align-items:center;background-color:var(--bg-tertiary);border-radius:30px;color:var(--text-primary);display:inline-flex;gap:.5rem;padding:.6rem 1.2rem;transition:background-color .3s,color .3s,transform .2s}.streaming-button:hover{background-color:var(--accent-primary);color:var(--button-text);transform:translateY(-3px)}@media (max-width:1024px){.release-full-card{flex-direction:column;padding:1.5rem}.release-details,.release-full-card{align-items:center;text-align:center}.release-details{width:100%}.release-details h2{text-align:center}.release-details h2:after{left:50%;transform:translateX(-50%)}.track-list{text-align:left;width:100%}.streaming-header{flex-direction:column;justify-content:center;width:100%}.streaming-links{display:flex;justify-content:center;width:100%}}@media (max-width:768px){.music-page h1{font-size:2.5rem;margin-bottom:2rem}.release-full-card{gap:1.5rem;padding:1.2rem}.release-artwork{height:200px;width:200px}.release-details{gap:1rem}.release-details h2{font-size:1.8rem}.track-item{flex-direction:row;padding:.6rem 0}.streaming-buttons{justify-content:center;width:100%}.streaming-button{font-size:.9rem;padding:.5rem 1rem}.track-info{width:calc(100% - 40px)}.track-title{max-width:calc(100% - 50px)}}@media (max-width:480px){.music-page h1{font-size:2rem}.release-artwork{height:150px;width:150px}.release-full-card{padding:1rem}.release-details h2{font-size:1.5rem}.release-details h3{font-size:1.1rem}.streaming-button{font-size:.85rem;padding:.4rem .8rem}.track-play-button{height:25px;margin-right:.7rem;width:25px}}.tour-page h1{font-size:3rem;text-align:center}.tour-dates-container,.tour-page h1{margin-bottom:3rem}.tour-dates-list{display:flex;flex-direction:column;gap:1.5rem}.no-tour-dates{background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px var(--card-shadow);padding:3rem;text-align:center}.no-tour-dates p{font-size:1.2rem;margin-bottom:.5rem}.no-tour-dates p:first-child{color:var(--text-secondary);font-size:1.5rem;font-weight:500}.tour-date-card{align-items:center;background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px var(--card-shadow);display:flex;gap:2rem;padding:1.5rem;transition:transform .3s,box-shadow .3s}.tour-date-card:hover{box-shadow:0 12px 24px var(--card-shadow);transform:translateY(-5px)}.tour-date{color:var(--accent-primary);flex-shrink:0;font-size:1.2rem;font-weight:500;width:200px}.tour-details{flex:1 1}.tour-details h3{font-size:1.5rem;margin-bottom:.3rem}.tour-action{margin-left:auto}.ticket-button{background-color:var(--accent-primary);border-radius:4px;color:#fff;font-weight:500;padding:.8rem 1.5rem;text-decoration:none;transition:background-color .3s}.ticket-button:hover{background-color:var(--accent-primary-dark)}.tour-contact{background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px var(--card-shadow);padding:2rem;text-align:center}.tour-contact h2{margin-bottom:1rem}.tour-contact a{color:var(--accent-primary);font-weight:500;text-decoration:none}.tour-contact a:hover{text-decoration:underline}@media (max-width:768px){.tour-page h1{font-size:2.5rem;margin-bottom:2rem}.tour-date-card{flex-direction:column;padding:1.5rem;text-align:center}.tour-date,.tour-details{margin-bottom:1rem;width:100%}.tour-action{margin:0}}@media (max-width:480px){.tour-page h1{font-size:2rem}}.gallery-page h1{font-size:3rem;margin-bottom:3rem;text-align:center}.gallery-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.gallery-grid-item{aspect-ratio:1/1;border-radius:8px;box-shadow:0 4px 12px var(--card-shadow);cursor:pointer;overflow:hidden;position:relative;transition:transform .3s,box-shadow .3s}.gallery-grid-item img{height:100%;object-fit:cover;transition:transform .5s;width:100%}.gallery-grid-caption{background:linear-gradient(#0000,#000c);bottom:0;color:#fff;left:0;opacity:0;padding:1rem;position:absolute;right:0;transform:translateY(20px);transition:opacity .3s,transform .3s}.gallery-grid-item:hover{box-shadow:0 12px 24px var(--card-shadow);transform:translateY(-5px)}.gallery-grid-item:hover img{transform:scale(1.05)}.gallery-grid-item:hover .gallery-grid-caption{opacity:1;transform:translateY(0)}.gallery-modal{align-items:center;background-color:var(--modal-bg);bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:var(--card-bg);border-radius:8px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:90%;overflow:hidden;position:relative}.modal-content img{max-height:80vh;max-width:100%;object-fit:contain}.modal-content p{padding:1rem;text-align:center}.close-modal{align-items:center;background-color:#00000080;border-radius:50%;color:#fff;display:flex;font-size:1.2rem;height:30px;justify-content:center;position:absolute;right:10px;top:10px;transition:background-color .3s;width:30px;z-index:10}.close-modal:hover{background-color:#000c}@media (max-width:768px){.gallery-page h1{font-size:2.5rem;margin-bottom:2rem}}@media (max-width:480px){.gallery-page h1{font-size:2rem}}.merch-page h1{font-size:3rem;margin-bottom:3rem;text-align:center}.merch-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.merch-item{background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px var(--card-shadow);display:flex;flex-direction:column;overflow:hidden;transition:transform .3s,box-shadow .3s}.merch-item:hover{box-shadow:0 12px 24px var(--card-shadow);transform:translateY(-5px)}.merch-image{height:250px;overflow:hidden;width:100%}.merch-image img{height:100%;object-fit:cover;transition:transform .5s;width:100%}.merch-item:hover .merch-image img{transform:scale(1.05)}.merch-details{display:flex;flex:1 1;flex-direction:column;padding:1.5rem}.merch-details h3{font-size:1.3rem;margin-bottom:.5rem}.merch-price{color:var(--accent-primary);font-weight:500;margin-bottom:1.5rem}.buy-button{background-color:var(--accent-primary);border-radius:30px;color:var(--button-text);display:inline-block;margin-top:auto;padding:.7rem 1.5rem;text-align:center;transition:background-color .3s,transform .2s}.buy-button:hover{background-color:var(--accent-secondary);transform:translateY(-3px)}@media (max-width:768px){.merch-page h1{font-size:2.5rem;margin-bottom:2rem}}@media (max-width:480px){.merch-page h1{font-size:2rem}}.not-found-page{padding:5rem 0;text-align:center}.not-found-page h1{color:var(--accent-primary);font-size:8rem;margin:0;text-shadow:0 0 30px var(--accent-tertiary)}.not-found-page h2{font-size:2rem;margin:0 0 2rem}.home-button{background-color:var(--accent-primary);border-radius:30px;color:var(--button-text);display:inline-block;font-weight:500;margin-top:2rem;padding:.8rem 1.5rem;transition:background-color .3s,transform .2s}.home-button:hover{background-color:var(--accent-secondary);transform:translateY(-3px)}.loading-screen{align-items:center;background-color:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;height:100vh;justify-content:center}.loading-animation{animation:pulse 1.5s infinite alternate;color:var(--accent-primary);font-size:3rem;margin-bottom:1rem}@keyframes pulse{0%{opacity:.6;transform:scale(.9)}to{opacity:1;transform:scale(1.1)}}.error-message{align-items:center;background-color:var(--bg-primary);display:flex;flex-direction:column;height:100vh;justify-content:center;padding:2rem;text-align:center}.error-message h2{color:var(--error);margin-bottom:1rem}.error-message p{margin-bottom:2rem;max-width:600px}.retry-button{background-color:var(--accent-primary);border-radius:30px;color:var(--button-text);font-weight:500;padding:.8rem 2rem;transition:background-color .3s,transform .2s}.retry-button:hover{background-color:var(--accent-secondary);transform:translateY(-3px)}.app-container{display:flex;flex-direction:column;min-height:100vh}main{flex:1 1;padding:2rem 0}:root{--bg-primary:#fff;--bg-secondary:#f5f5f7;--bg-tertiary:#e8e8e8;--text-primary:#121212;--text-secondary:#4a4a4a;--text-tertiary:#717171;--accent-primary:#8a2be2;--accent-secondary:#6a0dad;--accent-tertiary:#96c;--card-bg:#f0f0f5;--card-border:#0000001a;--card-shadow:#0000000d;--nav-bg:#ffffffe6;--input-bg:#f0f0f0;--button-text:#fff;--divider:#0000001a;--overlay-bg:#ffffffb3;--scrollbar-track:#e0e0e0;--scrollbar-thumb:#bebebe;--footer-bg:#f8f8f8;--modal-bg:#000000b3;--success:#4caf50;--error:#f44336;--warning:#ff9800;--info:#2196f3;--gradient-start:#8a2be2b3;--gradient-end:#6a0dadb3}[data-theme=dark]{--bg-primary:#121212;--bg-secondary:#1e1e1e;--bg-tertiary:#2d2d2d;--text-primary:#fff;--text-secondary:#b3b3b3;--text-tertiary:#8c8c8c;--accent-primary:#a25ccb;--accent-secondary:#c17ee6;--accent-tertiary:#96c;--card-bg:#1e1e1e;--card-border:#ffffff1a;--card-shadow:#0000004d;--nav-bg:#121212e6;--input-bg:#2d2d2d;--button-text:#fff;--divider:#ffffff1a;--overlay-bg:#000000b3;--scrollbar-track:#2d2d2d;--scrollbar-thumb:#4d4d4d;--footer-bg:#1a1a1a;--modal-bg:#000c;--success:#5ecf62;--error:#f55a4e;--warning:#ffae42;--info:#42a5f5;--gradient-start:#a25ccbb3;--gradient-end:#c17ee6b3}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}body,html{scroll-behavior:smooth}body{background-color:#fff;background-color:var(--bg-primary);font-family:Roboto,sans-serif;line-height:1.6;min-width:320px;overflow-x:hidden}body,h1,h2,h3,h4,h5,h6{color:#121212;color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-family:Montserrat,sans-serif;font-weight:600;margin-bottom:.5em}p{color:#4a4a4a;color:var(--text-secondary);margin-bottom:1rem}a{color:#8a2be2;color:var(--accent-primary);text-decoration:none;transition:color .2s}a:hover{color:#6a0dad;color:var(--accent-secondary)}ol,ul{list-style-type:none}img{display:block;height:auto;max-width:100%}button{background:none;border:none;cursor:pointer;font-family:Montserrat,sans-serif;outline:none}button,input{font-size:1rem}.page{margin:0 auto;max-width:1400px;padding:0 2rem}.primary-button,.secondary-button{align-items:center;border-radius:30px;display:inline-flex;font-weight:500;gap:.5rem;padding:.8rem 1.5rem;transition:transform .2s,box-shadow .2s}.primary-button{background-color:#8a2be2;background-color:var(--accent-primary);box-shadow:0 4px 12px #8a2be24d;color:#fff;color:var(--button-text)}.secondary-button{background-color:initial;border:2px solid #8a2be2;border:2px solid var(--accent-primary);color:#8a2be2;color:var(--accent-primary)}.primary-button:hover,.secondary-button:hover{box-shadow:0 6px 16px #8a2be266;transform:translateY(-3px)}.ticket-button{background-color:initial;border:2px solid #8a2be2;border:2px solid var(--accent-primary);border-radius:30px;color:#8a2be2;color:var(--accent-primary);display:inline-block;padding:.5rem 1rem;text-align:center;transition:background-color .3s,color .3s,transform .2s}.ticket-button:hover{transform:translateY(-2px)}.ticket-button:hover,.view-all-button{background-color:#8a2be2;background-color:var(--accent-primary);color:#fff;color:var(--button-text)}.view-all-button{border-radius:30px;box-shadow:0 4px 12px #8a2be24d;display:inline-block;padding:.8rem 1.5rem;transition:transform .2s,box-shadow .2s}.view-all-button:hover{box-shadow:0 6px 16px #8a2be266;transform:translateY(-3px)}.section-action{margin-top:2rem;text-align:center}@media (max-width:1024px){.page{padding:0 1rem}}@media (max-width:768px){h2{font-size:2rem}}@media (max-width:480px){.primary-button,.secondary-button{margin-bottom:.5rem;width:100%}}
/*# sourceMappingURL=main.a0dc82bd.css.map*/