:root{--primary-accent: #ff3366;--shadow-subtle: 0 4px 15px rgba(0, 0, 0, .2);--shadow-glow: 0 8px 30px rgba(255, 51, 102, .4);--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 2.5rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 5rem;--space-5xl: 6rem;--container-padding: clamp(1rem, 5vw, 3rem);--section-padding: var(--space-3xl) 0;--card-padding: var(--space-lg);--button-padding: 1.8rem 3.5rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#000;color:#fff;overflow-x:hidden}.festival-landing{position:relative;color:#fff;overflow-x:hidden}.background-container{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:-2;overflow:hidden}.background-carousel{position:relative;width:100%;height:100%}.background-image{position:absolute;top:-10%;left:-10%;width:120%;height:120%;background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;filter:brightness(.35) grayscale(.7);transition:transform .6s cubic-bezier(.25,.46,.45,.94),filter .3s ease,opacity 2s ease-in-out;transform-origin:center center;min-width:100dvw;min-height:100vh;opacity:0;z-index:0;will-change:transform,opacity;animation:continuousParallax 25s ease-in-out infinite}@keyframes continuousParallax{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.background-image.active{opacity:1;z-index:1}.background-container:hover .background-image.active{animation-play-state:paused;transform:translateZ(0) scale(1.08);transition:all .8s cubic-bezier(.23,1,.32,1);filter:brightness(.45) grayscale(.4)}.cursor-glow{position:absolute;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(255,51,102,.15) 0%,rgba(255,51,102,.05) 30%,transparent 70%);left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:-1;mix-blend-mode:screen;animation:smoothGlowFloat 14s ease-in-out infinite}@keyframes smoothGlowFloat{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}25%{transform:translate(-45%,-55%) scale(1.1);opacity:.7}50%{transform:translate(-55%,-45%) scale(.95);opacity:.6}75%{transform:translate(-48%,-52%) scale(1.05);opacity:.8}}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;z-index:-1}.hero{display:flex;align-items:center;justify-content:center;height:100svh;padding:var(--space-lg) var(--container-padding);position:relative;max-width:100dvw}.hero-content{text-align:center;max-width:1000px;z-index:10;width:100%;display:flex;flex-direction:column;gap:var(--space-lg)}.festival-info{margin-bottom:var(--space-lg)}.festival-name{margin-bottom:var(--space-xl)}.main-title{display:block;font-size:clamp(3.5rem,9dvw,9rem);font-weight:900;text-transform:uppercase;letter-spacing:.05em;line-height:.8;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.8);margin-bottom:var(--space-xs)}.sub-title{display:block;font-size:clamp(2.2rem,5.5dvw,5.8rem);font-weight:300;text-transform:uppercase;letter-spacing:.15em;color:var(--primary-accent);text-shadow:0 2px 15px rgba(255,51,102,.6)}.festival-details{display:flex;justify-content:center;align-items:center;gap:var(--space-lg);margin:var(--space-xl) auto;max-width:500px}.date{text-align:center;padding:var(--space-md) var(--space-sm);background:#ffffff0d;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);width:100%;max-width:200px;transition:all .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center}.date:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,51,102,.1),transparent);transition:left .5s ease}.date:hover:before{left:100%}.date:hover{background:#ff33661a;border-color:#ff33664d;transform:translateY(-3px);box-shadow:0 8px 25px #f363}.date-day{font-size:clamp(1.4rem,4dvw,2.2rem);font-weight:700;color:var(--primary-accent);margin-bottom:var(--space-xs);line-height:1.1}.date-month{font-size:clamp(.8rem,2.5dvw,1.1rem);opacity:.9;text-transform:uppercase;letter-spacing:1px;color:#fff;line-height:1.2}.festival-description{font-size:1.2rem;opacity:.9;margin-top:var(--space-md);line-height:1.4;max-width:600px;margin-left:auto;margin-right:auto}.event-highlight{display:block;font-size:1rem;color:var(--primary-accent);font-weight:600;margin-top:var(--space-sm);text-transform:uppercase;letter-spacing:1.5px}.scroll-indicator{position:absolute;bottom:.25rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);cursor:pointer;opacity:.8;transition:all .3s ease}.scroll-indicator:hover{opacity:1;transform:translate(-50%) translateY(-5px)}.scroll-text{font-size:.9rem;text-transform:uppercase;letter-spacing:1px;opacity:.7}.scroll-arrow{font-size:1.5rem;animation:bounce 2s infinite;color:var(--primary-accent)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.floating-elements{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.floating-circle{position:absolute;border-radius:50%;background:linear-gradient(45deg,#f363,#ff33661a);animation:float 6s ease-in-out infinite}.circle-1{width:100px;height:100px;top:20%;left:10%;animation-duration:8s}.circle-2{width:150px;height:150px;top:60%;right:15%;animation-duration:10s;animation-delay:2s}.circle-3{width:80px;height:80px;bottom:20%;left:20%;animation-duration:7s;animation-delay:4s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(120deg)}66%{transform:translateY(10px) rotate(240deg)}}.countdown-section{min-height:60vh;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-3xl) 0;background:#000000d9;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px)}.countdown-container{max-width:800px;margin:0 auto;padding:0 var(--container-padding);width:100%;z-index:10}.countdown-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-lg)}.countdown-title{font-size:clamp(3rem,6dvw,6rem);font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#fff;margin-bottom:var(--space-lg);text-shadow:0 0 20px rgba(255,51,102,.3)}.countdown-timer{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-xl) var(--space-2xl);background:linear-gradient(135deg,#ff33661a,#ff33660d);border-radius:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,51,102,.2);box-shadow:0 8px 32px #ff33661a}.countdown-unit{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.countdown-number{font-size:clamp(2.5rem,6dvw,4rem);font-weight:700;color:var(--primary-accent);line-height:1;text-shadow:0 4px 20px rgba(255,51,102,.4)}.countdown-label{font-size:clamp(.9rem,2dvw,1.2rem);color:#fffc;text-transform:uppercase;letter-spacing:1px;font-weight:500}.countdown-separator{font-size:clamp(2rem,5dvw,3rem);color:#f369;font-weight:700;line-height:1;margin-top:-.5rem}@keyframes subtleMove{0%{transform:translate(-4px)}to{transform:translate(4px)}}.lineup-section{min-height:100vh;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);position:relative;display:flex;align-items:center;padding:var(--section-padding);background:linear-gradient(180deg,#00000080,#0000004d,#00000080)}.lineup-container{max-width:1400px;margin:0 auto;padding:var(--space-lg) var(--container-padding);width:100%;z-index:10}.lineup-header{text-align:center;margin-bottom:var(--space-3xl)}.lineup-title{font-size:clamp(3rem,6dvw,6rem);font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#fff;margin-bottom:var(--space-sm);text-shadow:0 0 20px rgba(255,51,102,.3)}.lineup-subtitle{font-size:1.2rem;opacity:.8;letter-spacing:1px;font-weight:400}.lineup-note{margin-top:var(--space-md)}.note-text{display:inline-block;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--primary-accent);background:#ff33661a;padding:var(--space-xs) 1.2rem;border-radius:20px;border:1px solid rgba(255,51,102,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.note-text:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,51,102,.2),transparent);transition:left .8s ease}.note-text:hover:before{left:100%}.lineup-grid{display:flex;flex-direction:column;gap:var(--space-2xl)}.artist-category{width:100%}.category-title{font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--primary-accent);margin-bottom:var(--space-md);text-align:center}.headliners .artists-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl);justify-items:center;max-width:800px;margin:0 auto}.artist-card.headliner{background:linear-gradient(135deg,#ff336626,#ff33660d);border:2px solid rgba(255,51,102,.3);border-radius:16px;padding:var(--space-xl) var(--space-lg);text-align:center;width:100%;max-width:350px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);position:relative;overflow:hidden}.artist-card.headliner:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(255,51,102,.1),transparent);transform:rotate(45deg);transition:all .6s ease;opacity:0}.artist-card.headliner:hover:before{animation:shimmer 1.5s ease-in-out}@keyframes shimmer{0%{transform:translate(-100%) translateY(-100%) rotate(45deg);opacity:0}50%{opacity:1}to{transform:translate(100%) translateY(100%) rotate(45deg);opacity:0}}.artist-card.headliner:hover{transform:translateY(-8px);box-shadow:0 20px 50px #0006,0 10px 30px #f366;border-color:var(--primary-accent)}.artist-card.headliner .artist-name{font-size:1.8rem;font-weight:700;margin-bottom:var(--space-xs);color:#fff}.artist-card.headliner .artist-genre{font-size:1rem;opacity:.8;color:var(--primary-accent);text-transform:uppercase;letter-spacing:1px;font-weight:500;margin-bottom:var(--space-xs)}.main-acts .artists-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg);justify-items:center;max-width:800px;margin:0 auto}.artist-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:var(--space-lg) var(--space-md);text-align:center;width:100%;max-width:320px;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;will-change:transform;transform-style:preserve-3d}.artist-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--primary-accent),transparent);transform:translate(-100%);transition:transform .4s ease}.artist-card:hover:before{transform:translate(0)}.artist-card:hover{background:#ff336614;border-color:#ff33664d;box-shadow:0 10px 30px #0000004d}.artist-card .artist-name{font-size:1.2rem;font-weight:700;margin-bottom:var(--space-xs);color:#fff}.artist-card .artist-genre{font-size:.9rem;opacity:.7;color:var(--primary-accent);text-transform:uppercase;letter-spacing:1px;font-weight:500;margin-bottom:var(--space-xs)}.goodies-section{min-height:100vh;background:linear-gradient(135deg,#1a0a1a,#2a1a2a,#1a0a1a);position:relative;padding:var(--section-padding)}.goodies-container{max-width:1400px;margin:0 auto;padding:var(--space-lg) var(--container-padding);width:100%;z-index:10;position:relative}.goodies-header{text-align:center;margin-bottom:var(--space-3xl)}.goodies-title{font-size:clamp(2.5rem,5dvw,5rem);font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#fff;margin-bottom:var(--space-sm);text-shadow:0 0 20px rgba(255,51,102,.3)}.goodies-subtitle{font-size:1.2rem;opacity:.8;letter-spacing:1px;color:#ffffffe6;font-weight:400}.goodies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl);align-items:stretch}.goodie-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:0;text-align:center;transition:border-color .3s ease,box-shadow .3s ease;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);display:flex;flex-direction:column;height:100%;min-height:420px;will-change:transform;transform-style:preserve-3d}.goodie-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--primary-accent),transparent);opacity:0;transition:opacity .3s ease}.goodie-card:hover:before{opacity:1}.goodie-card:hover{border-color:#ff33664d;box-shadow:0 15px 40px #0003}.goodie-card.featured{border:2px solid rgba(255,51,102,.4);background:linear-gradient(135deg,#ff336614,#ff336608)}.goodie-card.featured:hover{border-color:var(--primary-accent);box-shadow:0 20px 50px #0000004d}.goodie-header{position:relative;padding:var(--space-lg) var(--space-lg) var(--space-sm);display:flex;flex-direction:column;align-items:center;background:linear-gradient(135deg,#ffffff14,#ffffff05);border-radius:20px 20px 0 0}.goodie-badge{position:absolute;top:var(--space-sm);right:var(--space-sm);background:#f363;color:var(--primary-accent);padding:var(--space-xs) var(--space-sm);border-radius:12px;font-size:.7rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:1px solid rgba(255,51,102,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.goodie-icon{font-size:4rem;margin-bottom:var(--space-xs);filter:drop-shadow(0 0 20px rgba(255,51,102,.3));transition:transform .3s ease}.goodie-card:hover .goodie-icon{transform:none}.goodie-content{flex:1;padding:0 var(--space-lg) var(--space-sm);display:flex;flex-direction:column;justify-content:space-between}.goodie-title{font-size:1.4rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:#fff;margin-bottom:var(--space-sm);line-height:1.2}.goodie-description{font-size:.95rem;line-height:1.4;color:#ffffffb3;margin-bottom:1.2rem;flex:1}.goodie-price{font-size:1.6rem;font-weight:900;color:var(--primary-accent);margin-bottom:0;text-shadow:0 0 15px rgba(255,51,102,.6);text-transform:uppercase;letter-spacing:2px}.goodie-features{padding:var(--space-md) var(--space-lg) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);background:#0003;border-radius:0 0 20px 20px}.feature{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-sm);color:#ffffffe6;transition:background-color .2s ease;border-radius:8px;background:#ffffff08}.feature:hover{background:#ff336614}.feature-icon{font-size:1.2rem;min-width:24px;text-align:center}.feature-text{font-size:.9rem;font-weight:500;letter-spacing:.5px}.location-section{padding:var(--space-5xl) var(--space-lg);background:linear-gradient(135deg,#0f0f0f,#1f1f1f);position:relative}.location-container{max-width:1200px;margin:0 auto}.location-header{text-align:center;margin-bottom:var(--space-4xl)}.location-title{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:900;background:linear-gradient(135deg,#f36,#ff6b9d);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-md)}.location-subtitle{font-size:1.1rem;color:#fffc;font-weight:400;max-width:600px;margin:0 auto;line-height:1.6}.location-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:var(--space-lg);margin-bottom:var(--space-3xl);align-items:stretch}.location-card{background:#141414cc;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:var(--space-lg);transition:background .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;height:100%;will-change:transform;transform-style:preserve-3d}.location-card.main{background:linear-gradient(135deg,#ff336626,#141414e6);border:2px solid rgba(255,51,102,.4);box-shadow:0 8px 32px #f363}.location-card.main .location-icon{font-size:2.5rem;filter:none}.location-card.main .location-name{color:#f36;text-shadow:0 0 10px rgba(255,51,102,.5)}.location-card.main:hover{box-shadow:0 25px 50px #ff33664d}.location-content{flex:1;display:flex;flex-direction:column}.location-card.featured{border-color:#ff33664d;background:#ff33660d;position:relative}.location-card.featured:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f36,#ff6b9d);border-radius:20px 20px 0 0}.location-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,51,102,.1) 100%);opacity:0;transition:opacity .3s ease;pointer-events:none}.location-card:hover:before{opacity:1}.location-card:hover{transform:translateY(-5px);border-color:#ff336680;box-shadow:0 20px 40px #f363}.location-header-card{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.location-icon{font-size:2rem;filter:grayscale(1) brightness(1.2)}.location-badge{background:linear-gradient(135deg,#f36,#ff6b9d);color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.location-name{font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.05em}.location-description{color:#fffc;line-height:1.6;margin-bottom:auto;font-size:.95rem;flex:1}.location-details{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-lg)}.detail{display:flex;align-items:center;gap:var(--space-sm)}.detail-icon{font-size:1.1rem;opacity:.8}.detail-text{font-size:.9rem;font-weight:500;letter-spacing:.3px}.location-info-box{background:#ff33661a;border:1px solid rgba(255,51,102,.3);border-radius:15px;padding:var(--space-lg);text-align:center;margin-top:var(--space-lg)}.info-content h4{font-size:1.1rem;font-weight:700;color:#f36;margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.05em}.info-content p{color:#ffffffe6;line-height:1.6;font-size:.95rem}.faq-section{padding:var(--space-5xl) var(--space-lg);background:linear-gradient(135deg,#0a0a0a,#1a1a1a);position:relative}.faq-container{max-width:900px;margin:0 auto}.faq-header{text-align:center;margin-bottom:var(--space-3xl)}.faq-title{font-size:clamp(3rem,8vw,6rem);font-weight:900;background:linear-gradient(135deg,#f36,#f69,#fa3);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:6px;margin-bottom:var(--space-md);position:relative}.faq-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:100px;height:4px;background:linear-gradient(90deg,#f36,#f69);border-radius:2px}.faq-subtitle{font-size:1.3rem;color:#fffc;font-weight:400;letter-spacing:1px}.faq-list{display:flex;flex-direction:column;gap:var(--space-md)}.faq-item{background:#ffffff08;border:1px solid rgba(255,51,102,.2);border-radius:16px;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s ease}.faq-item:hover{border-color:#f366;box-shadow:0 8px 32px #ff336626;transform:translateY(-2px)}.faq-question{width:100%;padding:var(--space-lg);background:none;border:none;color:#fff;font-size:1.2rem;font-weight:600;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;position:relative}.faq-question:hover,.faq-question[aria-expanded=true]{color:#f36}.question-text{flex:1;line-height:1.4}.question-icon{width:32px;height:32px;position:relative;flex-shrink:0;margin-left:var(--space-sm)}.question-icon:before,.question-icon:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;background:#f36;border-radius:1px;transition:all .3s ease}.question-icon:before{transform:translate(-50%,-50%)}.question-icon:after{transform:translate(-50%,-50%) rotate(90deg)}.faq-question[aria-expanded=true] .question-icon:after{transform:translate(-50%,-50%) rotate(0);opacity:0}.faq-answer{height:0;overflow:hidden;transition:height .25s ease}.faq-content{padding:var(--space-md) var(--space-lg) var(--space-lg);background:#0003}.faq-content p{font-size:1.1rem;line-height:1.8;color:#ffffffe6;margin:0;font-weight:400}@media (max-width: 1024px){.location-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,1fr);gap:var(--space-md)}}@media (max-width: 768px){.countdown-section{min-height:50vh;padding:var(--space-2xl) 0}.countdown-container{padding:0 var(--space-sm)}.countdown-content{gap:var(--space-md)}.countdown-timer{gap:var(--space-md);padding:var(--space-lg) var(--space-sm);border-radius:12px;margin:0 var(--space-sm)}.countdown-number{font-size:clamp(2rem,8dvw,3rem)}.countdown-label{font-size:clamp(.8rem,2.5dvw,1rem)}.countdown-separator{font-size:clamp(1.5rem,6dvw,2.5rem)}.location-section{padding:var(--space-3xl) var(--space-sm)}.location-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,1fr);gap:var(--space-md)}.location-card{padding:var(--space-md)}.location-name{font-size:1.2rem}.location-description{font-size:.9rem}.location-details{gap:var(--space-xs)}.detail-text{font-size:.85rem}.location-info-box{padding:var(--space-md)}.info-content h4{font-size:1rem}.info-content p{font-size:.9rem}}@media (max-width: 768px){.faq-section{padding:var(--space-3xl) var(--space-sm)}.faq-question{padding:var(--space-md);font-size:1rem}.faq-content{padding:0 var(--space-md) var(--space-md)}.faq-content p{font-size:1rem;line-height:1.6}.question-icon{width:28px;height:28px}.question-icon:before,.question-icon:after{width:14px}}@media (max-width: 480px){.faq-section{padding:var(--space-2xl) var(--space-sm)}.faq-question{padding:1.2rem;font-size:.95rem}.faq-content{padding:1.2rem}.faq-content p{font-size:.9rem}}@media (max-width: 768px){.cursor-glow{display:none}.hero{padding:var(--space-sm) clamp(var(--space-xs),3vw,var(--space-md));display:flex;flex-direction:column;justify-content:center;align-items:center}.hero-content{gap:var(--space-md)}.festival-details{justify-content:center;gap:var(--space-md);margin:var(--space-lg) auto;max-width:400px}.date{padding:1.2rem var(--space-sm)}.headliners .artists-row{grid-template-columns:1fr;gap:var(--space-md);max-width:350px}.artist-card.headliner{max-width:100%;padding:var(--space-lg) var(--space-md)}.main-acts .artists-grid{grid-template-columns:1fr;gap:var(--space-md);max-width:350px}.artist-card{max-width:100%;padding:var(--space-md)}.goodies-grid{grid-template-columns:1fr;gap:var(--space-lg);margin-bottom:var(--space-lg)}.goodie-card{min-height:420px;margin:0}.faq-section{padding:var(--space-3xl) var(--space-sm)}.faq-header{margin-bottom:var(--space-2xl)}.faq-question{padding:1.2rem var(--space-md);font-size:1rem}.faq-item.active .faq-answer{padding:var(--space-md)}.faq-answer p{font-size:.95rem}}@media (max-width: 480px){.festival-details{justify-content:center;gap:var(--space-sm);margin:var(--space-md) auto;max-width:300px}.date{padding:var(--space-sm) .6rem}.goodie-card{min-height:380px}.floating-circle{opacity:.2}.circle-1{width:60px;height:60px}.circle-2{width:80px;height:80px}.circle-3{width:50px;height:50px}.goodies-grid{grid-template-columns:1fr;gap:var(--space-md)}.faq-section{padding:var(--space-2xl) var(--space-sm)}.faq-question{padding:var(--space-sm) 1.2rem;font-size:.95rem;min-height:60px;display:flex;align-items:center}.question-text{padding-right:var(--space-xs);line-height:1.4}.question-icon{font-size:1.3rem;min-width:28px}.faq-answer p{font-size:.9rem;line-height:1.6}.faq-question:hover{background:none;color:#fff}.faq-item:hover{transform:none;border-color:#f363;box-shadow:none}.faq-question:active{background:#ff336626;transform:scale(.98);transition:all .1s ease}}.timetable-section{padding:var(--section-padding);background:linear-gradient(180deg,#000000f2,#000c,#000000f2);position:relative;overflow:hidden}.timetable-section:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 30%,rgba(255,51,102,.08) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,51,102,.05) 0%,transparent 50%);pointer-events:none;z-index:0}.timetable-container{max-width:1200px;margin:0 auto;padding:0 var(--container-padding);position:relative;z-index:1}.timetable-header{text-align:center;margin-bottom:var(--space-4xl)}.timetable-title{font-size:clamp(2.5rem,8vw,5rem);font-weight:900;background:linear-gradient(135deg,#fff 0%,var(--primary-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-lg);letter-spacing:-.02em;text-transform:uppercase}.timetable-subtitle{font-size:clamp(1.1rem,2.5vw,1.4rem);color:#fffc;margin-bottom:var(--space-xl);line-height:1.5}.timetable-disclaimer{font-size:.85em;opacity:.7;font-weight:400}.timetable-date{display:flex;align-items:center;justify-content:center;gap:var(--space-md);flex-wrap:wrap}.date-badge{background:var(--primary-accent);color:#fff;padding:.8rem 1.5rem;border-radius:25px;font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.05em}.duration-info{color:#ffffffb3;font-size:1rem;font-weight:500}.timetable-grid{margin-bottom:var(--space-4xl)}.timeline-wrapper{position:relative;max-width:800px;margin:0 auto}.timeline-line{position:absolute;left:60px;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,transparent 0%,var(--primary-accent) 10%,var(--primary-accent) 90%,transparent 100%);border-radius:2px;z-index:0}.time-slot{position:relative;display:flex;margin-bottom:var(--space-2xl)}.time-slot:nth-child(2n){animation-delay:.1s}.time-slot:nth-child(odd){animation-delay:.2s}.time-marker{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:120px;margin-right:var(--space-lg)}.time-display{background:#000000e6;color:#fff;padding:.8rem 1.2rem;border-radius:25px;font-weight:700;font-size:1.1rem;border:2px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);min-width:90px;text-align:center;position:relative;z-index:3;box-shadow:0 4px 20px #0000004d;transition:all .3s ease}.time-display:hover{transform:translateY(-2px);box-shadow:0 6px 25px #0006;border-color:#ff33664d}@keyframes pulseGlow{0%,to{box-shadow:0 0 40px #f36}50%{box-shadow:0 0 60px #f36,0 0 80px #ffff0080}}.slot-content{flex:1;background:#ffffff0d;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:15px;padding:var(--space-lg);border:1px solid rgba(255,255,255,.1);transition:all .3s ease;position:relative;z-index:2}.slot-content:hover{background:#ffffff14;border-color:#ff33664d;transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.slot-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm);flex-wrap:wrap;gap:var(--space-xs)}.slot-title{font-size:1.4rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.02em}.slot-badge{padding:.4rem .8rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.slot-badge.arrival{background:linear-gradient(45deg,#4caf50,#66bb6a);color:#fff}.slot-badge.warmup{background:linear-gradient(45deg,#ff9800,#ffb74d);color:#fff}.slot-badge.main{background:linear-gradient(45deg,#f36,#f69);color:#fff}.slot-badge.headliner{background:linear-gradient(45deg,#f36,#ff0);color:#000;font-weight:900;animation:shimmer 2s ease-in-out infinite}.slot-badge.afterparty{background:linear-gradient(45deg,#f44336,#ef5350);color:#fff}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.7}}.slot-description{color:#ffffffe6;font-size:1rem;line-height:1.6;margin-bottom:var(--space-sm)}.slot-info{display:flex;gap:var(--space-xs);margin-bottom:var(--space-sm);flex-wrap:wrap}.slot-info span{background:#ffffff1a;padding:.3rem .8rem;border-radius:15px;font-size:.85rem;font-weight:600;color:#fffc}.duration{color:var(--primary-accent)!important;background:#ff33661a!important}.genre{color:gold!important;background:#ffd7001a!important}@media (max-width: 768px){.timetable-section{padding:var(--space-2xl) 0}.timetable-header{margin-bottom:var(--space-2xl)}.timetable-date{flex-direction:column;gap:var(--space-sm)}.timeline-line{left:50%;transform:translate(-50%);width:2px;z-index:-1}.time-slot{margin-bottom:var(--space-lg);flex-direction:column;align-items:center;text-align:center}.time-marker{min-width:100%;margin-right:0;margin-bottom:var(--space-sm);display:flex;flex-direction:column;align-items:center;justify-content:center}.time-display{font-size:.95rem;padding:.6rem 1rem;min-width:75px;text-align:center;margin:0 auto;display:block}.slot-content{padding:var(--space-sm);width:100%;margin-left:0}.slot-header{flex-direction:column;align-items:center;gap:var(--space-xs);text-align:center}.slot-title{font-size:1.2rem}.slot-info{gap:var(--space-xs);justify-content:center}.slot-info span{font-size:.8rem;padding:.25rem .6rem}}.time-slot.opening .slot-content{background:linear-gradient(135deg,#4caf501a,#ffffff0d)}.time-slot.main-time .slot-content{background:linear-gradient(135deg,#ff33661a,#ffffff0d)}.time-slot.midnight .slot-content{background:linear-gradient(135deg,#ff336626,#ffff000d);border-color:#ff33664d}.time-slot.afterparty .slot-content{background:linear-gradient(135deg,#f443361a,#ffffff0d)}.reveal-element{opacity:0;transform:translateY(50px);transition:opacity .8s cubic-bezier(.25,.46,.45,.94),transform .8s cubic-bezier(.25,.46,.45,.94)}.reveal-element.revealed{opacity:1;transform:translateY(0)}.time-slot:nth-child(1){transition-delay:0s}.time-slot:nth-child(2){transition-delay:.1s}.time-slot:nth-child(3){transition-delay:.2s}.time-slot:nth-child(4){transition-delay:.3s}.time-slot:nth-child(5){transition-delay:.4s}.goodie-card:nth-child(1){transition-delay:0s}.goodie-card:nth-child(2){transition-delay:.1s}.goodie-card:nth-child(3){transition-delay:.2s}.goodie-card:nth-child(4){transition-delay:.3s}.goodie-card:nth-child(5){transition-delay:.4s}.goodie-card,.location-card,.artist-card{transform-style:preserve-3d;transition:transform .1s ease-out;will-change:transform}.main-title,.sub-title{cursor:pointer;position:relative;transition:all .3s ease}.main-title:hover,.sub-title:hover{text-shadow:0 0 20px rgba(255,51,102,.8),0 0 40px rgba(255,51,102,.6),0 0 60px rgba(255,51,102,.4);letter-spacing:.1em}@keyframes bassDrop{0%,to{transform:scale(1)}25%{transform:scale(.98) translateY(5px)}50%{transform:scale(1.02) translateY(-5px)}75%{transform:scale(.99) translateY(2px)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes flashFade{0%{opacity:1}to{opacity:0}}.countdown-number{display:inline-block;transition:all .3s ease;animation:countdownPulse 2s ease-in-out infinite}@keyframes countdownPulse{0%,to{transform:scale(1);text-shadow:0 4px 20px rgba(255,51,102,.4)}50%{transform:scale(1.05);text-shadow:0 4px 30px rgba(255,51,102,.8),0 0 40px rgba(255,51,102,.6)}}.floating-circle{animation:enhancedFloat 6s ease-in-out infinite;filter:blur(40px);opacity:.3}@keyframes enhancedFloat{0%,to{transform:translateY(0) translate(0) rotate(0) scale(1)}25%{transform:translateY(-30px) translate(20px) rotate(90deg) scale(1.1)}50%{transform:translateY(-20px) translate(-20px) rotate(180deg) scale(.9)}75%{transform:translateY(10px) translate(15px) rotate(270deg) scale(1.05)}}.scroll-indicator{animation:scrollBounce 2s ease-in-out infinite}@keyframes scrollBounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-15px)}60%{transform:translate(-50%) translateY(-8px)}}.scroll-indicator:hover{animation:scrollBounce 1s ease-in-out infinite}.date:hover,.goodie-card:hover,.location-card:hover,.artist-card:hover,.time-slot .slot-content:hover{box-shadow:0 0 30px #ff336680,0 0 60px #ff33664d,0 8px 40px #0000004d}.background-image.active{animation:continuousParallax 25s ease-in-out infinite}.slot-badge.headliner{animation:neonGlow 2s ease-in-out infinite;box-shadow:0 0 10px #ffff0080,0 0 20px #ff336680}@keyframes neonGlow{0%,to{box-shadow:0 0 10px #ffff0080,0 0 20px #ff336680}50%{box-shadow:0 0 20px #ff0c,0 0 40px #f36c,0 0 60px #f366}}.timeline-line{box-shadow:0 0 20px #ff336680;animation:timelinePulse 3s ease-in-out infinite}@keyframes timelinePulse{0%,to{box-shadow:0 0 20px #ff336680;opacity:1}50%{box-shadow:0 0 30px #f36c,0 0 50px #f366;opacity:.8}}.time-display{animation:timeGlow 4s ease-in-out infinite}@keyframes timeGlow{0%,to{box-shadow:0 4px 20px #0000004d}50%{box-shadow:0 4px 20px #0000004d,0 0 20px #ff33664d}}@media (max-width: 768px){.floating-circle{animation:none;opacity:.2}.countdown-number,.timeline-line{animation:none}.background-image.active{animation:continuousParallax 25s ease-in-out infinite}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal-element{opacity:1;transform:none}}
