*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050505;color:#f7f7f7;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #292929;position:sticky;top:0;background:rgba(5,5,5,.94);z-index:10}.brand{font-weight:900;letter-spacing:.16em}nav{display:flex;gap:28px;font-size:12px;font-weight:800;letter-spacing:.13em}main>section{padding:90px 5vw;border-bottom:1px solid #222}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:800;margin-bottom:20px;color:#aaa}.feature-card{display:grid;grid-template-columns:minmax(280px,480px) 1fr;gap:7vw;align-items:center}.flyer{aspect-ratio:9/16;background:#111;border:1px solid #333;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.flyer span{font-size:22px;font-weight:900}.flyer small{color:#888;margin-top:10px}.feature-copy h1,.about h2,.section-head h2,.connect h2{font-size:clamp(48px,8vw,118px);line-height:.85;margin:0;letter-spacing:-.06em}.feature-copy p{max-width:500px;color:#aaa;font-size:18px;line-height:1.6}.kicker{font-size:11px!important;letter-spacing:.18em;color:#fff!important;font-weight:800}.button{display:inline-block;margin-top:20px;border:1px solid white;padding:16px 20px;font-size:11px;font-weight:900;letter-spacing:.12em}.about,.connect{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.about p{font-size:clamp(20px,2.2vw,34px);line-height:1.35;color:#bbb}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.section-head h2{font-size:clamp(45px,7vw,90px)}.arrows{display:flex;gap:8px}.arrows button{width:48px;height:48px;border:1px solid #444;background:#090909;color:white;font-size:20px}.event-track{display:flex;gap:24px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.event-card{min-width:min(430px,82vw);scroll-snap-align:start;background:#0d0d0d;border:1px solid #242424}.event-poster{aspect-ratio:9/12;background:#151515;display:flex;flex-direction:column;justify-content:flex-end;padding:28px}.event-poster strong{font-size:42px;line-height:.85}.event-poster span{margin-top:15px;letter-spacing:.14em}.event-info{padding:25px}.event-info>span{font-size:11px;letter-spacing:.15em}.event-info h3{font-size:28px;margin:9px 0}.event-info p{color:#999;line-height:1.5}.coming{display:grid;place-items:center;text-align:center}.coming strong{display:block;font-size:40px}.coming span{font-size:11px;letter-spacing:.18em}.gallery-event{font-size:18px;letter-spacing:.12em;margin-bottom:25px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gallery-item{position:relative;aspect-ratio:1/1.15;overflow:hidden;background:#111;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-item:hover img{transform:scale(1.03);opacity:.8}.gallery-item:after{content:"DON'T TRUST SUNDAYS";position:absolute;left:15px;bottom:15px;font-size:10px;font-weight:900;letter-spacing:.12em;opacity:0;transition:.2s}.gallery-item:hover:after{opacity:1}.contact{font-size:22px;display:flex;flex-direction:column;gap:18px}.contact p{color:#999;line-height:1.6}.contact strong{color:white}footer{padding:28px 5vw;display:flex;justify-content:space-between;color:#777;font-size:10px;letter-spacing:.15em}.lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:30;align-items:center;justify-content:center;flex-direction:column;padding:40px}.lightbox.open{display:flex}.lightbox img{max-height:78vh;max-width:90vw;object-fit:contain}.lightbox div{text-align:center;margin-top:16px;font-size:11px;letter-spacing:.12em}.lightbox a{text-decoration:underline;display:inline-block;margin-top:8px}.close{position:absolute;right:25px;top:20px;background:none;border:0;color:white;font-size:38px}@media(max-width:800px){nav{display:none}.feature-card,.about,.connect{grid-template-columns:1fr}.feature-copy{padding-top:20px}.gallery-grid{grid-template-columns:repeat(2,1fr)}main>section{padding:65px 5vw}.about,.connect{gap:45px}}
.brand{display:flex;align-items:center;height:100%;width:min(330px,42vw);overflow:hidden}.brand-video{display:block;width:100%;height:62px;object-fit:contain;object-position:left center}.flyer{overflow:hidden}.flyer img{width:100%;height:100%;object-fit:cover;display:block}.event-poster{padding:0;overflow:hidden}.event-poster img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:800px){.brand{width:240px}.brand-video{height:54px}}


