:root{--navy:#07111f;--ink:#0a1625;--red:#ef2b2d;--gold:#f6c65b;--cream:#fffaf0;--white:#fff;--line:rgba(255,255,255,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,sans-serif}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{height:88px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(7,17,31,.84);backdrop-filter:blur(18px);position:absolute;inset:0 0 auto;z-index:10;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;text-decoration:none;color:#fff;font-family:"Barlow Condensed",Impact,sans-serif;font-weight:900;line-height:.72;transform:rotate(-2deg)}.brand-top{font-size:1.8rem;letter-spacing:.08em;color:var(--red);text-shadow:0 2px 0 #fff}.brand-bottom{font-size:1.1rem;letter-spacing:.24em;margin-left:3px}nav{display:flex;align-items:center;gap:clamp(18px,2.5vw,40px)}nav a{color:#fff;text-decoration:none;font-size:.9rem;font-weight:600}.nav-cta{border:1px solid rgba(255,255,255,.5);padding:11px 18px;border-radius:999px}.menu-button{display:none;background:none;border:0;padding:8px}.menu-button span:not(.sr-only){display:block;width:26px;height:2px;background:#fff;margin:5px}
.hero{min-height:900px;padding:145px clamp(24px,7vw,105px) 100px;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(50px,7vw,110px);align-items:center;background:var(--navy);color:#fff;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,17,31,.93),rgba(7,17,31,.45)),url("fireworks-hero.png") center/cover no-repeat;opacity:.72}.hero:after{content:"";position:absolute;inset:auto 0 -1px;height:85px;background:var(--cream);clip-path:polygon(0 88%,100% 18%,100% 100%,0 100%)}.hero-copy,.cover-wrap{position:relative;z-index:1}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.8rem;font-weight:800;color:var(--gold)}h1,h2,h3{font-family:"Barlow Condensed",Impact,sans-serif;text-transform:uppercase;margin:0;line-height:.88;letter-spacing:-.025em}h1{font-size:clamp(5rem,9vw,9.5rem)}h1 em{font-style:normal;color:var(--red);text-shadow:0 0 40px rgba(239,43,45,.4)}.hero .lead{font-size:clamp(1.05rem,1.8vw,1.28rem);line-height:1.68;max-width:650px;margin:30px 0}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:28px;padding:17px 22px;border-radius:999px;text-decoration:none;font-weight:800}.button.primary{background:var(--red);color:#fff}.button.dark{background:var(--navy);color:#fff}.button.light{background:#fff;color:var(--navy)}.button span{color:var(--gold);font-size:1.25rem}.text-link,.arrow-link{color:inherit;text-decoration:none;font-weight:800;border-bottom:2px solid var(--gold);padding-bottom:6px}.event-line{margin-top:35px;padding-top:25px;border-top:1px solid var(--line);display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.event-line strong{font-size:1rem;color:var(--gold)}.cover-wrap{max-width:680px;justify-self:end}.cover-frame{padding:10px;border:1px solid rgba(246,198,91,.7);background:#110b0b;box-shadow:0 35px 90px rgba(0,0,0,.55);transform:rotate(1.2deg)}.cover-frame img{width:100%;display:block}.cover-badge{position:absolute;right:-25px;bottom:-30px;width:130px;height:130px;border-radius:50%;background:var(--red);border:5px solid var(--navy);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(7deg)}.cover-badge strong{font-family:"Barlow Condensed";font-size:2.3rem;color:var(--gold)}.cover-badge span{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.free-strip{background:var(--red);color:#fff;padding:18px 24px;display:flex;justify-content:center;gap:24px;align-items:center;flex-wrap:wrap;font-family:"Barlow Condensed";font-size:1.25rem;font-weight:800;text-transform:uppercase}.free-strip span{color:var(--gold)}
.welcome{padding:120px clamp(24px,9vw,145px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(55px,9vw,145px);max-width:1600px;margin:auto}.welcome h2,.experience h2,.season h2,.community h2,.thanks h2{font-size:clamp(4rem,7vw,7.5rem)}.welcome .section-kicker{color:var(--red)}.welcome-copy p{font-size:1.05rem;line-height:1.78;color:#465568}.welcome-copy .lead,.community-copy .lead{font-size:clamp(1.25rem,2.2vw,1.65rem);line-height:1.52;color:var(--ink);font-weight:600}.welcome .arrow-link,.community .arrow-link{display:inline-block;margin-top:16px;color:var(--ink)}
.experience{background:var(--navy);color:#fff;padding:110px clamp(24px,7vw,105px)}.experience-heading{max-width:1050px}.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:70px}.experience-grid article{min-height:300px;padding:35px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.experience-grid span{font-weight:800;color:var(--gold)}.experience-grid h3{font-size:clamp(2rem,3vw,3.3rem);margin:75px 0 18px}.experience-grid p{line-height:1.65;color:#b9c5d2}.fireworks-callout{margin-top:45px;background:var(--red);padding:35px 40px;display:grid;grid-template-columns:1fr 1fr auto;gap:35px;align-items:center}.fireworks-callout span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.fireworks-callout strong{display:block;font-family:"Barlow Condensed";font-size:2.3rem;text-transform:uppercase;color:var(--gold)}.fireworks-callout p{line-height:1.6}.fireworks-callout a{color:#fff;font-weight:800;text-decoration:none;white-space:nowrap}
.season{padding:115px clamp(24px,8vw,125px);display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(60px,10vw,150px);align-items:start}.season-intro{position:sticky;top:35px}.season-intro .section-kicker{color:var(--red)}.season-intro>p:last-child{line-height:1.7;color:#536273}.season-list{border-top:1px solid rgba(10,22,37,.16)}.season-list article{padding:28px 0;border-bottom:1px solid rgba(10,22,37,.16);display:grid;grid-template-columns:165px 1fr;gap:30px;align-items:center}.season-list time span{display:block;font-size:.7rem;color:var(--red);font-weight:800;letter-spacing:.16em}.season-list time strong{font-family:"Barlow Condensed";font-size:2.1rem}.season-list h3{font-size:2rem}.season-list p{margin:7px 0 0;color:#667382}.season-main{background:var(--red);color:#fff;padding:28px!important;margin:0 -25px}.season-main time span,.season-main p{color:#fff!important}.season .button{grid-column:2;margin-top:-95px;justify-self:start}
.community{display:grid;grid-template-columns:.9fr 1.1fr;background:linear-gradient(135deg,#eaf6fc,#fffaf0 65%)}.springs-art{padding:75px clamp(30px,6vw,95px);background:#fff;display:flex;align-items:center;justify-content:center}.springs-art img{width:min(100%,620px);border-radius:30px;filter:drop-shadow(0 25px 35px rgba(7,17,31,.14))}.community-copy{padding:110px clamp(30px,7vw,115px);align-self:center}.community-copy .section-kicker{color:#156ba8}.community-copy>p:not(.section-kicker){line-height:1.75;color:#415365}.community-copy .lead{color:var(--ink)}.thanks{padding:115px clamp(24px,9vw,145px);background:var(--red);color:#fff;text-align:center}.thanks .section-kicker{color:var(--navy)}.thanks p:not(.section-kicker){max-width:710px;margin:28px auto;line-height:1.7;font-size:1.1rem}footer{background:#030912;color:#9ca9ba;padding:45px clamp(24px,6vw,90px);display:flex;align-items:center;gap:40px;font-size:.85rem}footer a:last-child{margin-left:auto;color:#c4cfdb;text-decoration:none}.footer-brand{margin-right:20px}
@media(max-width:1000px){.hero{grid-template-columns:1fr;min-height:0;padding-top:140px;padding-bottom:130px}.cover-wrap{justify-self:center;max-width:640px}.experience-grid{grid-template-columns:repeat(2,1fr)}.fireworks-callout{grid-template-columns:1fr 1fr}.fireworks-callout a{grid-column:1/-1}.season{grid-template-columns:1fr}.season-intro{position:static}.season .button{grid-column:auto;margin-top:-90px}.community{grid-template-columns:1fr}.springs-art{padding:65px 28px}}
@media(max-width:760px){.site-header{height:76px}.menu-button{display:block}nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--navy);padding:25px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line)}nav.open{display:flex}.welcome{grid-template-columns:1fr;gap:42px}.experience-grid{grid-template-columns:1fr}.experience-grid article{min-height:0}.experience-grid h3{margin-top:35px}.fireworks-callout{grid-template-columns:1fr}.season-list article{grid-template-columns:120px 1fr}.season .button{margin-top:-100px}.community-copy{padding-top:80px;padding-bottom:85px}footer{align-items:flex-start;flex-direction:column;gap:12px}footer p,footer a:last-child{margin:0}}
@media(max-width:520px){h1{font-size:clamp(4.3rem,21vw,6.8rem)}.hero{padding-left:22px;padding-right:22px}.cover-badge{width:105px;height:105px;right:-8px}.cover-badge strong{font-size:1.8rem}.event-line{align-items:flex-start;flex-direction:column}.welcome,.experience,.season,.community-copy,.thanks{padding-top:80px;padding-bottom:80px}.welcome h2,.experience h2,.season h2,.community h2,.thanks h2{font-size:clamp(3.4rem,17vw,5.2rem)}.free-strip{gap:10px 15px;font-size:1rem}.season-list article{grid-template-columns:1fr;gap:10px}.season-main{margin-left:-12px;margin-right:-12px}.season .button{margin-top:-100px}.fireworks-callout{padding:28px}.fireworks-callout strong{font-size:1.9rem}}
