:root{font-family:Roboto Condensed,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth;overflow-x:hidden;width:100%}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--background-color);color:var(--text-color);font-family:Roboto Condensed,sans-serif;overflow-x:hidden;width:100%;position:relative}img{max-width:100%;height:auto}a{text-decoration:none;color:var(--text-color)}ul,ol{list-style:none}:root{--primary-color: #7b42e8;--secondary-color: #42a5e8;--accent-color: #ff00cc;--text-color: #ffffff;--background-color: #0f0721;--max-width: 1200px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;background-color:var(--background-color);color:var(--text-color)}.app{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;width:100%}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem;max-width:100%;width:100%;margin:0 auto}.logo-container{display:flex;justify-content:center;margin:2rem 0;width:100%}.festival-tape{position:relative;height:8rem;width:100%;margin:3rem 0;overflow:hidden}@media screen and (max-width: 768px){.main-content{padding:1rem}}.header{width:100%;background-color:#0f0721e6;padding:1rem 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 15px #7b42e84d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.header-container{max-width:var(--max-width);margin:0 auto;padding:0 1rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.logo{justify-self:start}.logo h1{font-family:Roboto Condensed,sans-serif;font-size:1.8rem;color:var(--secondary-color);text-shadow:0 0 10px rgba(66,165,232,.6);letter-spacing:1px;text-transform:uppercase}.nav{grid-column:2;justify-self:center}.nav-list{display:flex;gap:2rem;justify-content:center}.nav-item a{font-family:Roboto Condensed,sans-serif;font-size:1rem;font-weight:500;color:var(--text-color);text-transform:uppercase;transition:color .3s ease;letter-spacing:.5px}.nav-item a:hover{color:var(--secondary-color);text-shadow:0 0 8px rgba(66,165,232,.6)}.ticket-button{grid-column:3;justify-self:end;position:relative;display:flex;align-items:center;gap:.8rem}.btn-arrow{font-size:2rem;color:var(--secondary-color);animation:moveArrow 1.2s ease-in-out infinite;text-shadow:0 0 8px rgba(66,165,232,.6);line-height:1;display:flex;align-items:center;transform:translateY(-1px)}.btn-arrow-right{display:none}.btn-tickets{display:inline-block;background:linear-gradient(to right,var(--secondary-color),var(--primary-color));color:#fff;padding:.6rem 1.2rem;border-radius:4px;font-family:Roboto Condensed,sans-serif;font-weight:700;text-transform:uppercase;transition:all .3s ease;box-shadow:0 0 10px #7b42e880;letter-spacing:1px;position:relative}.btn-tickets:before{content:"";position:absolute;top:50%;left:50%;width:120%;height:120%;background:radial-gradient(circle,rgba(123,66,232,.8) 0%,rgba(66,165,232,.4) 30%,transparent 70%);border-radius:8px;transform:translate(-50%,-50%) scale(.8);animation:glowPulse 1s ease-out infinite;z-index:-1}.btn-tickets:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid white;border-radius:6px;animation:borderPulse 1.5s ease-in-out infinite;z-index:-1}.btn-tickets:hover{transform:translateY(-2px);box-shadow:0 0 15px #7b42e8cc}.btn-tickets:hover+.btn-arrow,.ticket-button:hover .btn-arrow{animation-duration:.6s;transform:translateY(-1px) translate(4px)}.ticket-button:hover .btn-arrow-right{transform:translateY(-1px) translate(-4px)}@keyframes moveArrow{0%,to{transform:translateY(-1px) translate(0)}50%{transform:translateY(-1px) translate(5px)}}@keyframes moveArrowRight{0%,to{transform:translateY(-1px) translate(0)}50%{transform:translateY(-1px) translate(-5px)}}@media screen and (max-width: 992px){.header-container{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:1rem}.logo{grid-row:1;justify-self:center}.nav{grid-row:2;grid-column:1;width:100%}.nav-list{justify-content:center;flex-wrap:wrap;gap:1.5rem}.ticket-button{grid-row:3;grid-column:1;justify-self:center}.btn-arrow{font-size:1.8rem}.btn-arrow-right{display:flex;animation:moveArrowRight 1.2s ease-in-out infinite}.ticket-button:hover .btn-arrow-left{transform:translateY(-1px) translate(4px)}.ticket-button:hover .btn-arrow-right{transform:translateY(-1px) translate(-4px)}}.banner{width:100%;background-color:var(--secondary-color);overflow:hidden;white-space:nowrap;box-shadow:0 0 15px #42a5e880}.banner-scroll{display:inline-block;white-space:nowrap;animation:banner-scroll 40s linear infinite;will-change:transform}.banner-text{display:inline-block;padding:.5rem 0;font-weight:700;font-size:.9rem;letter-spacing:1px}.banner-text-duplicate{display:inline-block}@keyframes banner-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media screen and (max-width: 768px){.banner-text{font-size:.8rem}}.countdown-container{width:100%;margin:2rem 0;display:flex;justify-content:center}.countdown-wrapper{display:flex;flex-direction:column;align-items:center}.countdown-title{font-family:Roboto Condensed,sans-serif;font-size:2.5rem;text-transform:uppercase;color:var(--secondary-color);margin-bottom:2rem;text-align:center;font-weight:800;text-shadow:0 0 10px rgba(66,165,232,.6);letter-spacing:1px}.countdown-timer{display:flex;gap:2rem}.countdown-item{display:flex;flex-direction:column;align-items:center;min-width:100px;background:#7b42e833;padding:1rem;border-radius:10px;box-shadow:0 0 15px #7b42e84d}.countdown-value{font-family:Roboto Condensed,sans-serif;font-size:4rem;font-weight:700;color:var(--primary-color);text-shadow:0 0 5px rgba(123,66,232,.7)}.countdown-label{font-family:Roboto Condensed,sans-serif;font-size:1rem;text-transform:uppercase;color:var(--secondary-color);margin-top:.5rem;letter-spacing:1px}@media screen and (max-width: 768px){.countdown-container{padding:0 1.5rem}.countdown-title{font-size:1.8rem}.countdown-timer{gap:.6rem;width:100%;justify-content:center}.countdown-item{min-width:60px;padding:.8rem}.countdown-value{font-size:2.5rem}.countdown-label{font-size:.7rem}}.event-info-section{width:100%;padding:3rem 1rem;text-align:center}.event-info-title{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;font-family:Roboto Condensed,sans-serif;font-size:3.5rem;font-weight:800;color:var(--secondary-color);text-transform:uppercase;text-shadow:0 0 15px rgba(66,165,232,.7);letter-spacing:1px}.event-info-description{font-family:Roboto Condensed,sans-serif;font-size:1.5rem;color:var(--text-color);max-width:800px;margin:0 auto 2.5rem;line-height:1.6;letter-spacing:.5px}.event-details{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;max-width:1000px;margin:0 auto;width:100%}.event-detail{display:flex;align-items:center;gap:1rem;background:#0f072166;padding:1.5rem;border-radius:10px;min-width:250px;box-shadow:0 0 20px #7b42e833;border:1px solid rgba(123,66,232,.3);transition:all .3s ease}.event-detail:hover{transform:translateY(-5px);box-shadow:0 10px 25px #7b42e866;border-color:var(--secondary-color)}.event-icon{font-size:2rem;color:var(--secondary-color);filter:drop-shadow(0 0 5px rgba(66,165,232,.6))}.detail-text{text-align:left}.detail-text h3{font-family:Roboto Condensed,sans-serif;font-size:1.2rem;font-weight:600;color:var(--secondary-color);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:1px}.detail-text p{font-family:Roboto Condensed,sans-serif;font-size:1.1rem;color:var(--text-color);text-transform:uppercase;letter-spacing:.5px}.location-detail{cursor:pointer}.location-link{color:var(--text-color);text-decoration:none;transition:color .2s ease}.location-link:hover p{color:var(--secondary-color)}.calendar-button{display:flex;align-items:center;justify-content:center;gap:.8rem;background:var(--primary-color);color:#fff;font-family:Roboto Condensed,sans-serif;font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:1rem 2rem;margin:3rem auto 0;border-radius:10px;cursor:pointer;transition:all .3s ease;max-width:300px;box-shadow:0 0 20px #7b42e866;border:1px solid rgba(123,66,232,.3)}.calendar-button:hover{background:var(--secondary-color);transform:translateY(-5px);box-shadow:0 10px 25px #42a5e899}.calendar-icon{font-size:1.5rem;filter:drop-shadow(0 0 3px rgba(255,255,255,.5))}@media screen and (max-width: 768px){.event-info-section{padding:3rem 1.5rem}.event-info-title{font-size:2.5rem}.event-info-description{font-size:1.2rem;margin-bottom:2rem}.event-details{gap:1.5rem;padding:0}.event-detail{width:100%;padding:1.2rem;min-width:auto}.calendar-button{font-size:1rem;padding:.8rem 1.5rem;margin-top:2rem}}.lineup-section{width:100%;padding:3rem 1rem;display:flex;flex-direction:column;align-items:center}.lineup-title{font-family:Roboto Condensed,sans-serif;font-size:2.5rem;font-weight:800;color:var(--secondary-color);text-transform:uppercase;margin-bottom:3rem;text-align:center;text-shadow:0 0 10px rgba(66,165,232,.6);letter-spacing:1px}.lineup-image-container{display:flex;justify-content:center;margin-bottom:3rem;width:100%;max-width:800px}.lineup-image{width:100%;height:auto;border-radius:10px;box-shadow:0 0 20px #7b42e866;border:2px solid rgba(123,66,232,.3);transition:all .3s ease}.lineup-image:hover{box-shadow:0 0 30px #7b42e899;border-color:var(--secondary-color)}.lineup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:var(--max-width);width:100%}.dj-card{transition:all .3s ease;border-radius:10px;overflow:hidden;box-shadow:0 0 15px #7b42e84d;border:1px solid rgba(123,66,232,.3)}.dj-card:hover{transform:translateY(-10px);box-shadow:0 10px 25px #7b42e880;border-color:var(--secondary-color)}.dj-image{width:100%;height:auto;object-fit:cover;aspect-ratio:1 / 1;display:block}@media screen and (max-width: 992px){.lineup-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.lineup-image-container{max-width:700px}}@media screen and (max-width: 768px){.lineup-section{padding:3rem 1.5rem}.lineup-title{font-size:2rem;margin-bottom:2rem}.lineup-image-container{max-width:100%;margin-bottom:2rem}.lineup-grid{grid-template-columns:1fr;gap:1.5rem;max-width:100%;padding:0}.dj-card{max-width:100%}}.lineup-ticket-button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.ticket-button-text{font-family:Roboto Condensed,sans-serif;font-size:1.2rem;font-weight:600;color:var(--text-color);text-align:center;margin-bottom:1.5rem;letter-spacing:.5px}.lineup-ticket-button .btn-tickets{display:inline-block;background:linear-gradient(to right,var(--secondary-color),var(--primary-color));color:#fff;padding:1rem 2rem;border-radius:6px;font-family:Roboto Condensed,sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;transition:all .3s ease;box-shadow:0 0 10px #7b42e880;letter-spacing:1px;position:relative}.lineup-ticket-button .btn-tickets:before{content:"";position:absolute;top:50%;left:50%;width:120%;height:120%;background:radial-gradient(circle,rgba(123,66,232,.8) 0%,rgba(66,165,232,.4) 30%,transparent 70%);border-radius:8px;transform:translate(-50%,-50%) scale(.8);animation:glowPulse 1s ease-out infinite;z-index:-1}.lineup-ticket-button .btn-tickets:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid white;border-radius:6px;animation:borderPulse 1.5s ease-in-out infinite;z-index:-1}.lineup-ticket-button .btn-tickets:hover{transform:translateY(-2px);box-shadow:0 0 15px #7b42e8cc}@keyframes glowPulse{0%{transform:translate(-50%,-50%) scale(.8);opacity:.9}to{transform:translate(-50%,-50%) scale(3);opacity:0}}@keyframes borderPulse{0%,to{opacity:.3}50%{opacity:1}}@media screen and (max-width: 768px){.lineup-ticket-button{margin-top:2rem;padding:3rem 1rem;min-height:180px}.ticket-button-text{font-size:1rem;margin-bottom:1rem}.lineup-ticket-button .btn-tickets{padding:.8rem 1.5rem;font-size:1rem}}.contact-section{width:100%;padding:3rem 1rem;display:flex;flex-direction:column;align-items:center;background:#0f072166;border-radius:10px;margin:2rem 0}.contact-title{font-family:Roboto Condensed,sans-serif;font-size:1.8rem;font-weight:700;color:var(--secondary-color);text-transform:uppercase;margin-bottom:1.5rem;text-shadow:0 0 10px rgba(66,165,232,.6);letter-spacing:1px}.org-info{font-family:Roboto Condensed,sans-serif;font-size:1.2rem;margin-bottom:1.5rem;color:var(--text-color);letter-spacing:.5px}.social-icons{display:flex;gap:1.5rem;margin-bottom:1.5rem}.social-icon{font-size:1.8rem;color:var(--secondary-color);transition:all .3s ease}.social-icon:hover{color:var(--primary-color);transform:translateY(-3px);filter:drop-shadow(0 0 8px rgba(123,66,232,.7))}@media screen and (max-width: 768px){.contact-section{padding:2rem 1.5rem;margin:1.5rem 0;width:100%}.contact-title{font-size:1.5rem}.org-info{font-size:1rem}.social-icons{gap:1.2rem}.social-icon{font-size:1.5rem}}.footer{width:100%;padding:1.5rem 1rem;background-color:#0a0514e6;border-top:1px solid rgba(123,66,232,.3)}.footer-content{font-family:Roboto Condensed,sans-serif;max-width:var(--max-width);margin:0 auto;text-align:center;font-size:.9rem;color:#ffffffb3;letter-spacing:.5px}.footer-content a{font-family:Roboto Condensed,sans-serif;color:var(--secondary-color);text-decoration:none;transition:color .3s ease}.footer-content a:hover{text-decoration:underline;color:var(--primary-color);text-shadow:0 0 5px rgba(123,66,232,.5)}@media screen and (max-width: 768px){.footer-content{font-size:.8rem}}.festival-logo{background:transparent;max-width:450px;width:100%;height:auto;display:flex;align-items:center;justify-content:center;position:relative}.logo-image{width:100%;height:auto;max-width:400px;position:relative;z-index:1;animation:logo-bounce 6s ease-in-out infinite;transform-origin:center center}@keyframes logo-bounce{0%{transform:rotate(0) scale(1)}25%{transform:rotate(10deg) scale(1.25)}50%{transform:rotate(0) scale(1)}75%{transform:rotate(-10deg) scale(1.25)}}@media screen and (max-width: 768px){.festival-logo{max-width:340px}.logo-image{max-width:280px}}
