:root{--paper:#c8bdab;--paper-light:#ddd2c0;--ink:#171513;--muted:#5c554c;--red:#8d211c;--amber:#d18b45;--blue:#2446a0;--mono:"DM Mono",monospace;--sans:"DM Sans",sans-serif;--cond:"Oswald",sans-serif;--script:"Permanent Marker",cursive}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;background:#171513;color:var(--ink);font-family:var(--sans)}body{overflow:hidden}.app-shell{position:relative;width:100%;height:100dvh;min-height:0;overflow:hidden;background:var(--paper);isolation:isolate}.paper-grain,.about-texture{pointer-events:none;position:absolute;inset:0;z-index:8;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");mix-blend-mode:multiply}.topbar{height:70px;position:absolute;z-index:12;inset:0 0 auto;padding:0 4.1%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #17151333}.wordmark{color:var(--ink);text-decoration:none;font-family:Georgia,serif;font-size:35px;letter-spacing:-3px;line-height:1}.wordmark span{font:9px var(--mono);vertical-align:top;margin-left:2px}.main-nav{display:flex;gap:clamp(22px,4vw,62px);align-items:center}.nav-link,.city-label,.bottom-nav,.eyebrow,.side-note,.home-coordinate,.home-foot,.scene-index,.brand small,.events-toolbar,.events-bottom,.event-meta,.place-kicker,.place-counter,.place-tags,.place-caption,.about-aside,.dialog-lineup small,.sound-label,.now-playing small,.now-playing>div>span{font-family:var(--mono);text-transform:uppercase;letter-spacing:.09em}.nav-link{position:relative;border:0;background:none;padding:26px 0 22px;font-size:10px;font-weight:500;cursor:pointer;color:#26221f}.nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:16px;height:1px;background:currentColor;transition:right .25s}.nav-link:hover:after,.nav-link.active:after{right:0}.nav-link.active{font-weight:500}.top-actions{justify-self:end;display:flex;align-items:center;gap:27px}.city-label{font-size:9px;display:flex;align-items:center;gap:10px}.city-label i{display:block;width:5px;height:5px;background:var(--red);border-radius:50%;box-shadow:0 0 0 3px #8d211c22}.menu-toggle{width:36px;height:36px;border:1px solid #191614;border-radius:50%;background:transparent;display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:column;cursor:pointer}.menu-toggle span:first-child{width:3px;height:3px;border-radius:50%;background:currentColor}.menu-toggle span:last-child{display:none}.brand-strip{position:absolute;z-index:10;top:70px;left:0;right:0;height:68px;background:#090909;color:white;display:flex;justify-content:space-around;align-items:center;padding:5px 1.6%;box-shadow:0 5px 14px #0004}.brand{height:43px;min-width:11.5%;padding:0 10px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font:600 19px var(--cond);line-height:.95;border-right:1px solid #ffffff26;letter-spacing:-.02em;white-space:nowrap}.brand:last-child{border:0}.brand small{font:500 6px var(--mono);margin-top:4px;letter-spacing:.05em}.brand.script{font:22px var(--script);letter-spacing:-.06em}.brand.red{color:#f12732}.brand.yellow{color:#f3ce42}.brand.orange{color:#e66d27}.brand.pink{color:#e52142;font-size:15px}.brand.magenta{color:#ed42a5}.brand.mint{color:#b5d2ba;font:600 13px var(--cond)}.scene{position:absolute;inset:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateX(3%);transition:opacity .42s ease,transform .5s cubic-bezier(.2,.7,.2,1),visibility .42s;pointer-events:none}.scene.active{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}.scene-index{position:absolute;right:4.2%;bottom:65px;display:flex;align-items:center;gap:10px;font-size:9px;z-index:5}.scene-index span{font-weight:500}.scene-index i{display:block;width:28px;height:1px;background:currentColor}.home-photo{position:absolute;inset:138px 0 0;background-image:url('https://images.unsplash.com/photo-1571266028243-d220c9c3b1fa?auto=format&fit=crop&w=2200&q=88');background-position:center 48%;background-size:cover;filter:grayscale(.22) sepia(.35) contrast(1.08)}.home-shade{position:absolute;inset:138px 0 0;background:linear-gradient(90deg,#c6baa6dd 0%,#c7bba566 32%,#1715130a 70%),linear-gradient(0deg,#17151388 0%,transparent 36%,#bfb29c1a 78%)}.home-center{position:absolute;z-index:2;left:15%;top:26%;width:60%;max-width:740px}.eyebrow{margin:0 0 16px;font-size:9px;letter-spacing:.17em;color:var(--muted)}.home-center h1{font:600 clamp(100px,19vw,268px)/.76 var(--script);letter-spacing:-.075em;margin:0 0 10px 0;transform:rotate(-4deg);transform-origin:left bottom;text-shadow:0 2px 1px #0001}.home-subtitle{font:500 clamp(11px,1.25vw,17px) var(--mono);letter-spacing:.5em;margin:30px 0 22px 21px}.short-rule{display:block;width:48px;height:1px;background:var(--ink);margin-left:23px}.home-message{position:absolute;left:0;top:calc(100% + 5vh);display:flex;align-items:center;gap:42px;color:#f4eee3}.home-message>p{font:600 clamp(20px,2.5vw,36px)/1.03 var(--cond);margin:0;letter-spacing:.02em;text-shadow:0 1px 9px #0008}.home-message em{font-style:normal;color:#e7b167}.home-buttons{display:flex;flex-direction:column;gap:9px}.button{appearance:none;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid transparent;text-decoration:none;text-transform:uppercase;font:500 9px var(--mono);letter-spacing:.09em;padding:13px 15px;min-height:42px;cursor:pointer;transition:background .2s,color .2s,border .2s,transform .2s}.button span{font-size:15px}.button:hover{transform:translateY(-2px)}.button:focus-visible,.nav-link:focus-visible,.filter:focus-visible,.text-button:focus-visible,.scene-dots button:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.button-dark{background:var(--ink);color:#f4eee3}.button-dark:hover{background:var(--red)}.button-outline{background:transparent;color:var(--ink);border-color:#17151388}.button-outline:hover{background:var(--ink);color:var(--paper-light)}.home-buttons .button-outline{border-color:#eee6d6a0;color:#fff}.home-buttons .button-outline:hover{background:#fff;color:var(--ink)}.side-note{position:absolute;z-index:2;left:4%;top:29%;font-size:9px;line-height:1.9;letter-spacing:.16em}.side-note span{display:block;width:34px;height:1px;background:var(--ink);margin-top:16px}.home-coordinate{position:absolute;bottom:58px;left:4.1%;font-size:9px;line-height:1.7;z-index:2}.home-coordinate span{font-size:8px;letter-spacing:.06em}.home-foot{position:absolute;right:4%;bottom:59px;font-size:8px;letter-spacing:.11em;color:#f5ece0;z-index:2}.bottom-nav{height:42px;position:absolute;z-index:11;inset:auto 0 0;background:#c8bdabeb;border-top:1px solid #17151335;padding:0 4.1%;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.12em}.bottom-nav>span:last-child{color:#5c554c}.bottom-nav b{font-size:12px;color:var(--ink);margin-left:8px}.scene-dots{display:flex;gap:9px;align-items:center}.scene-dots button{width:5px;height:5px;border-radius:100%;border:1px solid #29231d;background:transparent;padding:0;cursor:pointer}.scene-dots button.active{width:19px;border-radius:8px;background:var(--ink)}
.events-scene{padding:155px 4.1% 74px;background-color:var(--paper);background-image:radial-gradient(ellipse at 88% 20%,#e3d8c3 0,transparent 50%),linear-gradient(115deg,#c9bfaf,#d2c7b5)}.scene-heading{height:122px;display:flex;align-items:flex-start;position:relative}.scene-heading .eyebrow{margin-bottom:0}.scene-heading h2{font:700 clamp(55px,8.2vw,114px)/.95 var(--cond);letter-spacing:-.035em;margin:5px 0 0}.period{color:var(--red)}.scribble{position:absolute;left:52%;top:0;margin:0;font:24px/.98 var(--script);transform:rotate(-9deg);color:#24201b}.scribble:after{content:"";display:block;width:70px;height:2px;background:currentColor;transform:rotate(-10deg);margin:12px 0 0 5px}.calendar-button{margin-left:auto;margin-top:50px;min-width:124px}.calendar-button b{font-size:16px}.events-toolbar{height:46px;border-bottom:1px solid #19161488;display:flex;align-items:center;justify-content:space-between;font-size:9px}.filters{display:flex;gap:25px;align-items:center}.filter{position:relative;padding:10px 0;border:0;background:none;color:#4f4941;text-transform:uppercase;font:inherit;letter-spacing:.08em;cursor:pointer}.filter.active{color:var(--ink);font-weight:500}.filter.active:after{content:"";position:absolute;bottom:3px;left:0;right:0;height:1px;background:var(--ink)}.filter sup{font-size:7px;margin-left:3px;color:var(--red)}.gallery-controls{display:flex;align-items:center;gap:12px}.gallery-controls button,.place-controls button{width:30px;height:30px;border:1px solid #24201b;background:transparent;border-radius:50%;font-size:16px;cursor:pointer;transition:all .2s}.gallery-controls button:hover,.place-controls button:hover{background:var(--ink);color:var(--paper)}.event-grid{height:calc(100% - 245px);max-height:440px;min-height:230px;padding-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.event-card{position:relative;overflow:hidden;min-width:0;background:#141211;color:#f5eee1;text-align:left;border:1px solid #181614;padding:0;cursor:pointer;animation:card-in .38s both}.event-card:nth-child(2){animation-delay:.04s}.event-card:nth-child(3){animation-delay:.08s}.event-card:nth-child(4){animation-delay:.12s}.event-card[hidden]{display:none}@keyframes card-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.event-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.05);transition:transform .7s,filter .4s}.event-card:hover img{transform:scale(1.06);filter:saturate(1.1) contrast(1.13)}.event-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b0a0a16 22%,#0b0a0a15 42%,#0b0a0aeb 100%)}.event-card:nth-child(2) img{filter:hue-rotate(-15deg) saturate(1.2)}.event-card:nth-child(3) img{filter:hue-rotate(20deg) saturate(1.2)}.event-card:nth-child(4) img{filter:sepia(.24) saturate(1.3)}.poster-tag{position:absolute;z-index:1;top:14px;left:14px;font:9px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#f5eee1}.poster-date{position:absolute;z-index:1;top:11px;right:12px;text-align:right;font:600 20px/.95 var(--cond);text-transform:uppercase}.poster-date small{display:block;font:10px var(--mono);letter-spacing:.08em}.poster-title{position:absolute;z-index:1;left:14px;right:12px;bottom:47px;font:700 clamp(25px,3vw,47px)/.93 var(--cond);text-transform:uppercase;letter-spacing:-.02em}.event-card:nth-child(2) .poster-title{color:#f27a34}.event-card:nth-child(3) .poster-title{color:#fd60c0}.event-card:nth-child(4) .poster-title{color:#eccdbc}.poster-meta{position:absolute;z-index:1;left:14px;right:12px;bottom:13px;display:flex;justify-content:space-between;align-items:end;font:8px var(--mono);text-transform:uppercase;letter-spacing:.08em}.poster-meta span:last-child{color:#d7cbb9;text-align:right}.events-bottom{position:absolute;left:4.1%;right:4.1%;bottom:52px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.12em;color:#514b43}.events-bottom b{font-size:12px;color:var(--ink);margin-left:5px}.music-scene{background:#171513;color:#eae2d4}.music-image{position:absolute;inset:70px 0 42px;background-image:url('https://images.unsplash.com/photo-1571266028243-d220c9c3b1fa?auto=format&fit=crop&w=2000&q=88');background-position:center 54%;background-size:cover;filter:grayscale(.55) contrast(1.18)}.music-overlay{position:absolute;inset:70px 0 42px;background:linear-gradient(90deg,#151312 2%,#151312ee 28%,#15131294 55%,#15131214 100%),linear-gradient(0deg,#151312aa,transparent 35%)}.music-copy{position:absolute;top:21%;left:11%;width:min(560px,54%);z-index:2}.music-copy .eyebrow{color:#c2b5a1}.music-copy h2{font:700 clamp(58px,9vw,122px)/.84 var(--cond);letter-spacing:-.035em;margin:0 0 24px}.music-copy h2 span:not(.period){color:var(--amber)}.music-description{font:400 14px/1.6 var(--sans);color:#d0c7bb;max-width:360px;margin:0 0 21px}.genre-list{display:flex;gap:7px;flex-wrap:wrap}.genre{border:1px solid #eae2d466;color:#ded4c5;background:transparent;padding:8px 11px;text-transform:uppercase;font:8px var(--mono);letter-spacing:.1em;cursor:pointer}.genre.active,.genre:hover{color:#171513;background:var(--amber);border-color:var(--amber)}.now-playing{margin-top:34px;border-top:1px solid #eae2d455;padding-top:14px;display:flex;align-items:center;gap:13px;max-width:410px}.equalizer{height:25px;display:flex;align-items:center;gap:3px}.equalizer i{display:block;width:3px;background:var(--red);height:9px;animation:beat .7s infinite alternate}.equalizer i:nth-child(2){height:17px;animation-delay:.2s}.equalizer i:nth-child(3){height:12px;animation-delay:.4s}.equalizer i:nth-child(4){height:21px;animation-delay:.1s}.equalizer i:nth-child(5){height:6px;animation-delay:.3s}@keyframes beat{to{height:3px}}.now-playing>div{display:flex;flex-direction:column;gap:3px}.now-playing small{font-size:7px;color:#b6aa98}.now-playing strong{font:500 13px var(--sans)}.now-playing>div>span{font-size:8px;color:#b6aa98}.sound-label{margin-left:auto;font-size:7px;color:#d6cabc}.sound-label b{font-size:12px;color:var(--amber);margin-left:5px}.music-stamp{position:absolute;right:11%;top:23%;z-index:2;color:#f5e9d8;transform:rotate(-7deg);font:40px/.8 var(--script);text-shadow:0 0 24px #000}.music-stamp span{font:600 73px/.8 var(--cond);letter-spacing:-.1em}.music-stamp small{display:block;font:8px var(--mono);letter-spacing:.3em;text-align:center;margin-top:8px}.music-scene .scene-index{color:#eae2d4}.places-scene{background:#24201c;color:#f3eadb}.place-photo{position:absolute;inset:70px 0 42px;background-image:url('https://images.unsplash.com/photo-1514933651103-005eec06c04b?auto=format&fit=crop&w=2000&q=88');background-size:cover;background-position:center;filter:saturate(.72) sepia(.16);transition:background-image .3s}.place-vignette{position:absolute;inset:70px 0 42px;background:linear-gradient(90deg,#0d0c0be0 0%,#0d0c0b83 38%,#0d0c0b08 76%),linear-gradient(0deg,#0d0c0bba,transparent 45%)}.place-left{position:absolute;top:23%;left:9%;z-index:2}.place-left .eyebrow{color:#c5b7a4}.place-left h2{font:700 clamp(67px,10vw,130px)/.83 var(--cond);letter-spacing:-.03em;margin:0}.place-left h2 .period{color:var(--amber)}.place-counter{font-size:10px;margin-top:27px;color:#c8bdad}.place-counter span{font-size:18px;color:#f3eadb}.place-card{position:absolute;z-index:3;right:9%;bottom:17%;width:min(370px,36%);padding:26px;background:#d5cab7;color:#201c18;box-shadow:8px 12px 35px #0005}.place-kicker{font-size:8px;color:#665c50}.place-card h3{font:600 42px var(--script);margin:12px 0 10px;transform:rotate(-3deg);transform-origin:left}.place-card>p{font:13px/1.55 var(--sans);max-width:290px;color:#544c42}.place-tags{display:flex;gap:7px;margin:19px 0 21px}.place-tags span{font-size:7px;border:1px solid #3a332a66;padding:6px 7px}.place-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.button-light{background:var(--ink);color:var(--paper-light);padding:11px 12px;min-height:38px}.text-button{background:none;border:0;padding:8px 0;color:inherit;text-transform:uppercase;font:9px var(--mono);letter-spacing:.08em;cursor:pointer}.text-button span{font-size:14px;margin-left:8px}.place-controls{position:absolute;z-index:3;right:4%;top:50%;display:flex;gap:8px}.place-controls button{color:#eee4d5;border-color:#eee4d599}.place-caption{position:absolute;left:4%;bottom:57px;font-size:8px;letter-spacing:.12em}.places-scene .scene-index{color:#eee4d5}.about-scene{background:#d2c7b5;background-image:linear-gradient(116deg,#d4c9b8,#b8ad9e)}.about-content{position:absolute;left:15%;top:17%;z-index:2}.about-content .eyebrow{margin-bottom:22px}.about-content h2{font:700 clamp(56px,9vw,118px)/.8 var(--cond);letter-spacing:-.04em;margin:0}.about-content h2 span{color:var(--red)}.about-statement{width:340px;max-width:40vw;font:14px/1.65 var(--sans);margin:28px 0 24px;color:#4c453c}.about-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.about-actions .text-button{flex-basis:100%;text-align:left}.about-mark{position:absolute;right:14%;top:20%;font:600 clamp(85px,14vw,180px)/.71 Georgia,serif;letter-spacing:-.12em;color:#1b1916;opacity:.9}.about-aside{position:absolute;left:4%;top:34%;display:flex;flex-direction:column;gap:8px;font-size:8px;line-height:1.4}.back-home{position:absolute;right:4.1%;bottom:66px;border:0;background:none;font:9px var(--mono);text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.about-scene .scene-index{color:var(--ink)}
dialog{padding:0;border:0;color:var(--ink);background:var(--paper-light);box-shadow:0 18px 90px #000a;max-height:min(86dvh,720px);overscroll-behavior:contain}dialog::backdrop{background:#080706c9;backdrop-filter:blur(3px)}.event-dialog{width:min(880px,92vw);height:min(570px,82dvh);display:grid;grid-template-columns:1.04fr 1fr}.event-dialog:not([open]),.contact-dialog:not([open]){display:none}.dialog-close{position:absolute;right:15px;top:12px;z-index:5;width:36px;height:36px;border:1px solid currentColor;border-radius:50%;background:transparent;font:25px/1 var(--sans);cursor:pointer}.dialog-close:hover{background:var(--ink);color:var(--paper)}.dialog-image{background-size:cover;background-position:center;min-height:100%}.dialog-content{padding:56px 36px 30px;display:flex;flex-direction:column}.dialog-content .eyebrow{font-size:8px}.dialog-content h2{font:700 clamp(36px,5vw,58px)/.9 var(--cond);text-transform:uppercase;margin:8px 0 19px}.dialog-content>p:not(.eyebrow){font:14px/1.65 var(--sans);color:#514a42}.dialog-lineup{border-top:1px solid #25211c55;border-bottom:1px solid #25211c55;padding:13px 0;margin-top:auto;display:flex;flex-direction:column;gap:7px}.dialog-lineup small{font-size:8px;color:#746b60}.dialog-lineup strong{font:500 12px var(--sans)}.dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:19px}.dialog-bottom>span{font:8px var(--mono);text-transform:uppercase;letter-spacing:.08em}.contact-dialog{width:min(590px,94vw);max-height:88dvh}.contact-content{padding:48px 52px 38px}.contact-content h2{font:700 clamp(38px,7vw,66px)/.88 var(--cond);margin:0 0 14px}.contact-content>p:not(.eyebrow){font:13px/1.5 var(--sans);color:#5b5349}.contact-content form{display:grid;gap:12px;margin-top:21px}.contact-content label{display:grid;gap:6px;font:8px var(--mono);letter-spacing:.1em;text-transform:uppercase}.contact-content input,.contact-content select,.contact-content textarea{width:100%;border:1px solid #4d443a77;background:#e8ddcb;padding:11px 12px;font:12px var(--sans);color:var(--ink);border-radius:0}.contact-content textarea{resize:vertical}.contact-content form .button{justify-self:start}.form-note{font:11px var(--sans);margin:0;min-height:14px;color:var(--red)}
@media(max-width:760px){.app-shell{min-height:0}.topbar{height:58px;padding:0 5%;grid-template-columns:1fr auto}.wordmark{font-size:29px}.main-nav{position:absolute;display:none;top:58px;left:0;right:0;background:#d2c7b8f5;padding:15px 5% 20px;grid-template-columns:repeat(5,1fr);gap:4px;border-bottom:1px solid #17151355}.main-nav.open{display:grid}.nav-link{font-size:8px;padding:10px 0}.nav-link:after{bottom:4px}.top-actions{gap:14px}.city-label{font-size:7px}.menu-toggle{width:31px;height:31px}.brand-strip{top:58px;height:50px;padding:3px 1%;overflow:hidden}.brand{min-width:14%;height:34px;padding:0 5px;font-size:14px}.brand.script{font-size:16px}.brand small{font-size:5px}.brand.pink{font-size:11px}.brand.mint{font-size:9px}.home-photo,.home-shade{inset:108px 0 0}.home-photo{background-position:54% center}.home-shade{background:linear-gradient(90deg,#c9bdabd9,#c9bdab66 58%,#1715131c),linear-gradient(0deg,#171513ab,transparent 52%)}.home-center{left:8%;top:26%;width:84%}.home-center h1{font-size:clamp(88px,25vw,170px)}.home-subtitle{margin:21px 0 17px 9px;font-size:10px;letter-spacing:.36em}.short-rule{margin-left:10px}.home-message{top:calc(100% + 4vh);gap:16px;align-items:flex-start;flex-direction:column}.home-message>p{font-size:25px}.home-buttons{flex-direction:row}.home-buttons .button{padding:10px 11px;min-height:37px;gap:8px;font-size:7px}.side-note{display:none}.home-coordinate{left:5%;bottom:57px;font-size:7px}.home-coordinate span{font-size:6px}.home-foot{right:5%;bottom:60px;width:47%;text-align:right;font-size:6px;line-height:1.5}.scene-index{right:5%;bottom:68px;font-size:8px}.bottom-nav{height:42px;padding:0 5%;font-size:6px}.bottom-nav>span:last-child{max-width:125px;text-align:right;font-size:6px}.scene-dots{gap:7px}.events-scene{padding:128px 5% 72px}.scene-heading{height:104px}.scene-heading h2{font-size:clamp(54px,15vw,92px)}.scene-heading .eyebrow{font-size:7px}.scribble{left:55%;top:4px;font-size:17px}.calendar-button{position:absolute;right:0;top:49px;margin:0;min-width:auto;min-height:32px;padding:7px 9px;font-size:7px}.events-toolbar{height:40px;font-size:7px}.filters{gap:13px;overflow:auto;white-space:nowrap;max-width:80%}.filter{font-size:7px}.gallery-controls{gap:5px}.gallery-controls button{width:24px;height:24px;font-size:13px}.gallery-controls span{display:none}.event-grid{height:calc(100% - 225px);min-height:220px;max-height:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;padding-top:9px}.event-card{min-height:0}.poster-tag{top:9px;left:9px;font-size:7px}.poster-date{top:8px;right:8px;font-size:16px}.poster-title{left:10px;right:8px;bottom:38px;font-size:clamp(23px,7vw,36px)}.poster-meta{left:10px;right:8px;bottom:9px;font-size:6px}.events-bottom{left:5%;right:5%;bottom:50px;font-size:6px}.events-bottom span:last-child{max-width:150px;text-align:right}.music-image,.music-overlay,.place-photo,.place-vignette{inset:58px 0 42px}.music-image{background-position:60% center}.music-overlay{background:linear-gradient(90deg,#151312ee,#15131290 75%,#15131242),linear-gradient(0deg,#151312ba,transparent 60%)}.music-copy{left:7%;top:17%;width:86%}.music-copy h2{font-size:clamp(62px,17vw,102px)}.music-copy .eyebrow{font-size:8px}.music-description{font-size:12px;max-width:310px}.genre-list{gap:5px}.genre{font-size:7px;padding:7px 9px}.now-playing{max-width:100%;margin-top:26px}.now-playing strong{font-size:11px}.sound-label{font-size:6px}.music-stamp{right:7%;top:14%;font-size:25px}.music-stamp span{font-size:48px}.music-stamp small{font-size:6px}.places-scene .place-left{top:17%;left:7%}.place-left .eyebrow{font-size:7px}.place-left h2{font-size:clamp(59px,16vw,98px)}.place-card{right:6%;left:6%;bottom:12%;width:auto;padding:17px 18px}.place-card h3{font-size:34px;margin:7px 0}.place-card>p{font-size:11px;margin:5px 0}.place-tags{margin:12px 0}.place-tags span{font-size:6px;padding:5px}.place-actions{gap:10px}.place-actions .button{min-height:33px;font-size:7px}.place-actions .text-button{font-size:7px}.place-controls{top:43%;right:6%}.place-controls button{width:27px;height:27px}.place-caption{left:5%;bottom:55px;font-size:6px}.about-content{left:8%;top:17%}.about-content .eyebrow{font-size:8px}.about-content h2{font-size:clamp(58px,16vw,100px)}.about-statement{max-width:75vw;width:320px;font-size:12px;margin:22px 0}.about-actions{gap:7px}.about-actions .button{min-height:37px;padding:10px;font-size:7px;gap:8px}.about-actions .text-button{font-size:7px}.about-mark{right:8%;top:62%;font-size:70px;line-height:.66}.about-aside{left:auto;right:5%;top:34%;font-size:6px;text-align:right}.back-home{right:5%;bottom:66px;font-size:7px}.event-dialog{width:94vw;height:min(84dvh,680px);grid-template-columns:1fr;grid-template-rows:38% 62%;overflow-y:auto}.dialog-content{padding:24px 22px 20px}.dialog-content h2{font-size:40px;margin:6px 0 9px}.dialog-content>p:not(.eyebrow){font-size:12px;margin:0 0 12px}.dialog-lineup{padding:9px 0}.dialog-bottom{padding-top:12px}.contact-content{padding:43px 25px 25px}.contact-dialog{max-height:86dvh}.contact-content h2{font-size:45px}.contact-content>p:not(.eyebrow){font-size:12px}.contact-content form{gap:10px}.contact-content input,.contact-content select,.contact-content textarea{padding:9px}}
@media(max-height:650px) and (min-width:761px){.topbar{height:58px}.brand-strip{top:58px;height:52px}.home-photo,.home-shade{inset:110px 0 0}.home-center{top:21%}.home-center h1{font-size:clamp(92px,16vw,204px)}.home-subtitle{margin:20px 0 14px}.home-message{top:calc(100% + 3vh)}.events-scene{padding-top:125px}.scene-heading{height:95px}.scene-heading h2{font-size:82px}.event-grid{height:calc(100% - 215px)}.music-copy{top:16%}.music-copy h2{font-size:94px}.about-content{top:14%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* RUIDO TV: editorial paper, analog cabinet and real muted video loops. */
.app-shell.is-tv .brand-strip{display:none}
.tv-scene{color:var(--ink);background:radial-gradient(ellipse at 48% 52%,#e0d6c5 0,#d0c5b3 56%,#b6aa99 100%);padding:70px 3.2% 42px}
.tv-heading{position:absolute;left:25%;right:25%;top:13%;height:23%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.tv-wordmark{display:flex;align-items:center;justify-content:center;gap:8px;height:78%;white-space:nowrap}
.tv-wordmark>span{font:clamp(70px,11vw,148px)/.85 var(--script);letter-spacing:-.09em;transform:rotate(-5deg);text-shadow:1px 2px 1px #0002}
.tv-wordmark>strong{position:relative;font:700 clamp(62px,8vw,112px)/.82 var(--cond);letter-spacing:-.08em;margin-top:29px;padding:0 5px;text-shadow:0 1px 0 #0002}
.tv-wordmark>strong:before,.tv-wordmark>strong:after{content:"";position:absolute;left:8%;right:0;height:6px;background:repeating-linear-gradient(90deg,var(--ink) 0 9px,transparent 9px 13px);opacity:.9}
.tv-wordmark>strong:before{top:-13px}.tv-wordmark>strong:after{top:-4px;height:3px}
.tv-heading>p{font:500 12px var(--mono);letter-spacing:.42em;margin:9px 0 0 12px}
.tv-side-note,.tv-coordinate{position:absolute;top:22%;z-index:2;font:9px/1.85 var(--mono);letter-spacing:.13em}
.tv-side-note{left:3.8%}.tv-side-note span{display:block;width:34px;height:1px;background:var(--ink);margin-top:14px}
.tv-coordinate{right:4%;text-align:left}.tv-coordinate span{font-size:8px;letter-spacing:.08em}
.tv-controls{position:absolute;left:3.2%;right:3.2%;top:34%;display:flex;align-items:center;justify-content:space-between;font:8px var(--mono);letter-spacing:.13em}
.live-indicator{display:flex;align-items:center;gap:7px}.live-indicator i{width:6px;height:6px;border-radius:50%;background:#a92720;box-shadow:0 0 0 3px #a9272026;animation:signal-pulse 1.4s infinite}
.tv-play-toggle{border:0;background:transparent;padding:7px 0;color:var(--ink);font:inherit;letter-spacing:inherit;cursor:pointer}.tv-play-toggle span{font:12px var(--sans);margin-left:6px}
@keyframes signal-pulse{50%{box-shadow:0 0 0 6px #a927200b;opacity:.55}}
.tv-wall{position:absolute;left:2.7%;right:16.5%;top:39%;height:38%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;filter:drop-shadow(0 18px 16px #21191055)}
.crt{position:relative;min-width:0;padding:9px 9px 0;border:2px solid #353431;border-radius:11px 11px 5px 5px;background:linear-gradient(145deg,#55534f 0%,#1a1a19 11%,#090a0a 60%,#252422 100%);box-shadow:inset 0 0 0 2px #77746d55,inset 0 -5px 5px #000,0 3px 0 #080808;display:flex;flex-direction:column}
.crt:before{content:"";position:absolute;inset:5px 5px auto;height:2px;background:#ffffff42;border-radius:5px}
.crt-bezel{flex:1;min-height:0;padding:8px;border:1px solid #89847a55;border-radius:13px 13px 16px 16px;background:linear-gradient(145deg,#343331,#090909 38%,#20201f);box-shadow:inset 0 0 13px #000;}
.crt-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:19px 19px 21px 21px;background:#111;box-shadow:inset 0 0 23px #000,0 0 1px 2px #000;isolation:isolate}
.crt-screen:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,#09090915 0 1px,transparent 1px 4px),linear-gradient(90deg,#23120b24,transparent 20%,transparent 82%,#24150f35);mix-blend-mode:multiply}
.crt-screen video{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.76) contrast(1.13) sepia(.12);transform:scale(1.04)}
.crt:nth-child(2) video{filter:saturate(.83) contrast(1.12) hue-rotate(188deg)}.crt:nth-child(3) video{filter:saturate(1.05) contrast(1.15) hue-rotate(-8deg)}
.screen-sheen{position:absolute;z-index:3;inset:0;background:linear-gradient(122deg,#fff2 0%,#fff0 34%,#fff1 51%,transparent 69%);pointer-events:none}
.screen-channel{position:absolute;z-index:4;bottom:8px;left:10px;color:#fff;font:7px var(--mono);letter-spacing:.1em;text-shadow:0 1px 4px #000}
.crt-label{height:39px;flex:none;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;color:#e7e2d8;text-align:center;text-shadow:0 1px #000;font-family:var(--mono);letter-spacing:.1em}
.crt-label strong{font-size:clamp(8px,.85vw,12px);font-weight:500}.crt-label span{font-size:7px;color:#aaa398}
.crt-led{position:absolute;right:10px;bottom:11px;width:3px;height:3px;border-radius:50%;background:#c43c26;box-shadow:0 0 5px #f43b20}
.tv-tapes{position:absolute;top:51%;right:0;width:15.5%;display:flex;flex-direction:column;gap:6px;transform:rotate(2deg);filter:drop-shadow(4px 6px 5px #0004)}
.tv-tapes span{padding:7px 8px;background:linear-gradient(90deg,#c9bba5,#e4d7c2 18%,#c9bca7);border:1px solid #544a3b;font:italic 600 clamp(8px,1vw,14px) var(--cond);text-align:center;transform:skewY(-2deg);box-shadow:inset 0 1px #fff8,inset 0 -2px #71655466}
.tv-tagline{position:absolute;left:20%;right:20%;bottom:9.5%;text-align:center;color:#6c655c;font:9px var(--mono);letter-spacing:.42em}
.tv-tagline span{display:block;width:32px;height:1px;background:#36312b;margin:14px auto 0}
.tv-scene .scene-index{bottom:64px}
@media(max-width:760px){
  .app-shell.is-tv .topbar{background:#d0c5b3}
  .tv-scene{padding:58px 4% 42px}
  .tv-heading{left:11%;right:11%;top:13%;height:22%}
  .tv-wordmark>span{font-size:clamp(63px,19vw,104px)}
  .tv-wordmark>strong{font-size:clamp(52px,15vw,82px);margin-top:22px}
  .tv-heading>p{font-size:8px;letter-spacing:.34em;margin-top:6px}
  .tv-side-note{left:4%;top:24%;font-size:6px;line-height:1.65}
  .tv-coordinate{right:4%;top:24%;font-size:6px;line-height:1.65}
  .tv-coordinate span{font-size:6px}
  .tv-controls{top:34%;left:4%;right:4%;font-size:6px}
  .live-indicator i{width:5px;height:5px}
  .tv-wall{left:3%;right:3%;top:40%;height:31%;gap:5px}
  .crt{padding:5px 4px 0;border-radius:7px 7px 3px 3px}
  .crt-bezel{padding:4px;border-radius:8px}
  .crt-screen{border-radius:10px}
  .screen-channel{left:4px;bottom:4px;font-size:4px}
  .crt-label{height:28px;gap:1px;letter-spacing:.03em}
  .crt-label strong{font-size:clamp(5px,1.6vw,8px)}
  .crt-label span{font-size:5px}
  .crt-led{right:4px;bottom:8px;width:2px;height:2px}
  .tv-tapes{top:74%;left:17%;right:17%;width:auto;flex-direction:row;gap:3px;transform:rotate(-1deg)}
  .tv-tapes span{flex:1;min-width:0;padding:5px 2px;font-size:clamp(5px,1.6vw,8px)}
  .tv-tagline{left:6%;right:6%;bottom:13%;font-size:6px;letter-spacing:.24em}
  .tv-tagline span{margin-top:9px}
  .tv-scene .scene-index{bottom:62px}
}
@media(max-height:650px) and (min-width:761px){
  .tv-heading{top:10%;height:21%}.tv-controls{top:32%}.tv-wall{top:37%;height:43%}.tv-tapes{top:49%}.tv-tagline{bottom:6%}
}

/* Editorial refinements and clear interaction states. */
.home-photo{background-image:url("./assets/rhg-nightlife-hero.jpg")!important;background-position:center 56%;filter:saturate(.84) contrast(1.09)}
.home-shade{background:linear-gradient(90deg,#d2c7b4f2 0%,#d2c7b4d9 24%,#d2c7b47a 45%,#17151308 75%),linear-gradient(0deg,#12100fe0 0%,transparent 30%,#17151314 92%)}
.home-message>p{font-size:clamp(23px,3vw,42px);letter-spacing:.025em}
.brand{appearance:none;background:transparent;border-top:0;border-bottom:0;border-left:0;cursor:pointer;transition:transform .22s ease,filter .22s ease}
.brand:hover{transform:translateY(-2px);filter:brightness(1.18)}
.brand:focus-visible{outline:2px solid var(--amber);outline-offset:-2px}
.brand-strip{scrollbar-width:none}
.nav-link[aria-current="page"]{font-weight:700}
.nav-link[aria-current="page"]:after{right:0}
.filter:disabled,.gallery-controls button:disabled,.place-controls button:disabled{cursor:not-allowed;opacity:.42}
.events-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;text-align:center;border:1px solid #28231c66;background:#d8cdbb88;animation:card-in .3s both}
.events-empty>span{font:8px var(--mono);letter-spacing:.15em;color:#5c554c}
.events-empty>strong{font:600 clamp(29px,4vw,48px)/.95 var(--cond);text-transform:uppercase;margin:13px 0 7px}
.events-empty>p{font:12px var(--sans);color:#514a42;margin:0 0 17px}
.events-empty .button{min-height:36px;padding:9px 12px;font-size:8px}
.place-actions{row-gap:7px}
.place-booking[hidden]{display:none}
.place-actions .button{min-height:38px}
.place-card{backdrop-filter:blur(1px)}
.contact-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}
.contact-note{margin-top:24px;padding-top:12px;border-top:1px solid #17151344;font:9px/1.6 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:#61594f}
.music-scene .equalizer i{animation:none;height:7px}
.music-scene .equalizer i:nth-child(2){height:13px}.music-scene .equalizer i:nth-child(3){height:9px}.music-scene .equalizer i:nth-child(4){height:16px}.music-scene .equalizer i:nth-child(5){height:5px}
.sound-label{border:0;background:transparent;padding:6px 0;cursor:pointer;white-space:nowrap}
.sound-label:hover{color:var(--amber)}
.about-content h2{font-size:clamp(53px,8.6vw,110px)}
.music-copy h2{font-size:clamp(52px,8.2vw,112px)}
.bottom-nav{backdrop-filter:blur(6px)}
@media(max-width:760px){
  .main-nav{grid-template-columns:repeat(6,minmax(0,1fr))}
  .brand-strip{justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain}
  .brand{flex:0 0 14.3%;min-width:14.3%}
  .home-shade{background:linear-gradient(90deg,#d2c7b4f0 0%,#d2c7b4b8 37%,#1715130c 78%),linear-gradient(0deg,#12100fe5 0%,transparent 35%,#17151310 94%)}
  .home-message>p{font-size:25px}
  .events-empty{padding:12px}
  .events-empty>p{font-size:10px}
  .place-actions{gap:6px}
  .place-actions .button{padding:8px;font-size:6px}
  .place-card{max-height:48%;overflow-y:auto}
  .about-content h2{font-size:clamp(55px,15vw,96px)}
}

/* Warm concrete walls and centered venue marks. */
.app-shell{
  background-color:#b7ad9d;
  background-image:
    radial-gradient(ellipse at 18% 22%,#e2d6c1a8 0,transparent 38%),
    radial-gradient(ellipse at 84% 76%,#82796d3d 0,transparent 42%),
    linear-gradient(115deg,#c8bdab,#a99f91);
}
.paper-grain,.about-texture{opacity:.24}
.topbar{background:linear-gradient(180deg,#c8bdabde,#b7ad9da8)}
.events-scene{
  background-color:#b9ae9f;
  background-image:
    url("./assets/concrete-wall.svg"),
    radial-gradient(ellipse at 88% 20%,#e3d8c3a8 0,transparent 50%),
    repeating-linear-gradient(0deg,transparent 0 106px,#81786b1c 107px,#f0e8da24 108px,transparent 109px 214px),
    linear-gradient(115deg,#c9bfaf,#b4a998);
  background-size:cover,auto,auto,cover;
  background-blend-mode:soft-light,normal,normal,normal;
}
.home-photo{
  background-image:
    radial-gradient(ellipse at 28% 35%,#d6cbb8 0,transparent 40%),
    repeating-linear-gradient(0deg,transparent 0 138px,#746b5f24 139px,#eee5d624 140px,transparent 141px 280px),
    linear-gradient(180deg,#c3b8a7 0%,#b7ad9d 62%,#b1a694e8 72%,#b1a69400 85%),
    url("./assets/rhg-nightlife-hero.jpg")!important;
  background-size:cover,cover,cover,cover;
  background-position:center,center,center,center 56%;
  background-blend-mode:normal,normal,normal,luminosity;
  filter:saturate(.84) contrast(1.09);
}
.home-photo::before{
  content:"";
  position:absolute;
  inset:0 0 17%;
  background:url("./assets/concrete-wall.svg") center/cover no-repeat;
  opacity:.96;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 77%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0%,#000 77%,transparent 100%);
}
.tv-scene{
  background-color:#b6aa99;
  background-image:url("./assets/concrete-wall.svg"),radial-gradient(ellipse at 48% 52%,#e0d6c5 0,#d0c5b3 56%,#b6aa99 100%);
  background-size:cover,cover;
  background-blend-mode:soft-light,normal;
}
.about-scene{
  background-color:#c4b9a8;
  background-image:url("./assets/concrete-wall.svg"),linear-gradient(116deg,#d4c9b8,#b8ad9e);
  background-size:cover,cover;
  background-blend-mode:soft-light,normal;
}
.home-shade{
  background:
    linear-gradient(90deg,#d2c7b4ea 0%,#d2c7b4c9 26%,#d2c7b45e 52%,#17151308 78%),
    linear-gradient(0deg,#12100fc9 0%,transparent 34%,#17151310 92%);
}
.brand-strip{
  justify-content:stretch;
  padding:0 1.6%;
  background-color:#090909;
  background-image:linear-gradient(180deg,#ffffff0a 0 1px,transparent 1px 100%),repeating-linear-gradient(90deg,#ffffff05 0 1px,transparent 1px 7px);
}
.brand{
  flex:1 1 0;
  width:0;
  min-width:0;
  height:100%;
  padding:5px 8px;
  justify-content:center;
  align-items:center;
  text-align:center;
  line-height:.98;
  white-space:normal;
  border-right:1px solid #ffffff35;
}
.brand:last-child{border-right:0}
.brand small{display:block;text-align:center;line-height:1.15}
.brand-strip .brand:hover{transform:translateY(-1px)}
.bottom-nav{background-color:#c8bdabe8}
@media(max-width:760px){
  .brand-strip{padding:4px 8px}
  .brand{flex:0 0 120px;width:120px;min-width:120px;height:100%;padding:4px 8px}
  .home-photo{background-position:center,center,center,center 58%}
}

/* Events page layout and motion live in events.css */
