/* 12 October 2026: original typography, palette and imagery retained. */
.hero-lineup{display:grid;gap:0;margin:20px 0 0;border-top:1px solid rgba(255,138,24,.3);border-bottom:1px solid rgba(255,138,24,.3)}
.hero-lineup a{display:grid;grid-template-columns:68px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:13px 2px;text-align:left;transition:background .25s ease}
.hero-lineup a+a{border-top:1px solid rgba(255,255,255,.08)}
.hero-lineup a>span{display:grid;font-size:9px;letter-spacing:.13em;line-height:1.4;color:var(--muted)}
.hero-lineup a>span b{font-size:22px;font-family:var(--display);font-weight:400;color:var(--orange-hot)}
.hero-lineup a>strong{font-family:var(--display);font-weight:400;font-size:clamp(18px,1.7vw,24px);letter-spacing:.015em;line-height:1.3;overflow-wrap:anywhere}
.hero-lineup i{font-style:normal;color:var(--orange-hot);transition:transform .25s ease}
.hero-lineup a:hover{background:rgba(255,138,24,.07)}
.hero-lineup a:hover i{transform:translate(2px,-2px)}
.hero-table-callout{border-color:rgba(40,211,102,.48);box-shadow:0 14px 40px rgba(0,0,0,.18)}
.hero-table-callout>div>span{font-size:13px}
.hero-table-callout>div>span b{font-size:16px}
.hero-ticket-prices dd{font-variant-numeric:tabular-nums}
.countdown-clock{font-variant-numeric:tabular-nums}
.hero-next-announcement{transition:background .25s ease,border-color .25s ease}
.hero-next-announcement:hover{background:rgba(255,106,0,.16);border-color:var(--orange-hot)}
.hero-ticket-prices>div{transition:background .2s ease,padding .2s ease}
.hero-ticket-prices>div:hover{padding-inline:9px;background:rgba(255,138,24,.06)}
.next-release-strip .button{max-width:260px}
.lineup-day-group{scroll-margin-top:105px;margin-top:42px}
.lineup-day-group+.lineup-day-group{margin-top:58px}
.lineup-day-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid rgba(255,138,24,.32)}
.lineup-day-heading>div>span{font-size:10px;letter-spacing:.13em;font-weight:800;color:var(--muted)}
.lineup-day-heading h3{font-family:var(--display);font-weight:400;font-size:clamp(30px,3.3vw,44px);text-transform:uppercase;line-height:1.06;margin:8px 0 0;color:var(--orange-hot)}
.lineup-day-heading .button{font-size:10px;min-height:46px;flex:none}
.lineup-original .artists-full-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px}
.lineup-original .artist-full-card,.lineup-original .artist-full-card:last-child{grid-column:auto;width:100%;justify-self:stretch;display:flex;flex-direction:column;isolation:isolate}
.lineup-day-31 .artists-full-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:calc((100% - 40px)/3*2 + 20px);margin-inline:auto}
.artist-visual{width:100%;aspect-ratio:3/4;display:grid;place-items:center;background:#040708;overflow:visible}
.artist-visual img{width:100%;height:100%;max-height:100%;object-fit:contain!important;transform:none!important;display:block}
.artist-card-copy{flex:1;display:flex;flex-direction:column;padding:20px 10px 14px}
.artist-card-copy>span{font-size:11px;line-height:1.4;color:var(--muted)}
.artist-card-copy h4{font-family:var(--display);font-size:clamp(27px,3vw,41px);font-weight:400;line-height:1.08;margin:9px 0 15px;letter-spacing:.015em;text-transform:uppercase;overflow-wrap:break-word}
.artist-card-copy>strong{margin-top:auto;font-size:11px;line-height:1.4}
.artist-day{min-height:43px}
.artist-full-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;box-shadow:inset 0 0 32px rgba(255,138,24,.07);transition:opacity .3s ease}
.artist-full-card{position:relative}
.artist-full-card:hover::after{opacity:1}
.next-artist-symbol{font-size:85px;white-space:nowrap}
.ticket-card{display:flex;flex-direction:column;isolation:isolate;min-height:570px}
.ticket-card>p{min-height:0}
.ticket-card ul{margin-bottom:28px}
.ticket-card .button-ticket{position:relative;inset:auto;width:100%;margin-top:auto;min-height:54px;line-height:1.35}
.ticket-card::before{pointer-events:none}
.ticket-gold::after{pointer-events:none}
.table-confirmed{display:table;margin:15px 0 18px;padding:7px 12px;border:1px solid rgba(40,211,102,.5);border-radius:7px;color:var(--green);font-size:11px;line-height:1.45;letter-spacing:.06em;font-weight:850;background:rgba(40,211,102,.06)}
.tables-card .table-day-note strong{color:var(--paper)}

