@font-face{font-family:DM Sans;src:url(/assets/dm-sans.ttf) format("truetype");font-weight:400 700;font-display:swap}@font-face{font-family:Fraunces;src:url(/assets/fraunces.ttf) format("truetype");font-weight:600 700;font-display:swap}[hidden]{display:none!important}
:root{--night:#100d28;--cream:#fff4dc;--gold:#ffc368;--orange:#fb8644;--lavender:#b9a9e8;--line:rgba(255,244,220,.24)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--cream);font-family:'DM Sans',Arial,sans-serif;overflow-x:hidden}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.scene{position:fixed;z-index:-2;inset:-6%;background:url('/assets/halloween-neighborhood.png') center center/cover no-repeat;will-change:transform}.scene-tint{position:fixed;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(8,8,29,.55) 0%,rgba(8,8,29,.17) 24%,rgba(8,8,29,.33) 55%,#100d28 100%);pointer-events:none}.skip-link{position:absolute;top:-60px;left:1rem;z-index:100;background:#fff;color:#111;padding:.65rem}.skip-link:focus{top:1rem}.site-header{height:86px;max-width:1340px;padding:0 5vw;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:7px;font-weight:700;letter-spacing:.16em;font-size:.9rem;white-space:nowrap}.brand-icon{font-size:1.6rem;color:var(--gold);margin-right:7px}.brand-pumpkin{font-size:1rem}.site-header nav{display:flex;align-items:center;gap:36px;font-size:.83rem;font-weight:700}.site-header nav a{text-decoration:none}.site-header nav a:hover,.card-link:hover,.calendar-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-pill{border:1px solid var(--line);border-radius:99px;padding:13px 21px}.nav-pill span{margin-left:12px;color:var(--gold)}.hero{min-height:min(850px,calc(100svh - 86px));position:relative;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 20px 130px}.hero-inner{max-width:850px;margin-top:-15px;text-shadow:0 2px 28px rgba(10,5,23,.65)}.eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.3em;color:var(--gold);margin:0 0 24px}.eyebrow span{margin:0 8px}.hero h1,.intro h2,.events h2,.finale h2{font-family:Fraunces,Georgia,serif;font-weight:700;letter-spacing:-.065em;line-height:1.04;margin:0}.hero h1{font-size:clamp(4.5rem,9.3vw,9rem)}em{font-style:normal;color:var(--gold)}.hero-copy{font-size:clamp(1rem,1.8vw,1.25rem);line-height:1.7;max-width:520px;margin:29px auto 31px;color:#fff8ef}.button{display:inline-flex;align-items:center;gap:38px;text-decoration:none;font-weight:700;border-radius:99px;padding:18px 25px;font-size:.92rem;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--gold);color:#25132a;box-shadow:0 12px 40px rgba(0,0,0,.2)}.button-primary:hover{background:#ffdb9c}.hero-bottom{position:absolute;bottom:33px;left:5vw;right:5vw;display:flex;align-items:center;justify-content:space-between;font-size:.65rem;font-weight:700;letter-spacing:.23em;color:#fff0d8}.scroll-line{height:42px;width:1px;background:#fff7e2}.section-shell{padding:110px max(5vw,calc((100vw - 1200px)/2));scroll-margin-top:30px}.intro{background:#211638;position:relative}.intro:before{content:'✦';position:absolute;color:#fb8644;opacity:.16;font-size:19rem;right:7%;top:0;pointer-events:none}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end}.warm{color:var(--orange)}.intro h2,.events h2,.finale h2{font-size:clamp(3.1rem,5.5vw,5.9rem)}.intro-right{font-size:1.15rem;line-height:1.75;color:#e5d7ed;position:relative}.intro-right p{max-width:500px}.tiny-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:35px}.tiny-tags span{border:1px solid rgba(255,255,255,.19);border-radius:99px;padding:9px 13px;font-size:.76rem;font-weight:700;color:var(--cream)}.events{background:#fff5e6;color:#25152a}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.section-heading .eyebrow{margin-bottom:20px}.events h2 em{color:#e56e37}.section-heading>p{line-height:1.7;color:#66556c;max-width:290px;margin:0 0 8px}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.event-card{background:#fff;border:1px solid #eadcca;border-radius:20px;padding:32px 34px 29px;display:flex;flex-direction:column;min-height:440px;box-shadow:0 12px 40px rgba(42,16,45,.07);transition:transform .2s,box-shadow .2s}.event-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(42,16,45,.12)}.card-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:35px}.date-badge{display:flex;gap:7px;align-items:center;color:#df6935}.date-badge strong{font-family:Fraunces,Georgia,serif;font-size:3.6rem;line-height:.85}.date-badge span{font-size:.67rem;line-height:1.2;font-weight:700;letter-spacing:.14em}.card-icon{font-size:2.7rem}.card-kicker{font-size:.69rem;letter-spacing:.17em;font-weight:700;color:#d76a38;margin:0 0 10px}.event-card h3{font-family:Fraunces,Georgia,serif;font-size:2rem;letter-spacing:-.035em;margin:0 0 11px}.event-card>p:not(.card-kicker){line-height:1.65;color:#66596b;margin:0 0 25px}.card-location{display:flex;gap:10px;color:#63556a;font-size:.8rem;line-height:1.5;margin-top:auto;padding:16px 0;border-top:1px solid #eee4da}.card-location>span:first-child{font-size:1.3rem;color:#e16c38}.card-link{text-decoration:none;font-size:.85rem;font-weight:700;color:#a3482d;display:flex;justify-content:space-between}.calendar-link{display:inline-flex;gap:35px;margin-top:32px;font-weight:700;color:#92432e;text-decoration:none}.after-events{border:1px solid #efdbc6;padding:20px 24px;border-radius:12px;background:white}.after-events p{margin:0;line-height:1.6}.finale{position:relative;min-height:590px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(16,13,40,.95) 0%,rgba(16,13,40,.68) 58%,rgba(16,13,40,.25) 100%);overflow:hidden}.finale-content{position:relative;z-index:1;max-width:700px}.finale h2{margin-bottom:25px}.finale p:not(.eyebrow){font-size:1.1rem;line-height:1.75;max-width:510px;color:#e8def3}.button-outline{border:1px solid #fff8e0;margin-top:15px}.finale-ghost{position:absolute;font-size:clamp(8rem,20vw,20rem);right:9%;top:50%;transform:translateY(-50%) rotate(-12deg);filter:drop-shadow(0 15px 60px #bba3ec55)}footer{background:#100d28;border-top:1px solid rgba(255,255,255,.15);padding:32px 5vw;display:flex;justify-content:space-between;gap:20px;color:#bdb0d1;font-size:.68rem;letter-spacing:.14em}a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}@media(max-width:700px){.site-header{height:70px}.brand{font-size:.7rem}.site-header nav{gap:14px}.site-header nav>a:not(.nav-pill){display:none}.nav-pill{padding:10px 13px;font-size:.72rem}.nav-pill span{display:none}.hero{min-height:calc(100svh - 70px);padding:60px 22px 105px}.hero h1{font-size:clamp(3.7rem,12vw,5.5rem)}.hero-copy{font-size:1rem}.eyebrow{font-size:.62rem;letter-spacing:.22em}.section-shell{padding:75px 6vw}.intro-grid,.event-grid{grid-template-columns:1fr}.intro-grid{gap:22px}.section-heading{display:block}.section-heading>p{margin-top:20px}.event-card{min-height:405px;padding:27px}.finale{min-height:600px;align-items:start;padding-top:90px;background:linear-gradient(180deg,rgba(16,13,40,.96),rgba(16,13,40,.54))}.finale-ghost{right:5%;top:auto;bottom:-90px;transform:rotate(-13deg);opacity:.8}footer{flex-direction:column;text-align:center}.scene{background-position:52% center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.scene{will-change:auto}}
.finale{background:linear-gradient(90deg,rgba(16,13,40,.93) 0%,rgba(16,13,40,.72) 43%,rgba(16,13,40,.08) 100%),url('/assets/pumpkin-patch.png') center center/cover fixed no-repeat}.finale-ghost{display:none}@media(max-width:700px){.finale{background:linear-gradient(180deg,rgba(16,13,40,.93) 0%,rgba(16,13,40,.62) 65%,rgba(16,13,40,.1) 100%),url('/assets/pumpkin-patch.png') 65% center/cover scroll no-repeat}}
