.joy-show-cta{
 --show-gold:#ffd86c;
 --show-gold-soft:#f2b93e;
 --show-red:#5a170f;
 position:relative;
 z-index:1;
 padding:30px max(20px,var(--wide-canvas-edge,20px)) 50px;
 border-top:1px solid #9f713f66;
 border-bottom:1px solid #6f4d2066;
 background:
  radial-gradient(ellipse at 14% 0,#bd873c24,transparent 43%),
  radial-gradient(ellipse at 82% 100%,#96632424,transparent 52%),
  linear-gradient(180deg,#21150c 0%,#25190d 52%,#2c1f0e 100%);
 box-shadow:inset 0 1px #d6a65320,inset 0 -18px 45px #5a3b111d;
}
.joy-show-card{
 position:relative;
 isolation:isolate;
 width:min(1360px,100%);
 margin:0 auto;
 padding:18px 22px 22px;
 overflow:hidden;
 border:1px solid var(--show-gold);
 border-radius:17px;
 background:
  radial-gradient(circle at 10% 50%,#ffdc7059,transparent 27%),
  radial-gradient(circle at 93% 10%,#ffbc3d3d,transparent 27%),
  linear-gradient(115deg,#641b11 0%,#34100c 43%,#160b09 100%);
 box-shadow:
  inset 0 0 0 4px #7d351c,
  inset 0 0 0 6px #ffd86c3d,
  0 22px 50px #0007,
  0 0 35px #ffcb541c;
 color:#fff2c2;
}
.joy-show-card::before,
.joy-show-card::after{
 content:'';
 position:absolute;
 z-index:-1;
 pointer-events:none;
}
.joy-show-card::before{
 inset:8px;
 border:1px solid #ffeab27a;
 border-radius:11px;
 background:
  radial-gradient(circle,#fff8ca 0 2px,#efad32 2.5px 4px,transparent 4.5px) top left/22px 10px repeat-x,
  radial-gradient(circle,#fff8ca 0 2px,#efad32 2.5px 4px,transparent 4.5px) bottom left/22px 10px repeat-x;
 filter:drop-shadow(0 0 7px #ffca4db3);
}
.joy-show-card::after{
 width:360px;
 height:360px;
 right:-100px;
 top:-145px;
 border-radius:50%;
 background:repeating-conic-gradient(from 4deg,#ffd86c 0 5deg,transparent 5deg 15deg);
 opacity:.14;
}
.joy-show-content{
 position:relative;
 display:grid;
 grid-template-columns:minmax(0,1.35fr) minmax(170px,.55fr) minmax(190px,.65fr);
 align-items:center;
 gap:clamp(24px,4vw,65px);
 min-height:154px;
 padding:22px clamp(18px,3.5vw,52px) 24px;
}
.joy-show-copy>span{
 display:block;
 margin-bottom:9px;
 color:#e6b95b;
 font:800 8px/1.4 Manrope,sans-serif;
 letter-spacing:2.2px;
}
.joy-show-copy h2{
 display:flex;
 align-items:baseline;
 flex-wrap:wrap;
 gap:8px 16px;
 margin:0 0 12px;
 color:#fff3c3;
 font-family:'Russo One',sans-serif;
 line-height:.95;
 letter-spacing:-1.7px;
 text-shadow:0 4px 0 #7a2b11,0 0 24px #ffc94d70;
}
.joy-show-copy h2 strong{
 color:var(--show-gold);
 font-size:clamp(47px,5.2vw,76px);
 font-weight:400;
}
.joy-show-copy h2 em{
 font-size:clamp(22px,2.4vw,34px);
 font-style:normal;
 font-weight:400;
}
.joy-show-copy p{
 max-width:590px;
 margin:0;
 color:#e6d4b1;
 font:500 12px/1.7 Manrope,sans-serif;
}
.joy-show-copy p b{color:#fff1b7;letter-spacing:.8px}
.joy-show-ticket{
 position:relative;
 display:grid;
 place-items:center;
 min-height:112px;
 padding:18px;
 border:1px dashed #ffe09a;
 border-radius:10px;
 background:linear-gradient(145deg,#f7c75e,#bd7529);
 color:#35140d;
 box-shadow:inset 0 0 0 4px #6e2a1242,0 10px 24px #0005;
 transform:rotate(-2deg);
 text-align:center;
}
.joy-show-ticket::before,
.joy-show-ticket::after{
 content:'';
 position:absolute;
 top:50%;
 width:18px;
 height:18px;
 border-radius:50%;
 background:#2b0e0b;
 transform:translateY(-50%);
}
.joy-show-ticket::before{left:-10px}.joy-show-ticket::after{right:-10px}
.joy-show-ticket span{
 font:800 8px/1.3 Manrope,sans-serif;
 letter-spacing:1.8px;
 text-transform:uppercase;
}
.joy-show-ticket b{
 font:400 clamp(27px,3vw,39px)/1 'Russo One',sans-serif;
 letter-spacing:1px;
}
.joy-show-action{
 display:flex;
 align-items:center;
 justify-content:center;
 gap:12px;
 min-height:56px;
 padding:14px 18px;
 border:1px solid #fff1ab;
 border-radius:8px;
 background:linear-gradient(180deg,#ffe279,#e6a431);
 color:#30120b;
 box-shadow:inset 0 1px #fff9d4,0 5px 0 #7d3a16,0 13px 25px #0005;
 font:800 13px/1.2 Manrope,sans-serif;
 text-transform:uppercase;
 transition:transform .2s,filter .2s;
}
.joy-show-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2}
.joy-show-action:hover{filter:brightness(1.08);transform:translateY(-2px)}
.joy-show-action:active{transform:translateY(2px);box-shadow:inset 0 1px #fff9d4,0 2px 0 #7d3a16,0 8px 18px #0005}
.joy-show-action:focus-visible{outline:3px solid #fff4b4;outline-offset:5px}
@media(max-width:800px){
 .joy-show-cta{padding:24px 20px 43px}
 .joy-show-card{padding:16px 15px 20px;border-radius:14px}
 .joy-show-content{grid-template-columns:1fr;gap:18px;min-height:0;padding:20px 12px;text-align:center}
 .joy-show-copy h2{justify-content:center;display:block}
 .joy-show-copy h2 strong,.joy-show-copy h2 em{display:block}
 .joy-show-copy h2 strong{font-size:58px}
 .joy-show-copy h2 em{margin-top:7px;font-size:27px}
 .joy-show-copy p{max-width:430px;margin-inline:auto;font-size:11px}
 .joy-show-ticket{width:min(230px,100%);min-height:92px;margin:auto;padding:14px}
 .joy-show-action{width:100%;min-height:54px}
}
@media(max-width:380px){
 .joy-show-cta{padding-inline:15px}
 .joy-show-card{padding-inline:12px}
 .joy-show-content{padding-inline:8px}
 .joy-show-copy h2 strong{font-size:50px}
 .joy-show-copy h2 em{font-size:24px}
}
@media(prefers-reduced-motion:no-preference){
 .joy-show-card::before{animation:joy-show-bulbs 2.2s ease-in-out infinite alternate}
 @keyframes joy-show-bulbs{from{opacity:.66}to{opacity:1}}
}

/* JetTon campaign text and branding */
.joy-show-copy h2 strong{font-size:clamp(38px,5vw,68px)}
.joy-show-copy h2 em{font-size:clamp(18px,2.4vw,32px)}

.joy-show-logo{display:block;width:min(190px,60vw);height:auto;margin:10px 0 4px;object-fit:contain}
