/* Dirección elegida: escenario sinfónico. Solo afecta el cierre. */
body.active{background:#0b0908}
#concert{max-width:1440px}
#experience:has(#concert:not([hidden])){padding:0 4vw 40px;justify-content:flex-start}
#experience:has(#concert:not([hidden]))>.art{display:none}
.concert-hero{display:grid;grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr);align-items:center;min-height:520px;position:relative}
.event-copy{text-align:left;padding:24px 0 28px;position:relative;z-index:3}
.event-copy .eyebrow{font-size:14px;letter-spacing:.24em;color:#d8c09a;margin-bottom:12px}
.event-copy .brand{line-height:0}
.event-copy .brand img{width:100%;max-width:510px;max-height:300px;object-fit:contain;object-position:left center}
.event-copy .tagline{font-size:20px;margin:12px 0 28px;color:#d2bfa4}
.event-copy .date{font-size:clamp(16px,1.65vw,23px);line-height:1.55;letter-spacing:.02em;margin:0 0 12px}
.event-copy .venue{font-size:17px;color:#e7d8be;margin:0 0 10px;line-height:1.5}
.event-copy .tickets{background:#c91620;padding:19px 28px;margin-top:18px;border-radius:3px;letter-spacing:.08em;font-size:16px;gap:28px}
.event-copy .ticket-note{color:#a49582;margin:12px 0 0}
.stage{height:540px;min-width:0;width:113%;margin:0 0 0 -10%;overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#bf7c2c26,transparent 65%);align-self:end}
.stage img{filter:drop-shadow(0 9px 9px #0008)}
.stage .back-orchestra{width:100%;height:66%;object-fit:contain;left:0;bottom:30%;opacity:.64;z-index:1}
.stage .group{width:77%;height:76%;object-fit:contain;object-position:bottom;left:11.5%;bottom:10%;z-index:2}
.stage .front-orchestra{width:110%;height:84%;object-fit:contain;left:-5%;bottom:5%;opacity:1;z-index:3}
.stage-floor{position:absolute;inset:50% -20% -10%;background:repeating-linear-gradient(0deg,transparent 0 38px,#c8954530 39px,#1e140c 40px),radial-gradient(ellipse,#81511d45,transparent 70%);transform:perspective(280px) rotateX(38deg);transform-origin:bottom}
.stage-lights{position:absolute;inset:0;z-index:0;display:flex;justify-content:space-around}
.stage-lights i{position:relative;width:20%;height:95%;transform-origin:top center;background:linear-gradient(180deg,#f8c97840,#d69c4112 50%,transparent);clip-path:polygon(47% 0,53% 0,100% 100%,0 100%);animation:spotlight 9s ease-in-out infinite alternate}
.stage-lights i:nth-child(even){animation-delay:-4s}
.stage:after{content:'';position:absolute;top:0;left:7%;right:7%;height:18px;background:radial-gradient(circle at 12% 50%,#fff3c5 0 3px,#ffc96888 5px,transparent 14px),radial-gradient(circle at 37% 50%,#fff3c5 0 3px,#ffc96888 5px,transparent 14px),radial-gradient(circle at 63% 50%,#fff3c5 0 3px,#ffc96888 5px,transparent 14px),radial-gradient(circle at 88% 50%,#fff3c5 0 3px,#ffc96888 5px,transparent 14px)}
.explore{display:flex;align-items:center;gap:24px;padding:25px 0 18px;border-top:2px solid #8c1c1d;border-image:linear-gradient(90deg,transparent,#bd2626 20%,#bd2626 80%,transparent) 1}
.explore:before,.explore:after{content:'';height:1px;background:linear-gradient(90deg,transparent,#aa2828);flex:1}
.explore:after{transform:scaleX(-1)}
.explore h3{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:26px;letter-spacing:.12em;margin:0;color:#e8d8bd}
.objects{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0;padding:0 0 20px;background:linear-gradient(transparent 78%,#96622c0f 80%,transparent 83%)}
.object,.object.challenge{position:relative;border:0;border-radius:0;background:none;padding:5px 4px 15px}
.object:hover,.object.challenge:hover{background:radial-gradient(ellipse,#da9b3014,transparent 70%)}
.object img{height:clamp(140px,15vw,215px);filter:drop-shadow(0 15px 10px #0008)}
.object span,.challenge span{font-family:Impact,'Arial Narrow',Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:500;font-size:20px;margin:14px 0 5px}
.object small{font-size:12px;color:#a99b88;line-height:1.5}
.discount-badge{position:absolute;right:0;top:0;z-index:2;width:64px;height:64px;border-radius:50%;background:#c71920;display:flex;flex-direction:column;justify-content:center;transform:rotate(9deg);font-size:12px;line-height:1.2;color:#fff3df;box-shadow:0 4px 12px #0005}
.discount-badge strong{font-size:23px}
.cast-line{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;border-top:1px solid #b47b342a;padding:20px 0 0;margin:0;color:#d1b58d;font-size:16px;line-height:1.6}
.cast-line span{color:#af2627}
.promo-note{margin:12px auto;font-size:12px;max-width:800px}
#replay{color:#a89883;font-size:13px;margin-top:8px}
@keyframes spotlight{from{transform:rotate(-9deg)}to{transform:rotate(9deg)}}
@media(min-width:1500px){.concert-hero{min-height:560px}.stage{height:580px}}
@media(max-width:1000px){.concert-hero{grid-template-columns:1fr 1fr}.stage{height:440px;width:120%;margin-left:-20%}.event-copy .brand img{max-height:240px}.objects{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.object img{height:185px}.discount-badge{right:10%}.event-copy .tagline{font-size:18px}.event-copy .tickets{font-size:14px;padding:18px}}
@media(max-width:640px){#experience:has(#concert:not([hidden])){padding:0 20px 30px}.concert-hero{display:flex;flex-direction:column;min-height:0}.event-copy{text-align:center;width:100%;padding:15px 0}.event-copy .brand img{max-width:400px;max-height:230px;object-position:center}.event-copy .eyebrow{font-size:12px}.event-copy .tagline{font-size:18px;margin:10px 0 20px}.event-copy .venue{font-size:15px}.event-copy .date{font-size:16px}.event-copy .tickets{font-size:15px;width:100%;max-width:350px}.stage{height:320px;width:110%;margin:0 -5%;align-self:center}.objects{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.object img{height:155px}.object span{font-size:18px}.discount-badge{right:0;width:56px;height:56px}.discount-badge strong{font-size:21px}.explore{gap:12px;padding:22px 0}.explore h3{font-size:21px;letter-spacing:.07em}.cast-line{font-size:14px;gap:4px 10px}.promo-note{font-size:12px}.stage .group{width:82%;left:9%}}
@media(prefers-reduced-motion:reduce){.stage-lights i{animation:none}}
