:root{--night:#090716;--deep:#120b29;--ink:#1a0d38;--lav:#c9b9eb;--white:#fffaff;--pink:#ff2fa4;--pink2:#fa0b85;--gold:#ffce35;--blue:#2b9bff;--line:rgba(255,255,255,.18);--font-display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--font-main:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;min-width:320px;font:400 16px/1.55 var(--font-main);color:var(--white);background:var(--night)}body::selection{background:var(--pink);color:#fff}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 52px));margin-inline:auto}.skip-link{position:absolute;left:15px;top:-80px;z-index:999;padding:10px;background:#fff;color:#000}.skip-link:focus{top:15px}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.site-header{height:86px;padding:0 max(26px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;background:#080716eb;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:13px;line-height:1}.brand-star{color:var(--gold);flex:none}.brand strong{display:block;font:900 23px/.92 var(--font-display);letter-spacing:.6px}.brand em{font-style:normal;color:var(--gold)}.brand small{display:block;margin-top:8px;color:#b9a9d6;letter-spacing:2.1px;font-size:9px;font-weight:800}.header-right{display:flex;align-items:center;gap:22px}.header-date{color:#fff;white-space:nowrap;font:800 23px var(--font-display);letter-spacing:.7px}.header-date b{font-size:13px;letter-spacing:1px;color:var(--gold)}.button{min-height:57px;display:inline-flex;justify-content:center;align-items:center;gap:18px;padding:16px 23px;font:900 17px/1 var(--font-display);letter-spacing:.9px;transform:translateZ(0);border:0;transition:transform .2s,box-shadow .2s,background .2s;text-align:center}.button:hover{transform:translateY(-3px)}.button span{font:900 22px/1 var(--font-main)}.button-sm{font-size:15px;min-height:45px;padding:12px 17px;gap:18px}.button-pink{color:#fff;background:linear-gradient(105deg,#ff148e,#e60d86);box-shadow:0 5px 20px #f9087b40}.button-pink:hover{box-shadow:0 9px 25px #f9087b6a}.button-yellow{color:#140927;background:var(--gold);box-shadow:5px 6px 0 #e935a0}.button-yellow:hover{box-shadow:7px 9px 0 #e935a0}.button-outline{background:transparent;border:1px solid var(--gold);color:var(--gold)}.button-outline:hover{background:#ffce3518}.full-width{width:100%}.section{padding:116px 0}.section-label{font:800 13px/1.2 var(--font-main);letter-spacing:2.3px;color:var(--pink);margin:0 0 21px}.section h2{font:900 clamp(54px,6.2vw,88px)/.91 var(--font-display);letter-spacing:-.7px;margin:0 0 26px;max-width:900px}.section h2 em{font-style:normal;color:var(--gold)}
/* opening concert */
.hero{min-height:714px;overflow:hidden;position:relative;background:radial-gradient(ellipse 36% 68% at 88% 23%,#14216f88,transparent 70%),radial-gradient(ellipse 45% 80% at 5% 64%,#89126169,transparent 75%),linear-gradient(125deg,#11071f 3%,#080e37 66%,#160628 100%)}.hero::before{content:"";pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 92px,#ffffff06 93px,#ffffff06 94px),linear-gradient(180deg,transparent 60%,#120622aa 100%)}.light-beam{position:absolute;z-index:0;pointer-events:none;top:-100px;width:430px;height:820px;filter:blur(16px);opacity:.7;clip-path:polygon(40% 0,60% 0,100% 100%,0 100%)}.beam-left{left:-85px;transform:rotate(18deg);background:linear-gradient(180deg,#ff4bb5b5,transparent)}.beam-right{right:-80px;transform:rotate(-20deg);background:linear-gradient(180deg,#1776ffbb,transparent)}.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:52px;padding:83px 0 70px}.hero-copy{position:relative}.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #ffce357a;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:1.4px;padding:10px 12px;line-height:1.2;background:#130d2eaa}.live-dot{display:inline-block;width:7px;height:7px;box-shadow:0 0 12px var(--pink);border-radius:50%;background:var(--pink)}.kicker{font:800 14px/1 var(--font-main);letter-spacing:3.5px;color:#e4dbff;margin:29px 0 15px}.hero h1{font:900 clamp(74px,6.4vw,96px)/.86 var(--font-display);letter-spacing:-1px;margin:0;color:#fff}.outline-text{display:block;color:transparent;-webkit-text-stroke:2px var(--gold);text-shadow:0 3px 15px #ffce3534}.period{color:var(--pink)}.hero-subhead{font-size:18px;max-width:460px;line-height:1.6;color:#dbd1f4;margin:30px 0 26px}.date-stamp{display:flex;align-items:center;gap:13px;border-top:1px solid #a193b077;border-bottom:1px solid #a193b077;width:max-content;max-width:100%;padding:11px 0}.stamp-day{font:900 13px/1 var(--font-main);letter-spacing:1.4px;max-width:77px}.stamp-month{font:900 29px/.9 var(--font-display);white-space:nowrap}.stamp-month strong{font-size:57px;color:var(--gold);margin-left:5px}.stamp-year{font:900 26px/1 var(--font-display);letter-spacing:2px;color:var(--gold)}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:31px}.plain-link{border-bottom:1px solid #cfc5e7;line-height:1.4;color:#ece4fc;font-weight:700;font-size:12px;padding-bottom:4px;transition:color .2s}.plain-link:hover{color:var(--gold)}.poster-wrap{position:relative;max-width:600px}.poster-halo{position:absolute;inset:4% 2%;background:linear-gradient(45deg,#ff009a6a,#553ffc7a,#ffcf478a);filter:blur(45px)}.poster-frame{position:relative;padding:7px;background:linear-gradient(140deg,#f8b121,#ed2197,#6323d3,#2b91e9);box-shadow:0 22px 70px #050114b8;transform:rotate(1.7deg)}.poster-frame img{width:100%;height:auto}.poster-tag{position:absolute;left:-21px;bottom:-23px;background:var(--gold);color:#1c0730;padding:10px 17px;font:900 14px/1 var(--font-display);letter-spacing:1.2px;transform:rotate(-5deg);box-shadow:4px 4px 0 #fc3fa5}.poster-tag span{margin-left:12px}.hero-bottom{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #c3b2e34a;padding:20px 0 22px;font-size:10px;font-weight:900;letter-spacing:2.2px;color:#d4c9eb}.hero-bottom b{color:var(--pink);margin:0 7px}.hero-bottom span:last-child{color:#a8a1c6}.marquee{height:52px;background:var(--gold);color:#100926;display:flex;align-items:center;white-space:nowrap;overflow:hidden;font:900 24px/1 var(--font-display);letter-spacing:2px}.marquee-track{display:flex;align-items:center;width:max-content;animation:marquee-move 78s linear infinite;will-change:transform}.marquee-group{display:flex;align-items:center;flex:0 0 auto}.marquee-chunk{display:block;flex:0 0 auto;padding-right:1.5em}.marquee-chunk b{color:#d71d7e;padding:0 .32em;font-size:.85em}@keyframes marquee-move{to{transform:translateX(-50%)}}
/* acts */
.lineup{background:#100b24;position:relative}.lineup:before{position:absolute;content:"";width:320px;height:320px;border-radius:100%;background:#561c895e;filter:blur(100px);right:0;top:0}.section-top{max-width:850px}.section-intro{max-width:650px;color:#cfc3df;font-size:17px;line-height:1.7;margin:0 0 38px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.feature-card{position:relative;overflow:hidden;background:#1c1439;border:1px solid #45365c;padding:33px 30px 32px;min-height:300px;transition:transform .22s,border-color .22s}.feature-card:hover{transform:translateY(-5px);border-color:var(--pink)}.feature-card::after{content:"";position:absolute;width:180px;height:180px;right:-90px;top:-100px;box-shadow:0 0 100px #b1278e99;border-radius:100%}.feature-icon{height:60px;color:var(--gold);font-size:47px;line-height:1}.feature-no{font:700 12px var(--font-main);color:#9489bd;position:absolute;right:30px;top:32px}.feature-card h3{font:900 39px/.95 var(--font-display);margin:12px 0 17px}.feature-card p{font-size:14px;color:#c6badd;line-height:1.7;margin:0}.details-note{margin:29px 0 0;color:#a8a0bb;font-size:13px}.details-note span{color:var(--gold);margin-right:7px}
/* reunion */
.reunion{background:radial-gradient(ellipse 45% 75% at 10% 50%,#3d0e74 0%,transparent 95%),#130b2d;border-top:1px solid #35214e;border-bottom:1px solid #35214e;overflow:hidden}.reunion-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:96px}.reunion-decoration{width:min(440px,100%);aspect-ratio:1;position:relative;margin-inline:auto;background:radial-gradient(circle,#12142b 3%,#151026 12%,#f6279f 12%,#80166b 13%,#120c24 14%,#120c24 22%,#2b1642 24%,#0b081c 27%,#21112d 28%,#0b081c 32%,#2c183a 33%,#09071b 35%,#23122f 36%,#09071b 47%,#2e173d 48%,#0b081c 50%,#0b081c 61%,#2b1738 62%,#0b081c 64%,#19102b 72%);border:5px solid #6d397c;box-shadow:0 0 70px #eb25ae55,20px 20px 0 #0e0923;border-radius:50%;transform:rotate(-12deg)}.record-ring{position:absolute;inset:12%;border:1px solid #ffffff16;border-radius:50%}.ring-b{inset:28%}.record-center{position:absolute;inset:33%;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:100%;background:var(--gold);color:var(--night);transform:rotate(12deg);box-shadow:0 0 30px #ffcd3891}.record-center span{font:900 86px/.8 var(--font-display)}.record-center small{font:900 15px/1 var(--font-display);letter-spacing:3px}.record-spark{position:absolute;font-size:50px;color:var(--gold)}.spark-a{left:-20px;top:15px}.spark-b{right:-35px;bottom:20px;color:var(--pink)}.reunion-copy p:not(.section-label){max-width:490px;font-size:16px;line-height:1.8;color:#d4cbe2;margin:0 0 19px}.reunion-copy .button{margin-top:19px}
/* invites */
.invite{position:relative;background:linear-gradient(130deg,#21105a 0%,#320f60 45%,#160c32 100%);overflow:hidden}.invite:before{position:absolute;content:"";right:-130px;top:-240px;width:620px;height:620px;background:#ec1f9966;filter:blur(140px);border-radius:50%}.invite-grid{display:grid;grid-template-columns:1fr 470px;gap:92px;align-items:center;position:relative}.invite h2{font-size:clamp(68px,7.8vw,108px)}.invite-lead{font-size:17px;line-height:1.85;max-width:430px;color:#ddd2f7}.invite-lead strong{color:var(--gold)}.ticket-date{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:max-content;padding:23px 37px;margin-top:39px;border:2px dashed #f9bff0;transform:rotate(-4deg);background:#1c0e45;box-shadow:11px 11px 0 #f52b9c}.ticket-date span{font:900 12px var(--font-main);letter-spacing:2px;color:#fab4e5}.ticket-date strong{font:900 76px/1 var(--font-display);color:var(--gold);margin:7px 0 3px}.ticket-date small{font:800 9px var(--font-main);letter-spacing:2px}.form-card{background:#fff9ff;color:#201039;padding:36px;box-shadow:15px 15px 0 #ff319d;border:1px solid #fff6ff}.form-card-top{display:flex;align-items:center;justify-content:space-between}.tiny-pill{display:inline-block;padding:6px 10px;background:#ecdbff;color:#502082;font:900 11px var(--font-main);letter-spacing:1.4px}.form-card-star{font-size:30px;color:var(--pink)}.form-card h3{font:900 63px/1 var(--font-display);margin:13px 0 9px}.form-card .accent{color:var(--pink)}.form-card>p{color:#6c6080;margin:0 0 25px;font-size:13px}.site-form{display:flex;flex-direction:column;gap:9px}.site-form>label:not(.checkline),.form-two label{font:800 10px/1.4 var(--font-main);letter-spacing:1.2px;color:#3c3153;margin-top:10px}.site-form input:not([type=checkbox]),.site-form textarea{width:100%;border:1px solid #d9d1e6;background:#fff;color:#211637;border-radius:0;outline:none;padding:16px;min-height:50px;transition:border .2s,box-shadow .2s}.site-form textarea{resize:vertical}.site-form input:focus,.site-form textarea:focus{border-color:#df218d;box-shadow:0 0 0 3px #ff19951c}.site-form input::placeholder,.site-form textarea::placeholder{color:#8b819c}.site-form input.invalid{border-color:#d52c71}.site-form .checkline{display:flex;align-items:flex-start;gap:10px;color:#5a4d6e;font-size:12px;line-height:1.6;margin:13px 0 10px;cursor:pointer}.site-form input[type=checkbox]{width:18px;height:18px;margin:0;flex:none;accent-color:var(--pink)}.form-response{min-height:0;font-size:13px;font-weight:700;margin:3px 0 0;color:#2a6b46}.form-response.error{color:#c21b58}.form-privacy{display:flex;align-items:center;gap:8px;border-top:1px solid #eae1ee;padding-top:17px;margin-top:19px;font-size:10px;color:#726781}.form-privacy svg{flex:none}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important}
/* share */
.share-section{background:#ffce35;color:#160826}.share-section .section-label{color:#ad1767}.share-section h2 em{color:#db178d}.share-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:100px;align-items:center}.share-inner h2{font-size:clamp(58px,6vw,82px)}.share-inner>div:first-child>p:last-child{max-width:500px;line-height:1.8;font-weight:600;font-size:15px}.share-panel{padding:39px;background:#140b2a;color:#fff;box-shadow:12px 12px 0 #e42b8d}.share-panel>p:first-child{display:flex;justify-content:space-between;font:900 19px var(--font-display);letter-spacing:1px;margin:0 0 20px}.share-panel>p:first-child span{color:var(--gold)}.share-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.share-button{border:1px solid #5a4570;background:#26163d;color:#fff;display:flex;justify-content:center;align-items:center;min-height:62px;padding:10px;font:900 16px var(--font-display);letter-spacing:1px;gap:9px;transition:background .2s,border-color .2s}.share-button:hover{border-color:var(--pink);background:#49215c}.share-icon{font:700 25px/1 var(--font-main);color:var(--pink)}.share-footnote{font-size:11px;line-height:1.7;color:#b9aacb;margin:22px 0 0}
/* story and sponsor */
.more-section{background:#0e0a21}.more-heading{margin-bottom:39px}.more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.more-card{min-height:400px;position:relative;padding:34px 29px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #3a2c51;background:#1d1437;overflow:hidden}.more-card:before{content:"";position:absolute;right:-80px;top:-90px;border-radius:50%;background:#ff269447;width:240px;height:240px;filter:blur(30px)}.sponsor-card{background:#231a38}.tribute-card{background:#171327}.card-accent{position:relative;font-size:41px;color:var(--gold);line-height:1;margin-bottom:24px}.card-label{font-size:10px;font-weight:900;letter-spacing:2px;color:#e8a1d6;margin:0 0 15px}.more-card h3{font:900 46px/.95 var(--font-display);margin:0 0 18px}.more-card>p:not(.card-label){font-size:13px;line-height:1.75;color:#bcb0d4;position:relative;margin:0 0 27px}.text-button{position:relative;padding:12px 0 7px;border:0;border-bottom:2px solid var(--gold);color:var(--gold);font:900 17px var(--font-display);letter-spacing:.8px;background:transparent;margin-top:auto;text-align:left}.text-button span{margin-left:12px}.text-button:hover{color:#fff;border-color:#fff}.coming-tag{margin-top:auto;display:inline-block;background:#373046;color:#d3bfd9;padding:9px 11px;letter-spacing:1px;font:800 10px var(--font-main)}.expand-panel{margin-top:22px;padding:34px;background:#fff9ff;color:#201039;border-top:6px solid var(--pink);display:grid;grid-template-columns:.7fr 1.3fr;gap:44px}.expand-panel[hidden]{display:none}.panel-intro .section-label{margin:0 0 11px}.panel-intro h3{font:900 48px/.95 var(--font-display);margin:0 0 14px}.panel-intro p:not(.section-label){font-size:13px;color:#685c79;line-height:1.8}.mini-form .form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-two>div{display:flex;flex-direction:column;gap:9px}.mini-form label span{font-weight:500;color:#8c8199}.mini-form .button{align-self:flex-start}.mini-form .form-response{margin-top:6px}
/* last call */
.finale{position:relative;overflow:hidden;text-align:center;padding:110px 0 125px;background:radial-gradient(ellipse at 50% 100%,#bb1b84c1,transparent 65%),linear-gradient(135deg,#361270,#0b0a2a 65%)}.finale:before,.finale:after{content:"";position:absolute;top:-170px;height:650px;width:200px;filter:blur(19px);opacity:.5;clip-path:polygon(35% 0,65% 0,100% 100%,0 100%)}.finale:before{left:5%;transform:rotate(22deg);background:linear-gradient(#ff7bd6,transparent)}.finale:after{right:5%;transform:rotate(-22deg);background:linear-gradient(#3286ff,transparent)}.finale-inner{position:relative;z-index:2}.finale h2{font:900 clamp(76px,11vw,147px)/.85 var(--font-display);letter-spacing:-1px;margin:0 auto 23px}.finale h2 em{font-style:normal;color:var(--gold)}.finale-inner>p:nth-of-type(2){font:900 20px var(--font-display);letter-spacing:3px;margin:30px 0 34px}.footer{background:#080614;border-top:1px solid #2d2140;padding:34px 0}.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.footer strong{font:900 23px var(--font-display);letter-spacing:.5px}.footer p{color:#9b90b0;font-size:12px;margin:6px 0 0}.footer-inner>div:last-child{text-align:right;display:flex;flex-direction:column;gap:8px}.footer-inner>div:last-child span{font-size:10px;letter-spacing:1.5px;font-weight:800;color:var(--gold)}.organizer-link{font-size:11px;color:#9588a5;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.hero-inner{gap:32px}.hero h1{font-size:clamp(70px,7vw,94px)}.invite-grid{gap:52px;grid-template-columns:1fr 430px}.share-inner{gap:55px}.reunion-grid{gap:50px}}
@media(max-width:820px){.container{width:min(650px,calc(100% - 40px))}.site-header{height:72px;padding:0 20px}.brand strong{font-size:19px}.brand small{font-size:8px;letter-spacing:1.3px}.brand-star{width:25px;height:25px}.header-date{display:none}.button-sm{font-size:14px;min-height:42px}.hero-inner{grid-template-columns:1fr;gap:50px;padding-top:56px}.hero h1{font-size:clamp(76px,12vw,110px);max-width:660px}.hero-subhead{margin-top:22px}.poster-wrap{max-width:600px;width:94%;justify-self:center}.hero-bottom{padding:20px 0}.section{padding:84px 0}.section h2{font-size:clamp(60px,10vw,85px)}.feature-grid{gap:12px}.feature-card{padding:25px 20px;min-height:270px}.feature-card h3{font-size:31px}.reunion-grid{grid-template-columns:1fr;gap:70px}.reunion-decoration{max-width:330px;grid-row:2}.invite-grid{grid-template-columns:1fr;gap:48px}.form-card{max-width:530px;width:100%}.share-inner{grid-template-columns:1fr;gap:34px}.share-panel{max-width:550px}.more-grid{grid-template-columns:1fr 1fr}.tribute-card{grid-column:span 2;min-height:250px}.expand-panel{grid-template-columns:1fr;gap:15px}}
@media(max-width:560px){.container{width:calc(100% - 36px)}.site-header{height:67px;padding:0 16px}.brand{gap:9px}.brand strong{font-size:17px}.brand small{font-size:7px;letter-spacing:1px}.brand-star{width:22px;height:22px}.header-right .button{padding:11px 12px;font-size:12px;gap:6px;min-height:38px}.header-right .button span{font-size:16px}.hero-inner{padding-top:37px;padding-bottom:52px;gap:35px}.eyebrow{font-size:9px;letter-spacing:.65px;padding:8px}.kicker{font-size:11px;margin-top:26px;letter-spacing:2.4px}.hero h1{font-size:clamp(61px,15vw,83px)}.outline-text{-webkit-text-stroke:1.5px var(--gold)}.hero-subhead{font-size:15px;line-height:1.65;margin:22px 0}.stamp-day{font-size:9px;max-width:57px}.stamp-month{font-size:22px}.stamp-month strong{font-size:45px}.stamp-year{font-size:21px}.date-stamp{gap:9px}.hero-actions{align-items:stretch;flex-direction:column;gap:18px}.hero-actions .button{align-self:stretch}.hero-actions .plain-link{align-self:flex-start}.poster-wrap{width:95%}.poster-tag{font-size:11px;left:-12px;bottom:-15px;padding:9px 10px}.hero-bottom{font-size:9px;letter-spacing:1.2px}.hero-bottom>span:last-child{display:none}.marquee{height:43px;font-size:19px}.section{padding:73px 0}.section-label{font-size:11px;letter-spacing:1.8px;margin-bottom:18px}.section h2{font-size:clamp(56px,12.5vw,71px);margin-bottom:19px}.section-intro{font-size:15px;margin-bottom:28px}.feature-grid{grid-template-columns:1fr;gap:11px}.feature-card{min-height:0;padding:23px 24px 25px}.feature-icon{font-size:37px;height:42px}.feature-card h3{font-size:36px;margin:8px 0 9px}.feature-card p{font-size:13px;max-width:275px}.details-note{font-size:12px}.reunion-grid{gap:43px}.reunion-decoration{max-width:270px}.record-center span{font-size:58px}.record-center small{font-size:10px}.reunion-copy p:not(.section-label){font-size:15px}.reunion-copy .button{width:100%;font-size:15px;gap:8px}.invite-grid{gap:45px}.invite h2{font-size:clamp(69px,16vw,91px)}.invite-lead{font-size:15px}.ticket-date{margin:28px 0 12px;padding:15px 27px}.ticket-date strong{font-size:58px}.ticket-date span{font-size:10px}.form-card{padding:26px 21px;box-shadow:8px 8px 0 #ff319d;width:calc(100% - 8px)}.form-card h3{font-size:54px}.share-section h2{font-size:clamp(60px,12vw,77px)}.share-panel{padding:23px;box-shadow:7px 7px 0 #e42b8d;margin-right:7px}.share-buttons{gap:9px}.share-button{min-height:55px;font-size:14px;gap:6px}.share-icon{font-size:20px}.more-grid{grid-template-columns:1fr;gap:12px}.more-card,.tribute-card{grid-column:auto;min-height:310px;padding:27px 25px}.more-card h3{font-size:43px}.card-accent{margin-bottom:13px}.expand-panel{padding:23px 18px}.panel-intro h3{font-size:42px}.mini-form .form-two{grid-template-columns:1fr;gap:5px}.mini-form .button{width:100%}.finale{padding:82px 0 100px}.finale h2{font-size:clamp(61px,13vw,91px)}.finale-inner>p:nth-of-type(2){font-size:16px;letter-spacing:2px}.finale .button{width:100%;font-size:15px}.footer-inner{flex-direction:column;gap:25px}.footer-inner>div:last-child{text-align:left}.footer strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.button,.feature-card{transition:none}}


/* Event information: high-visibility concert setlist */
.hero-showtime{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:15px 0 -12px;font:800 12px/1.4 var(--font-main);letter-spacing:.65px;color:#f9ebff}
.hero-showtime span:nth-child(2){color:var(--pink);font-size:17px}
.showtime{padding:63px 0 70px;background:linear-gradient(115deg,#221044 0%,#110d30 62%,#190a34 100%);border-bottom:1px solid #4c275f}
.showtime-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:25px}
.showtime-head .section-label{margin:0 0 10px;color:#ff78c5}
.showtime-head h2{font:900 clamp(49px,5.3vw,75px)/.92 var(--font-display);letter-spacing:-.5px;margin:0}
.showtime-head h2 em{font-style:normal;color:var(--gold)}
.showtime-head>p{font:800 12px/1.5 var(--font-main);text-transform:uppercase;letter-spacing:1.4px;color:#cfc0ed;margin:0 0 5px}
.showtime-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.showtime-card{position:relative;overflow:hidden;min-height:200px;padding:24px 20px 22px;display:flex;flex-direction:column;align-items:flex-start;background:#291848;border:1px solid #6b3b7c}
.showtime-card:nth-child(2){background:#24194d}.showtime-card:nth-child(3){background:#281438}.showtime-card:nth-child(4){background:#1e1d46}
.showtime-card:after{position:absolute;content:"";right:-50px;top:-63px;width:140px;height:140px;border-radius:50%;background:#ff26942f;filter:blur(23px);pointer-events:none}
.showtime-icon{color:var(--pink);font-size:30px;line-height:1;height:42px}
.showtime-card:nth-child(2) .showtime-icon,.showtime-card:nth-child(4) .showtime-icon{color:var(--gold)}
.showtime-label{font:800 11px/1.4 var(--font-main);letter-spacing:1.5px;color:#d6c6e9;margin-bottom:6px}
.showtime-card strong{font:900 clamp(31px,3.15vw,43px)/.99 var(--font-display);letter-spacing:.1px;white-space:nowrap;color:#fff}
.showtime-card strong span{color:var(--gold)}
.showtime-card small{margin-top:auto;padding-top:14px;font:500 12px/1.5 var(--font-main);color:#c5b5d8}
@media(max-width:900px){.showtime-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.showtime-card strong{font-size:clamp(30px,5vw,45px)}}
@media(max-width:560px){.hero-showtime{font-size:11px;gap:8px;margin:15px 0 -11px}.hero-showtime span:nth-child(2){font-size:14px}.showtime{padding:50px 0 53px}.showtime-head{display:block;margin-bottom:21px}.showtime-head h2{font-size:clamp(54px,12vw,68px)}.showtime-head>p{margin-top:12px;font-size:11px}.showtime-grid{gap:9px}.showtime-card{min-height:176px;padding:18px 13px 18px}.showtime-icon{height:33px;font-size:24px}.showtime-label{font-size:9px;letter-spacing:.8px}.showtime-card strong{font-size:clamp(27px,6.8vw,40px);white-space:normal}.showtime-card small{font-size:11px;padding-top:11px}}
@media(max-width:365px){.showtime-card strong{font-size:26px}.hero-showtime{font-size:10px}}


/* v1.4: Approved Save-the-Date poster is the hero's leading visual. */
:root { --cyan: #15f1f1; }
.poster-wrap { max-width: 600px; }
.poster-halo { inset: 5% 3%; background: linear-gradient(35deg,#fb149e88,#126fe58c,#f9ce2d88); }
.poster-frame { padding: 4px; transform: rotate(0.8deg); background: linear-gradient(135deg,#ffe44f,#1de8ff,#fa3aa4,#f8d13e); box-shadow: 0 24px 78px #07031cb8, 0 0 34px #05d8ec20; }
.poster-frame img { aspect-ratio: 1199 / 1312; object-fit: contain; }
.hero { background: radial-gradient(ellipse 39% 64% at 91% 21%,#116db04a,transparent 80%),radial-gradient(ellipse 48% 77% at 8% 67%,#89126169,transparent 78%),linear-gradient(125deg,#100721 3%,#090b37 66%,#160628 100%); }
.poster-wrap::after { content: '✦'; position:absolute; right:-18px; bottom:20px; color:var(--cyan); font-size:25px; text-shadow:0 0 14px #11ecff; pointer-events:none; }
@media (min-width: 821px) {
  .hero-inner { grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr); gap: 45px; padding-top: 55px; padding-bottom: 54px; }
  .poster-wrap { width:100%; justify-self:end; }
}
@media (max-width: 820px) {
  .hero-inner { gap: 30px; padding-top:36px; }
  .poster-wrap { grid-row: 1; width:min(100%,530px); justify-self:center; }
  .hero-copy { grid-row: 2; }
  .poster-wrap::after { right:-10px; }
}
@media (max-width: 560px) {
  .hero-inner { padding-top: 18px; gap: 35px; }
  .poster-wrap { width: 100%; }
  .poster-frame { padding: 3px; transform: none; }
  .poster-wrap::after { display: none; }
  .hero-copy .kicker { margin-top: 20px; }
}

/* Extra-narrow phones: keep long concert headlines within the viewport. */
@media (max-width: 380px) {
  .invite-grid, .share-inner { grid-template-columns: minmax(0, 1fr); }
  .invite-copy, .share-inner > div, .reunion-copy { min-width: 0; }
  .reunion-copy h2 { font-size: 43px; }
  .share-section h2 { font-size: 47px; }
  .finale h2 { font-size: 49px; }
  .invite h2 { font-size: 59px; }
  .ticket-date { padding: 15px 17px; }
  .ticket-date strong { font-size: 47px; }
  .share-panel { min-width: 0; }
}
@media (max-width: 380px) {
  .reunion-grid { grid-template-columns: minmax(0,1fr); }
  .reunion-copy h2 { overflow-wrap: anywhere; }
}
@media (max-width: 380px) {
  .reunion-copy h2 em { display:block; max-width:100%; white-space:normal; }
}


/* v1.8 — On phones and tablets, lead with the presenter before the approved poster. */
.hero-mobile-intro { display:none; }
@media (max-width:820px) {
  .hero-inner { row-gap:26px; }
  .hero-mobile-intro { grid-row:1; display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
  .hero-mobile-intro .kicker { margin:0; color:#ebe0ff; font-size:13px; letter-spacing:3.1px; }
  .hero-mobile-intro .eyebrow { margin:0; font-size:9px; justify-content:center; }
  .hero-copy > .eyebrow, .hero-copy > .kicker { display:none; }
  .poster-wrap { grid-row:2; }
  .hero-copy { grid-row:3; }
}
@media (max-width:560px) {
  .hero-inner { padding-top:28px; row-gap:25px; }
  .hero-mobile-intro { gap:12px; }
  .hero-mobile-intro .kicker { font-size:11px; letter-spacing:2.5px; }
  .hero-mobile-intro .eyebrow { padding:9px 12px; font-size:9px; letter-spacing:.7px; }
  .hero-copy h1 { margin-top:2px; }
}

/* Prevent the long feature headline from overhanging on 320–380px screens. */
@media (max-width:380px) { .lineup h2 em { display:block; font-size:.87em; } }

@media (max-width:380px) { .record-spark.spark-b { right:-8px; } }

/* Keep decorative stage lights and vinyl sparkles from causing sideways mobile scroll. */
html, body { overflow-x:clip; }


/* v1.9: Cleaner mobile hero. Presenter + headline introduce the poster; remove redundant eyebrow. */
@media (min-width:821px) {
  .hero-copy > .kicker { margin-top: 0; }
}
@media (max-width:820px) {
  .hero-mobile-intro { grid-row: 1; gap: 0; }
  .hero-copy { display:contents; }
  .hero-copy > .kicker { display:none; }
  .hero-copy > h1 { grid-row:2; margin:10px 0 19px; max-width: 680px; justify-self:stretch; }
  .hero-inner > .poster-wrap { grid-row:3; margin-bottom: 4px; }
  .hero-copy > .hero-subhead { grid-row:4; margin:19px 0 17px; max-width:640px; }
  .hero-copy > .date-stamp { grid-row:5; }
  .hero-copy > .hero-showtime { grid-row:6; margin:15px 0 0; }
  .hero-copy > .hero-actions { grid-row:7; margin-top:22px; }
  .hero-inner { row-gap:0; }
}
@media (max-width:560px) {
  .hero-inner { padding-top:29px; }
  .hero-mobile-intro .kicker { font-size:11px; letter-spacing:2.3px; }
  .hero-copy > h1 { font-size:clamp(55px,13.7vw,77px); line-height:.87; letter-spacing:-.6px; margin:14px 0 23px; }
  .hero-copy > .hero-subhead { font-size:15px; margin:22px 0 18px; }
  .hero-copy > .hero-showtime { margin:15px 0 0; }
  .hero-copy > .hero-actions { margin-top:23px; }
}
