:root{--dark:#050d1f;--light:#7ec8ff;--white:#fff;--font-main:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-main);background-color:var(--dark);color:var(--white);line-height:1.6;overflow-x:hidden}.about,.tour-dates,.tickets{opacity:0;transition:opacity .9s,transform .9s;transform:translateY(50px)}.about.visible,.tour-dates.visible,.tickets.visible{opacity:1;transform:translateY(0)}.hero{justify-content:center;align-items:center;width:100%;height:100vh;min-height:600px;display:flex;position:relative;overflow:hidden}.hero-image{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:1;background:linear-gradient(#050d1f4d,#050d1fb3);position:absolute;inset:0}.hero-content{z-index:2;text-align:center;animation:1.1s ease-out forwards heroPopIn;position:relative}@keyframes heroPopIn{0%{opacity:0;transform:scale(.92)translateY(25px)}to{opacity:1;transform:scale(1)translateY(0)}}.hero-artist{letter-spacing:.4em;text-transform:uppercase;color:var(--light);margin-bottom:.5rem;font-size:clamp(.9rem,2vw,1.2rem)}.hero-title{letter-spacing:-.02em;text-transform:uppercase;font-size:clamp(4rem,12vw,10rem);font-weight:800;line-height:1}.hero-meta{letter-spacing:.3em;text-transform:uppercase;color:var(--light);margin-top:1rem;font-size:clamp(1rem,2.5vw,1.5rem)}.about{background-color:var(--dark);grid-template-columns:1fr 1fr;align-items:center;min-height:100vh;display:grid;position:relative}.about-image{object-fit:cover;width:100%;height:100%;display:block}.about-content{max-width:600px;padding:4rem 5vw}.about-label{letter-spacing:.35em;text-transform:uppercase;color:var(--light);margin-bottom:1rem;font-size:.85rem}.about-content h2{margin-bottom:1.5rem;font-size:clamp(2rem,4vw,3.5rem);font-weight:700;line-height:1.1}.about-content p{color:#ffffffd9;max-width:480px;font-size:clamp(1rem,1.2vw,1.15rem)}.tour-dates{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.tour-dates-image{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.tour-dates-overlay{z-index:1;background:#050d1fbf;position:absolute;inset:0}.tour-dates-content{z-index:2;text-align:center;width:100%;max-width:900px;padding:4rem 5vw;position:relative}.tour-dates-label{letter-spacing:.35em;text-transform:uppercase;color:var(--light);margin-bottom:1rem;font-size:.85rem}.tour-dates-content h2{margin-bottom:3rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700}.tour-dates-list{flex-direction:column;gap:1.5rem;max-width:700px;margin:0 auto;display:flex}.tour-date-row{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050d1f80;border:1px solid #7ec8ff40;justify-content:space-between;align-items:center;padding:1.25rem 2rem;transition:border-color .3s,background .3s;display:flex}.tour-date-row:hover{border-color:var(--light);background:#050d1fb3}.tour-date-city{text-align:left;font-size:clamp(1rem,2vw,1.25rem);font-weight:600}.tour-date-date{color:var(--light);text-align:right;white-space:nowrap;margin-left:1.5rem;font-size:clamp(.9rem,1.8vw,1.1rem);font-weight:500}.tickets{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.tickets-image{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.tickets-content{z-index:2;text-align:center;max-width:700px;padding:4rem 5vw;position:relative}.tickets-label{letter-spacing:.35em;text-transform:uppercase;color:var(--light);margin-bottom:1rem;font-size:.85rem}.tickets-content h2{margin-bottom:1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700}.tickets-copy{color:#ffffffd9;max-width:500px;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;font-size:clamp(1rem,1.3vw,1.15rem)}.tickets-cta{letter-spacing:.2em;text-transform:uppercase;color:var(--dark);background-color:var(--light);cursor:pointer;border:none;padding:1rem 3rem;font-size:1rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-block}.tickets-cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px #7ec8ff59}.site-footer{text-align:center;color:#fff6;letter-spacing:.1em;padding:2rem;font-size:.8rem}@media (width<=768px){.about{grid-template-columns:1fr;min-height:auto}.about-image{height:50vh;min-height:300px}.about-content{text-align:center;max-width:100%;padding:3rem 6vw}.about-content p{max-width:100%;margin:0 auto}.tour-dates-content,.tickets-content{padding:3rem 6vw}.tour-date-row{padding:1rem 1.25rem}.tour-date-city{font-size:1rem}.tour-date-date{margin-left:1rem;font-size:.9rem}}@media (width<=480px){.hero{min-height:100svh}.hero-title{font-size:clamp(3rem,15vw,5rem)}.hero-artist{letter-spacing:.3em}.hero-meta{letter-spacing:.2em}.about-image{height:40vh;min-height:250px}.about-content{padding:2.5rem 5vw}.about-content h2{font-size:2rem}.tour-dates-content h2,.tickets-content h2{margin-bottom:2rem;font-size:1.75rem}.tour-dates-list{gap:1rem}.tour-date-row{flex-direction:column;align-items:flex-start;gap:.25rem;padding:1rem}.tour-date-date{opacity:.8;margin-left:0;font-size:.85rem}.tickets-cta{width:100%;padding:1rem}.tickets-copy{margin-bottom:2rem}}@media (prefers-reduced-motion:reduce){.about,.tour-dates,.tickets{opacity:1;transition:none;transform:none}.hero-content{opacity:1;animation:none}}
