:root{--curtain-red:maroon;--curtain-dark:#2a0000;--gold:#d4af37;--gold-dim:#8a7020;--stage-floor:#1a1a1a;--reel-black:#080808;--neon-red:#f33;--machine-grey:#2b2b2b}html{scroll-snap-type:y proximity;scroll-behavior:smooth}body{color:#fff;background-color:#050505;margin:0;font-family:Special Elite,cursive;overflow-x:hidden}.marquee-sign{background-color:#2a0000;border:8px solid #4a0000;border-radius:20px;padding:20px 40px;position:relative;box-shadow:0 0 50px #80000099,inset 0 0 30px #000c}.marquee-bulbs{border:6px dotted #ffe6a7;border-radius:24px;animation:1s infinite alternate bulbFlicker;position:absolute;inset:-12px;box-shadow:0 0 15px #fc0,inset 0 0 15px #fc0}.marquee-text{color:gold;text-transform:uppercase;text-shadow:0 0 10px #fffc,0 0 20px #ffd700cc,0 0 40px #ff640099,0 0 80px #f009;font-family:Monoton,cursive;font-size:6rem;font-weight:400;line-height:1}@media (max-width:768px){.marquee-text{font-size:3rem}.marquee-sign{padding:15px 20px}}@keyframes bulbFlicker{0%{opacity:1;filter:brightness(1.2)}50%{opacity:.9;filter:brightness()}to{opacity:1;filter:brightness(1.1)}}.film-grain{pointer-events:none;z-index:100;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}.vignette{pointer-events:none;z-index:99;background:radial-gradient(circle,#0000 50%,#000c 100%);width:100%;height:100%;position:fixed;top:0;left:0}.curtain-container{pointer-events:none;z-index:60;justify-content:space-between;width:100%;height:100vh;display:flex;position:fixed;top:0;left:0}.curtain{background:linear-gradient(90deg,var(--curtain-dark)0%,var(--curtain-red)50%,var(--curtain-dark)100%);transform-origin:top;width:50%;height:100%;position:relative;box-shadow:10px 0 30px #000000e6}.curtain:before{content:"";background:repeating-linear-gradient(90deg,#0000 0 40px,#0000004d 50px,#0000 80px);position:absolute;inset:0}.curtain-valance{background:radial-gradient(circle at 50% 100%,var(--curtain-red),var(--curtain-dark));z-index:61;border-bottom:6px solid var(--gold);border-radius:0 0 50% 50%/0 0 40px 40px;width:100%;height:120px;position:fixed;top:-50px;left:0;box-shadow:0 10px 40px #000000e6}.stage-floor-container{z-index:50;perspective:800px;width:100%;height:12vh;position:fixed;bottom:0;left:0}.stair{transform-origin:bottom;background:linear-gradient(#222,#050505);border-top:2px solid #333;width:100%;height:33%;position:relative;box-shadow:0 -5px 15px #000000b3}.stair:first-child{z-index:3;background:#252525;transform:rotateX(5deg)translateZ(-10px)}.stair:nth-child(2){z-index:2;background:#1a1a1a;transform:rotateX(5deg)translateZ(-20px)}.stair:nth-child(3){z-index:1;background:#111;transform:rotateX(5deg)translateZ(-30px)}.hero-section{z-index:10;scroll-snap-align:start;scroll-snap-stop:always;background:radial-gradient(circle,#200 0%,#000 70%);flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex;position:relative}.main-layout{z-index:20;background-color:#050505;min-height:200vh;padding-bottom:15vh;display:flex;position:relative}.projector-sidebar{z-index:30;background:#080808;border-right:1px solid #222;flex-direction:column;justify-content:center;align-items:center;width:35%;height:100vh;display:none;position:sticky;top:0;box-shadow:5px 0 20px #00000080;overflow:visible!important}@media (min-width:768px){.projector-sidebar{display:flex}}.projector-body{z-index:35;background-color:#222;background-image:url(https://www.transparenttextures.com/patterns/carbon-fibre.png);border-radius:12px;width:300px;padding:40px 20px 20px;position:relative;box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #00000080,0 20px 50px #000000e6,0 0 0 1px #000}.lens-assembly-container{z-index:100;pointer-events:none;align-items:center;width:140px;height:140px;display:flex;position:absolute;top:50%;right:-138px;transform:translateY(-50%)}.projector-beam{clip-path:polygon(0 44%,100% 0,100% 100%,0 56%);filter:blur(25px);pointer-events:none;z-index:1000;mix-blend-mode:screen;background:linear-gradient(90deg,#c8dcff66 0%,#c8dcff1a 30%,#0000 70%);width:10vw;height:400px;animation:.1s infinite alternate beamFlicker;position:absolute;top:50%;left:70px;transform:translateY(-50%)}.projector-beam2{clip-path:polygon(0 0%,100% 0,100% 100%,0 100%);filter:blur(25px);pointer-events:none;z-index:1000;mix-blend-mode:screen;background:#c8dcff33;width:200vw;height:300px;animation:.1s infinite alternate beamFlicker;position:absolute;top:50%;left:120px;transform:translateY(-50%)}@keyframes beamFlicker{0%{opacity:.7;transform:translateY(-50%)scaleY(1)}to{opacity:.85;transform:translateY(-50%)scaleY(1.02)}}.lens-collar{z-index:2;background-color:#1a1a1a;background-image:linear-gradient(90deg,#0009 0%,#3c3c3c 30%,#c8c8c826 50%,#3c3c3c 70%,#000c 100%),repeating-linear-gradient(0deg,#0000,#0000 2px,#0000004d 2px 3px);border:1px solid #000;border-right-color:#444;border-radius:4px;width:26px;height:86px;position:absolute;left:-12px;box-shadow:inset 1px 1px #ffffff1a,inset -1px -1px 2px #00000080,3px 0 10px #000000e6}.lens-collar:before{content:"";background:radial-gradient(circle at 30% 30%,#999,#333 70%);border:1px solid #111;border-radius:2px;width:10px;height:10px;position:absolute;top:8px;right:-5px;box-shadow:2px 2px 4px #000c}.lens-collar:after{content:"";background:#000;border-bottom:1px solid #ffffff14;height:1px;position:absolute;top:50%;left:0;right:0}.matte-box-hood{clip-path:polygon(0 15%,100% 0,100% 100%,0 85%);z-index:3;background:linear-gradient(135deg,#1a1a1a 0%,#080808 100%);width:60px;height:90px;position:absolute;left:12px;box-shadow:-5px 0 15px #000000e6}.matte-box-hood:after{content:"";pointer-events:none;background:linear-gradient(#ffffff0d 0%,#0000 20% 80%,#ffffff0d 100%);position:absolute;inset:0}.french-flag{transform-origin:0 100%;z-index:4;background:#0a0a0a;border:1px solid #222;width:70px;height:30px;position:absolute;top:-20px;left:12px;transform:rotate(-12deg);box-shadow:5px 5px 10px #0009}.french-flag-hinge{z-index:5;background:radial-gradient(circle,#555,#222);border-radius:50%;width:12px;height:12px;position:absolute;top:25px;left:14px;box-shadow:1px 1px 2px #000}.lens-knob{z-index:6;background:repeating-linear-gradient(0deg,#888,#444 2px);border-radius:2px;width:8px;height:16px;position:absolute;top:50px;left:27px;box-shadow:2px 2px 5px #000c}.lens-glint{pointer-events:none;mix-blend-mode:screen;z-index:10;background:radial-gradient(#64c8ff33 0%,#0000 70%);width:10px;height:60px;position:absolute;top:40px;left:17px;transform:rotate(15deg)}.screw{z-index:5;background:radial-gradient(circle,#555,#222);border-radius:50%;width:8px;height:8px;position:absolute;box-shadow:inset 1px 1px 1px #000c,0 1px #ffffff1a}.screw.tl{top:10px;left:10px}.screw.tr{top:10px;right:10px}.screw.bl{bottom:10px;left:10px}.screw.br{bottom:10px;right:10px}.screw:after{content:"";background:#111;width:80%;height:1px;position:absolute;top:50%;left:10%;transform:rotate(45deg)}.vent-slots{justify-content:center;gap:4px;margin-bottom:20px;display:flex}.vent{background:#111;border-bottom:1px solid #333;border-radius:3px;width:40px;height:6px}.reel-decoration{z-index:-10;filter:drop-shadow(0 4px 6px #000c);background-image:url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cmask id='reelMask'%3E%3Crect width='100%25' height='100%25' fill='white'/%3E%3Ccircle cx='50' cy='22' r='10' fill='black'/%3E%3Ccircle cx='76.6' cy='41.3' r='10' fill='black'/%3E%3Ccircle cx='66.5' cy='72.7' r='10' fill='black'/%3E%3Ccircle cx='33.5' cy='72.7' r='10' fill='black'/%3E%3Ccircle cx='23.4' cy='41.3' r='10' fill='black'/%3E%3C/mask%3E%3CradialGradient id='metalGrad' cx='50%25' cy='50%25' r='50%25' fx='50%25' fy='50%25'%3E%3Cstop offset='0%25' style='stop-color:%232a2a2a'/%3E%3Cstop offset='90%25' style='stop-color:%23111'/%3E%3Cstop offset='100%25' style='stop-color:%23444'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='50' cy='50' r='48' fill='url(%23metalGrad)' stroke='%23333' stroke-width='1.5' mask='url(%23reelMask)'/%3E%3Ccircle cx='50' cy='50' r='44' fill='none' stroke='%23000' stroke-width='1' mask='url(%23reelMask)' opacity='0.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;animation:12s linear infinite rotateReel;display:flex;position:absolute;top:-60px}.reel-decoration:after{content:"";z-index:2;background:radial-gradient(circle,#555 0%,#111 100%);border:1px solid #333;border-radius:50%;width:22px;height:22px;position:absolute;box-shadow:0 0 2px #000c}.reel-decoration:before{content:"";z-index:3;background:#000;border-radius:50%;width:8px;height:8px;position:absolute}.reel-decoration.left{animation-direction:reverse;left:10px}.reel-decoration.right{right:10px}@keyframes rotateReel{to{transform:rotate(360deg)}}.proj-display-case{background:#111;border:2px solid #444;border-radius:4px;margin-bottom:20px;padding:4px;box-shadow:inset 0 0 10px #000}.proj-display-screen{background:#050505;border:1px solid #222;flex-direction:column;align-items:center;padding:10px;display:flex;position:relative;overflow:hidden}.proj-display-screen:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2px,#ffffff0d 3px);position:absolute;inset:0}.ctrl-btn{color:#aaa;text-transform:uppercase;letter-spacing:1px;cursor:pointer;background:linear-gradient(#333,#222);border:1px solid #111;border-radius:4px;font-size:10px;transition:all .1s;box-shadow:0 2px #000,0 3px 5px #00000080,inset 0 1px #ffffff1a}.ctrl-btn:active{transform:translateY(2px);box-shadow:0 0 #000,inset 0 2px 5px #00000080}.ctrl-btn:hover{color:#fff;background:linear-gradient(#444,#333)}.jump-btn{color:#666;background:radial-gradient(circle,#333,#111);border:2px solid #444;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-family:monospace;font-size:11px;transition:all .2s;display:flex;box-shadow:0 2px 5px #00000080}.jump-btn:hover{border-color:var(--gold);color:var(--gold);box-shadow:0 0 10px #d4af374d}.cat-btn{color:#555;letter-spacing:1px;text-transform:uppercase;background:#111;border:1px solid #333;padding:6px 12px;font-family:Bebas Neue,sans-serif;font-size:14px;transition:all .3s}.cat-btn:hover{color:#888;border-color:#666}.cat-btn.active-filter{border-color:var(--gold);color:var(--gold);background:#1a1a1a;box-shadow:0 0 10px #d4af3733}.events-reel{background-color:#0c0c0c;width:100%;min-height:100vh;padding:50px 0;position:relative}@media (min-width:768px){.events-reel{width:65%}}.film-strip-edge{z-index:10;background:#111;flex-direction:column;align-items:center;width:40px;display:none;position:absolute;top:0;bottom:0;overflow:hidden}@media (min-width:768px){.film-strip-edge{display:flex}}.film-strip-edge.left{border-right:1px solid #333;left:0}.film-strip-edge.right{border-left:1px solid #333;right:0}.sprocket-hole{background:#000;border-radius:4px;flex-shrink:0;width:20px;height:30px;margin:15px 0;box-shadow:inset 1px 1px 2px #ffffff1a}.event-frame{opacity:.4;filter:grayscale();scroll-snap-align:center;background:#1a1a1a;border:8px solid #111;margin:80px 20px;padding:20px;transition:all .6s;position:relative;transform:scale(.95);box-shadow:0 10px 40px #00000080}@media (min-width:768px){.event-frame{margin:150px 60px}}.event-frame.active-scene{opacity:1;filter:grayscale(0%);border-color:var(--gold);transform:scale(1.02);box-shadow:0 0 50px #d4af3733}.lcd-text{color:var(--neon-red);text-shadow:0 0 5px var(--neon-red);font-family:VT323,monospace}.mobile-projector{border-top:2px solid var(--gold);z-index:45;background:#000000f2;justify-content:space-between;align-items:center;width:100%;padding:12px 20px;display:flex;position:fixed;bottom:0;left:0;box-shadow:0 -5px 20px #000c}@media (min-width:768px){.mobile-projector{display:none}}@media (max-width:767px){.event-frame{margin-left:20px!important;margin-right:20px!important}.event-frame img{object-fit:cover;height:200px!important}.event-frame h3{font-size:1.5rem!important}.projector-beam,.projector-beam2{display:none}.main-layout{padding-bottom:80px}}
