*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:#07040b;color:#fff;font-family:Inter,sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}.nav{height:78px;padding:0 max(22px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(7,4,11,.88);backdrop-filter:blur(18px);position:fixed;top:0;width:100%;z-index:20;border-bottom:1px solid rgba(255,255,255,.1)}.brand{display:flex;align-items:center;gap:10px;font-family:Anton,sans-serif;letter-spacing:1px}.brand img{width:44px;height:44px;object-fit:cover;border-radius:12px;box-shadow:0 0 18px rgba(192,60,255,.35)}.nav nav{display:flex;gap:28px}.nav nav a{font-size:.86rem;font-weight:800;color:#d2cad9}.hero{min-height:92vh;position:relative;display:flex;align-items:flex-end;padding:150px max(24px,calc((100vw - 1180px)/2)) 74px;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,2,8,.94) 0%,rgba(5,2,8,.66) 48%,rgba(5,2,8,.22) 100%),linear-gradient(0deg,#07040b 0%,transparent 32%),url('images/hero.jpg') center/cover}.hero-content{position:relative;max-width:820px}.kicker,.eyebrow{font-size:.75rem;letter-spacing:2.4px;font-weight:900;color:#d66cff}.hero h1,.section h2{font-family:Anton,sans-serif;line-height:.92}.hero h1{font-size:clamp(4rem,9vw,8rem);margin:20px 0}.hero h1 em{font-style:normal;color:#d45cff;text-shadow:0 0 38px rgba(202,67,255,.36)}.hero p{font-size:1.08rem;color:#ded6e4;line-height:1.7;max-width:650px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;justify-content:center;padding:16px 22px;border-radius:14px;font-weight:900;border:1px solid rgba(255,255,255,.16)}.primary{background:linear-gradient(135deg,#ba2cff,#6410a2);box-shadow:0 12px 34px rgba(129,18,192,.34)}.glass{background:rgba(255,255,255,.09);backdrop-filter:blur(14px)}.proof{display:flex;gap:12px;flex-wrap:wrap;margin-top:42px;color:#bdb3c6;font-size:.73rem;letter-spacing:1.4px}.marquee{overflow:hidden;background:#b42cff;padding:13px 0;font-family:Anton,sans-serif;letter-spacing:1.5px;white-space:nowrap}.marquee div{width:max-content;animation:scroll 22s linear infinite}@keyframes scroll{to{transform:translateX(-50%)}}.section{width:min(1180px,calc(100% - 38px));margin:auto;padding:110px 0}.ticket-section,.team{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:54px}.ticket-photo,.team-image{border-radius:28px;overflow:hidden;min-height:520px;border:1px solid rgba(255,255,255,.14)}.ticket-photo img,.team-image img{width:100%;height:100%;min-height:520px;object-fit:cover}.ticket-copy h2,.team-copy h2{font-size:clamp(3.6rem,7vw,6.4rem);margin:16px 0}.ticket-copy p,.team-copy p,.heading-row p,.contact p{color:#bfb5c7;line-height:1.75}.full{width:100%;margin-top:28px}.mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.mini-actions a{padding:14px;text-align:center;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(255,255,255,.05);font-weight:800}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.heading-row h2{font-size:clamp(3.4rem,7vw,6.7rem);margin-top:14px}.heading-row p{max-width:410px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:14px}.photo{border:0;border-radius:18px;overflow:hidden;background:#111;cursor:pointer}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}.photo:hover img{transform:scale(1.045);filter:brightness(1.08)}.photo.wide{grid-column:span 2}.photo.tall{grid-row:span 2}.impact{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);padding:52px 0}.impact div{text-align:center}.impact strong{display:block;font-family:Anton,sans-serif;font-size:3rem;color:#d45cff}.impact span{font-size:.82rem;color:#bfb4c7}.team-image{min-height:470px}.team-image img{min-height:470px}.team-copy .btn{margin-top:26px}.moments{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.moment{height:430px;position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.12)}.moment:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,2,8,.92),transparent 58%)}.moment img{width:100%;height:100%;object-fit:cover}.moment div{position:absolute;z-index:2;left:24px;bottom:24px}.moment span{display:block;color:#d66cff;font-size:.72rem;letter-spacing:2px;font-weight:900}.moment strong{display:block;font-size:1.18rem;margin-top:7px}.contact{text-align:center}.contact>img{width:112px;height:112px;object-fit:cover;border-radius:28px;margin-bottom:26px;box-shadow:0 0 42px rgba(210,71,255,.28)}.contact h2{font-size:clamp(3.7rem,8vw,7rem);margin:16px 0}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:38px}.contact-grid a{text-align:left;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.05)}.contact-grid span,.contact-grid strong{display:block}.contact-grid span{font-size:.72rem;color:#a99daf;text-transform:uppercase;letter-spacing:1.3px}.contact-grid strong{margin-top:7px}footer{width:min(1180px,calc(100% - 38px));margin:auto;padding:38px 0 55px;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;align-items:center;color:#a99faf;font-size:.8rem}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:50;display:none;align-items:center;justify-content:center;padding:24px}.lightbox.open{display:flex}.lightbox img{max-width:95vw;max-height:90vh;border-radius:16px}.lightbox button{position:absolute;top:20px;right:25px;border:0;background:none;color:#fff;font-size:3rem;cursor:pointer}@media(max-width:850px){.nav nav{display:none}.hero{min-height:88vh;background-position:center}.ticket-section,.team{grid-template-columns:1fr}.ticket-photo,.team-image,.ticket-photo img,.team-image img{min-height:380px}.heading-row{display:block}.heading-row p{margin-top:18px}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:210px}.impact{grid-template-columns:repeat(2,1fr);gap:34px}.moments{grid-template-columns:1fr}.moment{height:390px}}@media(max-width:520px){.nav{height:68px}.brand img{width:38px;height:38px}.hero{padding-top:125px;padding-bottom:48px}.hero h1{font-size:3.9rem}.hero-bg{background:linear-gradient(0deg,#07040b 0%,rgba(7,4,11,.45) 58%,rgba(7,4,11,.35)),url('images/hero.jpg') center/cover}.actions,.actions .btn{width:100%}.proof{font-size:.65rem}.section{padding:78px 0}.ticket-copy h2,.team-copy h2{font-size:3.8rem}.gallery{grid-auto-rows:175px;gap:9px}.photo.wide{grid-column:span 2}.photo.tall{grid-row:span 2}.contact-grid{grid-template-columns:1fr}.mini-actions{grid-template-columns:1fr}footer{flex-direction:column;gap:18px;text-align:center}}
.partner-section{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:20px;
}
.partner-card,.partner-side{
  border:1px solid rgba(255,255,255,.14);
  border-radius:26px;
  background:rgba(255,255,255,.05);
  padding:42px;
}
.partner-card{
  background:
    radial-gradient(circle at top right,rgba(194,57,255,.24),transparent 35%),
    rgba(255,255,255,.05);
}
.partner-badge,.partner-side span{
  color:#d66cff;
  font-size:.72rem;
  letter-spacing:2px;
  font-weight:900;
}
.partner-card h2{
  font-size:clamp(3.4rem,7vw,6rem);
  margin:16px 0;
}
.partner-card p,.partner-side p{
  color:#bfb5c7;
  line-height:1.75;
}
.partner-card .btn{
  margin-top:26px;
}
.partner-side{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.partner-side strong{
  font-family:Anton,sans-serif;
  font-size:clamp(2.2rem,4vw,3.8rem);
  line-height:1;
  margin:14px 0;
}
@media(max-width:850px){
  .partner-section{grid-template-columns:1fr}
}

.sms-section{
  border-top:1px solid rgba(255,255,255,.14);
}
.sms-heading{
  max-width:850px;
  margin-bottom:42px;
}
.sms-heading h2{
  font-size:clamp(3.8rem,8vw,7rem);
  margin:16px 0;
}
.sms-heading p{
  color:#bfb5c7;
  line-height:1.75;
  max-width:720px;
}
.sms-heading .btn{
  margin-top:26px;
}
.sms-steps{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}
.sms-step{
  position:relative;
  padding:18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  background:rgba(255,255,255,.05);
}
.sms-step img{
  width:100%;
  border-radius:17px;
  display:block;
  border:1px solid rgba(255,255,255,.12);
}
.sms-step h3{
  font-size:1.3rem;
  margin:18px 2px 8px;
}
.sms-step p{
  color:#bfb5c7;
  line-height:1.65;
  margin:0 2px 4px;
}
.step-number{
  position:absolute;
  top:34px;
  left:34px;
  z-index:2;
  padding:8px 11px;
  border-radius:999px;
  background:#b42cff;
  font-size:.68rem;
  letter-spacing:1px;
  font-weight:900;
  box-shadow:0 8px 22px rgba(130,24,190,.35);
}
.sms-note{
  margin-top:18px;
  padding:20px 22px;
  border:1px solid rgba(214,92,255,.35);
  border-radius:18px;
  background:rgba(180,44,255,.09);
  display:flex;
  justify-content:space-between;
  gap:20px;
}
.sms-note strong{
  color:#e1a4ff;
}
.sms-note span{
  color:#c4bacb;
}
@media(max-width:850px){
  .sms-steps{grid-template-columns:1fr}
  .sms-note{display:block}
  .sms-note span{display:block;margin-top:8px}
}

/* Version 6 conversion-focused additions */
.next-event-heading{margin-bottom:36px}
.next-event-heading h2{font-size:clamp(3.8rem,8vw,7rem);margin:14px 0}
.next-event-heading p{color:#c1b6c9}
.next-event-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:38px;align-items:center}
.next-flyer{border-radius:26px;overflow:hidden;border:1px solid rgba(255,255,255,.16);box-shadow:0 22px 65px rgba(92,13,139,.3)}
.next-flyer img{display:block;width:100%;height:auto}
.next-details{padding:24px}
.event-label-small{color:#d66cff;font-size:.72rem;letter-spacing:2px;font-weight:900}
.next-details h3{font-family:Anton,sans-serif;font-size:clamp(2.7rem,5vw,4.8rem);line-height:.98;margin:14px 0}
.next-details>p{color:#c0b6c7;line-height:1.75}
.event-detail-list{margin:28px 0;display:grid;gap:12px}
.event-detail-list div{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:20px}
.event-detail-list span{color:#9f94a8}
.event-detail-list strong{text-align:right}
.all-events-link{display:block;text-align:center;margin-top:15px;color:#dca2f5;font-weight:800}
.price-warning{margin-top:22px;padding:15px 17px;border-radius:14px;background:rgba(214,92,255,.1);border:1px solid rgba(214,92,255,.28);font-weight:800;color:#e7c1f7}

.vip-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:32px 0 40px}
.benefit{padding:22px 18px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13)}
.benefit span{display:block;font-size:1.7rem;margin-bottom:12px}
.benefit strong,.benefit small{display:block}
.benefit small{color:#aea3b5;line-height:1.5;margin-top:7px}

.recap-copy{margin-bottom:30px}
.recap-copy h2{font-size:clamp(3.8rem,8vw,7rem);margin:14px 0}
.recap-copy p{color:#bfb5c7}
.video-frame{position:relative;padding-top:56.25%;border-radius:25px;overflow:hidden;border:1px solid rgba(255,255,255,.15);background:#000;box-shadow:0 24px 60px rgba(0,0,0,.38)}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-fallback{display:inline-block;margin-top:15px;color:#dda3f7;font-weight:800}

.testimonial-heading h2,.work-heading h2{font-size:clamp(3.6rem,7vw,6.5rem);margin:14px 0 34px}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.testimonial-grid blockquote{padding:30px;border-radius:22px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14)}
.stars{color:#df8cff;letter-spacing:4px}
.testimonial-grid p{font-size:1.25rem;line-height:1.55;margin:18px 0}
.testimonial-grid cite{font-size:.78rem;color:#9f94a8;font-style:normal}

.work-heading{max-width:850px}
.work-heading>p{color:#bfb5c7;line-height:1.7}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px}
.work-grid a{padding:28px 22px;border-radius:21px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);transition:.25s ease}
.work-grid a:hover{transform:translateY(-4px);background:rgba(185,44,255,.11)}
.work-grid span,.work-grid strong,.work-grid small{display:block}
.work-grid span{font-size:2rem}
.work-grid strong{font-size:1.18rem;margin:15px 0 8px}
.work-grid small{color:#aaa0b1;line-height:1.5}

/* Make the ZK section intentionally smaller */
.partner-section{padding-top:55px!important;padding-bottom:55px!important;grid-template-columns:1fr!important}
.partner-side{display:none!important}
.partner-card{padding:30px!important;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:28px}
.partner-card h2{font-size:clamp(2.5rem,5vw,4rem)!important;margin:8px 0!important}
.partner-card p{max-width:720px}
.partner-card .btn{margin-top:0!important;white-space:nowrap}

/* Floating conversion buttons */
.floating-actions{position:fixed;right:18px;bottom:18px;z-index:45;display:flex;flex-direction:column;gap:9px}
.floating-actions a{padding:13px 17px;border-radius:999px;font-size:.82rem;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.16)}
.floating-ticket{background:linear-gradient(135deg,#ba2cff,#6510a2)}
.floating-vip{background:#fff;color:#15081d}

@media(max-width:900px){
  .next-event-grid{grid-template-columns:1fr}
  .vip-benefits,.work-grid{grid-template-columns:repeat(2,1fr)}
  .testimonial-grid{grid-template-columns:1fr}
  .partner-card{display:block}
  .partner-card .btn{margin-top:22px!important}
}
@media(max-width:520px){
  .next-details{padding:8px 0}
  .vip-benefits,.work-grid{grid-template-columns:1fr}
  .event-detail-list div{display:block}
  .event-detail-list strong{display:block;text-align:left;margin-top:5px}
  .floating-actions{right:10px;bottom:10px;left:10px;flex-direction:row}
  .floating-actions a{flex:1;text-align:center;padding:12px 8px;font-size:.75rem}
  body{padding-bottom:65px}
}

.next-flyer img{
  width:100%;
  height:auto;
  object-fit:contain;
  background:#09040d;
}
.hero .actions{
  margin-top:28px;
}
.hero .actions .glass{
  min-width:240px;
}

/* Version 8: official flyer appears only in Next Event */
.next-event-section .next-flyer img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.gallery img[src*="zess"],
.gallery button[data-src*="zess"]{
  display:none !important;
}

/* Version 9 gallery fix: no flyer, no blank grid gaps */
.gallery{
  display:block !important;
  column-count:3;
  column-gap:14px;
}
.gallery .photo{
  display:block !important;
  width:100%;
  height:auto !important;
  margin:0 0 14px;
  break-inside:avoid;
  border-radius:18px;
  overflow:hidden;
}
.gallery .photo img{
  display:block;
  width:100%;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain;
}
.gallery .photo.wide,
.gallery .photo.tall{
  grid-column:auto !important;
  grid-row:auto !important;
}
.gallery button[data-src*="zess"],
.gallery button[data-src*="flyer"],
.gallery img[src*="zess"],
.gallery img[src*="flyer"],
.gallery img[alt*="Zess"],
.gallery img[alt*="flyer"]{
  display:none !important;
}
@media(max-width:850px){
  .gallery{column-count:2}
}
@media(max-width:520px){
  .gallery{column-count:2;column-gap:10px}
  .gallery .photo{margin-bottom:10px}
}

/* Version 10 fixes */

/* Recap gallery must never show any event flyer */
.gallery button[data-src*="zess"],
.gallery button[data-src*="flyer"],
.gallery img[src*="zess"],
.gallery img[src*="flyer"],
.gallery img[alt*="Zess"],
.gallery img[alt*="zess"],
.gallery img[alt*="flyer"]{
  display:none !important;
}

/* Make signup instructions the visual priority */
.sms-steps{
  margin-top:28px;
  margin-bottom:18px;
}
.sms-step{
  padding:14px;
}
.sms-step h3{
  font-size:1.15rem;
  margin-top:14px;
}
.sms-step p{
  font-size:.88rem;
}

/* Benefits appear after the directions and take less space */
.benefits-intro{
  margin-top:40px;
  margin-bottom:14px;
}
.benefits-intro p{
  color:#a99faf;
  font-size:.88rem;
  margin-top:7px;
}
.vip-benefits{
  grid-template-columns:repeat(4,1fr) !important;
  gap:10px !important;
  margin:0 0 26px !important;
}
.benefit{
  padding:15px 13px !important;
  border-radius:15px !important;
}
.benefit span{
  font-size:1.25rem !important;
  margin-bottom:8px !important;
}
.benefit strong{
  font-size:.9rem !important;
  line-height:1.25;
}
.benefit small{
  font-size:.72rem !important;
  line-height:1.35 !important;
  margin-top:5px !important;
}

@media(max-width:900px){
  .vip-benefits{
    grid-template-columns:repeat(2,1fr) !important;
  }
}
@media(max-width:520px){
  .vip-benefits{
    grid-template-columns:repeat(2,1fr) !important;
    gap:8px !important;
  }
  .benefit{
    padding:13px 11px !important;
  }
  .benefit span{
    font-size:1.1rem !important;
  }
  .benefit strong{
    font-size:.82rem !important;
  }
  .benefit small{
    font-size:.66rem !important;
  }
}

/* Version 11: completely rebuilt crowd-only gallery */
.clean-gallery{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  column-count:unset !important;
}
.clean-gallery .photo{
  display:block !important;
  width:100% !important;
  height:320px !important;
  margin:0 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  grid-column:auto !important;
  grid-row:auto !important;
}
.clean-gallery .photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media(max-width:850px){
  .clean-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .clean-gallery .photo{
    height:245px !important;
  }
}
@media(max-width:520px){
  .clean-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }
  .clean-gallery .photo{
    height:230px !important;
  }
}

/* Version 12 absolute flyer block inside recap gallery */
#recap-gallery [data-src*="zess" i],
#recap-gallery [data-src*="flyer" i],
#recap-gallery [data-src*="o-ween" i],
#recap-gallery img[src*="zess" i],
#recap-gallery img[src*="flyer" i],
#recap-gallery img[src*="o-ween" i],
#recap-gallery img[alt*="zess" i],
#recap-gallery img[alt*="flyer" i]{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

/* Final gallery: approved photos only */
.final-gallery{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  column-count:unset !important;
}
.final-gallery .photo{
  display:block !important;
  width:100% !important;
  height:330px !important;
  margin:0 !important;
  border-radius:18px !important;
  overflow:hidden !important;
}
.final-gallery .photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media(max-width:850px){
  .final-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .final-gallery .photo{
    height:245px !important;
  }
}
@media(max-width:520px){
  .final-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }
  .final-gallery .photo{
    height:230px !important;
  }
}
