.concert-root{background:var(--concert-bg,#000);color:var(--concert-ink,#fff);font-family:var(--concert-font-body,"Inter",system-ui,sans-serif);-webkit-font-smoothing:antialiased}.concert-container{max-width:1280px;margin:0 auto;padding:0 24px}.concert-section{position:relative;padding:80px 0}.concert-section--hero{padding:0}.concert-tag{display:inline-block;font-size:12px;letter-spacing:.2em;color:var(--concert-accent,#ed1c24);margin-bottom:16px}.concert-tag,.concert-title{font-weight:700;text-transform:uppercase}.concert-title{font-family:var(--concert-font-heading,"Anton","Bebas Neue","Impact",sans-serif);font-size:clamp(40px,6vw,72px);letter-spacing:.02em;line-height:1;margin:0 0 16px}.concert-lead{font-size:16px;line-height:1.6;color:var(--concert-ink,#fff);opacity:.7;max-width:640px;margin:0 0 32px}.concert-nav{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);border-bottom:1px solid hsla(0,0%,100%,.08)}.concert-nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.concert-nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--concert-ink,#fff)}.concert-nav-logo-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--concert-accent,#ed1c24);font-family:var(--concert-font-heading);font-weight:800;color:#fff;font-size:14px;letter-spacing:0;border-radius:2px}.concert-nav-logo-text{display:flex;flex-direction:column;line-height:1}.concert-nav-logo-name{font-family:var(--concert-font-heading);font-size:18px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.concert-nav-logo-sub{font-size:10px;color:hsla(0,0%,100%,.5);letter-spacing:.1em;text-transform:uppercase;margin-top:2px}.concert-nav-links{display:flex;gap:28px;list-style:none;margin:0;padding:0}.concert-nav-links a{color:var(--concert-ink,#fff);text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;opacity:.85;transition:opacity .2s}.concert-nav-links a:hover{opacity:1}.concert-nav-cta{background:var(--concert-accent,#ed1c24);color:#fff;border:none;padding:10px 20px;font-family:var(--concert-font-body);font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block}.concert-nav-cta:hover{filter:brightness(1.1)}.concert-hero{position:relative;min-height:720px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.concert-hero-bg{position:absolute;inset:0;background-size:cover;background-position:50%}.concert-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.95))}.concert-hero-content{position:relative;z-index:1;padding:120px 24px}.concert-hero-kicker{font-size:14px;letter-spacing:.4em;font-weight:700;margin-bottom:24px;text-transform:uppercase;color:var(--concert-accent,#ed1c24)}.concert-hero-title{font-family:var(--concert-font-heading);font-size:clamp(56px,10vw,128px);font-weight:800;line-height:.9;letter-spacing:0;text-transform:uppercase;margin:0 0 16px;text-shadow:0 4px 24px rgba(0,0,0,.6)}.concert-hero-subtitle{font-size:18px;letter-spacing:.2em;text-transform:uppercase;opacity:.8;margin-bottom:40px}.concert-hero-ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.concert-btn{display:inline-block;padding:16px 32px;font-family:var(--concert-font-body);font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:1px solid var(--concert-ink);color:var(--concert-ink);cursor:pointer;transition:all .2s}.concert-btn:hover{background:var(--concert-ink);color:var(--concert-bg)}.concert-btn--primary{background:var(--concert-accent,#ed1c24);border-color:var(--concert-accent);color:#fff}.concert-btn--primary:hover{background:#fff;color:var(--concert-bg);border-color:#fff}.concert-hero:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:80px;background:var(--concert-bg);clip-path:polygon(0 100%,100% 100%,100% 0,60% 100%,0 30%)}.concert-tour{background:var(--concert-bg);position:relative}.concert-tour-bg-text{position:absolute;font-family:var(--concert-font-heading);font-size:clamp(140px,22vw,320px);font-weight:800;letter-spacing:0;text-transform:uppercase;opacity:.04;top:30px;left:-10px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;line-height:.8}.concert-tour-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.08);margin-top:48px}.concert-tour-card{background:var(--concert-bg);padding:32px 28px;display:flex;flex-direction:column;gap:16px;min-height:360px;position:relative}.concert-tour-date{font-size:13px;letter-spacing:.2em;font-weight:600;opacity:.75;text-transform:uppercase}.concert-tour-city{font-family:var(--concert-font-heading);font-size:36px;font-weight:800;letter-spacing:0;line-height:1;text-transform:uppercase;margin:0}.concert-tour-venue{font-size:12px;letter-spacing:.2em;opacity:.6;text-transform:uppercase}.concert-tour-actions{margin-top:auto;display:flex;flex-direction:column;gap:14px;font-size:12px;letter-spacing:.2em}.concert-tour-tickets-link{color:var(--concert-ink);font-weight:700;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;transition:color .2s}.concert-tour-tickets-link:hover{color:var(--concert-accent,#ed1c24)}.concert-tour-extras{display:flex;flex-direction:column;gap:8px}.concert-tour-extra{font-size:11px;letter-spacing:.2em;text-transform:uppercase;opacity:.6}.concert-tour-extra--unavailable{text-decoration:line-through;opacity:.4}.concert-tour-extra--available{color:var(--concert-accent,#ed1c24);opacity:.95}.concert-tour-soldout{position:absolute;top:16px;right:16px;background:hsla(0,0%,100%,.06);color:var(--concert-accent,#ed1c24);padding:4px 10px;font-size:10px;letter-spacing:.2em;font-weight:800;text-transform:uppercase}.concert-tour-moreinfo{color:var(--concert-ink);font-weight:600;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;font-size:11px;opacity:.7}.concert-tour-moreinfo:hover{opacity:1}.concert-albums-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;margin-top:48px}.concert-album{background:var(--concert-surface,#0f0f0f);text-decoration:none;color:var(--concert-ink);transition:transform .2s;display:block}.concert-album:hover{transform:translateY(-4px)}.concert-album-cover{aspect-ratio:1;background-size:cover;background-position:50%;background-color:hsla(0,0%,100%,.05)}.concert-album-meta{padding:16px 4px 0}.concert-album-title{font-family:var(--concert-font-heading);font-size:18px;letter-spacing:.05em;text-transform:uppercase;margin:0 0 4px}.concert-album-year{font-size:12px;letter-spacing:.2em;opacity:.5}.concert-bio{background:var(--concert-bg)}.concert-bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-top:32px}.concert-bio-image{aspect-ratio:4/5;background-size:cover;background-position:50%;background-color:hsla(0,0%,100%,.05)}.concert-bio-paragraphs p{font-size:17px;line-height:1.7;margin:0 0 16px;opacity:.85}.concert-bio-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.concert-bio-stat-number{font-family:var(--concert-font-heading);font-size:48px;font-weight:800;line-height:1;color:var(--concert-accent,#ed1c24);margin-bottom:6px}.concert-bio-stat-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;opacity:.6}@media (max-width:768px){.concert-bio-grid{grid-template-columns:1fr;gap:32px}}.concert-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:48px}.concert-gallery-photo{aspect-ratio:1;background-size:cover;background-position:50%;background-color:hsla(0,0%,100%,.05)}.concert-gallery-photo:nth-child(7n+1){grid-column:span 2;aspect-ratio:16/10}.concert-gallery-photo:nth-child(7n+5){grid-row:span 2;aspect-ratio:1/2}@media (max-width:768px){.concert-gallery-grid{grid-template-columns:repeat(2,1fr)}.concert-gallery-photo:nth-child(7n+1){grid-column:span 2}.concert-gallery-photo:nth-child(7n+5){grid-row:auto;aspect-ratio:1}}.concert-merch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;margin-top:48px}.concert-merch-card{background:var(--concert-surface,#0f0f0f);text-decoration:none;color:var(--concert-ink);display:flex;flex-direction:column}.concert-merch-image{aspect-ratio:1;background-size:cover;background-position:50%}.concert-merch-meta{padding:16px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.concert-merch-name{font-family:var(--concert-font-heading);font-size:16px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px}.concert-merch-price{font-size:13px;letter-spacing:.1em;opacity:.7}.concert-merch-cta{font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--concert-accent,#ed1c24);text-transform:uppercase}.concert-final{position:relative;min-height:480px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.concert-final-bg{position:absolute;inset:0;background-size:cover;background-position:50%;filter:grayscale(.5) brightness(.4)}.concert-final-content{position:relative;z-index:1;padding:80px 24px}.concert-final-title{font-family:var(--concert-font-heading);font-size:clamp(48px,8vw,96px);font-weight:800;line-height:1;text-transform:uppercase;margin:0 0 16px}.concert-final-subtitle{font-size:18px;opacity:.85;max-width:640px;margin:0 auto 32px}.concert-footer{background:#050505;border-top:1px solid hsla(0,0%,100%,.08);padding:48px 0 24px}.concert-footer-grid{display:grid;grid-template-columns:2fr repeat(2,1fr);gap:48px;margin-bottom:32px}@media (max-width:768px){.concert-footer-grid{grid-template-columns:1fr;gap:32px}}.concert-footer-tagline{font-family:var(--concert-font-heading);font-size:24px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}.concert-footer-socials{display:flex;gap:16px}.concert-footer-socials a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid hsla(0,0%,100%,.15);color:var(--concert-ink);text-decoration:none;transition:border-color .2s}.concert-footer-socials a:hover{border-color:var(--concert-accent,#ed1c24)}.concert-footer-col-heading{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;margin-bottom:12px;opacity:.6}.concert-footer-col ul{list-style:none;padding:0;margin:0}.concert-footer-col li{margin-bottom:8px}.concert-footer-col a{color:var(--concert-ink);text-decoration:none;font-size:14px;opacity:.7}.concert-footer-col a:hover{opacity:1}.concert-footer-bottom{border-top:1px solid hsla(0,0%,100%,.08);padding-top:16px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;opacity:.5;text-transform:uppercase}