:root{--navy:#07111f;--ink:#0a1625;--red:#ef2b2d;--gold:#f6c65b;--cream:#fffaf0;--white:#fff;--blue:#1570b8;--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,.91);backdrop-filter:blur(16px);position:absolute;top:0;left:0;right:0;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 a[aria-current="page"]{color:var(--gold)}.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:690px;padding:145px clamp(22px,8vw,120px) 95px;color:#fff;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(3,10,20,.94),rgba(3,10,20,.48)),url("../fireworks-hero.png") center/cover no-repeat}.hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:80px;background:var(--cream);clip-path:polygon(0 86%,100% 25%,100% 100%,0 100%)}.hero-content{position:relative;z-index:1;max-width:760px}.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(5.2rem,11vw,10rem)}h1 em{font-style:normal;color:var(--red);text-shadow:0 0 36px rgba(239,43,45,.42)}.hero-content>p:not(.eyebrow){font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.65;max-width:620px;margin:25px 0}.hero-link{color:#fff;text-decoration:none;font-weight:700;border-bottom:2px solid var(--red);padding-bottom:8px}.hero-link span{color:var(--gold);margin-left:8px}.hero-date{position:absolute;z-index:2;right:clamp(24px,7vw,110px);bottom:105px;width:190px;height:190px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(7,17,31,.52);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(6deg)}.hero-date span,.hero-date small{font-size:.7rem;font-weight:700;letter-spacing:.1em}.hero-date strong{font-family:"Barlow Condensed";font-size:3rem;color:var(--gold)}
.calendar{padding:110px clamp(22px,7vw,105px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px}.section-heading h2,.feature h2,.contest h2,.market h2,.more-events h2,.on-tour h2{font-size:clamp(3.6rem,7vw,7.2rem)}.section-heading>p{max-width:400px;line-height:1.65;color:#536273}.date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(10,22,37,.16);border-left:1px solid rgba(10,22,37,.16)}.date-grid article{min-height:175px;padding:24px;display:grid;grid-template-columns:75px 1fr;gap:22px;border-right:1px solid rgba(10,22,37,.16);border-bottom:1px solid rgba(10,22,37,.16);background:rgba(255,255,255,.45)}.date-grid time{display:flex;flex-direction:column;border-right:1px solid rgba(10,22,37,.15)}.date-grid time span{font-size:.72rem;letter-spacing:.16em;font-weight:800;color:var(--red)}.date-grid time strong{font-family:"Barlow Condensed";font-size:2.7rem;line-height:1}.tag{display:inline-block;padding:6px 9px;background:var(--red);color:#fff;border-radius:999px;text-transform:uppercase;font-size:.62rem;letter-spacing:.09em;font-weight:800}.tag.live{background:var(--navy)}.tag.market-tag{background:var(--blue)}.date-grid h3{font-size:1.55rem;margin:14px 0 7px}.date-grid p{margin:0;color:#5b6877;font-size:.87rem;line-height:1.45}.date-grid .big-night{background:var(--red);color:#fff}.big-night .tag{background:var(--gold);color:var(--navy)}.big-night time span,.big-night p{color:#fff}.big-night time{border-color:rgba(255,255,255,.28)}.deadline{background:#fff3d0!important}.market-card{background:#eaf5fd!important}
.feature,.contest{display:grid;grid-template-columns:1.15fr .85fr;min-height:850px}.feature{background:var(--navy);color:#fff}.feature-copy,.contest-copy{padding:105px clamp(28px,7vw,110px);align-self:center}.feature .lead,.contest .lead{font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.5;font-weight:600}.details{display:flex;flex-direction:column;gap:12px;margin:34px 0}.details span{padding:15px 18px;border:1px solid var(--line);border-radius:8px;color:#cad4df}.details b{color:var(--gold);display:inline-block;width:105px}.free-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:34px 0;padding:0;list-style:none}.free-list li{padding:15px 17px;background:rgba(255,255,255,.07);border-left:3px solid var(--red);font-weight:700}.fine-print{font-size:.8rem;color:#95a4b4;line-height:1.5}.poster-wrap{background:radial-gradient(circle at 50% 25%,rgba(246,198,91,.28),transparent 42%),#020817;padding:60px;display:flex;align-items:center;justify-content:center;overflow:hidden}.poster-wrap img{display:block;width:min(100%,620px);max-height:940px;object-fit:contain;filter:drop-shadow(0 24px 35px rgba(0,0,0,.4))}
.contest{background:#fff}.contest-poster{order:0;background:linear-gradient(145deg,#d9ecf8,#fff)}.contest-copy{order:1}.contest .section-kicker{color:var(--red)}.contest-copy>p:not(.section-kicker){line-height:1.72;color:#465668}.contest-copy .lead{color:var(--ink)}.deadline-box{display:flex;flex-direction:column;margin:35px 0;padding:25px;border-left:5px solid var(--red);background:#fff5d9}.deadline-box span{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800}.deadline-box strong{font-family:"Barlow Condensed";font-size:3.8rem;text-transform:uppercase;color:var(--red)}.button{display:inline-flex;align-items:center;gap:28px;padding:17px 22px;border-radius:999px;background:var(--navy);color:#fff;text-decoration:none;font-weight:800}.button span{color:var(--gold);font-size:1.3rem}.live-note{font-size:.9rem!important;margin-top:24px}
.market{padding:105px clamp(24px,8vw,125px);background:var(--red);color:#fff;display:grid;grid-template-columns:220px 1fr .8fr;gap:clamp(35px,6vw,90px);align-items:center}.market-date{width:210px;height:210px;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-5deg);background:rgba(7,17,31,.15)}.market-date span,.market-date small{font-size:.72rem;letter-spacing:.15em;font-weight:800}.market-date strong{font-family:"Barlow Condensed";font-size:4rem;color:var(--gold)}.market .section-kicker{color:var(--navy)}.market-copy>p:not(.section-kicker),.trolley p{line-height:1.7}.location{display:flex;flex-direction:column;gap:7px;padding-top:18px}.location strong{font-size:1.05rem;color:var(--gold)}.trolley{padding:35px;border:1px solid rgba(255,255,255,.42);background:rgba(7,17,31,.17)}.trolley>span{font-size:2rem;color:var(--gold)}.trolley h3{font-size:2.8rem;margin:12px 0}.trolley .section-kicker{margin-bottom:0}
.more-events{padding:110px clamp(24px,7vw,105px);background:var(--cream)}.compact{align-items:start}.event-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.event-cards article{background:#fff;padding:42px;border:1px solid rgba(10,22,37,.12);box-shadow:0 15px 40px rgba(7,17,31,.06)}.status{display:inline-block;color:var(--red);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.host{margin:55px 0 5px!important;color:#687686!important;font-size:.8rem!important;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.event-cards h3{font-size:clamp(2.3rem,4vw,4rem);margin-bottom:20px}.event-cards p{line-height:1.65;color:#526171}.card-link{display:inline-flex;align-items:center;gap:9px;margin-top:10px;color:var(--navy);font-weight:800;text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:5px}.card-link span{color:var(--red)}
.on-tour{background:var(--navy);color:#fff;padding:110px clamp(24px,8vw,125px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,10vw,150px)}.tour-intro>p:not(.section-kicker){line-height:1.7;color:#b8c4d2}.tour-list article{padding:35px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1.25fr .75fr;gap:35px}.tour-list article:last-child{border-bottom:1px solid var(--line)}.tour-list span{color:var(--gold);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.tour-list h3{font-size:clamp(2rem,3.5vw,3.5rem);margin-top:12px}.tour-list p{line-height:1.65;color:#b8c4d2;margin:0}
footer{background:#030912;color:#9ca9ba;padding:45px clamp(24px,6vw,90px);display:flex;align-items:center;gap:40px;font-size:.85rem}footer p:last-child{margin-left:auto}.footer-brand{margin-right:20px}
@media(max-width:980px){.date-grid{grid-template-columns:repeat(2,1fr)}.feature,.contest{grid-template-columns:1fr}.poster-wrap{padding:45px 25px}.contest-poster{order:1}.contest-copy{order:0}.market{grid-template-columns:180px 1fr}.market-date{width:170px;height:170px}.trolley{grid-column:1/-1}.event-cards{grid-template-columns:repeat(2,1fr)}.on-tour{grid-template-columns:1fr}.tour-list article{grid-template-columns:1fr 1fr}}
@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}.hero{min-height:720px;padding-top:125px;align-items:flex-start}.hero-date{width:120px;height:120px;right:20px;bottom:55px}.hero-date strong{font-size:2rem}.section-heading{display:block}.section-heading>p{margin-top:25px}.date-grid{grid-template-columns:1fr}.event-cards{grid-template-columns:1fr}.market{grid-template-columns:1fr}.market-date{width:150px;height:150px}.market-copy,.trolley{grid-column:auto}.tour-list article{grid-template-columns:1fr}.free-list{grid-template-columns:1fr}footer{align-items:flex-start;flex-direction:column;gap:12px}footer p{margin:0!important}}
@media(max-width:520px){h1{font-size:clamp(4.6rem,24vw,7rem)}.hero{min-height:700px}.calendar,.feature-copy,.contest-copy,.more-events,.on-tour{padding-top:78px;padding-bottom:78px}.section-heading h2,.feature h2,.contest h2,.market h2,.more-events h2,.on-tour h2{font-size:clamp(3.4rem,17vw,5.3rem)}.date-grid article{grid-template-columns:65px 1fr}.poster-wrap img{max-height:800px}.market{padding-left:24px;padding-right:24px}.event-cards article{padding:30px}.details b{display:block;width:auto;margin-bottom:4px}}
.tag.hunt-tag{background:#177649}.hunt-card{background:#e8f6ed!important}.hunt-card time strong{font-size:2.15rem}
.tag.breakfast-tag{background:#177649}.townsend-breakfast-card{background:#e8f6ed!important}.contact-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:8px}.contact-links .card-link{margin-top:0}
.fireworks-spotlight{position:relative;isolation:isolate;overflow:hidden;min-height:760px;padding:110px clamp(24px,8vw,125px);display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:clamp(55px,8vw,120px);align-items:center;background:#020817 url("../fireworks-hero.png") center/cover no-repeat;color:#fff}.fireworks-spotlight:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(2,8,23,.98) 0%,rgba(2,8,23,.88) 55%,rgba(2,8,23,.5) 100%)}.fireworks-show-copy{max-width:850px}.fireworks-spotlight h2{font-size:clamp(4.5rem,9vw,9rem);margin:14px 0 32px}.fireworks-spotlight h2 em{font-style:normal;color:var(--red);text-shadow:0 0 40px rgba(239,43,45,.45)}.fireworks-spotlight .fireworks-lead{font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.55;font-weight:600}.fireworks-spotlight blockquote{margin:34px 0;padding:14px 0 14px 24px;border-left:4px solid var(--gold);font-family:"Barlow Condensed";font-size:clamp(2.1rem,4vw,4rem);font-weight:800;text-transform:uppercase;color:var(--gold)}.fireworks-show-copy>p:last-of-type{line-height:1.75;color:#c1ccd8;max-width:760px}.show-highlights{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.show-highlights span{padding:12px 15px;border:1px solid rgba(246,198,91,.48);background:rgba(7,17,31,.62);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.fireworks-show-time{padding:42px 35px;border:1px solid rgba(246,198,91,.65);background:rgba(3,9,18,.74);backdrop-filter:blur(10px);display:flex;flex-direction:column;transform:rotate(2deg);box-shadow:0 30px 70px rgba(0,0,0,.35)}.fireworks-show-time span{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800}.fireworks-show-time strong{font-family:"Barlow Condensed";font-size:4.8rem;line-height:.9;text-transform:uppercase;margin:25px 0 15px}.fireworks-show-time b{font-size:1.1rem;color:var(--gold)}.fireworks-show-time small{font-size:.88rem;line-height:1.6;color:#c1ccd8;margin-top:30px}
@media(max-width:850px){.fireworks-spotlight{grid-template-columns:1fr;min-height:0}.fireworks-show-time{max-width:420px;transform:none}.show-highlights{flex-direction:column;align-items:flex-start}}

.coca-cola-caravan{position:relative;isolation:isolate;overflow:hidden;min-height:700px;padding:clamp(85px,9vw,130px) clamp(24px,8vw,125px);display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(55px,9vw,135px);align-items:center;background:linear-gradient(135deg,#a90012,#f01524 58%,#a90012);color:#fff}.coca-cola-caravan:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.18) 0 4px,transparent 5px),radial-gradient(circle at 88% 22%,rgba(255,255,255,.14) 0 5px,transparent 6px),radial-gradient(circle at 68% 82%,rgba(255,255,255,.12) 0 3px,transparent 4px);background-size:105px 105px,145px 145px,80px 80px}.coca-cola-caravan .section-kicker{color:#fff}.coca-cola-caravan h2{font-size:clamp(4.3rem,8vw,8.5rem);margin:13px 0 32px}.coca-cola-caravan h2 em{font-style:normal;color:#fff3b8;text-shadow:0 0 30px rgba(255,243,184,.25)}.caravan-lead{max-width:850px;font-size:clamp(1.25rem,2.15vw,1.7rem);font-weight:650;line-height:1.55}.caravan-details{display:flex;flex-wrap:wrap;gap:10px;margin:34px 0}.caravan-details span{padding:12px 15px;border:1px solid rgba(255,255,255,.55);background:rgba(112,0,11,.28);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.caravan-note{max-width:720px;color:#ffe7e9;font-size:.9rem;line-height:1.65}.caravan-stamp{width:300px;height:300px;padding:35px;border-radius:50%;border:6px solid #fff;background:#fff;color:#b30014;box-shadow:0 30px 70px rgba(70,0,7,.32);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(4deg)}.caravan-stamp span,.caravan-stamp small{text-transform:uppercase;font-size:.7rem;font-weight:800;letter-spacing:.14em}.caravan-stamp strong{font-family:"Barlow Condensed",Impact,sans-serif;font-size:4.2rem;line-height:.8;text-transform:uppercase;margin:18px 0}.caravan-stamp small{color:#536273}
@media(max-width:850px){.coca-cola-caravan{grid-template-columns:1fr;text-align:center;min-height:0}.caravan-details{justify-content:center}.caravan-note{margin-left:auto;margin-right:auto}.caravan-stamp{width:230px;height:230px;justify-self:center;transform:none}.caravan-stamp strong{font-size:3.2rem}}
