.homePage{min-height:100vh;padding-bottom:0;overflow-x:hidden;width:100%;max-width:100vw;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:#0a0a0a;color:#fff}.hero-section{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:4rem 1rem;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#000000a6,#000000a6),url(/scene.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:1;z-index:0}.hero-section>*{position:relative;z-index:1}.hero-content{max-width:1200px;margin:0 auto;text-align:center;display:flex;flex-direction:column;gap:2rem;align-items:center}.hero-title{font-weight:800;color:#fff;font-size:2.5rem;background:linear-gradient(45deg,#e0e0e0,#fff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 4px 20px rgba(255,255,255,.15);margin:0}@media(min-width:640px){.hero-title{font-size:3.5rem}}@media(min-width:768px){.hero-title{font-size:4rem}}.hero-subtitle{color:#d9d9d9;font-weight:800;max-width:600px;font-size:2.2rem;margin:0;letter-spacing:.01em;line-height:1.5;text-shadow:0 0 10px rgba(255,255,255,.15),0 0 24px rgba(255,255,255,.1);background-image:linear-gradient(110deg,#fff,#e8e8e8 18%,silver 34%,#fff,#d8d8d8 70%,#fff);background-size:240% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:subtitleShimmer 4s linear infinite,subtitleFloat 3.2s ease-in-out infinite}@media(min-width:640px){.hero-subtitle{font-size:2.6rem}}@keyframes subtitleShimmer{0%{background-position:0% 50%}to{background-position:240% 50%}}@keyframes subtitleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.hero-actions{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.location-finder{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;justify-content:center}.location-input{min-width:220px;padding:.75rem .9rem;border-radius:.75rem;border:1px solid rgba(255,255,255,.25);background:#00000040;color:#fff;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.location-input::placeholder{color:#fff9}.location-input:focus{border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1f}.cta-button{background:linear-gradient(45deg,#555,#888);color:#fff;padding:.75rem 2rem;border-radius:.75rem;font-size:1.1rem;font-weight:600;text-transform:none;box-shadow:0 8px 32px #0000004d;border:none;cursor:pointer;text-decoration:none;display:flex;align-items:center;transition:all .3s ease}.cta-button.secondary{background:#ffffff1a;box-shadow:0 8px 32px #0003;border:1px solid rgba(255,255,255,.2)}.cta-button:hover{background:linear-gradient(45deg,#666,#999);transform:translateY(-2px);box-shadow:0 12px 40px #0006}.cta-button.secondary:hover{background:#ffffff26;border-color:#fff6;box-shadow:0 12px 40px #0000004d}.content-section{padding:3rem 1rem;background-color:#ffffff08}@media(min-width:640px){.content-section{padding:3rem 2rem}}@media(min-width:768px){.content-section{padding:3rem}}@media(min-width:1024px){.content-section{padding:3rem 4rem}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-title-group{display:flex;align-items:center;gap:1rem}.section-icon{color:#e0e0e0;font-size:2rem;width:2rem;height:2rem}.section-title{font-weight:700;color:#fff;font-size:1.8rem;margin:0}@media(min-width:640px){.section-title{font-size:2.2rem}}.view-all-button{color:#e0e0e0;text-transform:none;font-size:1rem;font-weight:600;background-color:transparent;border:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;text-decoration:none;transition:color .3s ease}.view-all-button:hover{color:#fff}.swiper-container{position:relative;margin-bottom:4rem}.swiper{overflow:visible!important;margin:0!important;padding:0!important}.swiper-wrapper{margin:0!important;padding:0!important}.swiper-slide{width:auto!important}.event-card,.artist-card,.venue-card{width:400px;border-radius:.75rem;overflow:hidden;cursor:pointer;background:transparent;transition:all .3s ease;display:flex;flex-direction:column}.event-card:hover,.venue-card:hover,.artist-card:hover{background:#282828;transform:translateY(-4px)}.event-card .card-image,.artist-card .card-image,.venue-card .card-image{width:400px;height:400px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-radius:.75rem}.card-image__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.card-image__photo--fallback{object-fit:contain;background-color:#1a1a1a}.archive-card .card-image{position:relative}.event-card .card-image{background:linear-gradient(135deg,#4a4a4a,#707070)}.venue-card .card-image{background:linear-gradient(135deg,#5a5a5a,#3a3a3a)}.artist-card .card-image{background:linear-gradient(135deg,#4a4a4a,#2a2a2a)}.event-card,.artist-card,.venue-card{aspect-ratio:1}.card-hover-content{position:absolute;inset:0;z-index:2;background:linear-gradient(to top,#000000e6,#000000b3,#0000);display:flex;flex-direction:column;justify-content:flex-end;padding:1rem;opacity:0;transition:opacity .3s ease;border-radius:.75rem;pointer-events:none}.event-card:hover .card-hover-content,.venue-card:hover .card-hover-content,.artist-card:hover .card-hover-content{opacity:1}.card-hover-title{color:#fff;font-size:1.1rem;font-weight:700;margin:0 0 .5rem;line-height:1.3}.card-hover-info{display:flex;flex-direction:column;gap:.5rem}.card-hover-info-row{display:flex;align-items:center;gap:.5rem}.card-hover-icon{width:16px;height:16px;color:#e0e0e0;flex-shrink:0}.card-hover-text{color:#ffffffe6;font-size:.875rem;margin:0;line-height:1.4}.card-hover-chip{display:inline-block;background-color:#ffffff26;color:#e0e0e0;font-size:.75rem;padding:.25rem .5rem;border-radius:.375rem;font-weight:600;width:fit-content}.card-hover-chip.chip-success{background-color:#ffffff26;color:#e0e0e0}.card-hover-chip.chip-default{background-color:#ffffff1a;color:#b3b3b3;font-weight:600;margin-top:.25rem;width:fit-content}.card-hover-chip.chip-distance{background-color:#6366f14d;border:1px solid rgba(129,140,248,.45);color:#dbe4ff}.card-content{padding:1rem;background:transparent}.card-title{font-weight:700;color:#fff;font-size:1.1rem;line-height:1.3;margin:0 0 .5rem}.card-info{display:flex;flex-direction:column;gap:.5rem}.card-info-row{display:flex;align-items:center;gap:.5rem}.card-info-icon{color:#e0e0e0;font-size:1.1rem;width:1.1rem;height:1.1rem}.card-info-text{color:#b3b3b3;font-size:.9rem}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.card-chip{background-color:#333;color:#b3b3b3;font-size:.8rem;padding:.25rem .5rem;border-radius:.25rem}.card-capacity{display:flex;align-items:center;gap:.25rem}.card-capacity-icon{color:#e0e0e0;font-size:1rem;width:1rem;height:1rem}.card-capacity-text{color:#e0e0e0;font-weight:600;font-size:.9rem}.ad-placeholder{margin-bottom:4rem;padding:2rem;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-radius:1rem;border:1px solid #333;position:relative;overflow:hidden}.ad-content{height:120px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;border:2px dashed #444;background:#0000004d;flex-direction:column;gap:.5rem}.ad-title{color:#888;font-weight:600;font-size:1.2rem;margin:0}.ad-subtitle{color:#666;font-size:.9rem;margin:0}.loading-state{display:flex;align-items:center;justify-content:center;min-height:400px;width:100%;flex-direction:column;gap:1rem}.loading-icon{font-size:4rem;color:#333;width:4rem;height:4rem}.loading-text{color:#b3b3b3;font-size:1.25rem;margin:0}.swiper-button-prev,.swiper-button-next{width:40px!important;height:40px!important;padding:10px!important;background:#000000b3!important;border-radius:50%!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .3s ease!important;opacity:0!important;box-sizing:border-box!important}.swiper-button-prev:after,.swiper-button-next:after{content:none!important}.swiper-button-prev .swiper-navigation-icon,.swiper-button-next .swiper-navigation-icon{width:8px!important;height:14px!important;display:block!important}.swiper-button-prev:hover,.swiper-button-next:hover{background:#000000e6!important;transform:scale(1.1)!important}.swiper-container:hover .swiper-button-prev,.swiper-container:hover .swiper-button-next{opacity:1!important}@media(max-width:768px){.homePage{padding-bottom:0}.content-section{padding:1.5rem 1rem}.section-title{font-size:1.5rem}}
