.banner{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem 4rem;overflow:hidden}.banner-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.banner-veins{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(ellipse 80% 50% at 50% 20%,var(--neon-green-glow) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 60%,var(--neon-green-glow) 0%,transparent 40%),radial-gradient(ellipse 50% 30% at 20% 70%,var(--neon-green-glow) 0%,transparent 35%);opacity:.7}.banner-veins:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,var(--neon-green-glow) 45%,transparent 50%),linear-gradient(250deg,transparent 30%,var(--neon-green-glow) 35%,transparent 40%),linear-gradient(340deg,transparent 55%,var(--neon-green-glow) 60%,transparent 65%);background-size:200% 200%,150% 150%,180% 180%;background-position:0% 0%,50% 50%,100% 100%;opacity:.4;animation:veinsPulse 8s ease-in-out infinite alternate}.banner-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 100% 100% at 50% 50%,transparent 0%,var(--bg-dark) 70%);pointer-events:none}@keyframes veinsPulse{0%{opacity:.3}to{opacity:.5}}.banner-content{position:relative;z-index:1;text-align:center}.banner-title{font-family:var(--font-display);font-weight:800;font-size:clamp(2.5rem,10vw,5rem);line-height:1.05;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem}.banner-title-line{display:block}.banner-title-line.neon-text{color:var(--neon-red);text-shadow:0 0 10px var(--neon-red-glow),0 0 30px var(--neon-red-glow),0 0 60px rgba(255,23,68,.3)}.banner-year{display:block;font-size:.5em;letter-spacing:.3em;margin-top:.2em;color:var(--neon-red);opacity:.95}.banner-tagline{font-family:var(--font-body);font-weight:500;font-size:clamp(.9rem,2.5vw,1.1rem);letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);margin-top:.5rem}.banner-scroll{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;z-index:1}.banner-scroll-text{font-size:.7rem;letter-spacing:.2em;color:var(--text-muted)}.banner-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--neon-red),transparent);animation:scrollLine 2s ease-in-out infinite}@keyframes scrollLine{0%,to{opacity:.3;transform:scaleY(.8)}50%{opacity:1;transform:scaleY(1)}}@media (max-width: 480px){.banner{padding:1.5rem 1rem 3rem}.banner-title{letter-spacing:.04em}.banner-year{letter-spacing:.2em}}.djs{position:relative;padding:4rem 1.5rem 5rem;overflow:hidden}.djs-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 40% at 50% 100%,var(--neon-green-glow) 0%,transparent 50%);opacity:.4;pointer-events:none}.djs-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto}.djs-heading{font-family:var(--font-display);font-weight:700;font-size:clamp(1rem,3vw,1.25rem);letter-spacing:.35em;text-transform:uppercase;color:var(--text-muted);margin-bottom:3rem;text-align:center}.djs-heading-text{position:relative}.djs-heading-text:after{content:"";position:absolute;left:0;right:0;bottom:-.5rem;height:2px;background:linear-gradient(90deg,transparent,var(--neon-red),transparent);opacity:.6}.djs-grid{display:grid;gap:1.5rem;margin-bottom:2.5rem}.djs-grid-headliners{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.djs-grid-live{grid-template-columns:1fr;max-width:480px;margin-left:auto;margin-right:auto}.dj-card{background:#121214d9;border:1px solid var(--border-subtle);padding:1.75rem 1.5rem;text-align:center;transition:border-color .25s ease,box-shadow .25s ease}.dj-card:hover{border-color:#ff17444d;box-shadow:0 0 30px var(--neon-red-glow)}.dj-name{display:block;font-family:var(--font-display);font-weight:700;font-size:clamp(1.25rem,4vw,1.75rem);letter-spacing:.08em;text-transform:uppercase;color:var(--neon-red);text-shadow:0 0 20px var(--neon-red-glow);margin-bottom:.35rem}.dj-label{display:block;font-family:var(--font-body);font-weight:500;font-size:clamp(.75rem,2vw,.85rem);letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted)}.dj-card-live .dj-name{font-size:clamp(1rem,3vw,1.35rem)}.djs-residents{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin-top:2rem}.djs-residents-wrap{display:inline-flex;align-items:center;gap:.75rem}.dj-card-resident{padding:1rem 1.25rem}.dj-card-resident .dj-name{font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:0}.dj-plus{font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:var(--neon-red);text-shadow:0 0 15px var(--neon-red-glow)}@media (max-width: 640px){.djs{padding:3rem 1rem 4rem}.djs-grid-headliners{grid-template-columns:1fr}.djs-residents,.djs-residents-wrap{flex-direction:column}.dj-plus{transform:rotate(90deg)}}.event-info{position:relative;padding:4rem 1.5rem 5rem;overflow:hidden}.event-info-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 40% at 50% 0%,var(--neon-green-glow) 0%,transparent 55%);opacity:.25;pointer-events:none}.event-info-inner{position:relative;z-index:1;max-width:900px;margin:0 auto}.event-info-heading{font-family:var(--font-display);font-weight:700;font-size:clamp(1rem,3vw,1.25rem);letter-spacing:.35em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2.5rem;text-align:center}.event-info-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2.5rem}.event-info-block{background:#121214e6;border:1px solid var(--border-subtle);padding:1.5rem 1.75rem;transition:border-color .25s ease,box-shadow .25s ease}.event-info-block:hover{border-color:#ff174440;box-shadow:0 0 25px var(--neon-red-glow)}.event-info-label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem}.event-info-date{font-family:var(--font-display);font-weight:700;font-size:clamp(1.1rem,3vw,1.35rem);letter-spacing:.05em;color:var(--neon-red);text-shadow:0 0 15px var(--neon-red-glow)}.event-info-venue{font-family:var(--font-display);font-weight:700;font-size:clamp(1rem,2.5vw,1.2rem);letter-spacing:.05em;color:var(--text-primary);margin-bottom:.35rem}.event-info-address{font-style:normal;font-size:.95rem;color:var(--text-muted);line-height:1.5;margin-bottom:.75rem}.event-info-map-link{font-size:.85rem;font-weight:600;letter-spacing:.05em;color:var(--neon-red);text-shadow:0 0 10px var(--neon-red-glow);transition:opacity .2s ease}.event-info-map-link:hover{opacity:.9}.event-info-map-wrap{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;border:2px solid var(--border-subtle);background:var(--bg-card)}.event-info-map-wrap:hover{border-color:#ff17444d}.event-info-map{position:absolute;top:0;left:0;width:100%;height:100%;min-height:280px}@media (max-width: 640px){.event-info{padding:3rem 1rem 4rem}.event-info-details{grid-template-columns:1fr;gap:1.25rem;margin-bottom:2rem}.event-info-map-wrap{padding-bottom:75%}}.tickets{position:relative;padding:4rem 1.5rem 5rem;overflow:hidden}.tickets-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 50% 0%,var(--neon-red-glow) 0%,transparent 55%);opacity:.25;pointer-events:none}.tickets-inner{position:relative;z-index:1;max-width:640px;margin:0 auto;text-align:center}.tickets-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem}.tickets-heading{font-family:var(--font-display);font-weight:800;font-size:clamp(1.75rem,5vw,2.25rem);letter-spacing:.12em;text-transform:uppercase;color:var(--neon-red);text-shadow:0 0 30px var(--neon-red-glow);margin-bottom:.75rem}.tickets-desc{font-size:clamp(1rem,2.5vw,1.1rem);color:var(--text-muted);margin-bottom:2rem;line-height:1.6}.ticket-card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1.75rem 1.5rem;background:#121214f2;border:2px solid var(--neon-red);color:var(--text-primary);font-family:var(--font-body);text-align:center;transition:background .25s ease,box-shadow .25s ease,transform .2s ease}.ticket-card:hover{background:#ff17441a;box-shadow:0 0 35px var(--neon-red-glow);transform:translateY(-3px)}.ticket-card:focus-visible{outline:2px solid var(--neon-red);outline-offset:4px}.ticket-price{font-family:var(--font-display);font-weight:800;font-size:clamp(1.75rem,5vw,2.25rem);letter-spacing:.05em;color:var(--neon-red);text-shadow:0 0 20px var(--neon-red-glow)}.ticket-label{font-weight:600;font-size:clamp(.9rem,2.5vw,1rem);letter-spacing:.15em;text-transform:uppercase;color:var(--text-primary)}.ticket-whatsapp{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;font-weight:600;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:#25d366}.ticket-whatsapp-icon{display:flex;align-items:center;justify-content:center}.ticket-whatsapp-icon svg{width:20px;height:20px}.tickets-contact{font-size:.85rem;color:var(--text-muted);letter-spacing:.05em}@media (max-width: 480px){.tickets{padding:3rem 1rem 4rem}.tickets-grid{grid-template-columns:1fr;gap:1rem}.ticket-card{padding:1.5rem 1.25rem}}.footer{padding:2rem 1.5rem;border-top:1px solid var(--border-subtle)}.footer-inner{max-width:1100px;margin:0 auto;text-align:center}.footer-text{font-family:var(--font-display);font-weight:600;font-size:.9rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.footer-sub{font-size:.8rem;color:var(--text-muted);opacity:.7;margin-top:.25rem}.container{width:100%;padding:0 1rem}:root{--bg-dark: #0a0a0b;--bg-card: #121214;--neon-red: #ff1744;--neon-red-dim: #cc1236;--neon-red-glow: rgba(255, 23, 68, .5);--neon-green: #00e676;--neon-green-dim: #00c853;--neon-green-glow: rgba(0, 230, 118, .35);--text-primary: #ffffff;--text-muted: #a0a0a8;--border-subtle: rgba(255, 255, 255, .06);--font-display: "Orbitron", sans-serif;--font-body: "Rajdhani", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-dark);color:var(--text-primary);line-height:1.5;overflow-x:hidden}#root{min-height:100vh}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}