/* Interaction: cursor light, single-pass reflection, restrained lift and touch ripple. */
.button{--button-glow:255,106,0;--pointer-x:50%;--pointer-y:50%;transition:transform .28s cubic-bezier(.2,.75,.25,1),box-shadow .28s ease,background .28s ease,border-color .28s ease,filter .28s ease;transform-origin:center;backface-visibility:hidden}
.button-whatsapp{--button-glow:40,211,102}
.button-glass,.button-ghost{--button-glow:255,138,24}
.button-ticket{--button-glow:255,106,0}
.ticket-gold .button-ticket{--button-glow:246,196,83}
.button::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(130px circle at var(--pointer-x) var(--pointer-y),rgba(255,255,255,.34),transparent 72%);transition:opacity .3s ease}
.button::after,.tables-quick .button-whatsapp::after,.tables-card .button-whatsapp::after{content:"";position:absolute;inset:-75% auto -75% -70%;width:36%;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-20deg);animation:none;transition:left .7s cubic-bezier(.2,.65,.3,1)}
.tables-quick .button-whatsapp,.tables-card .button-whatsapp,.header-actions .button-ghost,.mobile-actions a:last-child{animation:none}
.button>span[aria-hidden="true"]{display:inline-block;transition:transform .3s cubic-bezier(.2,.75,.25,1)}
.button:focus-visible,.early-countdown-link:focus-visible{outline:3px solid var(--paper);outline-offset:4px}
.button:focus-visible::before{opacity:.7}
@media(hover:hover) and (pointer:fine){
 .button:hover{transform:translateY(-4px);filter:brightness(1.06);box-shadow:0 12px 30px rgba(var(--button-glow),.28),0 0 0 1px rgba(var(--button-glow),.4)}
 .button:hover::before{opacity:1}
 .button:hover::after,.tables-quick .button-whatsapp:hover::after,.tables-card .button-whatsapp:hover::after{left:140%}
 .button:hover>span[aria-hidden="true"]{transform:translate(3px,-2px)}
 .ticket-card:hover{transform:perspective(1100px) translateY(-8px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
 .artist-full-card:hover{transform:translateY(-5px);border-color:rgba(255,138,24,.68);box-shadow:0 16px 45px rgba(255,106,0,.08),var(--shadow)}
}
.button:active,.button.is-touched{transform:translateY(0) scale(.975);filter:brightness(1.1)}
@media(hover:none){.ticket-card:hover,.artist-full-card:hover,.button:hover{transform:none}.button:active{transform:scale(.98)}}
@media(max-width:1120px){
 .hero-lineup a{grid-template-columns:56px minmax(0,1fr) 14px;gap:8px}
 .hero-lineup a>strong{font-size:20px}
 .lineup-day-heading h3{font-size:34px}
 .artist-card-copy h4{font-size:30px}
 .artist-day{font-size:8px;letter-spacing:0}
 .next-artist-symbol{font-size:70px}
}
@media(max-width:840px){
 .hero-lineup{margin:20px auto 0;max-width:570px}
 .hero-lineup a{grid-template-columns:60px minmax(0,1fr) 16px;padding-block:13px}
 .hero-lineup a>strong{font-size:22px}
 .lineup-original .artists-full-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:16px}
 .lineup-day-30 .artist-full-card:last-child{grid-column:1/-1;width:calc((100% - 16px)/2);justify-self:center}
 .lineup-day-heading{gap:16px;align-items:flex-start}
 .artist-card-copy h4{font-size:32px}
 .artist-card-copy{padding:18px 8px 12px}
 .artist-day{font-size:9px}
 .ticket-card{min-height:0}
 .hero-table-callout>div>span b{font-size:16px}
 .next-artist-card .next-artist-symbol{font-size:68px}
}
@media(max-width:520px){
 .hero-lineup a{grid-template-columns:48px minmax(0,1fr) 13px;gap:8px}
 .hero-lineup a>strong{font-size:20px;line-height:1.3}
 .hero-lineup a>span b{font-size:21px}
 .hero-table-callout>div>span{font-size:12px}
 .hero-table-callout>div>span b{font-size:15px}
 .lineup-day-group{margin-top:30px}
 .lineup-day-group+.lineup-day-group{margin-top:40px}
 .lineup-day-heading h3{font-size:32px}
 .lineup-day-heading>div>span{font-size:9px}
 .lineup-day-heading .button{width:100%;font-size:10px;min-height:46px}
 .lineup-original .artists-full-grid{grid-template-columns:1fr;width:100%;gap:22px}
 .lineup-original .artist-full-card,.lineup-original .artist-full-card:last-child{grid-column:auto;width:100%;max-width:390px;justify-self:center;padding:10px;border-radius:20px}
 .artist-day{font-size:10px;padding:8px 7px 15px}
 .artist-day b{font-size:17px}
 .artist-card-copy h4{font-size:37px}
 .artist-card-copy>span,.artist-card-copy>strong{font-size:12px}
 .artist-card-copy{padding:19px 10px 15px}
 .table-confirmed{font-size:10px}
 .next-artist-card{grid-template-columns:auto minmax(0,1fr);gap:14px}
 .next-artist-card .next-artist-symbol{font-size:56px}
 .next-artist-card h3{font-size:25px}
 .next-artist-card .section-number{font-size:9px}
 .ticket-card .button-ticket{min-height:54px}
}
@media(max-width:360px){.hero-lineup a>strong{font-size:18px}.lineup-day-heading h3{font-size:28px}.next-artist-card h3{font-size:22px}.next-artist-card .next-artist-symbol{font-size:44px}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation:none!important;transition:none!important}
 .button,.button:hover,.button:active,.button.is-touched,.ticket-card:hover,.artist-full-card:hover,.ticket-card:hover .ticket-price strong,.button:hover>span[aria-hidden="true"],.early-countdown-link:hover,.hero-lineup a:hover i{transform:none!important}
 .button::after{display:none}
}