/* Sept 23 update: make the animated Dempsy Productions logo the primary top-of-page feature */
header{height:auto;min-height:210px;display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto;align-items:center;justify-items:center;padding:22px 5vw 16px;position:relative;top:auto;background:#050505}
.brand{width:100%;max-width:1180px;height:150px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.brand-video{width:100%;height:150px;object-fit:contain;object-position:center center;display:block}
nav{width:100%;justify-content:center;padding-top:14px;border-top:1px solid #202020}
main>section.hero{padding:34px 5vw 54px}
.hero .eyebrow{margin-bottom:12px}
.feature-card{grid-template-columns:minmax(220px,330px) 1fr;gap:6vw;align-items:center}
.flyer{width:100%;max-width:330px;justify-self:start}
.feature-copy h1{font-size:clamp(48px,7vw,102px)}
.feature-copy p{font-size:16px;line-height:1.5}
@media(max-width:800px){header{min-height:170px;padding:16px 5vw 12px}.brand{width:100%;height:112px}.brand-video{height:112px}nav{display:flex;gap:16px;flex-wrap:wrap;font-size:10px}.feature-card{grid-template-columns:minmax(150px,42vw) 1fr;gap:5vw}.flyer{max-width:260px}.feature-copy h1{font-size:clamp(32px,9vw,58px)}.feature-copy p{font-size:13px}.button{padding:12px 14px}.hero{overflow:hidden}}
@media(max-width:560px){.feature-card{grid-template-columns:1fr}.flyer{max-width:230px;justify-self:center}.feature-copy{text-align:center;padding-top:4px}.feature-copy p{margin-left:auto;margin-right:auto}}


/* Sept 23 v3: navigation first, animated logo as its own large section above Featured Event */
header{height:76px;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 5vw;position:sticky;top:0;background:rgba(5,5,5,.96);z-index:10;border-bottom:1px solid #292929}
header nav{width:100%;display:flex;justify-content:center;align-items:center;gap:42px;padding:0;border:0}
.logo-showcase{height:clamp(260px,38vw,520px);display:flex;align-items:center;justify-content:center;padding:20px 4vw;border-bottom:1px solid #222;background:#050505;overflow:hidden}
.logo-showcase .brand-video{display:block;width:min(1500px,100%);height:100%;object-fit:contain;object-position:center center}
main>section.hero{padding-top:34px}
@media(max-width:800px){header{height:66px;min-height:0;padding:0 4vw}header nav{display:flex;gap:20px;flex-wrap:nowrap;font-size:10px}.logo-showcase{height:clamp(220px,52vw,360px);padding:12px 3vw}.logo-showcase .brand-video{height:100%;width:100%}}

/* Sept 23 v4: navigation at absolute top, larger animated logo directly below, then Featured Event */
header{height:72px;min-height:72px;position:relative;top:auto;display:flex;align-items:center;justify-content:center;padding:0 5vw;background:#050505;border-bottom:1px solid #292929;z-index:10}
header nav{width:100%;display:flex;justify-content:center;align-items:center;gap:42px;padding:0;border:0}
.logo-showcase{height:clamp(340px,42vw,610px);display:flex;align-items:center;justify-content:center;padding:8px 2vw;border-bottom:1px solid #222;background:#050505;overflow:hidden}
.logo-showcase .brand-video{display:block;width:min(1700px,100%);height:100%;object-fit:contain;object-position:center center;transform:scale(1.22)}
main>section.hero{padding-top:30px}
@media(max-width:800px){header{height:64px;min-height:64px;padding:0 3vw}header nav{display:flex;gap:18px;flex-wrap:nowrap;font-size:10px}.logo-showcase{height:clamp(280px,64vw,430px);padding:4px 2vw}.logo-showcase .brand-video{width:100%;height:100%;transform:scale(1.18)}}

/* v5: enlarge the MP4 artwork inside the existing logo section without increasing section height */
.logo-showcase .brand-video{transform:scale(2.05);transform-origin:center center}
@media(max-width:800px){.logo-showcase .brand-video{transform:scale(1.85);transform-origin:center center}}

/* v7: reduce animated-logo section height while keeping logo prominent */
.logo-showcase{height:clamp(210px,26vw,360px);padding:4px 2vw}
.logo-showcase .brand-video{height:100%;transform:scale(2.05);transform-origin:center center}
@media(max-width:800px){.logo-showcase{height:clamp(180px,42vw,280px);padding:2px 2vw}.logo-showcase .brand-video{height:100%;transform:scale(1.85)}}

/* V8: compact About section */
#about.about{padding-top:52px;padding-bottom:52px;gap:5vw;align-items:center}
#about.about h2{font-size:clamp(40px,6vw,82px)}
#about.about .eyebrow{margin-bottom:12px}
#about.about p{font-size:clamp(17px,1.65vw,25px);line-height:1.3;max-width:560px;margin:0}
@media(max-width:800px){#about.about{padding-top:42px;padding-bottom:42px;gap:28px}#about.about h2{font-size:clamp(40px,13vw,64px)}}

/* v9: compact Upcoming Events carousel — show the full flyer without cropping */
#events{padding-top:72px;padding-bottom:72px}
#events .section-head{margin-bottom:28px}
#events .event-track{align-items:stretch}
#events .event-card{min-width:min(350px,78vw)}
#events .event-poster{height:min(52vh,520px);aspect-ratio:auto;background:#0a0a0a;display:flex;align-items:center;justify-content:center;padding:10px}
#events .event-poster img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
#events .event-info{padding:16px 20px}
#events .event-info h3{font-size:22px;margin:6px 0}
#events .event-info p{margin:6px 0 0;font-size:14px;line-height:1.4}
@media(max-width:800px){#events{padding-top:55px;padding-bottom:55px}#events .section-head{margin-bottom:22px}#events .event-card{min-width:82vw}#events .event-poster{height:min(55vh,480px)}}

/* v10: Gallery carousel */
#gallery{overflow:hidden}
#gallery .section-head{margin-bottom:28px}
.gallery-carousel-wrap{position:relative}
.gallery-grid{display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 0 12px}
.gallery-grid::-webkit-scrollbar{display:none}
.gallery-item{flex:0 0 min(340px,72vw);aspect-ratio:4/5;scroll-snap-align:start;border:1px solid #242424}
.gallery-item img,.gallery-item video{width:100%;height:100%;object-fit:cover;display:block;transition:.35s}
.gallery-item:hover img,.gallery-item:hover video{transform:scale(1.03);opacity:.82}
.gallery-carousel-arrows{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.gallery-carousel-arrows button{width:48px;height:48px;border:1px solid #444;background:#090909;color:#fff;font-size:20px;cursor:pointer}
@media(max-width:800px){.gallery-item{flex-basis:78vw}.gallery-carousel-arrows button{width:44px;height:44px}}
