
:root{--ticket-bg:#07080b;--ticket-panel:rgba(255,255,255,.075);--ticket-line:rgba(255,255,255,.14);--ticket-muted:#9da0aa;--ticket-accent:#d8ff3e;--ticket-blue:#6aa7ff}
[hidden]{display:none!important}
body.ticketing-page{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 10%,rgba(86,55,255,.2),transparent 32%),radial-gradient(circle at 85% 0,rgba(216,255,62,.11),transparent 28%),#050608;color:#fff;font-family:Inter,Arial,sans-serif}.ticketing-shell{width:min(1180px,calc(100% - 34px));margin:auto;padding:88px 0 70px}.ticketing-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.ticketing-logo{width:150px;filter:invert(1)}.ticketing-link{color:#fff;text-decoration:none;padding:11px 16px;border:1px solid var(--ticket-line);border-radius:999px;background:rgba(255,255,255,.055);backdrop-filter:blur(18px)}.ticket-glass{border:1px solid var(--ticket-line);background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.025));box-shadow:0 26px 80px rgba(0,0,0,.42);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:28px}.ticket-event-hero{display:grid;grid-template-columns:minmax(250px,38%) 1fr;overflow:hidden}.ticket-event-poster{min-height:520px;background-size:cover;background-position:center}.ticket-event-copy{padding:clamp(28px,5vw,62px);display:flex;flex-direction:column;justify-content:center}.ticket-kicker{color:var(--ticket-accent);font-size:11px;letter-spacing:.2em;font-weight:800}.ticket-event-copy h1{font-family:"Space Grotesk",Inter,sans-serif;font-size:clamp(38px,6vw,74px);line-height:.95;margin:14px 0 18px}.ticket-event-copy p{color:var(--ticket-muted);line-height:1.7}.ticket-options{display:grid;gap:14px;margin-top:24px}.ticket-option{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:18px;border:1px solid var(--ticket-line);border-radius:18px;background:rgba(0,0,0,.22)}.ticket-option h3{margin:0 0 5px}.ticket-option p{margin:0;font-size:13px}.ticket-price{font-size:22px;font-weight:800}.ticket-qty{width:76px;background:#0a0b0e;color:#fff;border:1px solid var(--ticket-line);border-radius:12px;padding:12px}.ticket-primary{border:0;border-radius:999px;background:#fff;color:#000;padding:14px 22px;font-weight:800;cursor:pointer}.ticket-primary:disabled{opacity:.45}.ticket-message{min-height:20px;color:var(--ticket-accent);margin-top:16px}.ticket-demo-note{margin-top:18px;padding:14px 16px;border:1px solid rgba(216,255,62,.25);background:rgba(216,255,62,.07);border-radius:15px;color:#dfe7c0;font-size:13px}.wallet-ticket-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:18px}.virtual-ticket{position:relative;overflow:hidden;min-height:430px;padding:0;border-radius:26px;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at 95% 0,rgba(216,255,62,.16),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.028));box-shadow:0 24px 60px rgba(0,0,0,.33);backdrop-filter:blur(22px)}.virtual-ticket::after{content:"";position:absolute;left:0;right:0;top:58%;border-top:1px dashed rgba(255,255,255,.23)}.virtual-ticket-head{padding:24px 24px 18px}.virtual-ticket-head small{color:var(--ticket-accent);letter-spacing:.17em;font-weight:800}.virtual-ticket-head h3{font-size:25px;margin:10px 0 6px}.virtual-ticket-head p{color:var(--ticket-muted);margin:0;line-height:1.55}.virtual-ticket-body{display:grid;grid-template-columns:1fr 132px;gap:20px;align-items:end;padding:30px 24px 24px}.virtual-ticket-meta{display:grid;gap:15px}.virtual-ticket-meta span{font-size:10px;color:var(--ticket-muted);letter-spacing:.14em}.virtual-ticket-meta strong{display:block;margin-top:4px}.ticket-qr{width:132px;height:132px;padding:9px;background:#fff;border-radius:14px}.ticket-qr img,.ticket-qr canvas{width:100%!important;height:100%!important}.ticket-code{font-family:monospace;font-size:12px;color:#d2d2d2;word-break:break-all}.ticket-used{opacity:.6}.ticket-used::before{content:"CHECKED IN";position:absolute;z-index:3;top:22px;right:-40px;transform:rotate(35deg);padding:8px 45px;background:var(--ticket-accent);color:#000;font-size:11px;font-weight:900}.checkin-layout{display:grid;grid-template-columns:1fr .8fr;gap:18px}.checkin-card{padding:26px}.checkin-card h2{margin:0 0 8px}.ticket-input{width:100%;box-sizing:border-box;background:#090a0d;color:#fff;border:1px solid var(--ticket-line);border-radius:14px;padding:14px;font:inherit;margin:14px 0}.checkin-result{margin-top:16px;padding:18px;border-radius:16px;background:rgba(255,255,255,.055);min-height:60px}.checkin-result.success{border:1px solid rgba(216,255,62,.4)}.checkin-result.error{border:1px solid rgba(255,100,100,.45)}.attendee-list{display:grid;gap:10px;max-height:560px;overflow:auto}.attendee-row{display:grid;grid-template-columns:1fr auto;gap:15px;padding:14px;border:1px solid var(--ticket-line);border-radius:14px;background:rgba(255,255,255,.04)}.attendee-row p{margin:4px 0 0;color:var(--ticket-muted);font-size:12px}.ticketing-command-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.ticketing-command-card strong{font-size:22px}
@media(max-width:800px){.ticket-event-hero,.checkin-layout{grid-template-columns:1fr}.ticket-event-poster{min-height:340px}.ticketing-command-grid{grid-template-columns:1fr 1fr}.virtual-ticket-body{grid-template-columns:1fr 112px}.ticket-qr{width:112px;height:112px}}
@media(max-width:520px){.ticketing-shell{width:min(100% - 22px,1180px);padding-top:72px}.ticketing-topbar{align-items:flex-start}.ticketing-logo{width:125px}.ticket-option{grid-template-columns:1fr auto}.ticket-qty{grid-column:1/-1;width:100%}.ticketing-command-grid{grid-template-columns:1fr}.virtual-ticket-body{grid-template-columns:1fr}.ticket-qr{width:135px;height:135px}}


/* v3.15.6 premium wallet ticket */
.wallet-ticket-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:22px;
}
.virtual-ticket{
  position:relative;
  isolation:isolate;
  min-height:430px;
  overflow:hidden;
  padding:28px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:30px;
  background:
    radial-gradient(circle at 100% 0%,rgba(211,255,70,.16),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.025));
  box-shadow:0 24px 70px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.12);
  backdrop-filter:blur(26px) saturate(145%);
  -webkit-backdrop-filter:blur(26px) saturate(145%);
}
.virtual-ticket::after{
  content:"";
  position:absolute;
  inset:auto -18% -32% 18%;
  height:54%;
  background:radial-gradient(circle,rgba(211,255,70,.11),transparent 68%);
  pointer-events:none;
  z-index:-1;
}
.ticket-glass-shine{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}
.ticket-glass-shine::before{
  content:"";
  position:absolute;
  width:65%;
  height:180%;
  top:-48%;
  left:-72%;
  transform:rotate(24deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
}
.virtual-ticket-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding-bottom:24px;
  border-bottom:1px dashed rgba(255,255,255,.17);
}
.virtual-ticket-head small{
  color:#d9ff57;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.virtual-ticket-head h3{
  margin:9px 0 7px;
  font-size:clamp(1.4rem,3vw,2rem);
}
.virtual-ticket-head p{
  margin:0;
  color:rgba(255,255,255,.62);
  line-height:1.55;
}
.ticket-validity{
  flex:0 0 auto;
  padding:8px 11px;
  border:1px solid rgba(217,255,87,.34);
  border-radius:999px;
  background:rgba(217,255,87,.1);
  color:#e8ff96;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.12em;
}
.ticket-validity.used{
  border-color:rgba(255,126,126,.34);
  background:rgba(255,99,99,.1);
  color:#ffaaaa;
}
.virtual-ticket-body{
  display:grid;
  grid-template-columns:1fr auto;
  gap:22px;
  align-items:center;
  padding:26px 0 24px;
}
.virtual-ticket-meta{
  display:grid;
  gap:22px;
  min-width:0;
}
.virtual-ticket-meta span,
.ticket-qr-shell small{
  display:block;
  margin-bottom:7px;
  color:rgba(255,255,255,.42);
  font-size:.68rem;
  letter-spacing:.16em;
}
.virtual-ticket-meta strong{
  font-size:1.05rem;
}
.ticket-code{
  max-width:100%;
  overflow-wrap:anywhere;
  color:#fff;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:.82rem;
  letter-spacing:.04em;
}
.ticket-qr-shell{
  display:grid;
  place-items:center;
  gap:10px;
  min-width:158px;
  padding:15px;
  border:1px solid rgba(217,255,87,.2);
  border-radius:25px;
  background:linear-gradient(145deg,rgba(217,255,87,.075),rgba(255,255,255,.025));
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 16px 40px rgba(0,0,0,.2);
}
.ticket-qr{
  display:grid;
  place-items:center;
  width:132px;
  height:132px;
  padding:0;
  border:0;
  border-radius:10px;
  background:transparent!important;
  overflow:hidden;
}
.ticket-qr canvas,
.ticket-qr img{
  display:block!important;
  width:132px!important;
  height:132px!important;
  background:transparent!important;
  image-rendering:pixelated;
  mix-blend-mode:screen;
}
.ticket-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.1);
}
.ticket-action{
  min-height:44px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:rgba(255,255,255,.055);
  color:#fff;
  font:inherit;
  font-size:.78rem;
  font-weight:700;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.ticket-action:hover{
  transform:translateY(-2px);
  border-color:rgba(217,255,87,.36);
  background:rgba(217,255,87,.08);
}
.ticket-action.primary{
  background:linear-gradient(135deg,#d9ff57,#9fc42f);
  color:#111;
  border-color:transparent;
}
.ticket-action.apple{
  background:#050505;
}
.ticket-action:disabled{
  opacity:.55;
  cursor:wait;
  transform:none;
}
.ticket-action-message{
  min-height:20px;
  margin:12px 0 0;
  color:#d9ff57;
  font-size:.78rem;
}
@media(max-width:650px){
  .wallet-ticket-grid{grid-template-columns:1fr}
  .virtual-ticket{min-height:auto;padding:22px}
  .virtual-ticket-body{grid-template-columns:1fr}
  .ticket-qr-shell{justify-self:start}
  .ticket-actions{grid-template-columns:1fr}
}


/* Pianoland v3.17 premium event-pass ticket */
.virtual-ticket{
  isolation:isolate;
  min-height:500px;
  border-radius:32px;
  background:
    radial-gradient(circle at 88% 10%,rgba(217,255,87,.18),transparent 30%),
    linear-gradient(150deg,rgba(255,255,255,.13),rgba(255,255,255,.035));
  box-shadow:0 30px 90px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.16);
  transform:translateZ(0);
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.virtual-ticket:hover{
  transform:translateY(-6px);
  border-color:rgba(217,255,87,.32);
  box-shadow:0 38px 110px rgba(0,0,0,.52),0 0 44px rgba(217,255,87,.08),inset 0 1px rgba(255,255,255,.18);
}
.ticket-artwork,
.ticket-artwork-overlay{
  position:absolute;
  inset:0 0 auto;
  height:46%;
  pointer-events:none;
}
.ticket-artwork{
  z-index:-3;
  background-image:var(--ticket-artwork);
  background-size:cover;
  background-position:center;
  filter:saturate(.9) contrast(1.08);
  transform:scale(1.02);
}
.ticket-artwork-overlay{
  z-index:-2;
  background:
    linear-gradient(180deg,rgba(4,5,4,.12),rgba(7,9,7,.66) 62%,#090b09 100%),
    linear-gradient(90deg,rgba(7,9,7,.2),rgba(7,9,7,.7));
}
.ticket-hologram{
  position:absolute;
  inset:-35% auto auto -40%;
  z-index:-1;
  width:85%;
  aspect-ratio:1;
  border-radius:50%;
  background:conic-gradient(from 0deg,transparent,rgba(217,255,87,.09),rgba(95,163,255,.08),rgba(173,95,255,.07),transparent);
  filter:blur(24px);
  animation:ticket-hologram-spin 12s linear infinite;
  pointer-events:none;
}
@keyframes ticket-hologram-spin{to{transform:rotate(360deg)}}
.ticket-status-cluster{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.ticket-organizer-mark{
  width:38px;height:38px;border-radius:12px;object-fit:cover;
  border:1px solid rgba(255,255,255,.22);
  background:#0a0c0a;
  box-shadow:0 8px 22px rgba(0,0,0,.3);
}
.has-ticket-artwork .virtual-ticket-head{min-height:180px}
.has-ticket-artwork .virtual-ticket-head h3{text-shadow:0 3px 18px rgba(0,0,0,.7)}
.ticket-qr-shell{
  min-width:176px;
  padding:14px 14px 12px;
  border-color:rgba(255,255,255,.22);
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(232,238,226,.78));
  box-shadow:0 18px 45px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.8);
}
.ticket-qr{
  width:148px;height:148px;border-radius:12px;
  background:transparent!important;
}
.ticket-qr canvas,.ticket-qr img{
  width:148px!important;height:148px!important;
  mix-blend-mode:multiply;
}
.ticket-qr-shell small{color:#333;font-weight:800;letter-spacing:.18em}
.ticket-actions{position:relative;z-index:4}
.ticket-action.primary{
  background:linear-gradient(135deg,#efffb5,#d9ff57 45%,#b6d83f);
  box-shadow:0 10px 28px rgba(217,255,87,.18);
}
@media(max-width:650px){
  .virtual-ticket{min-height:auto;border-radius:26px}
  .has-ticket-artwork .virtual-ticket-head{min-height:145px}
  .ticket-status-cluster{align-items:flex-end;flex-direction:column}
  .ticket-qr-shell{justify-self:center}
}


/* Pianoland v4.1 PayFast checkout */
.checkout-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:18px;margin-top:24px}
.checkout-promo,.checkout-total-card{padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.045)}
.checkout-promo label{display:block;margin-bottom:10px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.58)}
.checkout-promo>div{display:grid;grid-template-columns:1fr auto;gap:8px}
.checkout-promo input{min-width:0;padding:13px 14px;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:rgba(0,0,0,.22);color:#fff;font:inherit}
.checkout-promo button,.ticket-secondary{padding:12px 16px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.08);color:#fff;font-weight:800;cursor:pointer;text-decoration:none}
.checkout-promo small{display:block;min-height:18px;margin-top:9px;color:#d9ff57}
.checkout-total-card{display:grid;gap:12px}
.checkout-total-card>div{display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.62)}
.checkout-total-card strong{color:#fff}
.checkout-total-card .checkout-grand-total{padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:1.14rem;color:#fff}
.ticket-option{padding:0;overflow:hidden}
.ticket-option.selected{border-color:rgba(217,255,87,.42);box-shadow:0 0 0 1px rgba(217,255,87,.12),0 18px 50px rgba(0,0,0,.22)}
.ticket-option-select{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;width:100%;padding:20px;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer}
.ticket-option-radio{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-radius:50%;box-shadow:inset 0 0 0 4px transparent}
.ticket-option.selected .ticket-option-radio{border-color:#d9ff57;box-shadow:inset 0 0 0 4px #111;background:#d9ff57}
.ticket-option-controls{display:flex;align-items:end;justify-content:flex-end;gap:12px;padding:0 20px 20px}
.ticket-option-controls label{display:grid;gap:6px;color:rgba(255,255,255,.55);font-size:.75rem}
.ticket-option-controls select{min-width:76px;padding:11px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#111;color:#fff}
.payment-result-card{max-width:720px;margin:8vh auto;text-align:center;padding:clamp(28px,6vw,58px)}
.payment-state-icon{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 24px;border-radius:50%;font-size:2rem;font-weight:900;background:rgba(255,255,255,.08)}
.payment-state-icon.success{background:rgba(124,255,114,.13);color:#8cff82;border:1px solid rgba(124,255,114,.3)}
.payment-state-icon.failed{background:rgba(255,92,92,.13);color:#ff8a8a;border:1px solid rgba(255,92,92,.3)}
.payment-state-icon.pending{color:#d9ff57}
.payment-result-card h1{font-size:clamp(2rem,5vw,4rem);margin:0 0 14px}
.payment-result-card>p{color:rgba(255,255,255,.62);line-height:1.7}
.payment-result-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}
.payment-result-meta div{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.04)}
.payment-result-meta span{display:block;margin-bottom:7px;color:rgba(255,255,255,.42);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
.payment-result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@media(max-width:720px){.checkout-summary{grid-template-columns:1fr}.ticket-option-controls{align-items:stretch;flex-direction:column}.ticket-option-controls .ticket-primary{width:100%}.payment-result-meta{grid-template-columns:1fr}}

/* v4.3 event checkout */
.ticketing-page{background:radial-gradient(circle at 9% 0,rgba(100,67,255,.18),transparent 28rem),radial-gradient(circle at 92% 8%,rgba(216,255,62,.09),transparent 25rem),#07080a}
.ticketing-shell{width:min(1440px,calc(100% - 48px));padding:54px 0 80px}
.ticketing-brand{display:flex;align-items:center;gap:16px;color:rgba(255,255,255,.54);font-size:.72rem;font-weight:800;letter-spacing:.15em;text-decoration:none;text-transform:uppercase}
.ticketing-brand .ticketing-logo{width:145px}
.ticketing-link{display:flex;align-items:center;gap:12px;padding:13px 18px;font-size:.88rem;font-weight:700;transition:border-color .2s,background .2s,transform .2s}
.ticketing-link:hover{transform:translateY(-2px);border-color:rgba(216,255,62,.34);background:rgba(216,255,62,.07)}
.ticket-event-layout{display:grid;grid-template-columns:minmax(340px,42%) minmax(0,1fr);align-items:start;gap:clamp(34px,5vw,76px)}
.ticket-event-aside{position:sticky;top:42px}
.ticket-event-poster{min-height:0;aspect-ratio:4/5;border:1px solid rgba(255,255,255,.15);border-radius:30px;background-size:cover;background-position:center;box-shadow:0 40px 100px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.12)}
.ticket-trust-row{display:flex;justify-content:center;gap:22px;padding:18px;color:rgba(255,255,255,.5);font-size:.72rem;font-weight:700}
.ticket-event-copy{padding:22px 0 30px;justify-content:flex-start}
.ticket-event-heading{padding-bottom:27px;border-bottom:1px solid rgba(255,255,255,.1)}
.ticket-event-copy h1{max-width:820px;margin:15px 0 24px;font-size:clamp(3rem,6vw,6.4rem);letter-spacing:-.055em;line-height:.89}
.ticket-event-meta{display:flex;flex-wrap:wrap;gap:10px 26px;margin:0!important}
.ticket-event-meta span{position:relative;color:rgba(255,255,255,.74);font-weight:600}
.ticket-event-meta span+span:before{content:"";position:absolute;left:-15px;top:.55em;width:4px;height:4px;border-radius:50%;background:var(--ticket-accent)}
.ticket-event-description{max-width:760px;margin:25px 0 32px;font-size:1rem}
.ticket-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:15px}
.ticket-section-heading>div>span,.ticket-section-heading>span{color:rgba(255,255,255,.4);font-size:.66rem;font-weight:800;letter-spacing:.15em}
.ticket-section-heading h2{margin:6px 0 0;font:700 1.55rem "Space Grotesk",sans-serif}
.ticket-options{gap:10px;margin:0}
.ticket-option{border-radius:18px;background:rgba(255,255,255,.035);transition:transform .2s,border-color .2s,background .2s}
.ticket-option:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.055)}
.ticket-option.selected{border-color:rgba(216,255,62,.58);background:linear-gradient(120deg,rgba(216,255,62,.09),rgba(255,255,255,.035))}
.ticket-option-select{padding:18px 20px}
.ticket-price{font-family:"Space Grotesk",sans-serif}
.ticket-primary{background:var(--ticket-accent);box-shadow:0 10px 28px rgba(216,255,62,.14);transition:transform .2s,box-shadow .2s}
.ticket-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 34px rgba(216,255,62,.24)}
.checkout-summary{grid-template-columns:1fr minmax(290px,360px);margin-top:18px}
.checkout-promo,.checkout-total-card{background:rgba(255,255,255,.03)}
.ticket-demo-note{display:flex;align-items:flex-start;gap:14px;margin-top:14px;color:rgba(255,255,255,.56)}
.ticket-demo-note strong{flex:0 0 auto;color:#e8ff92}
.checkin-card>p{color:var(--ticket-muted)}
@media(max-width:900px){.ticket-event-layout{grid-template-columns:1fr;gap:28px}.ticket-event-aside{position:static}.ticket-event-poster{width:min(100%,620px);margin:auto;aspect-ratio:4/4.8}}
@media(max-width:600px){.ticketing-shell{width:min(100% - 24px,1440px);padding-top:70px}.ticketing-brand span{display:none}.ticketing-topbar{align-items:center}.ticket-event-copy h1{font-size:clamp(2.7rem,15vw,4.2rem)}.ticket-event-meta{display:grid}.ticket-event-meta span+span:before{display:none}.ticket-trust-row{gap:10px;justify-content:space-between;padding-inline:4px}.ticket-section-heading>span{display:none}.checkout-summary{grid-template-columns:1fr}.ticket-demo-note{display:grid}}
.event-lineup-panel{margin:6px 0 34px;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.1)}
.event-lineup-list{border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden}
.event-lineup-row{display:grid;grid-template-columns:30px 48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;text-decoration:none;background:rgba(255,255,255,.025);transition:background .18s}
.event-lineup-row:last-child{border-bottom:0}
a.event-lineup-row:hover{background:rgba(216,255,62,.055)}
.lineup-order{color:rgba(255,255,255,.34);font:700 .7rem "Space Grotesk",sans-serif}
.lineup-avatar{display:grid;place-items:center;width:44px;height:44px;overflow:hidden;border-radius:50%;background:linear-gradient(135deg,#6b42da,#318ee9);font-size:.72rem;font-weight:800}
.lineup-avatar img{width:100%;height:100%;object-fit:cover}
.lineup-artist{display:grid;gap:4px}
.lineup-artist strong{font-size:.92rem}
.lineup-artist small,.lineup-time small{color:rgba(255,255,255,.48);font-size:.7rem}
.lineup-verified{display:inline-grid;place-items:center;width:18px;height:18px;margin-left:4px;border:2px solid #fff;border-radius:50%;background:linear-gradient(145deg,#29b6ff,#087cff);color:#fff;font:900 10px/1 Arial,sans-serif;font-style:normal;vertical-align:middle;box-shadow:0 0 0 2px rgba(16,142,255,.2),0 3px 10px rgba(0,132,255,.42)}
.lineup-time{display:grid;gap:4px;text-align:right}
.lineup-time strong{font:700 .9rem "Space Grotesk",sans-serif}
.tickets-coming-soon{padding:24px;border:1px solid rgba(216,255,62,.22);border-radius:18px;background:rgba(216,255,62,.055)}
.tickets-coming-soon strong{font:700 1.15rem "Space Grotesk",sans-serif}
.tickets-coming-soon p{margin:7px 0 0}
@media(max-width:520px){.event-lineup-row{grid-template-columns:24px 42px minmax(0,1fr);padding:12px}.lineup-time{grid-column:3;text-align:left}.lineup-avatar{width:40px;height:40px}}
