@keyframes drop{0%{transform:translateY(-40px) rotate(-6deg);opacity:0}to{transform:rotate(-1.2deg);opacity:1}}@keyframes pulse{50%{transform:scale(1.035)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sweep{0%{transform:rotate(-9deg)}to{transform:rotate(9deg)}}@keyframes twinkle{0%,to{transform:scale(.35);opacity:.4}50%{transform:scale(1.1);opacity:1}}@keyframes glint{0%,to{fill-opacity:1}45%,55%{fill:#fff}}@keyframes flicker{0%{transform:scale(1,1) skewX(0)}40%{transform:scale(.96,1.05) skewX(2deg)}to{transform:scale(1.03,.95) skewX(-2deg)}}@keyframes sway{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}@keyframes spark{0%{stroke-dashoffset:6}to{stroke-dashoffset:-120}}@keyframes sparkdot{0%,60%,to{opacity:0}75%{opacity:1}}@keyframes wobble{0%,to{transform:rotate(-8deg) scale(1)}50%{transform:rotate(6deg) scale(1.06)}}@keyframes tick{to{transform:translateX(-50%)}}@keyframes shake{20%{transform:translate(-3px,2px)}40%{transform:translate(3px,-2px)}60%{transform:translate(-2px,1px)}80%{transform:translate(1px,0)}}@keyframes stamp{0%{opacity:0;transform:scale(2.6) rotate(-16deg)}55%{opacity:.95;transform:scale(.92) rotate(-6deg)}to{opacity:.92;transform:scale(1) rotate(-7deg)}}@keyframes eq{0%{height:3px}to{height:14px}}@keyframes ember{0%,to{opacity:1}45%{opacity:.82}50%{opacity:.6}55%{opacity:.9}}@keyframes rise{0%{transform:translate(0,0);opacity:0}10%{opacity:1}to{transform:translate(var(--dx,20px),-105vh);opacity:0}}:root{--teal:#0E5A60;--teal-deep:#0A3B40;--teal-dark:#072A2E;--teal-lite:#1D7C80;--saffron:#F4A51C;--marigold:#F39A1E;--coral:#F2665A;--terracotta:#C8462F;--cream:#F7EBD3;--paper:#FBF3E2;--yellow:#FFD45C;--ink:#1B1B1B;--stamp:#C8322B;--display:"Shrikhand",Georgia,serif;--deva:"Yatra One","Shrikhand",serif;--body:"Space Grotesk",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--type:"Special Elite","Courier New",monospace;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--body);color:var(--cream);min-height:100vh;overflow-x:hidden;background:radial-gradient(120% 60%at 50% 0%,rgba(244,165,28,.18),transparent 60%),radial-gradient(90% 50%at 50% 100%,rgba(242,102,90,.16),transparent 60%),repeating-radial-gradient(circle at 50% 30%,rgba(255,255,255,.025)0 2px,transparent 2px 22px),var(--teal-dark);background-attachment:fixed}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.13;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit}.wrap{max-width:460px;margin:0 auto;padding:0 16px}.cd div::after,.sr,.yt iframe{position:absolute}.sr{width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.hero{padding:calc(22px + var(--safe-t))0 8px}.poster,.poster-band{border:3px solid var(--ink)}.poster{position:relative;background:var(--paper);padding:9px;box-shadow:7px 7px 0 var(--coral),7px 7px 0 3px var(--ink),0 30px 60px rgba(0,0,0,.55);transform:rotate(-1.2deg);animation:drop .9s cubic-bezier(.2,1.3,.4,1) both}.poster-band{height:38px;margin-bottom:8px;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,var(--teal)0 7px,transparent 7px 14px),repeating-linear-gradient(-45deg,var(--teal)0 7px,var(--saffron) 7px 14px)}.ribbon{background:var(--cream);border:2.5px solid var(--ink);padding:3px 14px;font-family:var(--type);font-size:14px;color:var(--ink);white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis;box-shadow:3px 3px 0 var(--ink)}.poster-art{position:relative;border:3px solid var(--ink);overflow:hidden;line-height:0;background:var(--teal)}.art{display:block;width:100%;height:auto}.t-deva,.t-latin{position:absolute;left:0;right:0;text-align:center;line-height:1;pointer-events:none;paint-order:stroke fill}.t-latin{top:8.5%;font-family:var(--display);font-size:clamp(48px,16vw,74px);color:var(--cream);transform:rotate(-5deg);-webkit-text-stroke:2px var(--ink);text-shadow:3px 3px 0 var(--coral),6px 6px 0 var(--ink)}.t-deva{top:47%;font-family:var(--deva);font-size:clamp(64px,23vw,106px);color:var(--yellow);-webkit-text-stroke:2.5px var(--teal-dark);text-shadow:4px 4px 0 var(--coral),8px 8px 0 var(--teal-dark);animation:pulse 2.8s ease-in-out infinite}.poster-info{background:var(--paper);color:var(--teal-dark);text-align:center;padding-top:8px}.tagline{background:var(--teal-deep);color:var(--cream);border:3px solid var(--ink);padding:9px 12px;font-size:15px;line-height:1.35;font-weight:500}.tagline em{color:var(--yellow);font-style:normal}.info-date{font-weight:700;font-size:17px;letter-spacing:.06em;text-transform:uppercase;margin:12px 0 2px}.info-date span{color:var(--coral)}.info-dj{font-family:var(--display);font-size:25px;color:var(--terracotta);line-height:1.2}.info-dress{font-family:var(--type);font-size:15px;color:var(--ink);padding:2px 0 8px}.eyebrow,.h2 small{font-weight:700;font-size:11px;text-transform:uppercase}.eyebrow{letter-spacing:.22em;color:var(--teal);margin-top:2px}.sunburst{animation:spin 90s linear infinite}.beams{animation:sweep 9s ease-in-out infinite alternate}.twinkle{animation:twinkle 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.glint{animation:glint 3s ease-in-out infinite}.flame{animation:flicker 1.1s ease-in-out infinite alternate}.sway{animation:sway 3.4s ease-in-out infinite alternate}.spark{stroke-dasharray:6 120;animation:spark 1.3s linear infinite}.spark-dot{animation:sparkdot 1.3s linear infinite}.badge{animation:wobble 2.2s ease-in-out infinite}.ticker{margin:30px -16px 6px;background:var(--saffron);color:var(--teal-dark);border-block:3px solid var(--ink);overflow:hidden;transform:rotate(-2deg)}.ticker-track{display:flex;width:max-content;animation:tick 22s linear infinite}.ticker span{font-family:var(--deva);font-size:22px;padding:8px 14px 4px;white-space:nowrap}.stub-text b,.ticker b{font-weight:400;color:var(--terracotta)}.h2,.ticker b{font-family:var(--display)}section.block{padding:34px 0 6px}.h2{font-weight:400;font-size:34px;line-height:1.05;color:var(--cream);text-shadow:3px 3px 0 var(--coral),5px 5px 0 rgba(0,0,0,.35);margin-bottom:16px}.h2 small{display:block;font-family:var(--body);letter-spacing:.24em;color:var(--saffron);text-shadow:none;margin-bottom:6px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.9,.3,1)}.reveal.in{opacity:1;transform:none}.ticket{position:relative;display:grid;grid-template-columns:1fr 64px;background:var(--paper);color:var(--teal-dark);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--saffron),6px 6px 0 3px var(--ink);background-image:radial-gradient(rgba(0,0,0,.05) 1px,transparent 1.2px);background-size:6px 6px}.ticket.shake{animation:shake .35s ease}.ticket-main{padding:20px 16px 20px 20px;min-width:0}.ticket-stub{border-left:3px dashed var(--ink);display:flex;align-items:center;justify-content:center;background:var(--saffron);position:relative}.ticket-stub::after,.ticket-stub::before{content:"";position:absolute;left:-13px;width:22px;height:22px;border-radius:50%;background:var(--teal-dark);border:3px solid var(--ink)}.ticket-stub::before{top:-14px}.ticket-stub::after{bottom:-14px}.stub-text{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--type);font-size:14px;letter-spacing:.08em;white-space:nowrap;color:var(--ink)}.stub-text b{font-size:20px;margin-block:6px}.kicker{font-weight:700;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--coral)}.greet,.stub-text b{font-family:var(--display)}.greet{font-size:26px;margin:6px 0 14px;line-height:1.1;overflow-wrap:anywhere}.stamp-wrap{display:flex;justify-content:center;padding:6px 0 14px}.cd span,.row small,.stamp{font-weight:700;text-transform:uppercase}.stamp{display:inline-flex;flex-direction:column;align-items:center;max-width:100%;color:var(--stamp);border:5px solid var(--stamp);border-radius:12px;padding:8px 16px 6px;outline:2px solid var(--stamp);outline-offset:3px;transform:rotate(-7deg);filter:url(#grunge);opacity:0;line-height:1}.stamp.go{animation:stamp .55s cubic-bezier(.3,1.6,.5,1) forwards}.stamp-bot,.stamp-top{font-size:11px;letter-spacing:.3em}.jukebox .meta a,.stamp-name{font-weight:700;white-space:nowrap}.stamp-name{font-size:56px;letter-spacing:.01em;margin:5px 0 4px}.ticket p.body{font-size:15.5px;line-height:1.5;color:#21403f}.cd{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.cd div,.row .ic{border:3px solid var(--ink)}.cd div{background:var(--teal-deep);box-shadow:4px 4px 0 var(--ink);text-align:center;padding:12px 2px 9px;position:relative;overflow:hidden}.cd div::after{content:"";left:0;right:0;top:50%;height:2px;background:rgba(0,0,0,.35)}.cd b,.cd-live{font-family:var(--display);color:var(--yellow)}.cd b{display:block;font-weight:400;font-size:clamp(28px,9vw,38px);line-height:1}.cd span,.row small{font-size:10.5px}.cd span{letter-spacing:.2em;color:var(--cream);opacity:.8}.cd-live{font-size:26px;text-align:center;padding:14px;border:3px dashed var(--saffron)}.row,.rows{display:grid;gap:10px}.row{grid-template-columns:46px 1fr;gap:12px;align-items:center;background:rgba(255,255,255,.04);border:2px solid rgba(247,235,211,.18);padding:12px;border-radius:4px}.row .ic{width:46px;height:46px;border-radius:50%;background:var(--saffron);display:grid;place-items:center;color:var(--teal-dark)}.row .ic svg{width:22px;height:22px}.row small{display:block;letter-spacing:.22em;color:var(--saffron);margin-bottom:3px}.row .v{font-size:16.5px;line-height:1.35;font-weight:500}.row .v i{font-style:normal;opacity:.75;display:block}.btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.btn,.row .v i{font-size:14.5px}.btn{appearance:none;border:3px solid var(--ink);background:var(--cream);color:var(--teal-dark);font-weight:700;padding:11px 14px;box-shadow:4px 4px 0 var(--ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:7px;transition:transform .1s,box-shadow .1s}.btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}.btn.saffron{background:var(--saffron)}.btn.coral,.dj{color:var(--ink)}.btn.coral{background:var(--coral)}.btn svg{width:16px;height:16px}.dj{position:relative;overflow:hidden;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:22px 18px 20px;background:radial-gradient(circle at 85% 30%,rgba(255,212,92,.45),transparent 45%),repeating-radial-gradient(circle at 85% 30%,var(--coral)0 9px,#e2564b 9px 18px)}.dj .on,.form label{font-weight:700;text-transform:uppercase}.dj .on{font-size:11px;letter-spacing:.24em;background:var(--ink);color:var(--yellow);display:inline-block;padding:4px 8px}.dj .tag,.dj h3{position:relative;z-index:1}.dj h3{font-family:var(--display);font-weight:400;font-size:clamp(50px,15vw,66px);line-height:1;color:var(--yellow);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--ink);margin:12px 0 6px}.dj .tag{font-weight:700;font-size:14px;max-width:70%}.vinyl{position:absolute;right:-40px;bottom:-46px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,var(--saffron)0 18%,var(--ink) 18.5% 20%,#222 20.5% 100%),#111;box-shadow:inset 0 0 0 3px #000;animation:spin 3.5s linear infinite}.vinyl::after,.vinyl::before{content:"";position:absolute;border-radius:50%}.vinyl::before{inset:8%;background:repeating-radial-gradient(circle,transparent 0 3px,rgba(255,255,255,.06) 3px 4px)}.vinyl::after{left:50%;top:50%;width:8px;height:8px;margin:-4px;background:var(--ink)}.lineup-intro{margin:16px 2px 0;font-size:15.5px;line-height:1.5;opacity:.9}.jukebox,.tape{margin-top:18px;border:3px solid var(--ink)}.tape{background:var(--cream);color:var(--ink);box-shadow:5px 5px 0 var(--saffron),5px 5px 0 3px var(--ink);padding:14px 16px}.jukebox .meta,.tape h4{display:flex;justify-content:space-between}.tape h4,.tape ol{font-family:var(--type)}.tape h4{font-weight:400;font-size:16px;border-bottom:2px dashed var(--ink);padding-bottom:7px;margin-bottom:6px}.tape ol{list-style:none;counter-reset:t;font-size:14.5px}.tape li{counter-increment:t;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.08);display:grid;grid-template-columns:30px 1fr}.tape li::before{content:counter(t,decimal-leading-zero);color:var(--terracotta)}.jukebox{background:var(--teal-deep);box-shadow:5px 5px 0 var(--ink)}.jukebox h4{font-family:var(--display);font-weight:400;font-size:20px;color:var(--yellow);padding:10px 14px 6px}.yt{position:relative;aspect-ratio:16/9;background:#000;border-block:3px solid var(--ink)}.yt iframe{inset:0;width:100%;height:100%;border:0}.jukebox .meta{padding:10px 14px 12px;font-size:13.5px;gap:10px;align-items:center}.jukebox .meta a{color:var(--yellow)}.rsvp-card{background:var(--paper);color:var(--teal-dark);border:3px solid var(--ink);box-shadow:7px 7px 0 var(--coral),7px 7px 0 3px var(--ink);padding:22px 18px}.rsvp-card .h2{color:var(--teal-dark);text-shadow:3px 3px 0 var(--saffron);margin-bottom:6px}.rsvp-sub{font-size:15px;margin-bottom:18px;color:#2a4a49}.choice{display:grid;grid-template-columns:1.25fr 1fr;gap:10px}.choice .btn{justify-content:center;font-size:17px;padding:15px 10px}.btn.yes,.form h3{font-family:var(--display);font-weight:400;font-size:21px}.btn.yes{background:var(--saffron)}.btn.no{background:0 0}.btn[disabled]{opacity:.6;pointer-events:none}.form{display:grid;gap:12px;margin-top:18px;overflow:hidden}.form[hidden]{display:none}.form h3{color:var(--terracotta)}.form label{display:grid;gap:5px;font-size:12px;letter-spacing:.12em}.form input,.form select,.form textarea{font-size:16px;font-weight:500;letter-spacing:0;text-transform:none;border:3px solid var(--ink);background:#fff;padding:11px 12px;border-radius:0;width:100%;color:var(--ink)}.form textarea{min-height:76px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid var(--saffron);outline-offset:1px}.form .err{color:var(--stamp);font-weight:700;font-size:14px;min-height:1em}.form .btn{justify-content:center;font-size:17px;padding:14px}.wa{background:#25d366!important}.done,footer{text-align:center}.done{padding:6px 0 2px}.done h3{font-family:var(--display);font-weight:400;font-size:30px;color:var(--terracotta);line-height:1.1;overflow-wrap:anywhere}.done p{margin:10px 0 14px;font-size:15.5px}.fab,.linkish{cursor:pointer;font-weight:700;font-size:14px}.linkish{background:0 0;border:0;text-decoration:underline;color:var(--teal);margin-top:10px}footer{padding:44px 0 calc(110px + var(--safe-b));font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.65}footer .diya{font-size:22px;display:block;margin-bottom:6px}.fab{position:fixed;right:14px;bottom:calc(14px + var(--safe-b));z-index:40;display:flex;align-items:center;gap:8px;background:var(--ink);color:var(--yellow);border:3px solid var(--yellow);border-radius:40px;padding:6px 14px 6px 6px;box-shadow:0 8px 24px rgba(0,0,0,.45)}.fab .rec{width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,var(--coral)0 22%,#000 23% 26%,#1d1d1d 27%);position:relative;box-shadow:inset 0 0 0 2px #000}.fab .rec::before{content:"";position:absolute;inset:5px;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 2px,rgba(255,255,255,.12) 2px 3px)}.fab.playing .rec{animation:spin 1.8s linear infinite}.fab .eq{display:none;gap:2px;align-items:flex-end;height:14px}.fab.playing .eq{display:flex}.fab .eq i{width:3px;background:var(--yellow);animation:eq .6s ease-in-out infinite alternate}.fab .eq i:nth-child(2){animation-delay:.2s}.fab .eq i:nth-child(3){animation-delay:.4s}.burn-canvas,.confetti-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:90}.confetti-canvas{pointer-events:none;z-index:95}main.scorch{transition:filter 2.4s ease;filter:sepia(.7) saturate(1.6) contrast(1.1)}#view404{position:fixed;inset:0;z-index:80;display:grid;place-items:center;text-align:center;padding:30px 24px calc(30px + var(--safe-b));background:radial-gradient(80% 45%at 50% 105%,rgba(242,102,90,.45),transparent 70%),radial-gradient(60% 40%at 50% 40%,rgba(244,165,28,.08),transparent),#120a07;color:var(--cream);opacity:0;transition:opacity .8s ease;overflow:hidden}#view404.show{opacity:1}#view404[hidden]{display:none}#view404 h1,.e404{font-family:var(--display)}.e404{font-size:clamp(110px,40vw,170px);line-height:.9;color:var(--saffron);text-shadow:0 0 18px rgba(244,165,28,.75),0 0 46px rgba(242,102,90,.6),5px 5px 0#3a1408;animation:ember 2.2s ease-in-out infinite}#view404 h1{font-weight:400;font-size:28px;margin:14px 0 8px;color:var(--cream)}#view404 p{max-width:330px;margin:0 auto 22px;font-size:16px;line-height:1.5;opacity:.85}.embers i{position:absolute;bottom:-10px;width:4px;height:4px;border-radius:50%;background:var(--yellow);box-shadow:0 0 8px 2px var(--saffron);animation:rise linear infinite}@media (min-width:700px){.hero{padding-top:48px}body{font-size:17px}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.001s!important;animation-iteration-count:1!important;transition:none!important}.stamp{opacity:.92}}