:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;font-weight:400;--bg-primary: #0a0a0a;--bg-secondary: #121212;--accent-color: #ffffff;--accent-gray: #888888;--text-white: #ffffff;--text-gray: rgba(255, 255, 255, .7);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#0a0a0a;color:#fff}h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:700;color:#fff}a{color:#fff;text-decoration:none;transition:color .3s ease}a:hover{color:#ccc}button{border:none;cursor:pointer;font-family:inherit;transition:all .3s ease}button:focus,a:focus,input:focus,select:focus{outline:2px solid rgba(255,255,255,.3);outline-offset:2px}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#444;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#666}.header{background:#121212;padding:1rem 0;box-shadow:0 2px 10px #0000004d;display:none}.header .container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.logo{text-decoration:none;color:#fff}.logo h1{margin:0;font-size:1.8rem;font-weight:700;color:#fff}.nav{display:flex;gap:2rem;align-items:center}.nav-link{color:#fffc;text-decoration:none;font-weight:500;transition:color .3s ease;font-size:1rem}.nav-link:hover{color:#fff}@media(max-width:768px){.header .container{padding:0 1rem}.logo h1{font-size:1.4rem}.nav{gap:1rem}.nav-link{font-size:.9rem}}.footer{background:#121212;color:#ffffffb3;padding:2rem 0;margin-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.footer-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer-brand{display:flex;flex-direction:column;gap:.25rem}.footer-logo{font-size:1.2rem;font-weight:700;color:#fff}.footer-tagline{font-size:.8rem;color:#ffffff80}.footer-socials{display:flex;align-items:center;gap:1rem}.social-link{width:40px;height:40px;background:#ffffff14;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ffffffb3;font-size:1.1rem;text-decoration:none;transition:all .3s ease}.social-link:hover{background:#fff;color:#000}.footer-copyright{font-size:.85rem;color:#fff6;margin:0}@media(max-width:768px){.footer{display:none}}.concert-card{display:block;text-decoration:none;border-radius:16px;overflow:hidden;position:relative;height:280px;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;box-shadow:0 4px 20px #0000004d}.concert-card:hover{transform:translateY(-8px);box-shadow:0 8px 30px #fff3}.card-image-container{position:relative;width:100%;height:100%}.card-image{width:100%;height:100%;object-fit:cover}.date-badge{position:absolute;top:1rem;left:1rem;background:#fff;border-radius:10px;padding:.5rem .75rem;display:flex;flex-direction:column;align-items:center;min-width:50px;box-shadow:0 4px 12px #0003}.date-day{font-size:1.4rem;font-weight:800;color:#000;line-height:1}.date-month{font-size:.65rem;font-weight:700;color:#444;letter-spacing:.5px}.card-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.9) 100%);padding:3rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.35rem}.card-venue{font-size:.75rem;color:#ffffffb3;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.card-title{font-size:1.4rem;font-weight:700;color:#fff;margin:0;line-height:1.2;text-transform:capitalize}@media(max-width:768px){.concert-card{height:220px;border-radius:12px}.concert-card:hover{transform:translateY(-4px)}.date-badge{top:.75rem;left:.75rem;padding:.4rem .6rem;min-width:44px;border-radius:8px}.date-day{font-size:1.2rem}.date-month{font-size:.6rem}.card-overlay{padding:2.5rem 1rem 1rem}.card-venue{font-size:.7rem}.card-title{font-size:1.15rem;line-height:1.15}}.home-page{min-height:100vh;background:#0a0a0a}.hero-section{position:relative;color:#fff;min-height:450px;width:100%;overflow:visible}.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease-in-out}.hero-slide.active{opacity:1}.hero-overlay-bg{position:absolute;inset:0;background:linear-gradient(180deg,#0a0a0a4d,#0a0a0af2)}.hero-container{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:2rem 2rem 2.5rem;min-height:450px;display:flex;flex-direction:column}@media(max-width:768px){.hero-section{min-height:400px}.hero-container{min-height:400px;padding:1.5rem}}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.site-logo{display:flex;align-items:center}.logo-text{font-size:1.3rem;font-weight:800;margin:0;color:#fff;letter-spacing:1px}.menu-wrapper{position:relative}.menu-btn{background:#ffffff26;border:none;color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.menu-btn:hover,.menu-btn.active{background:#ffffff40}.menu-icon{font-size:1.3rem}.menu-dropdown{position:absolute;top:calc(100% + .75rem);right:0;background:#121212fa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:.5rem;min-width:160px;box-shadow:0 10px 40px #0006;z-index:200;animation:menuFadeIn .2s ease}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-link{display:block;padding:.85rem 1rem;color:#fff;text-decoration:none;font-size:.95rem;font-weight:500;border-radius:8px;transition:background .2s ease}.menu-link:hover{background:#ffffff1a}.hero-content{margin-bottom:2rem;flex:1;display:flex;flex-direction:column;justify-content:center}.hero-label{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff;background:#ffffff26;padding:.4rem .8rem;border-radius:50px;margin-bottom:1rem;width:fit-content}.hero-title{font-size:3rem;font-weight:800;margin:0 0 .75rem;line-height:1.05;text-transform:uppercase;color:#fff;max-width:600px}.hero-subtitle{font-size:1.1rem;color:#ffffffb3;margin:0 0 1.5rem;font-weight:500}.hero-indicators{display:flex;gap:.5rem}.indicator{width:32px;height:4px;background:#ffffff4d;border:none;border-radius:2px;cursor:pointer;transition:all .3s ease}.indicator.active{background:#fff;width:48px}.indicator:hover:not(.active){background:#ffffff80}.search-filter-bar{display:flex;gap:1rem;margin-bottom:1.5rem}.search-box{flex:1;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;font-size:1.1rem;opacity:.7;color:#fff;display:flex;align-items:center}.search-input{width:100%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:.8rem 2.5rem .8rem 2.8rem;font-size:.95rem;color:#fff;outline:none;transition:all .3s ease}.search-input::placeholder{color:#ffffff80}.search-input:focus{border-color:#fff6;background:#ffffff26}.clear-search,.clear-date{position:absolute;right:.8rem;background:none;border:none;color:#fff9;font-size:1rem;cursor:pointer;padding:.3rem;transition:color .3s ease;display:flex;align-items:center;justify-content:center}.clear-search:hover,.clear-date:hover{color:#fff}.calendar-box{position:relative;display:flex;align-items:center}.calendar-trigger{display:flex;align-items:center;gap:.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:.8rem 2.5rem .8rem 1rem;font-size:.95rem;color:#fff;cursor:pointer;transition:all .3s ease}.calendar-trigger:hover{border-color:#fff6;background:#ffffff26}.calendar-icon{font-size:1.1rem;opacity:.8}.calendar-text{font-weight:500}.calendar-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#121212;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:1.25rem;min-width:300px;box-shadow:0 10px 40px #00000080;z-index:9999;animation:calendarFadeIn .2s ease}@keyframes calendarFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.calendar-nav-btn{background:#ffffff1a;border:none;color:#fff;width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.calendar-nav-btn:hover{background:#fff3}.calendar-month-year{font-size:1rem;font-weight:600;color:#fff}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;margin-bottom:.5rem}.weekday{text-align:center;font-size:.75rem;font-weight:600;color:#ffffff80;padding:.25rem;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:500;color:#fff;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:36px;min-height:36px}.calendar-day:hover:not(.empty){background:#fff3}.calendar-day.empty{cursor:default}.calendar-day.today{border:1px solid #ffffff}.calendar-day.selected{background:#fff;color:#000;font-weight:600}.calendar-day.has-concert{color:#fff;font-weight:600;position:relative}.calendar-day.has-concert:not(.selected){background:#ffffff26}.concert-dot{position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;background:#fff;border-radius:50%}.calendar-day.selected .concert-dot{background:#000}.day-selector{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:none;-ms-overflow-style:none}.day-selector::-webkit-scrollbar{display:none}.day-btn{background:transparent;border:none;color:#fff9;padding:.5rem 0;min-width:50px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.25rem;transition:all .3s ease;position:relative}.day-btn:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#fff;transform:scaleX(0);transition:transform .3s ease}.day-btn.active{color:#fff}.day-btn.active:after{transform:scaleX(1)}.day-label{font-size:.75rem;font-weight:600;text-transform:uppercase}.day-date{font-size:1.1rem;font-weight:700}.day-month{font-size:.65rem;text-transform:uppercase;opacity:.7}.container{max-width:1400px;margin:0 auto;padding:2rem 0}.section-header{display:flex;justify-content:space-between;align-items:center;padding:0 2rem;margin-bottom:1.5rem}.section-title{font-size:1.3rem;font-weight:700;color:#fff;margin:0}.see-all-btn{background:none;border:none;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .3s ease;text-decoration:none}.see-all-btn:hover{opacity:.8}.concerts-carousel{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:.5rem 2rem 1.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.concerts-carousel::-webkit-scrollbar{display:none}.concerts-carousel .concert-card{flex:0 0 300px;scroll-snap-align:start}.news-section{margin-top:2rem;padding-bottom:2rem}.news-list{display:flex;flex-direction:column;gap:1rem;padding:0 2rem}.news-card{display:flex;gap:1rem;background:#ffffff0d;border-radius:12px;overflow:hidden;transition:all .3s ease;cursor:pointer}.news-card:hover{background:#ffffff14;transform:translate(5px)}.news-image{flex-shrink:0;width:120px;height:100px}.news-image img{width:100%;height:100%;object-fit:cover}.news-content{flex:1;padding:1rem 1rem 1rem 0;display:flex;flex-direction:column;justify-content:center;gap:.3rem}.news-date{font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.news-title{font-size:1rem;font-weight:600;color:#fff;margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-excerpt{font-size:.85rem;color:#fff9;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.loading-state p,.error-state p{font-size:1.2rem;color:#666;margin:0}.error-state p{color:#d32f2f}.empty-state h2{font-size:2rem;color:#333;margin:0 0 1rem}.empty-state p{font-size:1.1rem;color:#666;margin:0}@media(max-width:768px){.hero-section{padding:1.5rem 1rem 2rem;height:auto;min-height:auto}.top-bar{margin-bottom:1.5rem}.logo-text{font-size:1.1rem}.menu-btn{font-size:.7rem;padding:.5rem .9rem;white-space:nowrap}.menu-icon{font-size:1rem}.hero-content{margin-bottom:1rem}.hero-title{font-size:1.5rem;line-height:1.2}.search-filter-bar{flex-direction:column;gap:.8rem;margin-bottom:1.2rem}.search-input{padding:.7rem 2.2rem .7rem 2.5rem;font-size:.9rem;border-radius:24px}.search-icon{font-size:.9rem;left:.8rem}.calendar-trigger{width:100%;padding:.7rem 2.2rem .7rem .9rem;font-size:.9rem;border-radius:24px;justify-content:flex-start}.calendar-dropdown{left:0;right:0;min-width:auto}.calendar-day{font-size:.85rem}.clear-search,.clear-date{font-size:.8rem}.day-selector{gap:.3rem;margin:0 -.5rem;padding:0 .5rem .5rem}.day-btn{min-width:45px;padding:.4rem 0}.day-label{font-size:.6rem}.day-date{font-size:.9rem}.day-month{font-size:.55rem}.container{padding:1.5rem 0}.section-header{padding:0 1rem;margin-bottom:1rem}.section-title{font-size:1.1rem}.see-all-btn{font-size:.8rem}.concerts-carousel{padding:.5rem 1rem 1rem;gap:1rem}.concerts-carousel .concert-card{flex:0 0 260px}.loading-state,.error-state,.empty-state{padding:3rem 1rem}.spinner{width:40px;height:40px}.loading-state p,.error-state p{font-size:.95rem}.empty-state h2{font-size:1.3rem}.empty-state p{font-size:.9rem}.news-list{padding:0 1rem;gap:.8rem}.news-card{gap:.8rem}.news-image{width:100px;height:85px}.news-content{padding:.8rem .8rem .8rem 0}.news-title{font-size:.9rem}.news-excerpt{font-size:.8rem;-webkit-line-clamp:1}}@media(min-width:769px)and (max-width:1024px){.concerts-carousel .concert-card{flex:0 0 280px}.container{padding:2rem 0}.section-header{padding:0 1.5rem}.concerts-carousel{padding:.5rem 1.5rem 1rem}.news-list{padding:0 1.5rem}}@media(max-width:375px){.hero-title{font-size:1.3rem}.logo-text{font-size:1rem}.menu-btn{font-size:.65rem;padding:.4rem .8rem;gap:.3rem}.day-btn{min-width:40px}.concerts-carousel .concert-card{flex:0 0 230px}.section-title{font-size:1rem}}.content-section{margin-bottom:2.5rem}.news-grid-home{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:0 2rem}.news-card-home{background:#121212;border-radius:16px;overflow:hidden;transition:transform .3s ease;text-decoration:none;display:block;cursor:pointer}.news-card-home:hover{transform:translateY(-5px)}.news-card-home .news-img{position:relative;height:180px;overflow:hidden}.news-card-home .news-img img{width:100%;height:100%;object-fit:cover}.news-card-home .news-tag{position:absolute;top:12px;left:12px;background:#fff;color:#000;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.news-card-home .news-info{padding:1.25rem}.news-date-home{color:#888;font-size:.8rem;font-weight:500}.news-card-home h3{color:#fff;font-size:1.1rem;margin:.5rem 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-card-home p{color:#888;font-size:.9rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.playlists-scroll{display:flex;gap:1.25rem;overflow-x:auto;padding:.5rem 2rem 1rem;scrollbar-width:none}.playlists-scroll::-webkit-scrollbar{display:none}.playlist-card-home{flex:0 0 180px;text-align:center;text-decoration:none;display:block;cursor:pointer}.playlist-card-home .playlist-img{position:relative;width:180px;height:180px;border-radius:12px;overflow:hidden;margin-bottom:.75rem}.playlist-card-home .playlist-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.playlist-card-home:hover .playlist-img img{transform:scale(1.05)}.playlist-card-home .playlist-play{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.playlist-card-home:hover .playlist-play{opacity:1}.playlist-card-home .playlist-play svg{color:#fff;font-size:2.5rem}.playlist-card-home h4{color:#fff;font-size:.95rem;margin:0 0 .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playlist-links-home{display:flex;justify-content:center;gap:.75rem}.playlist-links-home a{color:#888;font-size:1.2rem;transition:color .2s ease}.playlist-links-home a:hover{color:#fff}.playlist-link-icon{color:#888;font-size:1.2rem}.releases-scroll{display:flex;gap:1.25rem;overflow-x:auto;padding:.5rem 2rem 1rem;scrollbar-width:none}.releases-scroll::-webkit-scrollbar{display:none}.release-card-home{flex:0 0 160px;text-decoration:none;display:block;cursor:pointer}.release-card-home .release-img{position:relative;width:160px;height:160px;border-radius:12px;overflow:hidden;margin-bottom:.75rem}.release-card-home .release-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.release-card-home:hover .release-img img{transform:scale(1.05)}.release-card-home .release-badge{position:absolute;top:10px;right:10px;background:#fff;color:#000;padding:3px 10px;border-radius:12px;font-size:.7rem;font-weight:700}.release-info-home{text-align:center}.release-artist-home{color:#888;font-size:.8rem;font-weight:500}.release-card-home h4{color:#fff;font-size:.9rem;margin:.25rem 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reviews-scroll{display:flex;gap:1.25rem;overflow-x:auto;padding:.5rem 2rem 1rem;scrollbar-width:none}.reviews-scroll::-webkit-scrollbar{display:none}.review-card-home{flex:0 0 200px;text-decoration:none;display:block;cursor:pointer}.review-card-home:hover{transform:translateY(-3px)}.review-card-home .review-img{position:relative;width:200px;height:130px;border-radius:12px;overflow:hidden;margin-bottom:.75rem}.review-card-home .review-img img{width:100%;height:100%;object-fit:cover}.review-card-home .review-score{position:absolute;top:10px;left:10px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff}.review-info-home{text-align:left}.review-artist-home{color:#888;font-size:.8rem}.review-card-home h4{color:#fff;font-size:.95rem;margin:.25rem 0 0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.events-scroll{display:flex;gap:1.25rem;overflow-x:auto;padding:.5rem 2rem 1rem;scrollbar-width:none}.events-scroll::-webkit-scrollbar{display:none}.event-card-home{flex:0 0 280px;background:#121212;border-radius:16px;overflow:hidden;transition:transform .3s ease;text-decoration:none;display:block;cursor:pointer}.event-card-home:hover{transform:translateY(-5px)}.event-card-home .event-img{position:relative;height:150px;overflow:hidden}.event-card-home .event-img img{width:100%;height:100%;object-fit:cover}.event-date-badge-home{position:absolute;top:12px;left:12px;background:#fff;color:#000;padding:8px 12px;border-radius:10px;text-align:center;line-height:1.2}.event-date-badge-home .event-day{display:block;font-size:1.3rem;font-weight:700}.event-date-badge-home .event-month{display:block;font-size:.7rem;text-transform:uppercase;font-weight:500}.event-info-home{padding:1rem}.event-card-home h4{color:#fff;font-size:1rem;margin:0 0 .5rem;line-height:1.3}.event-card-home p{color:#888;font-size:.85rem;margin:0;line-height:1.4}@media(max-width:768px){.news-grid-home{grid-template-columns:1fr;padding:0 1rem;gap:1rem}.news-card-home .news-img{height:160px}.playlists-scroll,.releases-scroll,.reviews-scroll,.events-scroll{padding:.5rem 1rem 1rem;gap:1rem}.playlist-card-home{flex:0 0 140px}.playlist-card-home .playlist-img{width:140px;height:140px}.release-card-home{flex:0 0 130px}.release-card-home .release-img{width:130px;height:130px}.review-card-home{flex:0 0 160px}.review-card-home .review-img{width:160px;height:100px}.event-card-home{flex:0 0 240px}}.concert-detail-page{min-height:100vh;background:linear-gradient(180deg,#121212,#0a0a0a);padding-bottom:100px;position:relative}.nav-title{color:#fff;font-size:1rem;font-weight:600;letter-spacing:.5px}.poster-container{width:100%;padding:70px 1.5rem 1.5rem;position:relative}.poster-image{width:100%;aspect-ratio:3/4;max-height:55vh;object-fit:cover;border-radius:20px;box-shadow:0 20px 60px #00000080}.poster-overlay{position:absolute;bottom:0;left:0;right:0;height:100px;pointer-events:none}.detail-content{padding:1rem 1.5rem;margin-top:-20px;position:relative;z-index:10}.event-title{font-size:1.8rem;font-weight:700;color:#fff;margin:0 0 .3rem;line-height:1.2}.event-artist{font-size:.95rem;color:#fff9;margin:0 0 1.5rem}.info-row{display:flex;align-items:stretch;background:#ffffff0d;border-radius:16px;padding:1rem;margin-bottom:2rem;border:1px solid rgba(255,255,255,.08)}.info-item{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem}.info-label{font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.4rem}.info-value{font-size:.9rem;color:#fff;font-weight:600;line-height:1.3}.info-divider{width:1px;background:#ffffff26;margin:0 .5rem}.about-section{margin-bottom:2rem}.about-title{font-size:1.1rem;font-weight:700;color:#fff;margin:0 0 1rem}.about-text{font-size:.9rem;color:#ffffffa6;line-height:1.7;margin:0 0 1rem}.about-text:last-child{margin-bottom:0}.seatmap-section{margin-bottom:2rem}.seatmap-container{background:#ffffff0d;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.seatmap-image{width:100%;height:auto;display:block}.buy-ticket-container{position:fixed;bottom:0;left:0;right:0;padding:1rem 1.5rem 2rem;background:linear-gradient(180deg,transparent 0%,#0a0a0a 30%);z-index:100}.buy-ticket-btn{display:block;width:100%;text-align:center;background:#fff;color:#000;text-decoration:none;padding:1.1rem 2rem;border-radius:30px;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 8px 30px #fff3}.buy-ticket-btn:hover{transform:translateY(-2px);box-shadow:0 12px 40px #ffffff4d}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff;gap:1rem;padding:2rem;text-align:center}@media(min-width:768px){.poster-container{max-width:500px;margin:0 auto}.detail-content{max-width:600px;margin:-20px auto 0}.event-title{font-size:2.2rem}.info-value{font-size:1rem}.buy-ticket-container{max-width:500px;left:50%;transform:translate(-50%)}}@media(max-width:380px){.detail-nav{padding:.8rem 1rem}.nav-btn{width:36px;height:36px;font-size:1.1rem}.poster-container{padding:60px 1rem 1rem}.detail-content{padding:0 1rem}.event-title{font-size:1.5rem}.info-row{padding:.8rem}.info-label{font-size:.65rem}.info-value{font-size:.8rem}.buy-ticket-container{padding:1rem 1rem 1.5rem}.buy-ticket-btn{padding:1rem 1.5rem;font-size:.95rem}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#0a0a0af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.navbar-left{display:flex;align-items:center}.navbar-logo{font-size:1.4rem;font-weight:800;color:#fff;text-decoration:none;letter-spacing:2px;transition:color .2s}.navbar-logo:hover{color:#ccc}.navbar-right{position:relative}.hamburger-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#ffffff1a;border:none;border-radius:12px;color:#fff;font-size:1.3rem;cursor:pointer;transition:all .2s}.hamburger-btn:hover,.hamburger-btn.active{background:#fff;color:#000}.navbar-dropdown{position:absolute;top:calc(100% + 12px);right:0;background:#121212;border-radius:16px;padding:12px;min-width:180px;box-shadow:0 10px 40px #0006;animation:dropIn .2s ease}@keyframes dropIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.nav-link{display:block;padding:12px 16px;color:#ccc;text-decoration:none;border-radius:8px;transition:all .2s;font-size:.95rem}.nav-link:hover{background:#ffffff1a;color:#fff}.all-concerts-page{min-height:100vh;background:#0a0a0a}.page-header{background:#121212;padding:2rem;display:flex;align-items:center;gap:1.5rem}.back-link{color:#fff;text-decoration:none;font-size:1rem;font-weight:500;opacity:.9;transition:opacity .3s ease}.back-link:hover{opacity:1}.page-title{font-size:1.8rem;font-weight:800;color:#fff;margin:0;flex:1}.concert-count{color:#ffffffb3;font-size:.9rem;font-weight:500}.filter-bar{background:#121212;padding:0 2rem 1.5rem;display:flex;gap:1rem;align-items:center}.search-filter{flex:1;max-width:400px;position:relative;display:flex;align-items:center}.search-filter .search-icon{position:absolute;left:1rem;color:#ffffff80;font-size:1rem}.search-filter .search-input{width:100%;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:50px;padding:.75rem 2.5rem .75rem 2.75rem;color:#fff;font-size:.9rem}.search-filter .search-input::placeholder{color:#fff6}.search-filter .search-input:focus{outline:none;border-color:#fff}.search-filter .clear-btn{position:absolute;right:.75rem;background:transparent;border:none;color:#ffffff80;cursor:pointer;padding:.25rem;display:flex;align-items:center}.filter-toggle{display:flex;align-items:center;gap:.5rem;background:#ffffff14;border:1px solid rgba(255,255,255,.1);color:#fff;padding:.75rem 1.25rem;border-radius:50px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.filter-toggle:hover,.filter-toggle.active{background:#ffffff26;border-color:#fff}.expanded-filters{background:#121212f2;padding:1.5rem 2rem;display:flex;gap:1.5rem;align-items:flex-end;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.1)}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.filter-select{background:#ffffff14;border:1px solid rgba(255,255,255,.1);color:#fff;padding:.65rem 1rem;border-radius:8px;font-size:.9rem;cursor:pointer}.filter-select:focus{outline:none;border-color:#fff}.filter-select option{background:#121212;color:#fff}.clear-filters-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:#ffffffb3;padding:.65rem 1.25rem;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease}.clear-filters-btn:hover{border-color:#fff;color:#fff}.page-content{max-width:1400px;margin:0 auto;padding:2rem}.concerts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:1.5rem}.loading-state,.error-state,.empty-state{text-align:center;padding:4rem 2rem}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.loading-state p,.error-state p{font-size:1.2rem;color:#ffffffb3;margin:0}.error-state p{color:#ff6b6b}.empty-state h2{font-size:2rem;color:#fff;margin:0 0 1rem}.empty-state p{font-size:1.1rem;color:#ffffffb3;margin:0}@media(max-width:768px){.page-header{padding:1.5rem 1rem;gap:1rem}.back-link{font-size:.9rem}.page-title{font-size:1.3rem}.concert-count{font-size:.8rem}.filter-bar{padding:0 1rem 1rem}.search-filter{max-width:none}.expanded-filters{padding:1rem;gap:1rem}.filter-group{flex:1;min-width:120px}.page-content{padding:1.5rem 1rem}.concerts-grid{grid-template-columns:1fr;gap:1.2rem}.loading-state,.error-state,.empty-state{padding:3rem 1rem}.spinner{width:40px;height:40px}.loading-state p,.error-state p{font-size:.95rem}.empty-state h2{font-size:1.5rem}.empty-state p{font-size:.95rem}}@media(min-width:769px)and (max-width:1024px){.concerts-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:375px){.page-title{font-size:1.1rem}.back-link{font-size:.85rem}.filter-toggle span{display:none}}.news-page{min-height:100vh;background:#0a0a0a;padding-top:76px}.news-hero{background:linear-gradient(135deg,#121212,#0a0a0a);padding:3rem 2rem;text-align:center;border-bottom:1px solid #2a2a2a}.news-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.news-hero p{color:#888;font-size:1.1rem;margin:0}.news-container{max-width:1200px;margin:0 auto;padding:2rem}.news-toolbar{display:flex;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap}.news-search{display:flex;align-items:center;gap:12px;background:#121212;border-radius:12px;padding:12px 20px;flex:1;min-width:250px}.news-search svg{color:#fff;font-size:1.2rem}.news-search input{flex:1;background:none;border:none;color:#fff;font-size:1rem;outline:none}.news-search input::placeholder{color:#666}.news-categories{display:flex;gap:.5rem;flex-wrap:wrap}.category-btn{padding:10px 20px;background:#121212;border:none;border-radius:20px;color:#888;font-size:.9rem;cursor:pointer;transition:all .2s;text-transform:capitalize}.category-btn:hover{color:#fff;background:#1a1a1a}.category-btn.active{background:#fff;color:#000}.featured-article{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;background:#121212;border-radius:20px;overflow:hidden;margin-bottom:2.5rem;text-decoration:none;transition:transform .3s ease}.featured-article:hover{transform:translateY(-5px)}.featured-category{position:absolute;top:20px;left:20px;background:#fff;color:#000;padding:6px 16px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.featured-meta{display:flex;align-items:center;gap:1rem;color:#888;font-size:.9rem;margin-bottom:1rem}.featured-meta span{display:flex;align-items:center;gap:6px}.featured-content h2{color:#fff;font-size:1.8rem;font-weight:700;margin:0 0 1rem;line-height:1.3}.featured-content p{color:#aaa;font-size:1rem;line-height:1.7;margin:0 0 1.5rem}.read-more{align-self:flex-start;padding:12px 28px;background:#fff;border:none;border-radius:10px;color:#000;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.read-more:hover{background:#e0e0e0;transform:translateY(-2px)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.news-article{background:#121212;border-radius:16px;overflow:hidden;transition:transform .3s ease;text-decoration:none;display:block}.news-article:hover{transform:translateY(-5px)}.article-image{position:relative;height:180px;overflow:hidden}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.news-article:hover .article-image img{transform:scale(1.05)}.article-category{position:absolute;top:12px;left:12px;background:#ffffffe6;color:#000;padding:4px 12px;border-radius:15px;font-size:.7rem;font-weight:600;text-transform:uppercase}.article-content{padding:1.25rem}.article-meta{display:flex;align-items:center;gap:6px;color:#888;font-size:.8rem;margin-bottom:.75rem}.article-content h3{color:#fff;font-size:1.05rem;font-weight:600;margin:0 0 .75rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-content p{color:#888;font-size:.9rem;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:1024px){.featured-article{grid-template-columns:1fr}.featured-image{height:280px}.featured-content{padding:1.5rem}.news-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.news-hero{padding:2rem 1.5rem}.news-hero h1{font-size:1.8rem}.news-container{padding:1.5rem}.news-toolbar{flex-direction:column}.news-search{min-width:100%}.news-grid{grid-template-columns:1fr}.featured-content h2{font-size:1.4rem}}.news-detail-page{min-height:100vh;background:linear-gradient(180deg,#121212,#0a0a0a);padding-bottom:3rem}.news-image-container{position:relative;width:100%;height:45vh;min-height:300px}.news-image{width:100%;height:100%;object-fit:cover}.image-overlay{position:absolute;bottom:0;left:0;right:0;height:150px;background:linear-gradient(180deg,transparent 0%,#0a0a0a 100%)}.news-content{padding:0 1.5rem;margin-top:-50px;position:relative;z-index:10;max-width:800px;margin-left:auto;margin-right:auto}.news-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.news-category,.news-date{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#fff9}.news-category{background:#ffffff26;color:#fff;padding:.3rem .8rem;border-radius:20px;font-weight:500}.news-title{font-size:1.8rem;font-weight:700;color:#fff;line-height:1.3;margin:0 0 1rem}.news-excerpt{font-size:1.1rem;color:#fffc;line-height:1.6;margin:0 0 1.5rem;font-style:italic;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.news-body{font-size:1rem;color:#ffffffbf;line-height:1.8}.news-body p{margin:0 0 1.5rem}.news-body p:last-child{margin-bottom:0}.source-link{display:inline-block;margin-top:2rem;padding:.8rem 1.5rem;background:#ffffff1a;color:#fff;text-decoration:none;border-radius:25px;font-size:.9rem;font-weight:600;transition:all .3s ease}.source-link:hover{background:#e91e6340}.back-home-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e91e6366}@media(min-width:768px){.news-title{font-size:2.5rem}.news-excerpt{font-size:1.2rem}.news-body{font-size:1.1rem}}@media(max-width:480px){.news-content{padding:0 1rem}.news-title{font-size:1.5rem}.news-meta{gap:.5rem}}.playlists-page{min-height:100vh;background:#0a0a0a;padding-top:76px}.playlists-hero{background:linear-gradient(135deg,#121212,#0a0a0a);padding:3rem 2rem;text-align:center;border-bottom:1px solid #2a2a2a}.playlists-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.playlists-hero p{color:#888;font-size:1.1rem;margin:0}.playlists-container{max-width:1200px;margin:0 auto;padding:2rem}.playlists-search{display:flex;align-items:center;gap:12px;background:#121212;border-radius:12px;padding:14px 20px;margin-bottom:2rem;max-width:400px}.playlists-search svg{color:#fff;font-size:1.2rem}.playlists-search input{flex:1;background:none;border:none;color:#fff;font-size:1rem;outline:none}.playlists-search input::placeholder{color:#666}.playlists-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.playlist-card{background:#121212;border-radius:16px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.playlist-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000004d}.playlist-cover{position:relative;aspect-ratio:1;overflow:hidden}.playlist-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.playlist-card:hover .playlist-cover img{transform:scale(1.1)}.playlist-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.playlist-overlay.visible{opacity:1}.play-btn{width:64px;height:64px;background:#fff;border:none;border-radius:50%;color:#000;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background .2s ease}.play-btn:hover{transform:scale(1.1);background:#5a6fd6}.play-btn svg{margin-left:4px}.playlist-details{padding:1.25rem}.playlist-details h3{color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playlist-actions{display:flex;gap:.75rem}.platform-link{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s ease}.platform-link.spotify{background:#1ed76026;color:#1ed760}.platform-link.spotify:hover{background:#1ed76040}.platform-link.youtube{background:#ff000026;color:red}.platform-link.youtube:hover{background:#ff000040}@media(max-width:1024px){.playlists-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.playlists-hero{padding:2rem 1.5rem}.playlists-hero h1{font-size:1.8rem}.hero-icon{width:60px;height:60px;font-size:1.8rem}.playlists-container{padding:1.5rem}.playlists-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.playlist-details h3{font-size:.95rem}.platform-link{padding:6px 10px;font-size:.75rem}}@media(max-width:480px){.playlists-grid{grid-template-columns:1fr;max-width:300px;margin:0 auto}}.releases-page{min-height:100vh;background:#0a0a0a;padding-top:76px}.releases-hero{background:linear-gradient(135deg,#121212,#0a0a0a);padding:3rem 2rem;text-align:center;border-bottom:1px solid #2a2a2a}.releases-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.releases-hero p{color:#888;font-size:1.1rem;margin:0}.releases-container{max-width:1200px;margin:0 auto;padding:2rem}.releases-search{display:flex;align-items:center;gap:12px;background:#121212;border-radius:12px;padding:14px 20px;margin-bottom:2rem;max-width:400px}.releases-search svg{color:#fff;font-size:1.2rem}.releases-search input{flex:1;background:none;border:none;color:#fff;font-size:1rem;outline:none}.releases-search input::placeholder{color:#666}.featured-release{display:grid;grid-template-columns:400px 1fr;gap:2.5rem;background:#121212;border-radius:24px;overflow:hidden;margin-bottom:3rem}.featured-artwork{position:relative;aspect-ratio:1}.featured-artwork img{width:100%;height:100%;object-fit:cover}.featured-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.featured-release:hover .featured-overlay{opacity:1}.large-play-btn{width:80px;height:80px;background:#fff;border:none;border-radius:50%;color:#000;font-size:2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.large-play-btn:hover{transform:scale(1.1)}.large-play-btn svg{margin-left:6px}.new-badge{position:absolute;top:20px;left:20px;background:#ff6b6b;color:#fff;padding:8px 16px;border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:1px}.featured-info{padding:2.5rem 2.5rem 2.5rem 0;display:flex;flex-direction:column;justify-content:center}.featured-artist{color:#888;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.featured-info h2{color:#fff;font-size:2.2rem;font-weight:700;margin:.5rem 0 1rem;line-height:1.2}.featured-date{display:flex;align-items:center;gap:8px;color:#888;font-size:.95rem;margin:0 0 1rem}.featured-desc{color:#aaa;font-size:1rem;line-height:1.7;margin:0 0 1.5rem}.listen-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:#fff;border-radius:12px;color:#000;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;align-self:flex-start}.listen-btn:hover{background:#ccc;transform:translateY(-2px)}.section-title{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.releases-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem}.release-card{cursor:pointer}.release-artwork{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;margin-bottom:.75rem}.release-artwork img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.release-card:hover .release-artwork img{transform:scale(1.05)}.release-badge{position:absolute;top:10px;right:10px;background:#ff6b6b;color:#fff;padding:4px 10px;border-radius:12px;font-size:.65rem;font-weight:700}.release-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.release-card:hover .release-overlay{opacity:1}.play-link{width:50px;height:50px;background:#fff;border-radius:50%;color:#000;font-size:1.2rem;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s ease}.play-link:hover{transform:scale(1.1)}.play-link svg{margin-left:3px}.release-details{text-align:center}.release-artist{color:#888;font-size:.8rem;font-weight:500}.release-details h4{color:#fff;font-size:.95rem;font-weight:600;margin:.25rem 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-date{color:#666;font-size:.8rem}@media(max-width:1200px){.releases-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1024px){.featured-release{grid-template-columns:1fr}.featured-artwork{max-height:350px}.featured-info{padding:1.5rem}.releases-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.releases-hero{padding:2rem 1.5rem}.releases-hero h1{font-size:1.8rem}.hero-icon{width:60px;height:60px;font-size:1.8rem}.releases-container{padding:1.5rem}.releases-search{max-width:100%}.featured-info h2{font-size:1.6rem}.releases-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media(max-width:480px){.releases-grid{grid-template-columns:repeat(2,1fr)}}.reviews-page{min-height:100vh;background:#0a0a0a;padding-top:76px}.reviews-hero{background:linear-gradient(135deg,#121212,#0a0a0a);padding:3rem 2rem;text-align:center;border-bottom:1px solid #2a2a2a}.reviews-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.reviews-hero p{color:#888;font-size:1.1rem;margin:0}.reviews-container{max-width:1200px;margin:0 auto;padding:2rem}.reviews-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.reviews-search{display:flex;align-items:center;gap:12px;background:#121212;border-radius:12px;padding:12px 20px;flex:1;max-width:400px}.reviews-search svg{color:#fff;font-size:1.2rem}.reviews-search input{flex:1;background:none;border:none;color:#fff;font-size:1rem;outline:none}.reviews-search input::placeholder{color:#666}.rating-filters{display:flex;gap:.5rem}.rating-filters button{padding:10px 18px;background:#121212;border:none;border-radius:20px;color:#888;font-size:.9rem;cursor:pointer;transition:all .2s}.rating-filters button:hover{color:#fff}.rating-filters button.active{background:#fff;color:#000}.rating-filters button.high.active{background:#4caf50}.rating-filters button.medium.active{background:#ff9800}.rating-filters button.low.active{background:#f44336}.featured-review{display:grid;grid-template-columns:400px 1fr;gap:2.5rem;background:#121212;border-radius:24px;overflow:hidden;margin-bottom:2.5rem;text-decoration:none;transition:transform .3s ease}.featured-review:hover{transform:translateY(-5px)}.featured-image{position:relative;height:400px}.featured-image img{width:100%;height:100%;object-fit:cover}.featured-content{padding:2.5rem 2.5rem 2.5rem 0;display:flex;flex-direction:column;justify-content:center}.featured-score{width:90px;height:90px;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:1.5rem}.score-number{color:#fff;font-size:2rem;font-weight:700;line-height:1}.score-label{color:#ffffffe6;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-top:4px}.featured-artist{color:#888;font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.featured-content h2{color:#fff;font-size:2rem;font-weight:700;margin:.5rem 0 1rem;line-height:1.2}.featured-text{color:#aaa;font-size:1rem;line-height:1.7;margin:0 0 1.5rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.star-rating{display:flex;gap:4px}.star-rating svg{font-size:1.2rem;color:#333}.star-rating svg.filled{color:#ffc107;fill:#ffc107}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.review-card{background:#121212;border-radius:16px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;text-decoration:none;display:block}.review-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000004d}.review-image{position:relative;height:180px;overflow:hidden}.review-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.review-card:hover .review-image img{transform:scale(1.08)}.review-score{position:absolute;top:12px;left:12px;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;font-weight:700}.review-content{padding:1.25rem}.review-artist{color:#888;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.review-content h3{color:#fff;font-size:1.1rem;font-weight:600;margin:.25rem 0 .75rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.review-text{color:#888;font-size:.9rem;line-height:1.5;margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mini-stars{display:flex;gap:2px}.mini-stars svg{font-size:.9rem;color:#333}.mini-stars svg.filled{color:#ffc107;fill:#ffc107}@media(max-width:1024px){.featured-review{grid-template-columns:1fr}.featured-image{height:280px}.featured-content{padding:1.5rem}.reviews-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.reviews-hero{padding:2rem 1.5rem}.reviews-hero h1{font-size:1.8rem}.hero-icon{width:60px;height:60px;font-size:1.8rem}.reviews-container{padding:1.5rem}.reviews-toolbar{flex-direction:column;align-items:stretch}.reviews-search{max-width:100%}.rating-filters{justify-content:center}.reviews-grid{grid-template-columns:1fr}.featured-content h2{font-size:1.5rem}.featured-score{width:70px;height:70px}.score-number{font-size:1.5rem}}.review-detail-page{min-height:100vh;background:linear-gradient(180deg,#121212,#0a0a0a);padding-bottom:3rem}.detail-nav{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;z-index:100;background:linear-gradient(180deg,rgba(0,0,0,.8) 0%,transparent 100%)}.nav-btn{width:40px;height:40px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;cursor:pointer;transition:all .3s ease}.nav-btn:hover{background:#fff3;transform:scale(1.05)}.nav-title{color:#fff;font-size:1rem;font-weight:600}.review-image-container{position:relative;width:100%;padding:70px 1.5rem 1.5rem;display:flex;justify-content:center}.review-image{width:100%;max-width:350px;aspect-ratio:1;object-fit:cover;border-radius:20px;box-shadow:0 20px 60px #00000080}.image-overlay{position:absolute;bottom:0;left:0;right:0;height:100px;background:linear-gradient(180deg,transparent 0%,#0a0a0a 100%);pointer-events:none}.rating-badge{position:absolute;bottom:30px;right:50%;transform:translate(195px);display:flex;flex-direction:column;align-items:center;justify-content:center;width:70px;height:70px;border-radius:50%;box-shadow:0 8px 25px #0006}.rating-number{font-size:1.5rem;font-weight:800;color:#fff;line-height:1}.rating-label{font-size:.55rem;color:#ffffffe6;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.review-content{padding:0 1.5rem;margin-top:-20px;position:relative;z-index:10;max-width:600px;margin-left:auto;margin-right:auto}.review-artist{display:block;font-size:.9rem;color:#888;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:.3rem}.review-title{font-size:1.8rem;font-weight:700;color:#fff;line-height:1.2;margin:0 0 1rem}.review-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.meta-item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#fff9}.rating-section{margin-bottom:2rem}.rating-section h3{font-size:1rem;color:#fff;margin:0 0 1rem;font-weight:600}.rating-bar-container{width:100%;height:8px;background:#ffffff1a;border-radius:10px;overflow:hidden;margin-bottom:1rem}.rating-bar{height:100%;border-radius:10px;transition:width 1s ease}.rating-stars{display:flex;gap:.3rem}.star{font-size:1.2rem;transition:all .3s ease}.star.filled{fill:currentColor}.review-body{margin-bottom:2rem}.review-body h3{font-size:1rem;color:#fff;margin:0 0 1rem;font-weight:600}.review-body p{font-size:.95rem;color:#ffffffb3;line-height:1.8;margin:0 0 1.5rem}.review-body p:last-child{margin-bottom:0}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff;gap:1rem;padding:2rem}.spinner{width:50px;height:50px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.back-home-btn{background:#fff;color:#000;border:none;padding:.8rem 2rem;border-radius:25px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.back-home-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #fff3}@media(min-width:768px){.review-image{max-width:400px}.rating-badge{transform:translate(230px);width:80px;height:80px}.rating-number{font-size:1.8rem}.rating-label{font-size:.6rem}.review-title{font-size:2.2rem}}@media(max-width:480px){.review-image-container{padding:60px 1rem 1rem}.review-image{max-width:280px}.rating-badge{transform:translate(150px);width:60px;height:60px}.rating-number{font-size:1.3rem}.rating-label{font-size:.5rem}.review-content{padding:0 1rem}.review-title{font-size:1.5rem}}.events-page{min-height:100vh;background:#0a0a0a;padding-top:76px}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#888}.spinner{width:40px;height:40px;border:3px solid #1a1a1a;border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.events-hero{background:linear-gradient(135deg,#121212,#0a0a0a);padding:3rem 2rem;text-align:center;border-bottom:1px solid #2a2a2a}.hero-icon{width:80px;height:80px;background:#fff;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:2.5rem;color:#000}.events-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.events-hero p{color:#888;font-size:1.1rem;margin:0}.events-container{max-width:1200px;margin:0 auto;padding:2rem}.events-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.events-search{display:flex;align-items:center;gap:12px;background:#121212;border-radius:12px;padding:12px 20px;flex:1;max-width:400px}.events-search svg{color:#fff;font-size:1.2rem}.events-search input{flex:1;background:none;border:none;color:#fff;font-size:1rem;outline:none}.events-search input::placeholder{color:#666}.view-toggle{display:flex;background:#121212;border-radius:10px;padding:4px}.view-toggle button{padding:8px 20px;background:none;border:none;color:#888;font-size:.9rem;cursor:pointer;border-radius:8px;transition:all .2s}.view-toggle button.active{background:#fff;color:#000}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.event-card{background:#121212;border-radius:16px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.event-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000004d}.event-image{position:relative;height:200px;overflow:hidden}.event-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.event-card:hover .event-image img{transform:scale(1.08)}.event-date-badge{position:absolute;top:16px;left:16px;background:#fff;color:#000;padding:10px 14px;border-radius:12px;text-align:center;line-height:1.1}.event-date-badge .day{display:block;font-size:1.5rem;font-weight:700}.event-date-badge .month{display:block;font-size:.75rem;text-transform:uppercase;font-weight:500;margin-top:2px}.event-content{padding:1.5rem}.event-content h3{color:#fff;font-size:1.2rem;font-weight:600;margin:0 0 .75rem;line-height:1.3}.event-full-date{display:flex;align-items:center;gap:8px;color:#888;font-size:.85rem;margin:0 0 .75rem}.event-description{color:#888;font-size:.9rem;line-height:1.6;margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-footer{display:flex;justify-content:flex-start}.event-link{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;background:#ffffff26;border-radius:8px;color:#fff;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s}.event-link:hover{background:#fff;color:#000}.events-list{display:flex;flex-direction:column;gap:1rem}.events-list .event-card{display:grid;grid-template-columns:280px 1fr}.events-list .event-image{height:180px}.events-list .event-content{display:flex;flex-direction:column;justify-content:center}.events-list .event-description{-webkit-line-clamp:3}.no-results{text-align:center;padding:4rem 2rem;color:#888}.no-results h3{color:#fff;margin-bottom:.5rem}@media(max-width:1024px){.events-grid{grid-template-columns:repeat(2,1fr)}.events-list .event-card{grid-template-columns:200px 1fr}}@media(max-width:768px){.events-hero{padding:2rem 1.5rem}.events-hero h1{font-size:1.8rem}.hero-icon{width:60px;height:60px;font-size:1.8rem}.events-container{padding:1.5rem}.events-toolbar{flex-direction:column;align-items:stretch}.events-search{max-width:100%}.view-toggle{justify-content:center}.events-grid,.events-list .event-card{grid-template-columns:1fr}.events-list .event-image{height:200px}}.admin-page{min-height:100vh;display:flex;background:#0a0a0a}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:60px;background:#121212;border-bottom:1px solid #2a2a2a;padding:0 16px;align-items:center;gap:12px;z-index:90}.menu-toggle{width:40px;height:40px;background:#ffffff1a;border:none;border-radius:8px;color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.mobile-title{font-size:1.1rem;font-weight:600;color:#fff}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:95}.admin-sidebar{width:250px;background:#121212;padding:20px 0;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform .3s ease}.admin-logo{display:flex;align-items:center;gap:12px;padding:0 24px 24px;border-bottom:1px solid #2a2a2a;margin-bottom:20px;color:#fff;font-size:1.2rem;font-weight:600}.admin-logo svg{color:#fff;font-size:1.4rem}.admin-nav{flex:1;display:flex;flex-direction:column;gap:4px;padding:0 12px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;color:#888;font-size:.95rem;cursor:pointer;border-radius:8px;transition:all .2s;text-align:left}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:#fff;color:#000}.logout-btn{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:0 12px;background:none;border:none;color:#ff6b6b;font-size:.95rem;cursor:pointer;border-radius:8px;transition:all .2s}.logout-btn:hover{background:#ff6b6b1a}.admin-main{flex:1;margin-left:250px;padding:24px}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.admin-header h1{color:#fff;font-size:1.8rem;text-transform:capitalize}.add-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;border:none;border-radius:8px;color:#000;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.add-btn:hover{background:#e0e0e0}.admin-content{background:#121212;border-radius:16px;overflow:hidden}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:16px;text-align:left;border-bottom:1px solid #2a2a2a}.admin-table th{background:#1a1a1a;color:#888;font-size:.85rem;text-transform:uppercase;font-weight:500}.admin-table td{color:#fff;font-size:.9rem}.admin-table tbody tr:hover{background:#ffffff0d}.actions{display:flex;gap:8px}.edit-btn,.delete-btn{padding:8px;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.edit-btn{background:#fff3;color:#fff}.edit-btn:hover{background:#ffffff4d}.delete-btn{background:#ff6b6b33;color:#ff6b6b}.delete-btn:hover{background:#ff6b6b4d}.mobile-cards{display:none}.mobile-card{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #2a2a2a}.card-info{flex:1}.card-field{margin-bottom:4px}.field-label{font-size:.75rem;color:#888;text-transform:uppercase;display:block}.field-value{font-size:.95rem;color:#fff}.card-actions{display:flex;gap:8px}.empty-state{text-align:center;padding:60px 20px}.empty-state p{color:#888;margin-bottom:20px;font-size:1rem}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#121212;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #2a2a2a}.modal-header h2{color:#fff;font-size:1.3rem;text-transform:capitalize}.close-btn{background:none;border:none;color:#888;font-size:1.2rem;cursor:pointer;padding:4px}.close-btn:hover{color:#fff}.modal form{padding:24px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1 / -1}.form-group label{color:#888;font-size:.85rem;text-transform:capitalize}.form-group input,.form-group textarea{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:8px;padding:12px;color:#fff;font-size:.95rem;outline:none;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:#fff}.form-group textarea{resize:vertical;min-height:100px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #2a2a2a}.cancel-btn{padding:12px 24px;background:none;border:1px solid #444;border-radius:8px;color:#888;font-size:.95rem;cursor:pointer;transition:all .2s}.cancel-btn:hover{border-color:#666;color:#fff}.submit-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;border:none;border-radius:8px;color:#000;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.submit-btn:hover{background:#e0e0e0}.loading{text-align:center;color:#888;padding:60px}.image-preview{margin-top:10px;border-radius:8px;overflow:hidden;max-height:150px;position:relative}.image-preview img{width:100%;height:100%;max-height:150px;object-fit:cover;border-radius:8px}.label-hint{color:#666;font-size:.8rem;font-weight:400}.image-upload-wrapper{display:flex;flex-direction:column;gap:10px}.upload-input-row{display:flex;gap:10px}.upload-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#fff;border-radius:8px;color:#000;font-size:.9rem;cursor:pointer;transition:all .2s;white-space:nowrap}.upload-btn:hover{background:#e0e0e0}.url-input{flex:1;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:8px;padding:12px;color:#fff;font-size:.95rem;outline:none}.url-input:focus{border-color:#fff}.remove-image{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ff6b6be6;border:none;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.remove-image:hover{background:#ff6b6b;transform:scale(1.1)}@media(max-width:768px){.mobile-header{display:flex}.sidebar-overlay{display:block}.admin-sidebar{transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-main{margin-left:0;padding:80px 16px 16px}.admin-header h1{font-size:1.4rem}.add-btn .btn-text{display:none}.add-btn{padding:12px}.desktop-table{display:none}.mobile-cards{display:block}.form-grid{grid-template-columns:1fr}.modal{max-width:100%;max-height:100vh;border-radius:0}.modal-overlay{padding:0}.upload-input-row{flex-direction:column}}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0a;padding:20px}.login-card{background:#121212;border-radius:20px;padding:40px;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:32px}.login-header h1{color:#fff;font-size:1.8rem;margin-bottom:8px}.login-header p{color:#888;font-size:.95rem}.error-message{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.input-group{display:flex;align-items:center;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:12px;padding:0 16px;margin-bottom:16px;transition:border-color .2s}.input-group:focus-within{border-color:#fff}.input-group svg{color:#666;font-size:1.1rem}.input-group input{flex:1;background:none;border:none;padding:16px 12px;color:#fff;font-size:1rem;outline:none}.input-group input::placeholder{color:#666}.login-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;background:#fff;border:none;border-radius:12px;color:#000;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;margin-top:8px}.login-btn:hover:not(:disabled){background:#e0e0e0}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid #2a2a2a}.login-footer a{color:#fff;text-decoration:none;font-size:.9rem;transition:opacity .2s}.login-footer a:hover{opacity:.8}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}*{box-sizing:border-box}.container{max-width:1200px;margin:0 auto;padding:2rem}@media(max-width:768px){.container{padding:1rem}}
