.fm-page{--fm-gold:var(--kpc-acid);--fm-gold-dark:color-mix(in srgb, var(--kpc-acid) 82%, #000);--fm-gold-glow:#f5ff3666;--fm-pink:var(--kpc-magenta);--fm-pink-glow:#ff2a8a66;--fm-cyan:var(--kpc-cyan);--fm-black:var(--kpc-bg);--fm-white:var(--kpc-ink);--fm-gray:var(--kpc-ink-2);--fm-surface:var(--kpc-bg-2);--fm-surface-elevated:var(--kpc-bg-3);background:var(--fm-black);min-height:100vh;color:var(--fm-white);font-family:var(--kpc-font-body);overflow-x:hidden}.fm-page h1,.fm-page h2,.fm-page h3{font-family:var(--kpc-font-display)}.fm-hero{background:var(--fm-black);flex-direction:column;justify-content:center;min-height:clamp(480px,72vh,720px);padding:6rem 2rem 4rem;display:flex;position:relative;overflow:hidden}.fm-hero:before{content:"";background:radial-gradient(circle, var(--fm-gold-glow) 0%, transparent 70%);filter:blur(80px);pointer-events:none;width:60vw;height:60vw;animation:8s ease-in-out infinite fm-pulse;position:absolute;top:20%;right:-20%}.fm-hero:after{content:"";background:radial-gradient(circle, var(--fm-pink-glow) 0%, transparent 70%);filter:blur(60px);pointer-events:none;width:40vw;height:40vw;animation:10s ease-in-out infinite reverse fm-pulse;position:absolute;bottom:10%;left:-10%}@keyframes fm-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.fm-hero-inner{z-index:2;width:100%;max-width:1400px;margin:0 auto;position:relative}.fm-date-badge{background:var(--fm-gold);color:var(--fm-black);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:2rem;padding:.625rem 1.25rem;font-size:.75rem;font-weight:700;display:inline-flex}.fm-date-badge:before{content:"";background:var(--fm-black);border-radius:50%;width:8px;height:8px;animation:1.5s ease-in-out infinite fm-blink}@keyframes fm-blink{0%,to{opacity:1}50%{opacity:.3}}.fm-hero-title{letter-spacing:-.03em;text-transform:uppercase;margin:0 0 .5rem;font-size:clamp(3rem,12vw,9rem);font-weight:900;line-height:.9}.fm-hero-title .fm-line-1{color:var(--fm-white);display:block}.fm-hero-title .fm-line-2{color:var(--fm-gold);display:block}.fm-hero-title .fm-line-3{color:var(--fm-pink);display:block}.fm-tagline{color:var(--fm-gray);max-width:550px;margin:2rem 0 3rem;font-size:clamp(1rem,2vw,1.5rem);line-height:1.6}.fm-tagline strong{color:var(--fm-white)}.fm-hero-cta{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.fm-btn-main{background:var(--fm-gold);color:var(--fm-black);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border:none;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem 2.5rem;font-size:1rem;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s,opacity .2s,transform .2s,box-shadow .2s;display:inline-flex;position:relative;overflow:hidden}.fm-btn-main:before{content:"";background:linear-gradient(45deg,#0000 30%,#fff3 50%,#0000 70%);transition:transform .4s;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}.fm-btn-main:hover{background:var(--fm-gold-dark);box-shadow:0 10px 40px var(--fm-gold-glow);transform:translateY(-2px)}.fm-btn-main:hover:before{transform:translate(100%)}.fm-btn-ghost{color:var(--fm-white);letter-spacing:.05em;cursor:pointer;background:0 0;border:1px solid #fff3;align-items:center;gap:.5rem;padding:1.25rem 2rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s,opacity .2s,transform .2s,box-shadow .2s;display:inline-flex}.fm-btn-ghost:hover{border-color:var(--fm-gold);color:var(--fm-gold)}.fm-hero-stats{border-top:1px solid #ffffff1a;gap:3rem;margin-top:4rem;padding-top:2rem;display:flex}.fm-stat{text-align:left}.fm-stat-value{color:var(--fm-gold);font-size:2rem;font-weight:800;line-height:1;display:block}.fm-stat-label{color:var(--kpc-mute);text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem;font-size:.75rem;display:block}.fm-mission{background:var(--fm-surface);text-align:center;border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d;padding:4rem 2rem}.fm-mission-inner{max-width:800px;margin:0 auto}.fm-mission-text{color:var(--fm-gray);margin:0 0 1rem;font-size:clamp(1.125rem,2.5vw,1.5rem);line-height:1.7}.fm-mission-text strong{color:var(--fm-gold)}.fm-mission-cta{color:var(--fm-white);letter-spacing:.05em;margin:1.5rem 0 0;font-size:1.25rem;font-weight:800}.fm-events{max-width:900px;margin:0 auto;padding:6rem 2rem}.fm-events-header{text-align:center;margin-bottom:4rem}.fm-events-title{margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem);font-weight:800}.fm-events-subtitle{color:var(--fm-gray);margin:0;font-size:1rem}.fm-timeline{padding-left:2rem;position:relative}.fm-timeline:before{content:"";background:linear-gradient(180deg, var(--fm-gold), var(--fm-pink), #ff2a8a33);width:2px;position:absolute;top:0;bottom:0;left:0}.fm-event-card{padding:0 0 3rem 2rem;position:relative}.fm-event-card:last-child{padding-bottom:0}.fm-event-card:before{content:"";background:var(--fm-black);border:2px solid var(--fm-gold);border-radius:50%;width:12px;height:12px;position:absolute;top:.5rem;left:-2rem}.fm-event-card[data-type=paid]:before{background:var(--fm-gold);box-shadow:0 0 15px var(--fm-gold-glow)}.fm-event-card.fm-highlight:before{background:var(--fm-gold);width:16px;height:16px;box-shadow:0 0 25px var(--fm-gold-glow), 0 0 50px #f5ff3633;left:calc(-2rem - 2px)}.fm-event-inner{background:var(--fm-surface-elevated);border:1px solid #ffffff0d;padding:2rem;transition:border-color .3s,background .3s}.fm-event-inner:hover{background:var(--kpc-bg-3);border-color:#f5ff3633}.fm-event-card.fm-highlight .fm-event-inner{background:linear-gradient(135deg, var(--fm-surface-elevated) 0%, #f5ff360d 100%);border-color:#f5ff364d}.fm-event-date{color:var(--fm-gold);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem;font-size:.8rem;font-weight:700}.fm-event-time{color:var(--kpc-mute);margin-bottom:.75rem;font-size:.75rem}.fm-event-title{color:var(--fm-white);margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.fm-event-card.fm-highlight .fm-event-title{color:var(--fm-gold);font-size:1.5rem}.fm-event-desc{color:var(--fm-gray);margin:0 0 1rem;font-size:.9rem;line-height:1.6}.fm-event-price{color:var(--fm-gold);background:#f5ff361a;margin-bottom:1rem;padding:.25rem .75rem;font-size:.8rem;font-weight:700;display:inline-block}.fm-event-price.fm-free{color:var(--fm-cyan);background:#18f0ff1a}.fm-event-features{margin:0 0 1rem;padding:0;list-style:none}.fm-event-features li{color:var(--fm-gray);margin-bottom:.25rem;padding-left:1.25rem;font-size:.875rem;line-height:1.6;position:relative}.fm-event-features li:before{content:"";background:var(--fm-gold);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.fm-event-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.fm-ticket-btn{text-align:center;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;transition:background .2s,box-shadow .2s;display:inline-block;background:var(--fm-gold)!important;color:var(--fm-black)!important;border-radius:0!important;padding:.75rem 1.5rem!important;font-size:.875rem!important;font-weight:700!important}.fm-ticket-btn:hover{background:var(--fm-gold-dark)!important;box-shadow:0 5px 20px var(--fm-gold-glow)!important}.fm-event-link{color:var(--fm-gold);align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.fm-event-link:hover{color:var(--fm-white)}.fm-door-note{color:var(--kpc-mute);margin-top:.5rem;font-size:.75rem}.fm-sold-out-badge{letter-spacing:.05em;text-transform:uppercase;color:var(--kpc-warn);background:#ff50501a;border:1px solid #ff50504d;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:700;display:inline-block}.fm-event-card.fm-past{opacity:.5}.fm-event-card.fm-past .fm-event-inner{border-color:#ffffff0d}.fm-past-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--kpc-mute);vertical-align:middle;background:#ffffff0f;border-radius:.25rem;margin-left:.75rem;padding:.15rem .6rem;font-size:.7rem;font-weight:600;display:inline-block}.fm-anniversary{background:linear-gradient(135deg, #f5ff3614 0%, var(--fm-surface) 50%, #ff2a8a0d 100%);border-top:1px solid #f5ff361a;border-bottom:1px solid #f5ff361a;padding:6rem 2rem}.fm-anniversary-inner{text-align:center;max-width:800px;margin:0 auto}.fm-anniversary-label{letter-spacing:.2em;text-transform:uppercase;color:var(--fm-gold);margin-bottom:1rem;font-size:.75rem;font-weight:700}.fm-anniversary-title{color:var(--fm-gold);margin:0 0 1rem;font-size:clamp(2.5rem,7vw,4rem);font-weight:900;line-height:1.1}.fm-anniversary-date{color:var(--fm-white);margin:0 0 2rem;font-size:1.125rem;font-weight:600}.fm-anniversary-features{background:#f5ff361a;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:2.5rem;display:grid}.fm-anniversary-feature{background:var(--fm-surface);text-align:center;padding:2rem 1.5rem}.fm-anniversary-feature-title{color:var(--fm-white);margin:0 0 .5rem;font-size:1rem;font-weight:700}.fm-anniversary-feature-desc{color:var(--fm-gray);margin:0;font-size:.85rem;line-height:1.5}.fm-venue{background:var(--fm-surface-elevated);border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d;padding:5rem 2rem}.fm-venue-inner{text-align:center;max-width:700px;margin:0 auto}.fm-venue-title{margin:0 0 1rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800}.fm-venue-name{color:var(--fm-gold);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.fm-venue-address{color:var(--fm-gray);margin:0 0 1.5rem;font-size:1rem;line-height:1.6}.fm-venue-link{color:var(--fm-gold);align-items:center;gap:.5rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.fm-venue-link:hover{color:var(--fm-white)}.fm-payment{padding:5rem 2rem}.fm-payment-inner{max-width:800px;margin:0 auto}.fm-payment-title{text-align:center;margin:0 0 2rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800}.fm-payment-grid{background:#ffffff1a;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid}.fm-payment-option{background:var(--fm-black);padding:2.5rem 2rem}.fm-payment-option-title{color:var(--fm-gold);text-transform:uppercase;letter-spacing:.1em;margin:0 0 .75rem;font-size:1rem;font-weight:700}.fm-payment-option-desc{color:var(--fm-gray);margin:0;font-size:.9rem;line-height:1.7}.fm-faq{max-width:800px;margin:0 auto;padding:6rem 2rem}.fm-faq-title{text-align:center;margin:0 0 3rem;font-size:clamp(2rem,5vw,3rem);font-weight:800}.fm-faq-list{background:#ffffff1a;flex-direction:column;gap:1px;display:flex}.fm-faq-item{background:var(--fm-black);padding:2rem}.fm-faq-q{color:var(--fm-white);align-items:flex-start;gap:1rem;margin:0 0 .75rem;font-size:1rem;font-weight:700;display:flex}.fm-faq-q:before{content:"Q";background:var(--fm-gold);width:24px;height:24px;color:var(--fm-black);flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:flex}.fm-faq-a{color:var(--fm-gray);margin:0;padding-left:2.5rem;font-size:.9rem;line-height:1.7}.fm-final{text-align:center;border-top:1px solid #ffffff0d;padding:4rem 2rem}.fm-final-text{color:var(--fm-gray);margin:0 0 1.5rem;font-size:.875rem}.fm-final-text strong{color:var(--fm-white)}.fm-final-btn{color:var(--fm-gold);letter-spacing:.05em;text-transform:uppercase;border:2px solid var(--fm-gold);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s,opacity .2s,transform .2s,box-shadow .2s;display:inline-flex}.fm-final-btn:hover{background:var(--fm-gold);color:var(--fm-black)}@media (max-width:1024px){.fm-anniversary-features{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.fm-hero{min-height:auto;padding:8rem 1.5rem 4rem}.fm-hero-stats{flex-direction:column;gap:1.5rem}.fm-hero-cta{flex-direction:column;width:100%}.fm-btn-main,.fm-btn-ghost{justify-content:center;width:100%}.fm-mission{padding:3rem 1.5rem}.fm-events,.fm-anniversary{padding:4rem 1.5rem}.fm-anniversary-features{grid-template-columns:minmax(0,1fr)}.fm-venue,.fm-payment{padding:4rem 1.5rem}.fm-payment-grid{grid-template-columns:minmax(0,1fr)}.fm-faq{padding:4rem 1.5rem}.fm-faq-item,.fm-event-inner{padding:1.5rem}}@media (prefers-reduced-motion:no-preference){.fm-hero-title,.fm-tagline,.fm-hero-cta,.fm-hero-stats{animation:.8s both fm-fade-up}.fm-tagline{animation-delay:.1s}.fm-hero-cta{animation-delay:.2s}.fm-hero-stats{animation-delay:.3s}@keyframes fm-fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}
