:root{
  --paper:#fffaf0;--ink:#090909;--acid:#dfff00;--hot:#ff2b93;--signal:#ff4d00;--cyan:#00e5ff;--soft:#ded8ca;--line:#090909;
  --calendar-bg:#fffaf0;--cell-bg:transparent;--line-width:2px;--radius:0px;--inactive-opacity:.14;--nudge:14px;--motion:380ms;
  --font-display:"Arial Black","Noto Sans Hebrew",Arial,sans-serif;--font-body:"Noto Sans Hebrew",Arial,sans-serif;--font-utility:"Arial Narrow","Noto Sans Hebrew",Arial,sans-serif;
  --date-font:var(--font-display);--title-font:var(--font-display);--meta-font:var(--font-utility);--date-color:var(--ink);--title-color:var(--ink);--meta-color:var(--ink);--date-scale:1;--title-scale:1;--meta-scale:1;
  --filter-bg:transparent;--filter-color:var(--ink);--filter-active-bg:var(--ink);--filter-active-color:var(--paper);--badge-bg:var(--acid);--badge-color:var(--ink)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.hidden{display:none!important}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.site-header{position:sticky;top:0;z-index:80;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:14px 18px;background:var(--acid);border-bottom:var(--line-width) solid var(--ink);mix-blend-mode:normal}.site-logo-wrap{display:flex;align-items:center;min-width:130px}.site-logo{max-width:180px;max-height:54px;object-fit:contain}.logo-fallback{font:900 24px/1 var(--font-display);letter-spacing:-.05em}.site-nav{display:flex;justify-content:center;gap:24px;font:800 14px/1 var(--font-utility)}.site-nav a:hover{background:var(--ink);color:var(--acid)}.menu-button{border:0;background:transparent;font-size:26px}
.hero{background:var(--hot);color:var(--ink);border-bottom:var(--line-width) solid var(--ink)}.hero-title-wrap{padding:clamp(28px,5vw,72px) 18px 22px}.hero h1{margin:0;max-width:1300px;font:900 clamp(52px,10vw,150px)/.82 var(--font-display);letter-spacing:-.065em;white-space:pre-line}.hero-media{position:relative;width:100%;height:min(78vh,900px);min-height:420px;overflow:hidden;background:var(--ink)}.hero-media video,.hero-poster img{width:100%;height:100%;object-fit:cover;display:block}.hero-poster{position:absolute;inset:0}.hero-blank{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:var(--paper);font:900 clamp(28px,5vw,72px)/.9 var(--font-display);background:repeating-linear-gradient(135deg,#111 0 28px,#1a1a1a 28px 56px)}.hero-blank small{display:block;margin-top:18px;font:700 12px/1.4 var(--font-utility);letter-spacing:.08em}.hero-overlay{position:absolute;z-index:2;max-width:46vw;max-height:80%;left:4vw;bottom:-4%;pointer-events:none}.motion-drift{animation:drift 6s ease-in-out infinite alternate}.motion-float{animation:floaty 4.5s ease-in-out infinite}.motion-rotate{animation:slowrotate 13s linear infinite}@keyframes drift{to{transform:translate(30px,-18px) rotate(3deg)}}@keyframes floaty{50%{transform:translateY(-18px)}}@keyframes slowrotate{to{transform:rotate(360deg)}}
.next-strip{display:grid;grid-template-columns:180px 1fr;align-items:center;min-height:84px;background:var(--cyan);border-bottom:var(--line-width) solid var(--ink);padding:0 18px;font-weight:800}.next-kicker{font:900 16px var(--font-utility)}.next-event{font:900 clamp(18px,2.6vw,38px)/1 var(--font-display);overflow:hidden}.next-event a{display:flex;gap:20px;align-items:center;justify-content:space-between}.next-event small{font:700 13px var(--font-utility)}
.section-heading{display:flex;align-items:end;justify-content:space-between;padding:18px;border-bottom:var(--line-width) solid var(--ink);background:var(--ink);color:var(--paper);font:900 15px var(--font-utility)}.section-heading span{font-size:22px}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);min-height:420px;border-bottom:var(--line-width) solid var(--ink)}.feature-screen{position:relative;overflow:hidden;min-height:420px;border-left:var(--line-width) solid var(--ink);background:var(--hot);isolation:isolate}.feature-screen:last-child{border-left:0}.feature-card{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;background-size:cover;background-position:center;color:var(--paper);text-shadow:0 1px 18px #000}.feature-card::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 15%,rgba(0,0,0,.06) 38%,rgba(0,0,0,.78));z-index:-1}.feature-card.no-media{background:var(--signal);color:var(--ink);text-shadow:none}.feature-type{font:900 11px/1 var(--font-utility);text-transform:uppercase}.feature-card h3{margin:8px 0 0;font:900 clamp(32px,4vw,68px)/.86 var(--font-display);letter-spacing:-.055em}.feature-card p{max-width:42ch;margin:10px 0 0;font-size:15px}.feature-screen.curtain::after{content:"";position:absolute;z-index:20;inset:-2px;background:var(--acid);animation:curtain .62s cubic-bezier(.8,0,.2,1)}@keyframes curtain{0%{transform:translateY(-102%)}45%{transform:translateY(0)}55%{transform:translateY(0)}100%{transform:translateY(102%)}}
.programme{background:var(--calendar-bg)}.programme-head{display:flex;justify-content:space-between;align-items:end;padding:34px 18px 18px;background:var(--signal);border-bottom:var(--line-width) solid var(--ink)}.programme-kicker{font:900 12px var(--font-utility)}.programme h2{margin:0;font:900 clamp(64px,10vw,150px)/.72 var(--font-display);letter-spacing:-.07em}.view-switch{display:flex;direction:rtl}.view-switch button,.period-nav button,.quick-filters button,.filter-mode button,.active-filter{border:var(--line-width) solid var(--ink);background:var(--paper);padding:10px 14px;font:800 13px var(--font-utility);margin-left:-2px}.view-switch button.active,.quick-filters button.active,.filter-mode button.active{background:var(--ink);color:var(--paper)}.calendar-controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 18px;border-bottom:var(--line-width) solid var(--ink);background:var(--acid)}.period-nav{display:flex;direction:ltr}.period-nav button{min-width:46px;background:var(--paper)}.quick-filters{display:flex;flex-wrap:wrap;gap:6px}.quick-filters button{margin:0}.filter-mode{display:flex;align-items:center;gap:5px;font:800 12px var(--font-utility)}.active-filters{display:flex;gap:8px;padding:0 18px;flex-wrap:wrap}.active-filter{margin:10px 0;background:var(--hot)}.calendar{transition:opacity var(--motion),filter var(--motion)}.calendar.transitioning{opacity:.15;filter:blur(3px)}.weekday-head{display:grid;grid-template-columns:repeat(7,1fr);direction:ltr;border-bottom:var(--line-width) solid var(--line)}.weekday-head span{padding:8px;text-align:center;font:900 11px var(--font-utility);border-right:var(--line-width) solid var(--line)}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);direction:ltr}.month-cell{position:relative;min-height:220px;background:var(--cell-bg);border-right:var(--line-width) solid var(--line);border-bottom:var(--line-width) solid var(--line);padding:8px;overflow:hidden;transition:background var(--motion),opacity var(--motion),transform var(--motion)}.month-cell.outside{opacity:.28}.month-cell.today-cell{box-shadow:inset 0 0 0 7px var(--hot)}.month-cell.day-filtered{background:color-mix(in srgb,var(--paper),#999 28%)}.month-date{border:0;background:transparent;font:900 calc(34px * var(--date-scale))/1 var(--date-font);color:var(--date-color);padding:0;position:relative;z-index:6}.month-events{display:grid;gap:5px;margin-top:10px;direction:rtl}.month-event{position:relative;display:block;width:100%;min-height:60px;padding:8px;border:1px solid var(--ink);background:var(--paper);overflow:hidden;text-align:right;transition:transform var(--motion),filter var(--motion),opacity var(--motion),background var(--motion);isolation:isolate}.month-event:hover{transform:translate(calc(var(--nudge) * -1),-3px);z-index:10;background:var(--acid)}.month-event.filtered-out,.week-event.filtered-out,.today-event.filtered-out{opacity:var(--inactive-opacity);filter:grayscale(1);transform:scale(.96)}.filter-only .filtered-out{display:none}.event-media{position:absolute;inset:0;z-index:0}.event-media img,.event-media video{width:100%;height:100%;object-fit:cover}.event-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,240,.94),rgba(255,250,240,.2))}.event-time{position:relative;z-index:2;font:900 calc(11px * var(--meta-scale))/1 var(--meta-font);color:var(--meta-color)}.event-title{position:relative;z-index:2;display:block;margin-top:3px;font:900 calc(17px * var(--title-scale))/.92 var(--title-font);color:var(--title-color);letter-spacing:-.035em}.event-badge{position:relative;z-index:2;display:inline-block;margin-top:5px;padding:3px 5px;background:var(--badge-bg);color:var(--badge-color);font:900 9px var(--font-utility)}.calendar-insert{position:relative;height:100%;min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:12px;background:var(--hot);color:var(--ink);overflow:hidden}.calendar-insert img,.calendar-insert video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.calendar-insert h4{position:relative;z-index:2;margin:0;font:900 clamp(24px,3vw,52px)/.85 var(--font-display);letter-spacing:-.04em}.calendar-insert p{position:relative;z-index:2;font-weight:700}.calendar-legend{padding:10px 18px;border-bottom:var(--line-width) solid var(--ink);font:800 11px var(--font-utility)}
.week-grid{display:grid;grid-template-columns:repeat(7,minmax(160px,1fr));direction:ltr;overflow-x:auto}.week-day{min-height:68vh;border-right:var(--line-width) solid var(--line);direction:rtl}.week-day-head{width:100%;border:0;border-bottom:var(--line-width) solid var(--line);background:var(--paper);padding:10px;text-align:right}.week-day-num{font:900 clamp(48px,6vw,90px)/.75 var(--date-font)}.week-day-name{font:800 11px var(--font-utility)}.week-events{padding:8px;display:grid;gap:8px}.week-event{position:relative;overflow:hidden;isolation:isolate;border:var(--line-width) solid var(--ink);padding:10px;background:var(--paper);min-height:120px;transition:all var(--motion)}.week-event:hover{background:var(--cyan);transform:translateY(-6px)}.week-event .event-title{font-size:calc(25px * var(--title-scale))}.event-venue{margin-top:10px;font:700 12px var(--font-utility)}.empty-event{border-style:dashed;color:#777}
.today-stage{display:grid;grid-template-columns:minmax(260px,32vw) 1fr;min-height:72vh}.today-date-panel{position:sticky;top:82px;align-self:start;padding:18px;border-left:var(--line-width) solid var(--line);background:var(--acid);height:calc(100vh - 82px)}.big-date{font:900 clamp(120px,26vw,380px)/.65 var(--date-font);letter-spacing:-.11em}.date-copy{margin-top:30px;font:900 16px var(--font-utility)}.today-events{padding:18px;display:grid;gap:12px}.today-event{position:relative;display:grid;grid-template-columns:90px 1fr minmax(240px,32%);min-height:250px;border-top:var(--line-width) solid var(--ink);padding-top:12px;transition:all var(--motion);overflow:hidden}.today-event:hover{background:var(--hot);padding-inline:10px}.today-time{font:900 25px var(--font-utility)}.today-copy h3{margin:0;font:900 clamp(38px,5vw,86px)/.82 var(--title-font);letter-spacing:-.055em}.today-meta{margin-top:30px;font:700 12px var(--font-utility)}.today-media{min-height:220px;overflow:hidden;background:var(--ink)}.today-media img,.today-media video{width:100%;height:100%;object-fit:cover}.no-events{font:900 clamp(44px,7vw,110px)/.8 var(--font-display);padding:30px}
.journal-home{background:var(--paper)}.journal-grid,.open-calls-grid{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:var(--line-width) solid var(--ink)}.content-card{min-height:320px;padding:18px;border-left:var(--line-width) solid var(--ink);background:var(--paper);position:relative;overflow:hidden}.content-card:first-child{border-left:0}.content-card.media{background-size:cover;background-position:center;color:white;text-shadow:0 2px 16px #000}.content-card h3{font:900 clamp(30px,4vw,64px)/.85 var(--font-display);letter-spacing:-.05em;margin:80px 0 8px}.content-card small{font:800 11px var(--font-utility)}.open-calls{background:var(--hot)}.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:40px 18px;background:var(--ink);color:var(--paper)}.newsletter h2{font:900 clamp(46px,8vw,120px)/.75 var(--font-display);margin:5px 0}.newsletter form{display:flex;align-items:end}.newsletter input{width:100%;background:transparent;color:var(--paper);border:0;border-bottom:3px solid var(--paper);padding:14px 0;font-size:24px}.newsletter button{border:0;background:var(--acid);padding:15px 20px;font-weight:900}.about{display:grid;grid-template-columns:150px 1fr;padding:36px 18px;background:var(--signal);border-bottom:var(--line-width) solid var(--ink)}.about p{margin:0;max-width:1100px;font:800 clamp(28px,4vw,58px)/1 var(--font-body)}footer{display:flex;justify-content:space-between;padding:15px 18px;background:var(--acid);font:900 12px var(--font-utility)}
.filter-dialog,.show-dialog{border:0;padding:0;max-width:none;max-height:none;margin:0}.filter-dialog{width:100%;height:100%;background:rgba(0,0,0,.35)}.filter-panel{position:absolute;inset:0 0 0 auto;width:min(720px,100%);background:var(--acid);padding:18px;overflow:auto}.filter-panel-head,.filter-panel-bottom{display:flex;justify-content:space-between;align-items:center;font:900 26px var(--font-display)}.filter-panel-head button{font-size:44px;border:0;background:transparent}.filter-group{padding:24px 0;border-top:2px solid var(--ink)}.filter-group h3{font:900 13px var(--font-utility)}.filter-options{display:flex;flex-wrap:wrap;gap:8px}.drawer-filter{border:2px solid var(--ink);background:var(--paper);padding:10px}.drawer-filter.active{background:var(--tax,var(--hot))}.filter-panel-bottom button{border:2px solid var(--ink);background:var(--paper);padding:12px}.show-dialog{width:100%;height:100%;background:var(--paper)}.close-show{position:fixed;z-index:20;left:16px;top:16px;border:0;background:var(--acid);width:52px;height:52px;font-size:36px}.show-detail-hero{height:65vh}.show-detail-hero img,.show-detail-hero video{width:100%;height:100%;object-fit:cover}.show-detail{padding:30px 18px 80px;max-width:1400px;margin:auto}.show-detail h2{font:900 clamp(60px,11vw,170px)/.75 var(--font-display);letter-spacing:-.07em;margin:0}.show-detail .lead{font-size:24px;max-width:60ch;margin:25px 0}.perf-buttons{display:flex;flex-wrap:wrap;gap:8px}.ticket-btn{border:2px solid var(--ink);padding:10px;background:var(--acid);font-weight:900}.show-detail .copy{white-space:pre-line;max-width:70ch;font-size:20px;line-height:1.55;margin-top:40px}
.detail-page{min-height:100vh;padding-top:60px;background:var(--paper)}.detail-hero{min-height:58vh;padding:30px 18px;display:flex;align-items:end;background:var(--hot);background-size:cover;background-position:center;color:var(--ink)}.detail-hero h1{font:900 clamp(70px,12vw,180px)/.76 var(--font-display);letter-spacing:-.07em;margin:0;max-width:1200px}.detail-body{padding:35px 18px 100px;max-width:1100px}.detail-body .lead{font-size:28px;font-weight:800}.detail-body .body-copy{white-space:pre-line;font-size:20px;line-height:1.6}.back-home{position:fixed;z-index:70;top:90px;left:18px;background:var(--acid);border:2px solid var(--ink);padding:10px 14px;font-weight:900}
.global-graphics{position:fixed;inset:0;pointer-events:none;z-index:55;overflow:hidden}.floating-graphic{position:absolute;max-width:none;transform-origin:center}.graphic-hero{position:absolute}.graphic-schedule{position:absolute}
.font-flash{animation:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-media video{display:none!important}.hero-poster{display:block!important}}
@media(max-width:860px){.site-header{grid-template-columns:1fr auto}.site-nav{display:none}.site-logo{max-width:140px}.hero-title-wrap{padding-top:24px}.hero-media{height:72vh;min-height:520px}.next-strip{grid-template-columns:1fr;gap:5px;padding:12px 14px}.featured-grid{grid-template-columns:1fr}.feature-screen{border-left:0;border-bottom:var(--line-width) solid var(--ink);min-height:62vh}.programme-head{align-items:start;gap:20px;flex-direction:column}.calendar-controls{grid-template-columns:1fr}.filter-mode{justify-content:flex-start}.month-grid{grid-template-columns:repeat(7,minmax(125px,1fr));overflow-x:auto}.weekday-head{grid-template-columns:repeat(7,minmax(125px,1fr));overflow-x:auto}.month-cell{min-height:190px}.today-stage{grid-template-columns:1fr}.today-date-panel{position:relative;top:auto;height:auto;border-left:0;border-bottom:var(--line-width) solid var(--ink)}.big-date{font-size:42vw}.today-event{grid-template-columns:1fr;gap:12px}.today-media{order:-1}.journal-grid,.open-calls-grid{grid-template-columns:1fr}.content-card{border-left:0;border-bottom:var(--line-width) solid var(--ink)}.newsletter{grid-template-columns:1fr}.about{grid-template-columns:1fr;gap:20px}.site-nav.mobile-open{display:flex;position:absolute;top:100%;right:0;left:0;flex-direction:column;background:var(--acid);padding:18px;border-bottom:2px solid var(--ink)}}

/* screen-like state change: deliberately short, not decorative */
.month-event::after,.week-event::after{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.16) 0 1px,transparent 1px 5px)}
.month-event:hover::after,.week-event:hover::after{animation:screenWake 260ms steps(3,end)}
@keyframes screenWake{0%{opacity:.9;background:#fff}22%{opacity:.65;background:#000}48%{opacity:.48}100%{opacity:0}}

/* =========================================================
   V0.4 — fixed-screen programme / direct reveals / next rail
   ========================================================= */
html{scroll-snap-type:y proximity;scroll-padding-top:0}
.site-header{border-bottom:0;background:var(--acid);transition:transform .32s cubic-bezier(.7,0,.2,1),background .25s;will-change:transform}
body.programme-docked .site-header{transform:translateY(-105%)}
.hero{border-bottom:0;background:var(--ink)}
.hero-title-wrap{display:none!important}
.hero-media{height:min(76vh,900px);min-height:440px}

.next-strip{display:block;min-height:0;padding:0;background:var(--cyan);border-bottom:0;overflow:hidden}
.next-strip-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:var(--ink);color:var(--paper)}
.next-kicker{font:900 13px/1 var(--font-utility)}
.next-nav{display:flex;direction:rtl;gap:5px}.next-nav button{width:31px;height:28px;border:1px solid currentColor;background:transparent;color:inherit;font-weight:900}
.next-events-track{display:flex;direction:rtl;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:var(--ink)}.next-events-track::-webkit-scrollbar{display:none}
.next-card{position:relative;flex:0 0 min(64vw,820px);height:112px;scroll-snap-align:start;background-position:center;background-size:cover;display:flex;align-items:center;gap:14px;padding:16px 20px;border-left:1px solid rgba(255,255,255,.38);overflow:hidden;color:var(--paper);transition:filter .2s,transform .2s}
.next-card:not(.has-image){color:var(--ink)}.next-card:hover{filter:saturate(1.22);transform:translateY(-2px)}
.next-avatar{width:1.25em;height:1.25em;min-width:1.25em;object-fit:contain;align-self:center;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}
.next-card-copy{display:grid;gap:6px;min-width:0}.next-card-copy strong{font:900 clamp(24px,3vw,46px)/.9 var(--font-display);letter-spacing:-.018em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.next-card-copy small{font:800 11px/1 var(--font-utility);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.next-empty{padding:25px 18px;background:var(--cyan);font-weight:900}

.feature-card h3{letter-spacing:-.012em;line-height:.94}.feature-card p{line-height:1.25}.feature-type{display:none!important}
.feature-screen.curtain::after{display:none!important}.feature-incoming{z-index:8;clip-path:inset(0 0 100% 0);transition:clip-path .86s cubic-bezier(.76,0,.16,1)}.feature-incoming.reveal{clip-path:inset(0 0 0 0)}

.programme{height:100svh;min-height:680px;scroll-snap-align:start;scroll-snap-stop:always;display:grid;grid-template-rows:auto auto auto minmax(0,1fr);overflow:hidden;background:var(--calendar-bg);color:var(--meta-color);position:relative}
.programme-head{display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;background:#090909;border-bottom:1px solid rgba(255,255,255,.28);min-height:48px}.programme-kicker,.programme h2{display:none!important}
.view-switch button,.period-nav button,.quick-filters button,.filter-mode button,.active-filter{border:1px solid rgba(255,255,255,.48);background:#090909;color:var(--paper);padding:8px 12px}.view-switch button.active,.quick-filters button.active,.filter-mode button.active{background:var(--acid);color:var(--ink);border-color:var(--acid)}
.calendar-controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.28);background:#090909}.period-nav button{background:#090909;color:var(--paper)}.quick-filters{min-width:0}.filter-mode{color:rgba(255,255,255,.6)}
.active-filters{min-height:0;padding:0 12px;background:#090909}.active-filter{margin:5px 0;background:var(--hot);color:#090909;border-color:var(--hot)}
.calendar{min-height:0;height:100%;overflow:hidden;background:#090909;display:flex;flex-direction:column;color:var(--paper)}.calendar-legend{display:none!important}
.weekday-head{flex:0 0 26px;background:#090909;border-bottom:1px solid rgba(255,255,255,.36)}.weekday-head span{display:grid;place-items:center;padding:0;color:rgba(255,255,255,.72);border-right:1px solid rgba(255,255,255,.23)}
.month-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(var(--month-weeks,6),minmax(0,1fr));direction:ltr;overflow:hidden}
.month-cell{min-height:0!important;height:auto;padding:5px 6px;background:var(--cell-bg)!important;border-right:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22);overflow:hidden}.month-cell.outside{opacity:.28}.month-cell.today-cell{box-shadow:inset 0 0 0 3px var(--hot)}.month-cell.day-filtered{background:#0d0d0d!important}
.month-date{font-size:clamp(18px,2vw,30px);color:var(--date-color)!important;line-height:1}.month-events{gap:3px;margin-top:4px;min-height:0;overflow:hidden}
.month-event{height:45px!important;min-height:45px!important;max-height:45px;padding:5px 6px;background:#151515;color:var(--paper);border:1px solid rgba(255,255,255,.28);overflow:hidden}.month-event:hover{transform:translateX(calc(var(--nudge) * -1));background:#232323}.month-event .event-media::after{background:linear-gradient(90deg,rgba(9,9,9,.92),rgba(9,9,9,.22))}.month-event .event-time{color:rgba(255,255,255,.68);font-size:9px}.month-event .event-title{color:var(--title-color)!important;font-size:calc(13px * var(--title-scale));line-height:.94;letter-spacing:-.012em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.month-event .event-badge{display:none}.more-events{height:19px;border:0;background:var(--acid);color:var(--ink);font:900 9px/1 var(--font-utility);width:100%}
.calendar-insert{min-height:0;height:100%;padding:8px}.calendar-insert h4{font-size:clamp(14px,2vw,30px);line-height:.92}.calendar-insert p{font-size:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.week-grid{height:100%;min-height:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden;background:#090909}.week-day{height:100%;min-height:0;border-right:1px solid rgba(255,255,255,.23);overflow:hidden}.week-day-head{height:72px;padding:8px;background:#090909;color:var(--paper);border-bottom:1px solid rgba(255,255,255,.25)}.week-day-num{font-size:44px;color:var(--paper)}.week-day-name{color:rgba(255,255,255,.65)}.week-events{height:calc(100% - 72px);min-height:0;padding:5px;display:grid;grid-auto-rows:86px;gap:4px;overflow:hidden}.week-event{min-height:86px;height:86px;padding:7px;background:#151515;color:var(--paper);border:1px solid rgba(255,255,255,.25)}.week-event:hover{background:#252525;transform:translateY(-2px)}.week-event .event-title{color:var(--title-color)!important;font-size:18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.week-event .event-media::after{background:rgba(0,0,0,.68)}.week-event .event-venue{margin-top:5px;color:rgba(255,255,255,.65)}

.today-stage{height:100%;min-height:0;grid-template-columns:minmax(200px,26vw) 1fr;background:#090909}.today-date-panel{position:relative;top:auto;height:100%;min-height:0;background:#090909;color:var(--paper);border-left:1px solid rgba(255,255,255,.28);overflow:hidden}.big-date{font-size:clamp(100px,21vw,300px);color:var(--paper)}.date-copy{color:rgba(255,255,255,.66)}.today-events{height:100%;min-height:0;padding:7px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:6px;overflow:hidden}.today-event{min-height:0;height:auto;padding:10px;display:grid;grid-template-columns:65px 1fr;grid-template-rows:auto 1fr;background:#151515;color:var(--paper);border:1px solid rgba(255,255,255,.25);overflow:hidden}.today-event:hover{background:#222;padding-inline:10px}.today-time{font-size:18px}.today-copy h3{font-size:clamp(28px,4vw,60px);color:var(--title-color)!important;letter-spacing:-.015em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.today-meta{margin-top:12px}.today-media{grid-column:1/-1;min-height:0;height:100%;max-height:170px;order:3}.no-events{color:var(--paper)}

.open-calls-heading{align-items:center}.open-call-actions{display:flex;align-items:center;gap:7px}.open-call-actions button,.open-call-actions a{border:1px solid currentColor;background:transparent;color:inherit;padding:7px 10px;font:900 11px var(--font-utility)}.open-calls-grid{grid-template-columns:1fr!important}.open-calls-grid .content-card{border-left:0;min-height:48vh}.all-open-calls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.all-open-calls .content-card{border:1px solid var(--ink)}

.newsletter{grid-template-columns:.7fr 1.3fr;gap:24px;background:var(--hot);color:var(--ink);padding:28px 18px}.newsletter h2{font-size:clamp(42px,7vw,105px)}.newsletter form{display:grid;grid-template-columns:1fr auto;align-items:stretch;gap:0}.newsletter input{min-height:120px;background:var(--acid);color:var(--ink);border:4px solid var(--ink);padding:18px 22px;font:900 clamp(25px,4vw,54px)/1 var(--font-display)}.newsletter input::placeholder{color:rgba(0,0,0,.48)}.newsletter button{min-width:180px;border:4px solid var(--ink);border-right:0;background:var(--cyan);font:900 18px var(--font-display)}
footer{background:#090909;color:var(--paper);gap:20px;align-items:center;flex-wrap:wrap}.footer-brand{font-size:15px;letter-spacing:-.02em}

@media(max-width:860px){
 html{scroll-snap-type:none}.hero-media{height:68vh;min-height:480px}.next-card{flex-basis:88vw;height:104px}.next-card-copy strong{font-size:26px}.featured-grid{grid-template-columns:1fr}.programme{height:100dvh;min-height:620px}.calendar-controls{grid-template-columns:1fr}.filter-mode{display:none}.month-grid,.weekday-head{grid-template-columns:repeat(7,minmax(70px,1fr));overflow:hidden}.month-cell{padding:3px}.month-event{height:39px!important;min-height:39px!important}.month-event .event-title{font-size:10px}.month-event .event-time{font-size:8px}.today-stage{grid-template-columns:1fr}.today-date-panel{height:90px;display:flex;align-items:center;gap:14px;border-left:0;border-bottom:1px solid rgba(255,255,255,.25);padding:8px 12px}.big-date{font-size:65px}.date-copy{margin:0}.today-events{height:calc(100% - 90px);grid-template-columns:1fr 1fr}.today-event{grid-template-columns:1fr}.today-time{font-size:12px}.today-copy h3{font-size:23px}.today-media{max-height:90px}.week-grid{grid-template-columns:repeat(7,minmax(110px,1fr));overflow-x:auto}.newsletter{grid-template-columns:1fr}.newsletter form{grid-template-columns:1fr}.newsletter button{border-right:4px solid var(--ink);border-top:0;min-height:70px}.all-open-calls{grid-template-columns:1fr}
}


/* ============================================================
   V0.5 — RTL next strip / clean featured / screen-wall calendar
   ============================================================ */
.site-header{border-bottom:0!important}

/* NEXT: one full-width show at a time, RTL navigation, no gradients */
.next-strip{grid-template-columns:140px minmax(0,1fr);min-height:72px!important;padding:0!important;background:var(--cyan);border-bottom:0!important}
.next-strip-head{height:72px;padding:0 16px;background:var(--ink)}
.next-nav{direction:rtl}
.next-events-track{width:100%;height:72px;overflow-x:hidden!important;scroll-snap-type:none;background:transparent}
.next-card{flex:0 0 100%!important;width:100%;height:72px!important;min-height:72px!important;padding:8px 18px;border:0!important;scroll-snap-align:start;background-size:cover;background-position:center;color:var(--paper)}
.next-card.has-image{color:var(--paper);text-shadow:0 1px 7px rgba(0,0,0,.85)}
.next-card:not(.has-image){color:var(--ink);text-shadow:none}
.next-card:hover{filter:saturate(1.08)}
.next-avatar{width:1.05em;height:1.05em;min-width:1.05em}
.next-card-copy{gap:2px}.next-card-copy strong{font-size:clamp(20px,2.4vw,34px);letter-spacing:0}.next-card-copy small{font-size:10px}

/* FEATURED: image is image, not a black-gradient compositing surface */
.featured-section .section-heading{border-bottom:0!important}
.featured-grid{border-bottom:0!important}
.feature-screen{border-top:0!important;border-bottom:0!important}
.feature-card{background-repeat:no-repeat;text-shadow:none}
.feature-card::before{display:none!important}
.feature-card h3,.feature-card p{position:relative;z-index:2;width:fit-content;max-width:92%;background:#090909;color:#fff;padding:.08em .14em;box-decoration-break:clone;-webkit-box-decoration-break:clone;text-shadow:none}
.feature-card h3{letter-spacing:.006em;line-height:.98;margin:0}
.feature-card p{margin-top:7px;line-height:1.35}
.feature-card.no-media h3,.feature-card.no-media p{background:transparent;color:inherit;padding:0}
.feature-incoming{transition:clip-path .82s cubic-bezier(.76,0,.16,1)}

/* Calendar: each show IS the screen surface; date floats over it */
.programme{height:100svh;min-height:720px}
.calendar{flex:1!important;min-height:0}
.month-grid{height:100%;min-height:0}
.month-cell{position:relative;padding:0!important;background:#090909!important}
.month-date{position:absolute!important;top:5px;right:5px;z-index:20!important;background:#090909!important;color:#fff!important;padding:3px 7px!important;font-size:clamp(20px,2.3vw,34px)!important;line-height:1!important}
.month-events{height:100%;min-height:0;margin:0!important;display:grid!important;grid-template-rows:repeat(var(--event-count,1),minmax(0,1fr));gap:0!important;overflow:hidden}
.month-event{position:relative;height:auto!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:8px!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.22)!important;background:var(--show-bg,#151515)!important;color:#fff;overflow:hidden}
.month-event:last-child{border-bottom:0!important}
.month-event:hover{transform:none!important;filter:saturate(1.12)}
.month-event .event-media{z-index:0}.month-event .event-media::after{display:none!important}
.month-event .event-time,.month-event .event-title{z-index:3;background:#090909!important;color:#fff!important;width:fit-content;max-width:92%;padding:2px 5px;margin:0}
.month-event .event-time{font-size:10px;margin-bottom:3px}.month-event .event-title{font-size:calc(14px * var(--title-scale));line-height:1;letter-spacing:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.month-event.filtered-out,.week-event.filtered-out,.today-event.filtered-out{transform:none!important}
.more-events{position:absolute;left:5px;bottom:5px;z-index:22;width:auto;height:auto;padding:4px 7px}

/* Motion belongs to typography, not the card geometry */
.week-event:hover,.today-event:hover{transform:none!important}
.font-flash-letter{display:inline-block;white-space:pre;transition:font-family 0s}

/* Newsletter as title + loud input strip */
.newsletter{display:block!important;background:var(--paper)!important;color:var(--ink)!important;padding:0!important}
.newsletter-title{padding:26px 18px 18px;background:var(--hot)}
.newsletter-title span{font:900 13px/1 var(--font-utility)}
.newsletter-title h2{margin:6px 0 0;font:900 clamp(45px,8vw,118px)/.78 var(--font-display);letter-spacing:-.04em}
.newsletter-strip{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%;gap:0!important;padding:0!important}
.newsletter-strip input{min-height:126px!important;background:var(--acid)!important;color:#090909!important;border:0!important;border-top:5px solid #090909!important;border-bottom:5px solid #090909!important;padding:18px 22px!important;font:900 clamp(28px,4vw,58px)/1 var(--font-display)!important}
.newsletter-strip button{min-width:210px!important;border:5px solid #090909!important;background:var(--cyan)!important;font:900 20px/1 var(--font-display)!important}
#newsletterMsg{padding:0 18px;background:var(--paper)}

/* Graphic/strip break before About; configurable from Admin */
.footer-divider{--stripe-a:#090909;--stripe-b:#777;height:70px;background-color:var(--stripe-a);background-image:repeating-linear-gradient(135deg,var(--stripe-a) 0 28px,var(--stripe-b) 28px 56px);background-size:auto;background-position:center;background-repeat:repeat;border:0}
.footer-divider.has-image{height:120px;background-size:cover;background-repeat:no-repeat}
.about{border-bottom:0!important}
footer{position:relative;display:flex!important;justify-content:center!important;align-items:center!important;text-align:center!important;min-height:150px;padding:38px 18px!important;background:#090909;color:#fff;gap:10px!important}
.footer-top{position:absolute;top:18px;left:50%;transform:translateX(-50%);font:800 11px var(--font-utility)}
.footer-center{display:grid;gap:8px;justify-items:center;margin-top:22px}.footer-brand{font:900 18px/1 var(--font-display)}

@media(max-width:860px){
 .next-strip{grid-template-columns:1fr}.next-strip-head{height:46px}.next-events-track,.next-card{height:80px!important;min-height:80px!important}.next-card-copy strong{font-size:24px}
 .feature-card h3,.feature-card p{max-width:95%}
 .month-date{font-size:18px!important;padding:2px 4px!important}.month-event{padding:4px!important}.month-event .event-title{font-size:10px}.month-event .event-time{font-size:8px}
 .newsletter-strip{grid-template-columns:1fr!important}.newsletter-strip button{min-height:72px!important}.footer-divider{height:48px}
}

/* V0.6 */
.site-header{position:sticky;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr);border-bottom:0!important}
.site-logo-wrap{justify-self:start}.site-nav{position:absolute!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;justify-content:center;white-space:nowrap;max-width:70vw}.menu-button{justify-self:end;border:0;background:transparent;font:900 12px/1 var(--font-utility);padding:8px 10px;text-decoration:underline;text-underline-offset:4px}
.site-map-dialog{width:min(1100px,94vw);max-height:88vh;border:0;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.35)}.site-map-dialog::backdrop{background:rgba(0,0,0,.72)}.site-map-shell{padding:0}.site-map-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--acid);font:900 clamp(26px,4vw,60px)/.9 var(--font-display)}.site-map-head button{border:0;background:transparent;font-size:36px}.site-map-content{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.site-map-content section{padding:22px;border-left:1px solid var(--ink);min-height:260px}.site-map-content section:last-child{border-left:0}.site-map-content h3{font:900 13px var(--font-utility);margin:0 0 20px}.site-map-content a{display:block;font:900 clamp(22px,2.5vw,38px)/1 var(--font-display);margin:0 0 12px;letter-spacing:-.03em}.site-map-content a:hover{background:var(--ink);color:var(--paper)}.site-map-empty{opacity:.35}
.next-strip{display:grid!important;grid-template-columns:142px minmax(0,1fr)!important;background:var(--ink)!important;min-height:88px!important}.next-strip-head{height:88px!important;background:var(--ink)!important;color:var(--paper);padding:0 15px!important}.next-nav{direction:ltr}.next-nav button{font-size:28px!important}.next-events-track{display:block!important;width:100%;height:88px!important;overflow:hidden!important;background:transparent!important}.next-card{width:100%!important;height:88px!important;display:grid!important;grid-template-columns:auto auto auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 22px!important;background:var(--next-bg,var(--cyan))!important;color:var(--ink)!important;text-shadow:none!important;border:0!important}.next-avatar{width:42px!important;height:42px!important;min-width:42px!important;object-fit:contain;order:-1}.next-date{font:900 clamp(30px,4vw,58px)/.85 var(--font-display);letter-spacing:-.055em;white-space:nowrap}.next-time{font:900 clamp(20px,2.4vw,34px)/.9 var(--font-utility);white-space:nowrap}.next-title{font:900 clamp(19px,2.2vw,33px)/.92 var(--font-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.next-venue{font:800 10px/1 var(--font-utility);opacity:.7;white-space:nowrap}.featured-section{border:0}.featured-grid{border-top:0!important}
.programme{grid-template-rows:auto 54px 38px minmax(0,1fr)!important}.calendar-controls{height:54px;min-height:54px!important;overflow:visible;position:relative;z-index:8}.active-filters{height:38px!important;min-height:38px!important;max-height:38px!important;display:flex;align-items:center;gap:6px;overflow-x:auto;overflow-y:hidden;padding:0 12px!important;border-bottom:1px solid rgba(255,255,255,.24);scrollbar-width:none}.active-filters::-webkit-scrollbar{display:none}.active-filter{margin:0!important;flex:0 0 auto}.filter-mode{display:flex;gap:4px;align-items:center}.filter-mode button{border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;padding:6px 9px;font:900 10px var(--font-utility)}.filter-mode button.active{background:#fff;color:#090909}.calendar{min-height:0;height:100%;overflow:auto!important}.weekday-head{height:28px;min-height:28px}.month-grid{min-height:calc(100% - 28px);grid-auto-rows:minmax(150px,1fr)}.month-cell{min-height:150px!important}.month-date{z-index:10!important;background:#090909!important;color:#fff!important;padding:4px 7px!important;min-width:36px;text-align:center}.month-events{padding-top:0}.month-event .event-title{-webkit-line-clamp:2}.more-events{min-height:24px;height:auto!important}
.month-cell::after{content:"";position:absolute;z-index:20;inset:-40%;pointer-events:none;background:linear-gradient(135deg,transparent 42%,var(--hot) 43% 55%,transparent 56%);transform:translate(80%,-80%);opacity:0}.month-cell.day-opening::after{animation:daySweep 420ms cubic-bezier(.65,0,.35,1)}.month-cell.day-opening .month-date{animation:dateBlink 420ms steps(4,end)}@keyframes daySweep{0%{transform:translate(85%,-85%);opacity:0}15%{opacity:.9}100%{transform:translate(-85%,85%);opacity:0}}@keyframes dateBlink{0%,100%{background:#090909;color:#fff}25%,70%{background:var(--acid)!important;color:#090909!important}45%{background:var(--hot)!important;color:#090909!important}}
.footer-divider{height:18px!important;background-image:repeating-linear-gradient(135deg,var(--stripe-a,#090909) 0 7px,var(--stripe-b,#777) 7px 14px)!important;border:0}.footer-divider.has-image{height:64px!important;background-size:cover!important}footer{min-height:112px!important;padding:28px 18px!important}.footer-center{margin-top:12px!important}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-right:1px solid var(--ink)}.listing-grid>.content-card{min-height:280px;border-left:1px solid var(--ink);border-bottom:1px solid var(--ink)}.artists-public img{width:100%;height:190px;object-fit:cover;margin-bottom:16px}
@media(max-width:860px){.site-header{grid-template-columns:1fr auto}.site-nav{display:none!important}.menu-button{display:block}.site-map-content{grid-template-columns:1fr 1fr}.site-map-content section{min-height:auto;border-bottom:1px solid var(--ink)}.next-strip{grid-template-columns:92px minmax(0,1fr)!important;min-height:92px!important}.next-strip-head{height:92px!important}.next-events-track,.next-card{height:92px!important}.next-card{grid-template-columns:auto auto minmax(0,1fr);gap:7px;padding:8px 10px!important}.next-date{font-size:26px}.next-time{font-size:18px}.next-title{font-size:18px;grid-column:2/4}.next-avatar{width:32px!important;height:32px!important;min-width:32px!important;grid-row:1/3}.next-venue{display:none}.programme{grid-template-rows:auto auto 38px minmax(0,1fr)!important}.calendar-controls{height:auto;min-height:54px!important}.month-grid{grid-auto-rows:minmax(135px,1fr)}.month-cell{min-height:135px!important}.listing-grid{grid-template-columns:1fr}}

/* =========================================================
   IndieTZ V0.7 — navigation / next / calendar architecture
   ========================================================= */
.site-header{grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr)!important;border-bottom:0!important;padding:12px 18px!important}
.site-logo-wrap{grid-column:3!important;justify-self:end!important;min-width:0!important}
.site-nav{grid-column:2!important;position:static!important;justify-self:center!important;max-width:none!important;gap:26px!important}
.menu-button{grid-column:1!important;justify-self:start!important;display:none!important;text-decoration:none!important}

/* NEXT: one full colour block, real slide between productions */
.next-strip{display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;min-height:104px!important;height:104px!important;background:#090909!important;border:0!important;padding:0!important;overflow:hidden}
.next-strip-head{height:104px!important;display:grid!important;grid-template-rows:1fr auto!important;align-items:center!important;padding:12px 14px!important;background:#090909!important;color:#fff!important}
.next-kicker{align-self:start;font:900 13px/1 var(--font-utility)!important;letter-spacing:.03em}
.next-nav{display:flex!important;direction:rtl!important;gap:6px!important;align-items:center!important}
.next-nav button{width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;border:1px solid rgba(255,255,255,.75)!important;background:transparent!important;color:#fff!important;display:grid!important;place-items:center!important;font:700 24px/1 Arial,sans-serif!important;line-height:1!important}
.next-nav button:hover{background:#fff!important;color:#090909!important}
.next-events-track{position:relative!important;width:100%!important;height:104px!important;overflow:hidden!important;background:#111!important}
.next-card{position:absolute!important;inset:0!important;width:100%!important;height:104px!important;display:grid!important;grid-template-columns:auto auto auto minmax(0,1fr) auto!important;gap:16px!important;align-items:center!important;padding:12px 24px!important;background:var(--next-bg,#00e5ff)!important;color:#090909!important;border:0!important;text-shadow:none!important;transition:transform .52s cubic-bezier(.72,0,.18,1)!important;will-change:transform}
.next-avatar{width:52px!important;height:52px!important;min-width:52px!important;object-fit:contain!important;order:0!important}
.next-avatar-empty{display:block;background:rgba(9,9,9,.12);clip-path:polygon(50% 0,100% 30%,86% 100%,14% 100%,0 30%)}
.next-date,.next-time,.next-title,.next-venue{font-family:var(--font-display)!important}
.next-date{font-size:clamp(34px,4.2vw,60px)!important;line-height:.86!important;letter-spacing:-.055em!important;font-weight:900!important;white-space:nowrap}
.next-time{font-size:clamp(27px,3vw,42px)!important;line-height:.88!important;font-weight:900!important;white-space:nowrap}
.next-title{font-size:clamp(24px,2.7vw,38px)!important;line-height:.9!important;font-weight:900!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.next-venue{font-size:clamp(18px,2vw,27px)!important;line-height:.94!important;font-weight:800!important;opacity:.82!important;white-space:nowrap}
.next-empty{height:100%;display:grid;place-items:center;background:#fffaf0;font:900 22px/1 var(--font-display)}
.section-divider{height:28px;background:repeating-linear-gradient(135deg,var(--divider-a,#00e5ff) 0 22px,var(--divider-b,#090909) 22px 44px)}
.divider-pre-featured{height:20px}

/* graphic triptych — one continuous picture or three independent panels */
.graphic-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:clamp(120px,15vw,210px);background:#090909;overflow:hidden}
.triptych-slot{display:block;min-width:0;height:100%;background-repeat:no-repeat;background-size:cover;background-position:center;border-left:2px solid #090909;transition:filter .22s ease,transform .22s ease}
.triptych-slot:first-child{border-left:0}.triptych-slot.continuous{background-size:300% 100%}.triptych-slot[href]:hover{filter:saturate(1.12) contrast(1.04)}

/* Featured stays clean: no separator lines / no gradients */
.featured-grid{border:0!important}.feature-screen{border-left:0!important}.feature-screen+.feature-screen{box-shadow:inset 2px 0 0 #090909}.feature-card::before{display:none!important}

/* Calendar becomes the screen. Controls stay compact and never alter cell ratios. */
.programme{height:auto!important;min-height:100svh!important;display:grid!important;grid-template-rows:52px 44px 34px minmax(0,1fr)!important;background:#090909!important;scroll-margin-top:0;scroll-snap-align:start}
.programme-head{height:52px!important;min-height:52px!important;display:flex!important;align-items:stretch!important;justify-content:space-between!important;padding:0!important;background:#090909!important;border:0!important;color:#fff!important}
.programme-head .period-nav,.programme-head .view-switch{height:52px!important;display:flex!important;align-items:stretch!important}
.programme-head button{height:52px!important;border:0!important;border-left:1px solid rgba(255,255,255,.28)!important;background:#090909!important;color:#fff!important;padding:0 18px!important;margin:0!important;font:900 13px/1 var(--font-utility)!important;display:grid!important;place-items:center!important}
.programme-head button.active,.programme-head button:hover{background:#fff!important;color:#090909!important}
.programme-head #todayJump{min-width:170px;font:900 24px/1 var(--font-display)!important}
.calendar-controls{height:44px!important;min-height:44px!important;display:block!important;padding:0!important;border:0!important;border-top:1px solid rgba(255,255,255,.18)!important;border-bottom:1px solid rgba(255,255,255,.22)!important;background:#090909!important;overflow:hidden!important}
.quick-filters{height:43px!important;display:flex!important;align-items:center!important;gap:0!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none}.quick-filters::-webkit-scrollbar{display:none}
.quick-filters>button,.quick-filters>span>button{height:43px!important;flex:0 0 auto!important;border:0!important;border-left:1px solid rgba(255,255,255,.22)!important;background:#090909!important;color:#fff!important;margin:0!important;padding:0 14px!important;font:900 11px/1 var(--font-utility)!important}
.quick-filters button.active,.quick-filters button:hover{background:var(--acid)!important;color:#090909!important}
.active-filters{height:34px!important;min-height:34px!important;max-height:34px!important;padding:0 10px!important;display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;background:#090909!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.22)!important;scrollbar-width:none}.active-filters::-webkit-scrollbar{display:none}
.active-filter{height:25px!important;margin:0!important;padding:0 8px!important;border:1px solid rgba(255,255,255,.55)!important;background:var(--hot)!important;color:#090909!important;font:900 10px/1 var(--font-utility)!important;flex:0 0 auto}
.calendar{height:auto!important;min-height:calc(100svh - 130px)!important;overflow:auto!important;background:#090909!important}
.weekday-head{height:30px!important;min-height:30px!important;position:sticky;top:0;z-index:30;background:#090909;color:#fff;border:0!important;direction:rtl!important}
.weekday-head span{height:30px;padding:0!important;display:grid;place-items:center;border-left:1px solid rgba(255,255,255,.32)!important;border-right:0!important;font:900 10px/1 var(--font-utility)!important}
.month-grid{direction:rtl!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-template-rows:repeat(var(--month-weeks),minmax(178px,1fr))!important;min-height:calc(var(--month-weeks) * 178px)!important;overflow:visible!important}
.month-cell{position:relative!important;min-height:178px!important;height:auto!important;padding:0!important;background:#151515!important;border:0!important;border-left:1px solid rgba(255,255,255,.32)!important;border-bottom:1px solid rgba(255,255,255,.32)!important;overflow:hidden!important;isolation:isolate}
.month-cell.outside{opacity:.38}.month-cell.day-filtered{background:#111!important}.month-cell.today-cell{box-shadow:inset 0 0 0 4px var(--hot)!important}
.month-date{position:absolute!important;z-index:25!important;top:0!important;right:0!important;min-width:42px!important;height:34px!important;padding:0 8px!important;display:grid!important;place-items:center!important;background:#090909!important;color:#fff!important;border:0!important;font:900 calc(24px * var(--date-scale))/1 var(--date-font)!important;transform-origin:center;backface-visibility:hidden}
.month-events{position:absolute!important;inset:0!important;height:100%!important;margin:0!important;padding:0!important;display:grid!important;grid-template-rows:repeat(var(--event-count),minmax(0,1fr))!important;gap:0!important;direction:rtl!important}
.month-event{height:auto!important;min-height:0!important;width:100%!important;padding:8px!important;padding-top:38px!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.25)!important;background:var(--show-bg,#151515)!important;color:#fff!important;text-align:right!important;overflow:hidden!important;isolation:isolate}
.month-event:last-child{border-bottom:0!important}.month-event:hover{transform:none!important;filter:saturate(1.12) contrast(1.03)!important;z-index:10}.month-event .event-media{inset:0!important}.month-event .event-media::after{display:none!important}.month-event .event-media img,.month-event .event-media video{filter:saturate(.92) contrast(1.04)}
.month-event .event-time,.month-event .event-title{position:relative!important;z-index:4!important;width:fit-content!important;max-width:94%!important;background:#090909!important;color:#fff!important;padding:2px 5px!important;margin:0!important;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.month-event .event-time{font:900 calc(11px * var(--meta-scale))/1 var(--font-display)!important;margin-bottom:3px!important}.month-event .event-title{font:900 calc(15px * var(--title-scale))/.95 var(--title-font)!important;letter-spacing:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.month-event.filtered-out,.week-event.filtered-out,.today-event.filtered-out{opacity:.15!important;filter:grayscale(1)!important}.more-events{position:absolute!important;z-index:24!important;left:6px!important;bottom:6px!important;height:25px!important;min-height:25px!important;padding:0 8px!important;border:1px solid #fff!important;background:#090909!important;color:#fff!important;font:900 10px/1 var(--font-utility)!important}

/* date interaction: diagonal shutter + number flip + title cascade */
.month-cell::before,.month-cell::after{content:"";position:absolute;z-index:20;inset:-60%;pointer-events:none;opacity:0;transform:translate(90%,-90%)}
.month-cell::before{background:repeating-linear-gradient(135deg,transparent 0 24px,var(--acid) 25px 52px,transparent 53px 75px,var(--hot) 76px 95px,transparent 96px 122px)}
.month-cell::after{background:linear-gradient(135deg,transparent 43%,#fff 44% 47%,transparent 48%)}
.month-cell.day-opening::before{animation:dayShutter .62s cubic-bezier(.7,0,.25,1)}.month-cell.day-opening::after{animation:dayGlint .55s .05s ease-out}.month-cell.day-opening .month-date{animation:dateFlip .62s steps(6,end)}
@keyframes dayShutter{0%{opacity:0;transform:translate(92%,-92%)}10%{opacity:.95}70%{opacity:.95}100%{opacity:0;transform:translate(-92%,92%)}}
@keyframes dayGlint{0%{opacity:0;transform:translate(80%,-80%)}25%{opacity:1}100%{opacity:0;transform:translate(-80%,80%)}}
@keyframes dateFlip{0%,100%{transform:rotateX(0);background:#090909;color:#fff}18%{transform:rotateX(75deg);background:var(--acid);color:#090909}34%{transform:rotateX(0);background:var(--hot);color:#090909}52%{transform:rotateX(-70deg);background:#fff;color:#090909}70%{transform:rotateX(0);background:var(--cyan);color:#090909}}

/* editorial cards always have a visual surface */
.section-heading a{font:900 12px/1 var(--font-utility);border:1px solid currentColor;padding:7px 10px}
.content-card.placeholder-media{background:repeating-linear-gradient(135deg,#111 0 22px,#222 22px 44px);color:#fff;isolation:isolate}.content-placeholder-mark{position:absolute;inset:0;display:grid;place-items:center;font:900 clamp(42px,8vw,120px)/.8 var(--font-display);opacity:.14;transform:rotate(-8deg);pointer-events:none}.content-card.media::after,.content-card.placeholder-media::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.16);z-index:0}.content-card>*{position:relative;z-index:2}
.open-call-actions{direction:rtl!important}.open-call-actions button{width:40px;height:36px;padding:0!important;display:grid;place-items:center;font:700 21px/1 Arial,sans-serif!important}.open-call-actions a{height:36px;display:grid;place-items:center}

/* barriers / newsletter / about / sitemap footer */
.divider-pre-newsletter{height:34px;margin-top:0}.newsletter{border:0!important}.footer-divider{height:76px!important;background-color:var(--stripe-a,#ff2b93)!important;background-image:repeating-linear-gradient(135deg,var(--stripe-a,#ff2b93) 0 34px,var(--stripe-b,#090909) 34px 68px)!important}.footer-divider.has-image{height:100px!important;background-size:cover!important;background-position:center!important}
.about{padding:46px 18px!important;border:0!important}.about>span{font:900 13px/1 var(--font-utility)}.about p{font:800 clamp(26px,3.8vw,54px)/1.04 var(--font-body)!important}
.footer-sitemap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fffaf0;color:#090909;border-top:1px solid #090909}
.footer-sitemap section{min-height:190px;padding:22px;border-left:1px solid #090909}.footer-sitemap section:first-child{border-left:0}.footer-sitemap h3{margin:0 0 18px;font:900 11px/1 var(--font-utility);text-transform:uppercase}.footer-sitemap a{display:block;width:fit-content;margin:0 0 8px;font:900 clamp(18px,2vw,30px)/1 var(--font-display)}.footer-sitemap a:hover{background:#090909;color:#fffaf0}
footer{min-height:0!important;height:auto!important;padding:0!important;background:#090909!important;color:#fff!important}.footer-legal{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;padding:9px 18px;font:800 10px/1.25 var(--font-utility);text-align:center}.footer-legal a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:860px){
 .site-header{grid-template-columns:1fr auto!important}.site-logo-wrap{grid-column:2!important}.site-nav{display:none!important}.menu-button{display:block!important;grid-column:1!important;justify-self:start!important;font:900 11px/1 var(--font-utility)!important}
 .next-strip{grid-template-columns:92px minmax(0,1fr)!important;height:108px!important}.next-strip-head,.next-events-track,.next-card{height:108px!important}.next-card{grid-template-columns:auto auto minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:5px 8px!important;padding:9px 10px!important}.next-avatar{width:38px!important;height:38px!important;min-width:38px!important;grid-row:1/3!important}.next-date{font-size:25px!important}.next-time{font-size:21px!important}.next-title{font-size:19px!important;grid-column:2/4!important}.next-venue{font-size:14px!important;grid-column:2/4!important}.next-nav button{width:32px!important;height:32px!important;min-width:32px!important}
 .graphic-triptych{height:92px}.programme{grid-template-rows:48px 42px 32px minmax(0,1fr)!important}.programme-head,.programme-head .period-nav,.programme-head .view-switch,.programme-head button{height:48px!important}.programme-head button{padding:0 10px!important;font-size:10px!important}.programme-head #todayJump{min-width:110px!important;font-size:17px!important}.calendar-controls{height:42px!important;min-height:42px!important}.quick-filters{height:41px!important}.quick-filters>button,.quick-filters>span>button{height:41px!important}.active-filters{height:32px!important;min-height:32px!important;max-height:32px!important}
 .calendar{min-height:calc(100svh - 122px)!important}.weekday-head{height:27px!important;min-height:27px!important}.month-grid{grid-template-columns:repeat(7,minmax(86px,1fr))!important;grid-template-rows:repeat(var(--month-weeks),minmax(150px,1fr))!important;min-height:calc(var(--month-weeks) * 150px)!important;overflow-x:auto!important}.month-cell{min-height:150px!important}.month-date{height:30px!important;min-width:34px!important;font-size:17px!important}.month-event{padding:5px!important;padding-top:33px!important}.month-event .event-title{font-size:10px!important}.month-event .event-time{font-size:8px!important}
 .footer-sitemap{grid-template-columns:1fr 1fr}.footer-sitemap section{min-height:150px}.footer-legal{gap:10px;font-size:9px}
}
.site-header{direction:ltr!important}.site-nav,.site-logo-wrap,.menu-button{direction:rtl!important}

/* ========================================================================
   IndieTZ V0.8 — compact header / marquee / next slide / calendar / footer
   ======================================================================== */
:root{--header-h:58px}
.site-header{height:var(--header-h)!important;min-height:var(--header-h)!important;padding:0 14px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;background:#fffaf0!important;color:#090909!important;border:0!important;direction:rtl!important;transition:transform .28s ease!important;overflow:hidden!important}
.site-logo-wrap{grid-column:1!important;height:44px!important;min-width:110px!important;display:flex!important;align-items:center!important;justify-self:start!important;direction:rtl!important}.site-logo{max-height:38px!important;max-width:180px!important}.logo-fallback{font:900 24px/.8 var(--font-display)!important;letter-spacing:-.06em!important}
.menu-button{grid-column:3!important;display:grid!important;width:44px!important;height:44px!important;min-width:44px!important;padding:10px!important;justify-self:end!important;place-content:center!important;gap:5px!important;background:#090909!important;border:0!important;color:#fff!important;direction:ltr!important}.menu-button span{display:block;width:24px;height:3px;background:currentColor}.menu-button:hover{background:var(--hot)!important;color:#090909!important}
.header-marquee{grid-column:2!important;min-width:0;height:34px;overflow:hidden;border-inline:1px solid rgba(9,9,9,.28);display:flex;align-items:center;direction:ltr}.header-marquee.clickable{cursor:pointer}.header-marquee-track{display:flex;align-items:center;width:max-content;animation:headerMarquee var(--marquee-duration,24s) linear infinite;will-change:transform}.marquee-unit{flex:0 0 auto;padding:0 26px;font:900 13px/1 var(--font-utility);letter-spacing:.035em;white-space:nowrap;direction:rtl}.marquee-unit.image{height:28px;padding:0 22px}.marquee-unit.image img{display:block;height:28px;width:auto;max-width:150px;object-fit:contain}@keyframes headerMarquee{to{transform:translateX(-25%)}}
body.programme-docked .site-header{transform:translateY(calc(-1 * var(--header-h)))!important}.programme{scroll-margin-top:0!important}

/* thin separator only — no decorative colour wall */
.divider-pre-featured{height:18px!important;background:repeating-linear-gradient(135deg,var(--divider-a,#00e5ff) 0 3px,var(--divider-b,#090909) 3px 7px)!important;border:0!important}
.graphic-triptych,.secondary-triptych{height:clamp(86px,10vw,145px)!important}.graphic-triptych.hidden,.secondary-triptych.hidden{display:none!important}.triptych-slot{border-inline-start:2px solid #090909!important}.triptych-slot:first-child{border-inline-start:0!important}

/* Next: control brick + full block that visibly slides */
.next-strip{height:96px!important;min-height:96px!important;display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;background:#090909!important;overflow:hidden!important}
.next-strip-head{height:96px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:9px!important;padding:8px!important;background:#090909!important;color:#fff!important}.next-kicker{font:900 10px/1 var(--font-utility)!important;opacity:.72!important}.next-nav{display:grid!important;grid-template-columns:36px 36px!important;direction:rtl!important;gap:4px!important}.next-nav button{width:36px!important;height:36px!important;min-width:36px!important;display:grid!important;place-items:center!important;padding:0!important;font:700 22px/1 Arial,sans-serif!important;border:1px solid rgba(255,255,255,.75)!important;background:#090909!important;color:#fff!important}
.next-events-track,.next-card{height:96px!important}.next-events-track{position:relative!important;overflow:hidden!important}.next-card{position:absolute!important;inset:0!important;display:grid!important;grid-template-columns:auto auto auto minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;padding:10px 22px!important;transition:transform .72s cubic-bezier(.74,0,.2,1)!important;will-change:transform!important;background:var(--next-bg,#00e5ff)!important;color:#090909!important}.next-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0 92%,rgba(255,255,255,.2) 100%);opacity:.28}.next-avatar{width:48px!important;height:48px!important;min-width:48px!important;object-fit:contain!important;position:relative;z-index:2}.next-date{font-size:clamp(32px,3.8vw,54px)!important}.next-time{font-size:clamp(25px,2.7vw,38px)!important}.next-title{font-size:clamp(23px,2.5vw,36px)!important}.next-venue{font-size:clamp(16px,1.65vw,23px)!important}.next-card>*{position:relative;z-index:2}

/* calendar: controls compact, screen itself gets the room */
.programme{min-height:100svh!important;height:100svh!important;grid-template-rows:46px 40px 30px minmax(0,1fr)!important;overflow:hidden!important;background:#090909!important}
.programme-head,.programme-head .period-nav,.programme-head .view-switch,.programme-head button{height:46px!important;min-height:46px!important}.programme-head button{padding:0 13px!important}.programme-head #todayJump{min-width:145px!important;font-size:20px!important}.calendar-controls{height:40px!important;min-height:40px!important}.quick-filters{height:40px!important;min-height:40px!important}.quick-filters>button,.quick-filters>span>button{height:40px!important}.active-filters{height:30px!important;min-height:30px!important;max-height:30px!important}
.calendar{height:100%!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain;background:#090909!important}.weekday-head{height:28px!important;min-height:28px!important}.month-grid{grid-template-rows:repeat(var(--month-weeks),minmax(210px,1fr))!important;min-height:calc(var(--month-weeks) * 210px)!important}.month-cell{min-height:210px!important}.month-event{padding-top:40px!important}.month-event .event-title{font-size:calc(16px * var(--title-scale))!important;-webkit-line-clamp:2!important}.month-event .event-time{font-size:calc(12px * var(--meta-scale))!important}
body.programme-docked .programme{position:relative;z-index:80}body.programme-docked .calendar{scrollbar-color:var(--hot) #090909}

/* production directory */
.production-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #090909;border-right:1px solid #090909}.production-directory-card{min-height:260px;display:flex;flex-direction:column;border-left:1px solid #090909;border-bottom:1px solid #090909;background:#fffaf0;color:#090909}.production-directory-card img,.production-directory-placeholder{display:block;width:100%;height:185px;object-fit:cover;background:repeating-linear-gradient(135deg,var(--acid) 0 18px,var(--hot) 18px 36px)}.production-directory-card>span:last-child{display:flex;flex-direction:column;gap:5px;padding:12px}.production-directory-card strong{font:900 24px/.92 var(--font-display)}.production-directory-card small{font:800 10px/1 var(--font-utility)}.production-directory-card:hover{background:var(--acid)}

/* footer: more playful, still compact */
.footer-sitemap{border-top:0!important;background:#fffaf0!important;position:relative}.footer-sitemap::before{content:"";position:absolute;inset:0 0 auto;height:10px;background:repeating-linear-gradient(90deg,var(--hot) 0 7%,var(--acid) 7% 14%,var(--cyan) 14% 21%,var(--signal) 21% 28%)}.footer-sitemap section{padding-top:28px!important}.footer-legal{min-height:42px!important;background:linear-gradient(90deg,#090909 0 70%,var(--hot) 70% 80%,var(--acid) 80% 90%,var(--cyan) 90% 100%)!important;color:#fff!important;justify-content:flex-start!important;padding-inline:22px!important}.footer-legal a{color:inherit!important}

@media(max-width:860px){
 :root{--header-h:52px}.site-header{height:52px!important;min-height:52px!important;grid-template-columns:auto minmax(0,1fr) auto!important;padding:0 8px!important;gap:7px!important}.site-logo-wrap{height:38px!important;min-width:78px!important}.site-logo{max-height:31px!important;max-width:110px!important}.logo-fallback{font-size:19px!important}.menu-button{width:38px!important;height:38px!important;min-width:38px!important;padding:8px!important}.menu-button span{width:20px;height:2px}.header-marquee{height:30px}.marquee-unit{padding:0 15px;font-size:10px}
 .next-strip{grid-template-columns:76px minmax(0,1fr)!important;height:102px!important}.next-strip-head,.next-events-track,.next-card{height:102px!important}.next-kicker{font-size:8px!important}.next-nav{grid-template-columns:30px 30px!important}.next-nav button{width:30px!important;height:30px!important;min-width:30px!important}.next-card{grid-template-columns:auto auto minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:4px 7px!important;padding:8px!important}.next-avatar{width:35px!important;height:35px!important;grid-row:1/3!important}.next-date{font-size:24px!important}.next-time{font-size:20px!important}.next-title{font-size:18px!important;grid-column:2/4!important}.next-venue{font-size:13px!important;grid-column:2/4!important}
 .graphic-triptych,.secondary-triptych{height:74px!important}.programme{grid-template-rows:44px 38px 28px minmax(0,1fr)!important}.programme-head,.programme-head .period-nav,.programme-head .view-switch,.programme-head button{height:44px!important}.programme-head #todayJump{min-width:100px!important;font-size:15px!important}.calendar-controls,.quick-filters,.quick-filters>button,.quick-filters>span>button{height:38px!important;min-height:38px!important}.active-filters{height:28px!important;min-height:28px!important;max-height:28px!important}.month-grid{grid-template-rows:repeat(var(--month-weeks),minmax(175px,1fr))!important;min-height:calc(var(--month-weeks) * 175px)!important}.month-cell{min-height:175px!important}.production-directory{grid-template-columns:1fr 1fr}.production-directory-card{min-height:210px}.production-directory-card img,.production-directory-placeholder{height:135px}.production-directory-card strong{font-size:18px}.footer-legal{background:#090909!important;justify-content:center!important}
}

/* V0.8 final polish: Next is a pure colour block, no gradient veil. */
.next-card::after{display:none!important}

/* ========================================================================
   IndieTZ V0.9 — fonts / artists / calendar flow / RTL navigation
   ======================================================================== */
:root{--home-marquee-font:var(--font-utility);--home-menu-font:var(--font-display);--home-next-font:var(--font-display);--home-featured-font:var(--font-display);--home-newsletter-font:var(--font-display);--home-about-font:var(--font-display);--home-sitemap-font:var(--font-display)}

/* header: logo right, marquee center, drawer trigger left */
.site-header{direction:ltr!important;grid-template-columns:auto minmax(0,1fr) auto!important;height:54px!important;min-height:54px!important;padding:0 10px!important}
.site-logo-wrap{grid-column:3!important;justify-self:end!important;direction:rtl!important;height:40px!important}.site-logo{max-height:34px!important}.logo-fallback{font-size:21px!important}
.menu-button{grid-column:1!important;justify-self:start!important;direction:ltr!important;width:40px!important;height:40px!important;min-width:40px!important;padding:8px!important;background:#090909!important}.menu-button span{width:22px!important;height:2px!important}
.header-marquee{grid-column:2!important;direction:ltr!important;height:30px!important}.marquee-unit{font-family:var(--home-marquee-font)!important;font-size:11px!important;direction:rtl!important}
.header-marquee-track{animation-name:headerMarqueeRTL!important}
@keyframes headerMarqueeRTL{from{transform:translateX(-25%)}to{transform:translateX(0)}}

/* Left sliding navigation drawer instead of center modal */
.site-map-dialog.nav-drawer{position:fixed!important;inset:0 auto 0 0!important;margin:0!important;width:min(420px,90vw)!important;height:100dvh!important;max-height:none!important;background:#0a0a0a!important;color:#fff!important;border:0!important;padding:0!important;box-shadow:18px 0 70px rgba(0,0,0,.45)!important;animation:navDrawerIn .28s cubic-bezier(.72,0,.22,1)!important;font-family:var(--home-menu-font)!important}
.site-map-dialog.nav-drawer::backdrop{background:rgba(0,0,0,.58)!important}
.site-map-dialog.nav-drawer .site-map-shell{min-height:100%;background:repeating-linear-gradient(135deg,#090909 0 30px,#161616 30px 60px)!important}
.site-map-dialog.nav-drawer .site-map-head{position:sticky;top:0;z-index:2;background:#090909!important;color:#fff!important;border-bottom:1px solid #555!important;padding:16px!important;font:900 30px/1 var(--home-menu-font)!important}
.site-map-dialog.nav-drawer .site-map-head button{color:#fff!important;font-size:28px!important}
.site-map-dialog.nav-drawer .site-map-content{display:block!important;padding:14px 16px 50px!important}
.site-map-dialog.nav-drawer .site-map-content section{min-height:0!important;border:0!important;border-bottom:1px solid #444!important;padding:16px 0!important}
.site-map-dialog.nav-drawer .site-map-content h3{color:#999!important;font:800 9px/1 var(--font-utility)!important;letter-spacing:.08em!important;margin:0 0 10px!important}
.site-map-dialog.nav-drawer .site-map-content a{font:800 18px/1.1 var(--home-menu-font)!important;margin:0!important;padding:6px 2px!important;color:#fff!important;background:transparent!important}
.site-map-dialog.nav-drawer .site-map-content a:hover{color:var(--acid)!important;transform:translateX(4px)}
@keyframes navDrawerIn{from{transform:translateX(-102%)}to{transform:translateX(0)}}

/* Home font library hooks */
.next-card,.next-date,.next-time,.next-title,.next-venue{font-family:var(--home-next-font)!important}
.feature-card h3,.feature-card p{font-family:var(--home-featured-font)!important}

/* Programme must never trap the page scroll. */
.programme{height:auto!important;min-height:100svh!important;overflow:visible!important;display:grid!important;grid-template-rows:auto auto auto auto!important;background:#090909!important}
.calendar{height:auto!important;min-height:calc(100svh - 116px)!important;overflow:visible!important;overscroll-behavior:auto!important}
body.programme-docked .programme{z-index:auto!important}
.period-nav{display:grid!important;grid-template-columns:42px minmax(150px,auto) 42px!important;align-items:stretch!important;direction:ltr!important}.period-nav button{margin:0!important}.period-nav #nextPeriod{grid-column:1}.period-nav #monthSelect,.period-nav #todayJump{grid-column:2}.period-nav #prevPeriod{grid-column:3}
#monthSelect{height:46px!important;border:1px solid var(--ink)!important;background:var(--paper)!important;color:var(--ink)!important;padding:0 12px!important;font:900 15px/1 var(--font-utility)!important;text-align:center!important;text-align-last:center!important;min-width:180px!important}

/* Month: outside-month days remain live; only number becomes quieter. */
.month-cell.outside{opacity:1!important;background:var(--cell-bg)!important}.month-cell.outside .month-date{opacity:.38!important}.month-cell.outside .month-event{opacity:1!important}
.month-grid{grid-template-rows:repeat(var(--month-weeks),minmax(190px,1fr))!important;min-height:calc(var(--month-weeks) * 190px)!important}.month-cell{min-height:190px!important}

/* Week fills the available screen height. */
.week-grid{min-height:calc(100svh - 116px)!important;height:auto!important;align-items:stretch!important}.week-day{min-height:calc(100svh - 116px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}.week-events{min-height:0!important;display:grid!important;grid-template-rows:repeat(var(--week-count),minmax(0,1fr))!important;padding:0!important;gap:0!important}.week-event,.calendar-insert{min-height:0!important;height:100%!important;border-width:0 0 1px!important}

/* Today = full-width tiles stacked through all remaining height. */
.today-stage{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto minmax(calc(100svh - 170px),auto)!important;min-height:calc(100svh - 116px)!important}.today-date-panel{position:relative!important;top:auto!important;height:auto!important;min-height:72px!important;border-left:0!important;border-bottom:1px solid var(--line)!important;display:flex!important;align-items:center!important;gap:18px!important;padding:8px 16px!important}.big-date{font-size:58px!important;line-height:.8!important}.today-events{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(var(--today-count),minmax(240px,1fr))!important;min-height:calc(100svh - 188px)!important}.today-event{min-height:0!important;width:100%!important;grid-template-columns:120px minmax(0,1fr) minmax(240px,38vw)!important}.today-media{height:100%!important}

/* Public Artists */
.artists-public{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;border-top:1px solid #090909;border-right:1px solid #090909}
.artist-public-card{position:relative;display:block;min-height:320px;overflow:hidden;border-left:1px solid #090909;border-bottom:1px solid #090909;background:#090909;color:#fff}
.artist-public-card img,.artist-public-placeholder{width:100%;height:100%;min-height:320px;object-fit:cover;display:block;filter:grayscale(1);transition:filter .35s ease,transform .45s ease}.artist-public-card:hover img{filter:grayscale(0);transform:scale(1.025)}
.artist-public-placeholder{display:grid;place-items:center;font:900 120px/1 var(--font-display);background:var(--acid);color:#090909;filter:grayscale(1)}.artist-public-card:hover .artist-public-placeholder{filter:grayscale(0)}
.artist-public-name{position:absolute;right:0;left:0;bottom:0;padding:12px 14px;background:#090909;color:#fff;font:900 24px/1 var(--font-display)}
.artist-profile-hero{display:grid;grid-template-columns:minmax(280px,40vw) 1fr;min-height:64vh;background:#090909;color:#fff}.artist-profile-hero img{width:100%;height:64vh;object-fit:cover;filter:grayscale(1)}.artist-profile-hero>div{display:flex;flex-direction:column;justify-content:flex-end;padding:30px}.artist-profile-hero h1{font:900 clamp(58px,9vw,150px)/.8 var(--font-display);margin:0;letter-spacing:-.06em}.artist-profile-section{padding:24px 0;border-bottom:1px solid #999}.artist-profile-section h2{font:900 13px/1 var(--font-utility);text-transform:uppercase}.artist-production-links,.artist-socials{display:flex;flex-wrap:wrap;gap:8px}.artist-production-links a,.artist-socials a{border:1px solid #090909;padding:10px 13px;font-weight:800}.artist-socials a span{display:inline-grid;place-items:center;min-width:24px;margin-left:6px;font-weight:1000}

@media(max-width:860px){
 .site-header{height:50px!important;min-height:50px!important}.header-marquee{height:28px!important}.marquee-unit{font-size:9px!important}
 .period-nav{grid-template-columns:36px minmax(115px,1fr) 36px!important}#monthSelect{min-width:0!important;width:100%!important;height:44px!important;font-size:12px!important}
 .programme{min-height:100svh!important}.calendar{min-height:calc(100svh - 108px)!important}
 .month-grid{grid-template-rows:repeat(var(--month-weeks),minmax(145px,1fr))!important;min-height:calc(var(--month-weeks) * 145px)!important}.month-cell{min-height:145px!important}
 .week-grid{min-height:calc(100svh - 108px)!important}.week-day{min-height:calc(100svh - 108px)!important}
 .today-stage{min-height:calc(100svh - 108px)!important}.today-event{grid-template-columns:1fr!important;grid-template-rows:auto auto minmax(220px,1fr)!important}.today-time{padding:10px!important}.today-media{min-height:220px!important}
 .artist-profile-hero{grid-template-columns:1fr}.artist-profile-hero img{height:52vh}.artist-public-card{min-height:270px}.artist-public-card img,.artist-public-placeholder{min-height:270px}
}

/* V0.9 font-library hooks for homepage sections */
.newsletter,.newsletter input,.newsletter button{font-family:var(--home-newsletter-font)!important}.about{font-family:var(--home-about-font)!important}.footer-sitemap,.footer-sitemap a,.footer-sitemap h3{font-family:var(--home-sitemap-font)!important}


/* ========================================================================
   IndieTZ V0.10 — calendar clarity / newsletter / footer / invitees
   ======================================================================== */
/* header must remain visible and usable */
.site-header{overflow:visible!important;z-index:120!important}
.header-marquee{display:flex!important;visibility:visible!important;opacity:1!important;overflow:hidden!important}
.header-marquee.hidden{display:none!important}
.menu-button{display:grid!important;visibility:visible!important;opacity:1!important;z-index:4!important}
.header-marquee-track{animation-name:headerMarqueeRTL!important}
@keyframes headerMarqueeRTL{from{transform:translateX(0)}to{transform:translateX(25%)}}

/* next block: no old snap/transform rules; WAAPI controls the movement */
.next-events-track{isolation:isolate!important;background:#090909!important}
.next-card{transform:translateX(0);z-index:1!important}
.next-card:nth-child(2){z-index:2!important}
.next-card:hover{filter:saturate(1.08)}

/* calendar navigation: month is a label, never a dropdown */
.programme{height:auto!important;min-height:100svh!important;overflow:visible!important;grid-template-rows:auto auto auto auto!important}
.programme-head{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0!important;background:var(--signal)!important}
.period-nav{height:48px!important;display:grid!important;grid-template-columns:48px minmax(170px,auto) 48px!important;align-items:stretch!important;direction:rtl!important}
.period-nav #prevPeriod{grid-column:1!important}.period-nav .period-label{grid-column:2!important}.period-nav #nextPeriod{grid-column:3!important}
.period-label{display:grid;place-items:center;min-width:180px;padding:0 18px;background:var(--paper);border-inline:1px solid var(--ink);font:900 17px/1 var(--font-utility);white-space:nowrap}
.view-switch button{height:48px!important}
.calendar{height:auto!important;overflow:visible!important;overscroll-behavior:auto!important}
body.programme-docked .site-header{transform:none!important}

/* past shows are deliberately visible but recede */
.month-event.past-event,.week-event.past-event,.today-event.past-event{opacity:.5!important;filter:grayscale(1)!important;cursor:pointer!important}
.month-event.past-event:hover,.week-event.past-event:hover,.today-event.past-event:hover{opacity:.72!important}
.month-cell.outside{opacity:1!important}.month-cell.outside .month-date{opacity:.42!important}.month-cell.outside .month-event{opacity:1}
.month-cell.outside .month-event.past-event{opacity:.5!important}

/* calendar click animation: thick diagonal slash aligned with the number blink */
.month-cell.day-opening{z-index:20!important}
.month-cell.day-opening::after{content:"";position:absolute;z-index:60;left:-45%;top:46%;width:190%;height:24px;background:var(--hot);border-block:5px solid var(--acid);transform:rotate(-28deg) translateX(-85%);transform-origin:center;pointer-events:none;animation:daySlash .58s cubic-bezier(.72,0,.18,1) forwards;box-shadow:0 0 0 4px #090909}
.month-cell.day-opening .month-date{animation:dayNumberBlink .58s steps(1,end) both!important}
@keyframes daySlash{0%{transform:rotate(-28deg) translateX(-90%)}100%{transform:rotate(-28deg) translateX(90%)}}
@keyframes dayNumberBlink{0%,18%{background:#090909!important;color:#fff!important}19%,42%{background:var(--acid)!important;color:#090909!important}43%,68%{background:var(--hot)!important;color:#090909!important}69%,100%{background:#090909!important;color:#fff!important}}

/* week/day: lighter cards and highlighted typography */
.week-event{background:var(--show-bg,var(--paper))!important;color:#090909!important}.week-event .event-media::after{background:rgba(255,250,240,.58)!important}.week-event:hover{background:var(--show-bg,var(--cyan))!important;filter:saturate(1.08)}
.week-event .event-time span,.week-event .event-title span,.week-event .event-venue span,.today-event .today-time span,.today-event .event-title span,.today-event .today-meta span{display:inline;box-decoration-break:clone;-webkit-box-decoration-break:clone;background:var(--acid);color:#090909;padding:.08em .24em;line-height:1.18}
.week-event .event-title,.today-event .event-title{color:#090909!important;text-shadow:none!important}.week-event .event-time,.week-event .event-venue,.today-event .today-time,.today-event .today-meta{color:#090909!important}
.today-event{background:var(--show-bg,var(--paper))!important}.today-event:hover{background:var(--show-bg,var(--hot))!important}
.today-stage{min-height:calc(100svh - 118px)!important}.today-events{min-height:calc(100svh - 190px)!important}

/* newsletter */
.newsletter{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;align-items:stretch!important;padding:52px 18px!important}
.newsletter-title span{display:block;font:900 clamp(34px,5vw,76px)/.8 var(--home-newsletter-font)!important;letter-spacing:-.055em}.newsletter h2{font:900 clamp(64px,10vw,160px)/.72 var(--home-newsletter-font)!important;letter-spacing:-.07em!important;margin:12px 0!important}
.newsletter-form-wrap{display:flex;flex-direction:column;justify-content:flex-end;gap:18px}.newsletter-mini-divider{width:min(86%,760px);height:22px;background:repeating-linear-gradient(135deg,#555 0 16px,#222 16px 32px);margin-bottom:14px}.newsletter-strip{width:100%}

/* footer: gray diagonal separator, black body, only menu + collections + contact */
.footer-divider{height:72px!important;background-image:repeating-linear-gradient(135deg,#4e4e4e 0 28px,#141414 28px 56px)!important;background-color:#111!important;border:0!important}.footer-divider.has-image{background-image:repeating-linear-gradient(135deg,#4e4e4e 0 28px,#141414 28px 56px)!important}
.footer-sitemap{display:grid!important;grid-template-columns:minmax(180px,.65fr) minmax(180px,.65fr) minmax(320px,1.7fr)!important;background:#090909!important;color:#fff!important;border:0!important;font-family:var(--home-sitemap-font)!important}
.footer-sitemap section{min-height:0!important;padding:28px 22px!important;border-left:1px solid #3e3e3e!important;background:#090909!important}.footer-sitemap section:first-child{border-left:0!important}.footer-sitemap h3{color:#999!important;margin:0 0 14px!important;font:900 10px/1 var(--font-utility)!important;letter-spacing:.08em}.footer-sitemap a{color:#fff!important;font:800 15px/1.05 var(--home-sitemap-font)!important;margin:0 0 8px!important}.footer-sitemap a:hover{background:#fff!important;color:#090909!important}.footer-contact-col p{max-width:42ch;color:#bbb;font-size:13px}.footer-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-width:760px}.footer-contact-form input,.footer-contact-form textarea{width:100%;border:1px solid #555;background:#111;color:#fff;padding:10px;font:700 12px var(--font-body)}.footer-contact-form textarea{grid-column:1/-1;min-height:90px;resize:vertical}.footer-contact-form button{justify-self:start;border:0;background:#fff;color:#090909;padding:10px 18px;font-weight:900}.footer-form-msg{grid-column:1/-1;min-height:18px;color:var(--acid);font-size:11px}.footer-contact-details{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:18px;color:#aaa;font:700 11px var(--font-utility)}.footer-contact-details a{font:700 11px var(--font-utility)!important;margin:0!important}
footer{background:#090909!important;color:#fff!important;border-top:1px solid #3e3e3e!important}.footer-legal{justify-content:space-between!important;color:#8f8f8f!important}

/* invitee public page */
.invitee-public{max-width:1100px;margin:auto;display:grid;gap:18px}.invitee-access,.invitee-entry{border:2px solid #090909;padding:18px;background:#fff}.invitee-public h2{font:900 clamp(28px,4vw,52px)/.9 var(--font-display);margin:0 0 16px}.invitee-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.invitee-form-grid label,.invitee-actions label{display:grid;gap:5px;font:800 11px var(--font-utility)}.invitee-form-grid input,.invitee-form-grid select,.invitee-actions input{width:100%;padding:11px;border:1px solid #090909;background:#fff}.invitee-actions{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-top:12px}.invitee-actions button,.duplicate-public button{border:0;background:#090909;color:#fff;padding:11px 14px;font-weight:900}.public-invitee-count{margin:16px 0;padding:16px;background:var(--acid);font:900 clamp(22px,3vw,38px)/1 var(--font-display)}#inviteeAddMsg,#inviteeAccessMsg{min-height:26px;margin-top:10px;font-weight:800}.duplicate-public{margin-top:10px;padding:12px;background:#fff0bf;border:2px solid #090909;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.approved-invitee-list{margin-top:20px}.approved-invitee-row{display:grid;grid-template-columns:1fr 180px 110px;gap:10px;padding:9px 0;border-bottom:1px solid #aaa}

@media(max-width:860px){
 .period-nav{grid-template-columns:38px minmax(118px,1fr) 38px!important}.period-label{min-width:0!important;font-size:12px!important;padding:0 7px!important}.view-switch button{padding-inline:8px!important}
 .newsletter{grid-template-columns:1fr!important}.newsletter-mini-divider{width:72%}.footer-sitemap{grid-template-columns:1fr!important}.footer-sitemap section{border-left:0!important;border-bottom:1px solid #333!important}.footer-contact-form,.invitee-form-grid{grid-template-columns:1fr}.approved-invitee-row{grid-template-columns:1fr}.footer-legal{justify-content:center!important}
}

/* ========================================================================
   IndieTZ V0.11 — unified header / kinetic calendar / pink newsletter / neutral footer
   ======================================================================== */
/* One single compact header row, no accidental second line. */
.site-header{display:grid!important;grid-template-columns:46px minmax(0,1fr) minmax(86px,160px)!important;grid-template-rows:54px!important;align-items:center!important;gap:8px!important;height:54px!important;min-height:54px!important;max-height:54px!important;padding:0 10px!important;overflow:hidden!important;background:var(--acid)!important}
.menu-button{grid-column:1!important;grid-row:1!important;align-self:center!important;margin:0!important}
.header-marquee{grid-column:2!important;grid-row:1!important;align-self:center!important;width:100%!important;min-width:0!important;margin:0!important}
.site-logo-wrap{grid-column:3!important;grid-row:1!important;align-self:center!important;justify-self:end!important;margin:0!important;max-height:42px!important}
.header-marquee-track{white-space:nowrap!important}

/* Next: vertically optical, with date / time / title living on the same visual baseline. */
.next-card{grid-template-columns:auto minmax(110px,.62fr) minmax(70px,.38fr) minmax(180px,1.15fr) minmax(110px,.55fr)!important;grid-template-rows:1fr!important;align-items:center!important;padding-block:0!important}
.next-date,.next-time,.next-title,.next-venue{align-self:center!important;line-height:.88!important;margin:0!important;transform:translateY(1px)}
.next-title{font-weight:900!important}.next-venue{opacity:.82!important}
.divider-post-featured{display:block!important;height:22px!important;background:repeating-linear-gradient(135deg,#777 0 8px,#222 8px 16px)!important;border:0!important}

/* Calendar chrome is completely black; no inherited orange/signal strip. */
.programme-head{background:#090909!important;color:#fff!important;border-bottom:1px solid #555!important}
.period-nav,.period-label,.view-switch{background:#090909!important}
.period-label{background:#090909!important;color:#fff!important;border-color:#555!important;font-weight:900!important}
.period-nav button,.view-switch button{background:#090909!important;color:#fff!important;border-color:#555!important}
.view-switch button.active{background:#fff!important;color:#090909!important}
.calendar-controls{background:#090909!important;color:#fff!important;border-bottom:1px solid #555!important}
.quick-filters button{border-color:#555!important;background:#171717!important;color:#fff!important}.quick-filters button.active{background:#fff!important;color:#090909!important}
.active-filters{background:#090909!important}

/* Month cells behave like a stack of elastic screens. */
.month-events{display:flex!important;flex-direction:column!important;gap:3px!important;height:calc(100% - 50px)!important;min-height:0!important;margin-top:8px!important}
.month-event{flex:1 1 0!important;min-height:0!important;height:auto!important;padding:7px 8px!important;transition:flex-grow .32s cubic-bezier(.2,.8,.2,1),filter .25s,opacity .25s,transform .25s,background .25s!important;transform-origin:center!important}
.month-events:has(.month-event:hover) .month-event{flex-grow:1!important}
.month-events:has(.month-event:hover) .month-event:hover{flex-grow:8!important;z-index:15!important;transform:none!important}
.month-event .event-title{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}

/* A deliberately theatrical day-open transition: blade + shove + recoil. */
.month-cell.day-opening{overflow:hidden!important;animation:cellKick .7s cubic-bezier(.2,.9,.25,1) both!important}
.month-cell.day-opening::after{height:42px!important;top:45%!important;background:#fff!important;border-block:10px solid var(--hot)!important;box-shadow:0 0 0 7px var(--acid),0 0 0 12px #090909!important;animation:dayBlade .66s cubic-bezier(.72,0,.18,1) forwards!important}
.month-cell.day-opening .month-events{animation:eventShove .66s cubic-bezier(.55,0,.2,1) both!important}
.month-cell.day-opening .month-date{animation:dayNumberBlinkV11 .66s steps(1,end) both!important;z-index:80!important}
@keyframes dayBlade{0%{transform:rotate(-31deg) translateX(-105%) scaleX(.75)}58%{transform:rotate(-31deg) translateX(2%) scaleX(1.08)}100%{transform:rotate(-31deg) translateX(110%) scaleX(.8)}}
@keyframes eventShove{0%,100%{transform:translateX(0) skewX(0)}28%{transform:translateX(-16%) skewX(-8deg)}58%{transform:translateX(12%) skewX(5deg)}78%{transform:translateX(-3%) skewX(-1deg)}}
@keyframes cellKick{0%,100%{filter:none}35%{filter:contrast(1.35) saturate(1.4)}70%{filter:contrast(.9) saturate(.7)}}
@keyframes dayNumberBlinkV11{0%,16%{background:#090909;color:#fff;transform:scale(1)}17%,36%{background:var(--acid);color:#090909;transform:scale(1.14)}37%,58%{background:var(--hot);color:#090909;transform:scale(.92)}59%,78%{background:#fff;color:#090909;transform:scale(1.08)}79%,100%{background:#090909;color:#fff;transform:scale(1)}}

/* Week/day retain production colour, but are intentionally much lighter than V0.10. */
.week-event,.today-event{background:color-mix(in srgb,var(--show-bg,var(--paper)) 38%,#fffaf0 62%)!important}
.week-event:hover,.today-event:hover{background:color-mix(in srgb,var(--show-bg,var(--hot)) 62%,#fffaf0 38%)!important}
.week-event .event-media::after{background:rgba(255,250,240,.72)!important}

/* Newsletter = one uninterrupted pink field. */
.newsletter{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;background:var(--hot)!important;color:#090909!important;padding:48px 18px!important}
.newsletter-title{background:transparent!important;padding:0!important}.newsletter-title span{font-size:clamp(16px,2vw,28px)!important;letter-spacing:0!important;margin-bottom:10px}.newsletter-title h2{font-size:clamp(64px,10vw,156px)!important}
.newsletter-form-wrap{background:transparent!important}.newsletter-mini-divider{height:18px!important;width:min(72%,660px)!important;background:repeating-linear-gradient(135deg,#777 0 12px,#333 12px 24px)!important}
.newsletter-strip input{background:#fffaf0!important}.newsletter-strip button{background:#090909!important;color:#fff!important}
#newsletterMsg{background:transparent!important;color:#090909!important}

/* Neutral gray transition, black information body, light legal ending. */
.footer-divider{height:86px!important;background:repeating-linear-gradient(135deg,#c8c8c8 0 30px,#666 30px 60px)!important;background-color:#888!important}
.footer-divider.has-image{background:repeating-linear-gradient(135deg,#c8c8c8 0 30px,#666 30px 60px)!important}
.footer-sitemap{grid-template-columns:minmax(150px,.6fr) minmax(150px,.6fr) minmax(280px,1.05fr) minmax(220px,.8fr)!important;background:#090909!important;color:#fff!important}
.footer-sitemap::before{display:none!important}.footer-sitemap section{background:#090909!important;color:#fff!important;padding:28px 20px!important;border-color:#333!important}.footer-contact-col{max-width:none!important}.footer-contact-form{max-width:480px!important;grid-template-columns:1fr 1fr!important}.footer-contact-form textarea{min-height:78px!important}.footer-info-col p{max-width:25ch;color:#d0d0d0;font:700 13px/1.45 var(--font-body);margin:0 0 12px}.footer-info-col a{color:#fff!important;font-size:14px!important;margin-bottom:9px!important}
footer{background:#d7d7d2!important;color:#090909!important;border:0!important}.footer-legal{min-height:46px!important;background:#d7d7d2!important;color:#333!important;justify-content:space-between!important;padding:10px 20px!important}
.artist-production-links a{display:grid!important;gap:4px!important}.artist-production-links a small{font:800 11px/1.15 var(--font-utility)!important;opacity:.65!important}

@media(max-width:860px){
 .site-header{grid-template-columns:42px minmax(0,1fr) minmax(72px,112px)!important;grid-template-rows:50px!important;height:50px!important;min-height:50px!important;max-height:50px!important;padding-inline:7px!important}
 .next-card{grid-template-columns:auto auto minmax(0,1fr)!important;grid-template-rows:1fr 1fr!important;align-items:center!important}.next-date,.next-time,.next-title,.next-venue{transform:none!important}.next-title,.next-venue{grid-column:2/4!important}.next-date,.next-time{align-self:end!important}.next-title,.next-venue{align-self:start!important}
 .month-events:has(.month-event:hover) .month-event:hover{flex-grow:5!important}
 .newsletter{grid-template-columns:1fr!important;gap:28px!important}.newsletter-title h2{font-size:clamp(58px,17vw,110px)!important}
 .footer-sitemap{grid-template-columns:1fr 1fr!important}.footer-contact-col,.footer-info-col{grid-column:1/-1!important}.footer-contact-form{max-width:none!important}.footer-legal{justify-content:center!important}
}
.divider-pre-newsletter{height:30px!important;background:repeating-linear-gradient(135deg,#8b8b8b 0 12px,#333 12px 24px)!important;border:0!important}

/* ========================================================================
   IndieTZ V0.12 — docked programme / integrated wide Featured / tighter grid
   ======================================================================== */
/* The uploaded artwork owns its whitespace: no padding around the logo cell. */
.site-header{padding-inline:0!important;gap:0!important}
.site-logo-wrap{padding:0!important;margin:0!important;width:100%!important;height:100%!important;max-height:none!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;overflow:hidden!important}
.site-logo{max-width:100%!important;max-height:100%!important;width:auto!important;height:100%!important;object-fit:contain!important;object-position:right center!important;margin:0!important;padding:0!important}
.menu-button{margin-inline-start:8px!important}.header-marquee{margin-inline:8px!important;width:calc(100% - 16px)!important}

/* When the schedule docks, the same thin header becomes the schedule control bar. */
.programme-dock-controls{display:none;position:absolute;inset:0;z-index:30;background:#090909;color:#fff;grid-template-columns:48px minmax(150px,auto) 48px minmax(210px,1fr);align-items:stretch;direction:rtl}
.programme-dock-controls>button,.dock-view-switch button{border:0;border-inline-start:1px solid #555;background:#090909;color:#fff;font:900 12px/1 var(--font-utility);padding:0 12px}
.programme-dock-controls>button:disabled{opacity:.22}.programme-dock-controls strong{display:grid;place-items:center;padding:0 18px;white-space:nowrap;font:900 15px/1 var(--font-utility);border-inline-start:1px solid #555}
.dock-view-switch{display:flex;justify-content:flex-start;direction:rtl}.dock-view-switch button.active{background:#fff;color:#090909}
body.programme-docked .site-logo-wrap,body.programme-docked .header-marquee,body.programme-docked .menu-button{visibility:hidden!important;pointer-events:none!important}
body.programme-docked .programme-dock-controls{display:grid!important}
body.programme-docked .site-header{transform:none!important;background:#090909!important}

/* A single wide artwork occasionally takes over the EXISTING three Featured screens. */
.featured-grid{position:relative!important;overflow:hidden!important}
.featured-wide-wave{position:absolute;z-index:40;inset:0;background:#090909;display:block;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .45s ease;text-decoration:none!important}
.featured-wide-wave.show{opacity:1;pointer-events:auto}
.featured-wide-wave img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover!important;object-position:center!important;background:#090909;transform:scale(.992);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.featured-wide-wave.show img{transform:scale(1)}
.wide-divider{position:absolute;z-index:4;top:0;bottom:0;width:2px;background:#090909;box-shadow:0 0 0 1px rgba(255,255,255,.12)}.wide-divider.one{left:33.333%}.wide-divider.two{left:66.666%}
.wide-shutter{position:absolute;z-index:5;top:0;bottom:0;width:33.334%;background:#090909;transform:translateY(0);transition:transform .82s cubic-bezier(.74,0,.16,1)}
.wide-shutter.s1{right:0}.wide-shutter.s2{right:33.333%;transition-delay:.11s}.wide-shutter.s3{right:66.666%;transition-delay:.22s}
.featured-wide-wave.show .wide-shutter{transform:translateY(-102%)}

/* Tighter month: significantly more of the month fits in one viewport. */
.month-grid{grid-template-rows:repeat(var(--month-weeks),minmax(124px,1fr))!important;min-height:calc(var(--month-weeks) * 124px)!important}
.month-cell{min-height:124px!important}
.month-date{font-size:clamp(16px,1.8vw,25px)!important;padding:3px 6px!important}
.month-events{height:calc(100% - 32px)!important;margin-top:2px!important;gap:2px!important}
.month-event{padding:4px 6px!important;padding-top:5px!important;overflow:hidden!important}
.month-event .event-title{font-size:clamp(10px,1.1vw,14px)!important;line-height:.94!important}.month-event .event-time{font-size:9px!important}
/* The current-day frame paints above inserts/media. */
.month-cell.today-cell{box-shadow:none!important;outline:4px solid var(--hot)!important;outline-offset:-4px!important;z-index:12!important}
.month-cell.today-cell>*{position:relative}.month-cell.today-cell .month-date{z-index:90!important}

/* Hover feels like moving scenery: selected panel opens, siblings collapse. */
.month-events:has(.month-event:hover) .month-event{flex-grow:.28!important;opacity:.62!important;filter:saturate(.5) brightness(.62)!important;transform:scaleY(.96)!important}
.month-events:has(.month-event:hover) .month-event:hover{flex-grow:10!important;opacity:1!important;filter:saturate(1.2) brightness(1.06)!important;transform:translateX(-4px) scale(1.015) skewX(-1.2deg)!important;z-index:25!important;box-shadow:10px 0 0 var(--acid),-5px 0 0 var(--hot)!important}
.month-event::after{content:"";position:absolute;z-index:1;top:-60%;bottom:-60%;width:22%;left:-35%;background:var(--acid);transform:rotate(-24deg) translateX(-250%);opacity:0;pointer-events:none}
.month-event:hover::after{opacity:.92;animation:eventHoverBlade .68s cubic-bezier(.55,0,.18,1) forwards}
@keyframes eventHoverBlade{0%{left:-40%;transform:rotate(-24deg) translateX(-220%)}100%{left:115%;transform:rotate(-24deg) translateX(80%)}}

/* Newsletter: title one line, then the old full-width address bar. */
.newsletter{display:block!important;padding:44px 18px 54px!important}
.newsletter-title{width:100%!important}.newsletter-title span{font-size:clamp(16px,2vw,28px)!important;margin-bottom:8px!important}.newsletter-title h2{font-size:clamp(58px,9.2vw,150px)!important;line-height:.78!important;white-space:nowrap!important;margin:0 0 34px!important}
.newsletter-form-wrap{display:block!important;width:100%!important}.newsletter-mini-divider{display:none!important}.newsletter-strip{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;max-width:none!important}
.newsletter-strip input{min-height:78px!important;font-size:clamp(22px,3.5vw,54px)!important;padding:8px 18px!important}.newsletter-strip button{min-width:180px!important;font-size:18px!important}

/* Neutral transition, five editable information columns, restrained accent. */
.footer-divider{height:74px!important;background:repeating-linear-gradient(135deg,#bdbdb7 0 26px,#575757 26px 52px)!important}
.footer-sitemap{direction:rtl!important;grid-template-columns:minmax(120px,.65fr) minmax(130px,.75fr) minmax(130px,.75fr) minmax(200px,1fr) minmax(250px,1.15fr)!important;border-top:8px solid var(--acid)!important}
.footer-sitemap section{padding:26px 18px!important}.footer-contact-col{grid-column:auto!important}.footer-contact-form{max-width:360px!important;grid-template-columns:1fr!important}.footer-contact-form textarea,.footer-form-msg{grid-column:auto!important}.footer-info-col p{max-width:31ch!important}
footer,.footer-legal{background:#deded8!important;color:#202020!important}

@media(max-width:860px){
 .programme-dock-controls{grid-template-columns:38px minmax(92px,1fr) 38px minmax(150px,1.4fr)!important}.programme-dock-controls strong{font-size:11px!important;padding:0 6px!important}.dock-view-switch button{padding:0 7px!important;font-size:10px!important}
 .month-grid{grid-template-rows:repeat(var(--month-weeks),minmax(112px,1fr))!important;min-height:calc(var(--month-weeks) * 112px)!important}.month-cell{min-height:112px!important}.month-events:has(.month-event:hover) .month-event:hover{flex-grow:7!important;transform:scale(1.01)!important}
 .newsletter-title h2{font-size:clamp(46px,13.5vw,96px)!important;white-space:normal!important}.newsletter-strip{grid-template-columns:1fr!important}.newsletter-strip button{min-height:58px!important}
 .footer-sitemap{grid-template-columns:1fr 1fr!important}.footer-info-col,.footer-contact-col{grid-column:1/-1!important}.footer-contact-form{max-width:none!important}
}


/* IndieTZ V0.13 — accumulated navigation, directory, calendar and footer polish */
.site-logo-wrap{padding:0!important;overflow:hidden}.site-logo-wrap img{width:100%;height:100%;object-fit:contain;object-position:right center}
/* Fold the regular header instead of popping it away. */
.site-header .site-logo-wrap,.site-header .header-marquee,.site-header .menu-button{transition:opacity .28s ease,transform .38s cubic-bezier(.22,.75,.2,1),filter .28s ease}
.programme-dock-controls{display:grid!important;opacity:0;transform:translateY(-12px) scaleY(.72);transform-origin:top;pointer-events:none;transition:opacity .28s ease,transform .38s cubic-bezier(.22,.75,.2,1)}
body.programme-docked .site-logo-wrap,body.programme-docked .header-marquee,body.programme-docked .menu-button{visibility:visible!important;opacity:0;transform:translateY(-16px) scaleY(.7);pointer-events:none}
body.programme-docked .programme-dock-controls{opacity:1;transform:none;pointer-events:auto}
/* Month cells use every last pixel. */
.month-cell{display:grid!important;grid-template-rows:28px minmax(0,1fr)!important;overflow:hidden!important}.month-date{grid-row:1;position:relative;z-index:45}.month-events{grid-row:1/-1!important;padding-top:28px!important;margin:0!important;height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;gap:0!important}.month-event{min-height:0!important;flex:1 1 0!important}.month-cell.is-today::after{content:"";position:absolute;inset:0;border:4px solid var(--hot);z-index:90;pointer-events:none}
/* Next: LEFT arrow means the tile physically travels right. */
.next-event-moving{will-change:transform,opacity}
/* Directory */
.production-directory-page{padding:0 18px 70px}.directory-topline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:stretch}.directory-next{display:grid;gap:3px;background:var(--acid);color:#090909;padding:15px;text-decoration:none}.directory-calendar-link{display:grid;place-items:center;background:#090909;color:#fff;padding:15px;text-decoration:none}.directory-filter-bar{display:flex;gap:6px;flex-wrap:wrap;padding:18px 0}.directory-filter-bar button{border:1px solid #111;background:#fff;padding:8px 11px;font-weight:900}.directory-filter-bar button.active{background:var(--tax,var(--hot));color:#090909}.production-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.production-directory-card{min-height:390px;position:relative;overflow:hidden;background:#111;color:#fff;text-decoration:none;display:flex;align-items:flex-end}.production-directory-card img,.production-directory-placeholder{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.production-directory-placeholder{background:linear-gradient(135deg,var(--hot),var(--acid))}.production-directory-copy{position:relative;z-index:2;width:100%;padding:16px;background:linear-gradient(transparent,rgba(0,0,0,.88));display:grid;gap:3px}.production-directory-copy strong{font-size:clamp(24px,3vw,46px)}.production-directory-copy em{font-style:normal}.production-directory-copy small{font-size:11px}
.feature-label{display:table;width:max-content;max-width:100%;background:var(--hot);color:#090909;padding:3px 7px;margin-bottom:7px;font-size:clamp(10px,1vw,15px);font-weight:1000}
/* Newsletter remains one enormous edge-to-edge field/button composition. */
.newsletter{padding-inline:0!important}.newsletter-title{padding-inline:18px!important}.newsletter-strip{gap:0!important;margin:0!important;width:100%!important}.newsletter-strip input,.newsletter-strip button{margin:0!important;border-radius:0!important}.newsletter-strip input{border-left:0!important;border-right:2px solid #090909!important}.newsletter-strip button{border-right:0!important;border-left:0!important}
.footer-sitemap{background:#090909!important;color:#fff!important}.footer-sitemap a{color:#fff!important}.footer-legal{background:#deded8!important;color:#202020!important}.footer-info-col a{word-break:break-word}
@media(max-width:900px){.production-directory{grid-template-columns:1fr 1fr}.production-directory-card{min-height:300px}}
@media(max-width:600px){.production-directory{grid-template-columns:1fr}.directory-topline{grid-template-columns:1fr}.newsletter-title h2{white-space:normal!important}}

.month-cell.today-cell::after{content:""!important;position:absolute!important;inset:0!important;border:4px solid var(--hot)!important;z-index:999!important;pointer-events:none!important}


/* Open Calls v5 — managed lifecycle + archive */
.open-call-card{display:flex!important;flex-direction:column;justify-content:flex-end;min-height:360px}.open-call-card h3{margin-top:auto}.open-call-card-deadline{display:inline-block;margin-top:14px;width:max-content;max-width:100%;background:var(--acid);color:var(--ink);text-shadow:none;border:2px solid var(--ink);padding:7px 9px;font:900 12px var(--font-utility)}.open-call-card.is-closed-grace{filter:grayscale(1);opacity:.62}.open-call-card.is-closed-grace::before{content:"נסגר";position:absolute;top:18px;left:18px;background:var(--paper);color:var(--ink);text-shadow:none;border:2px solid var(--ink);padding:7px 10px;font:900 12px var(--font-utility);z-index:4}.open-call-empty a{color:inherit;text-decoration:underline}.open-calls-index{max-width:1500px}.open-calls-index-hero{min-height:38vh}.open-calls-current,.open-calls-archive{padding-bottom:64px}.open-calls-archive{border-top:3px solid var(--ink);padding-top:32px;margin-top:36px}.section-heading-simple{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:20px}.section-heading-simple h2{font:900 clamp(42px,7vw,100px)/.82 var(--font-display);letter-spacing:-.05em;margin:0}.section-heading-simple p{max-width:44ch;margin:0}.open-calls-none{padding:35px 0 55px;border-bottom:1px solid var(--ink)}.archive-grid .open-call-card{filter:grayscale(.85);opacity:.78}.open-call-detail{min-height:100vh}.open-call-detail-hero{min-height:72vh;padding:90px 18px 30px;display:flex;align-items:end;background:var(--hot);background-size:cover;background-position:center}.open-call-detail-hero.has-image{color:#fff}.open-call-detail-hero>div{max-width:1400px}.open-call-detail-hero h1{font:900 clamp(64px,12vw,180px)/.76 var(--font-display);letter-spacing:-.07em;margin:10px 0}.open-call-detail-hero p{font-size:clamp(20px,3vw,36px);font-weight:800;max-width:55ch}.open-call-status{display:inline-block;border:2px solid currentColor;padding:7px 10px;font:900 12px var(--font-utility)}.open-call-date-band{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);background:var(--acid)}.open-call-date-band>div{padding:20px 18px;border-left:3px solid var(--ink)}.open-call-date-band>div:first-child{border-left:0}.open-call-date-band small,.open-call-date-band strong{display:block}.open-call-date-band small{font:900 12px var(--font-utility);margin-bottom:6px}.open-call-date-band strong{font:900 clamp(22px,3vw,42px)/1 var(--font-display)}.open-call-detail-body{max-width:1200px;padding:36px 18px 110px}.open-call-copy-section{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,2fr);gap:40px;padding:34px 0;border-bottom:2px solid var(--ink)}.open-call-copy-section h2{font:900 clamp(32px,5vw,70px)/.9 var(--font-display);margin:0}.open-call-copy-section>div{white-space:pre-line;font-size:20px;line-height:1.6}.open-call-submit-area{padding:45px 0}.open-call-submit-button{display:inline-block;background:var(--hot);color:var(--ink);border:3px solid var(--ink);padding:18px 24px;font:900 clamp(20px,3vw,34px)/1 var(--font-display);text-decoration:none;box-shadow:7px 7px 0 var(--ink)}.open-call-submit-button.disabled{background:#ccc;color:#666;box-shadow:none}.open-call-detail.closed .open-call-detail-hero{filter:grayscale(.75)}
@media(max-width:860px){.section-heading-simple{display:block}.section-heading-simple p{margin-top:12px}.open-call-date-band{grid-template-columns:1fr}.open-call-date-band>div{border-left:0;border-top:2px solid var(--ink)}.open-call-date-band>div:first-child{border-top:0}.open-call-copy-section{grid-template-columns:1fr;gap:14px}.open-call-detail-hero{min-height:58vh}.open-call-card{min-height:300px}}


/* ========================================================================
   IndieTZ V5.3 STAGING — living calendar + Open Calls media/navigation
   ======================================================================== */
/* Hero placeholder is intentionally visual only: never leak admin helper text while video loads. */
.hero-blank{font-size:0!important;color:transparent!important;background:#090909!important}

/* Inner pages: no dead white gap. A full toolbar exists only because it carries real navigation. */
.detail-page{padding-top:0!important;background:#090909!important;color:#fffaf0!important}
.detail-toolbar{min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;background:#fffaf0;color:#090909;border-bottom:2px solid #090909;position:relative;z-index:65}
.detail-back{display:flex;align-items:center;gap:9px;padding:0 18px;border-inline-end:2px solid #090909;font:900 13px/1 var(--font-utility);text-decoration:none!important}.detail-back:hover{background:var(--acid)}
.detail-hero{margin:0!important;background:linear-gradient(135deg,var(--hot) 0 42%,var(--signal) 42% 68%,var(--acid) 68%)!important;color:#090909!important}
.detail-body{color:#fffaf0}.detail-body a{color:inherit}.detail-body .muted{color:#aaa}
.detail-body .body-copy,.artist-profile-section,.open-call-copy-section{border-color:#fffaf0!important}
.back-home{display:none!important}
.listing-page{background:#090909;color:#fffaf0;min-height:100vh}.listing-head{background:#090909;color:#fffaf0}
.directory-filter-bar button{background:#111!important;color:#fff!important;border-color:#666!important}.directory-filter-bar button.active{color:#090909!important}

/* Open Call toolbar can browse all published calls, including archive. */
.open-call-peer-nav{min-width:0;display:grid;grid-template-columns:1fr 1fr;direction:rtl}.open-call-peer{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;padding:7px 14px;border-inline-start:1px solid #090909;background:#fffaf0;color:#090909}.open-call-peer:first-child{border-inline-start:0}.open-call-peer span{font-size:22px}.open-call-peer small{font:900 9px var(--font-utility);text-transform:uppercase}.open-call-peer strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.open-call-peer.closed{background:#c8c8c4;color:#565656;filter:grayscale(1)}.open-call-peer:hover{background:var(--acid)!important;color:#090909!important;filter:none}

/* Cards: image/video behind a real box — no black aura/text shadow. */
.open-call-card{padding:0!important;isolation:isolate;background-color:#151515!important;text-shadow:none!important}.open-call-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.18));z-index:0;pointer-events:none}.open-call-card-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.open-call-card-copy{position:relative;z-index:3;margin:auto 16px 16px;width:min(90%,700px);background:#fffaf0;color:#090909;border:2px solid #090909;padding:13px 14px;box-shadow:none;text-shadow:none}.open-call-card-copy h3{margin:7px 0!important}.open-call-card-copy p{margin:8px 0}.open-call-card-copy small{display:inline-block;background:#090909;color:#fff;padding:4px 6px}.open-call-card-deadline{margin-top:9px!important}.open-call-card.is-closed-grace,.open-call-card.is-archived{filter:grayscale(1);opacity:.6}.open-call-card.is-archived::before{content:"ארכיון";position:absolute;top:16px;left:16px;background:#fffaf0;color:#090909;border:2px solid #090909;padding:6px 9px;font:900 11px var(--font-utility);z-index:5}
.archive-grid .open-call-card{filter:grayscale(1);opacity:.62}

/* Open Call detail: image or loop video, optional transparent logo, boxed copy. */
.open-call-detail{background:#090909;color:#fffaf0}.open-call-detail-hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,var(--hot),var(--signal) 54%,var(--acid))!important;background-size:cover!important;background-position:center!important;color:#fff!important;padding-top:30px!important}.open-call-detail-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 18%,rgba(0,0,0,.18) 72%);z-index:-1}.open-call-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.open-call-logo{position:absolute;z-index:3;top:22px;left:22px;width:min(24vw,260px);height:min(22vh,180px);object-fit:contain;object-position:left top;filter:none}.open-call-hero-copy{position:relative;z-index:4;width:min(1120px,calc(100% - 36px));background:#fffaf0;color:#090909;border:3px solid #090909;padding:16px 18px;margin:0 0 0}.open-call-detail-hero h1{margin:12px 0 6px!important}.open-call-detail-hero p{margin:6px 0 0!important}.open-call-status{display:inline-flex!important;align-items:center;gap:7px;background:#090909;color:#fff;border-color:#090909!important}.live-dot{width:9px;height:9px;border-radius:50%;background:#ffe600;box-shadow:0 0 0 1px #ffe600;animation:liveDotFade 1.35s ease-in-out infinite}.open-call-detail.closed .live-dot{display:none}@keyframes liveDotFade{0%,100%{opacity:.2;transform:scale(.78)}50%{opacity:1;transform:scale(1.12)}}
.open-call-date-band{grid-template-columns:repeat(3,minmax(0,1fr))!important;background:var(--acid)!important;color:#090909}.open-call-date-band>div{border-color:#090909!important}.open-call-detail-body{color:#fffaf0}.open-call-copy-section{border-color:#fffaf0!important}.open-call-copy-section>div{color:#f4efe6}.open-call-submit-row{display:flex;align-items:stretch;gap:14px;flex-wrap:wrap}.open-call-countdown{display:flex;align-items:center;background:#fffaf0;color:#090909;border:3px solid #fffaf0;padding:14px 18px;font:900 clamp(16px,2vw,27px)/1 var(--font-display)}.open-call-submit-button{box-shadow:7px 7px 0 #fffaf0!important}.open-call-submit-button.disabled{box-shadow:none!important}

/* Featured video backgrounds. Copy remains in deliberate black boxes. */
.feature-background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.feature-card.has-video .feature-copy{position:relative;z-index:2}.feature-card.has-video::before{z-index:1;background:rgba(0,0,0,.08)}

/* Calendar: low-frequency idle signal + aggressive club hover. */
.month-event:not(.past-event){animation:calendarIdleSignal 8.4s steps(1,end) infinite}.month-event:nth-child(2n){animation-delay:-2.1s}.month-event:nth-child(3n){animation-delay:-5.2s}
@keyframes calendarIdleSignal{0%,88%,100%{filter:none}89%{filter:brightness(1.7) saturate(1.8) contrast(1.25)}90%{filter:brightness(.72) saturate(.7) contrast(1.5)}91%{filter:brightness(1.25) saturate(1.4)}92%{filter:none}}
.month-cell:has(.month-event:hover){z-index:35!important;animation:clubCellPulse .72s steps(1,end) infinite!important}.month-events:has(.month-event:hover) .month-event:not(:hover){animation:clubSiblingFlicker .52s steps(1,end) infinite!important;opacity:.3!important;filter:grayscale(.5) brightness(.55) contrast(1.35)!important}.month-event:hover{animation:clubJolt .62s steps(1,end) infinite!important;flex-grow:12!important;z-index:60!important;box-shadow:14px 0 0 var(--acid),-9px 0 0 var(--hot),0 0 0 3px #fff!important;filter:contrast(1.45) saturate(1.75)!important}.month-event:hover::after{opacity:1!important;width:34%!important;animation:clubBlade .48s linear infinite!important}.month-event:hover::before{content:"";position:absolute;inset:0;z-index:7;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.36) 0 2px,transparent 2px 11px),linear-gradient(90deg,transparent 0 35%,rgba(223,255,0,.42) 35% 46%,transparent 46% 100%);mix-blend-mode:screen;animation:clubStrobe .31s steps(1,end) infinite}.month-event:hover .event-media img,.month-event:hover .event-media video{animation:clubMedia .62s steps(1,end) infinite!important}.month-event:hover .event-title,.month-event:hover .event-time{position:relative;z-index:12;animation:clubType .4s steps(1,end) infinite!important}
@keyframes clubCellPulse{0%,100%{filter:none}18%{filter:brightness(1.18)}19%{filter:brightness(.82)}42%{filter:none}64%{filter:contrast(1.3)}65%{filter:contrast(.88)}}
@keyframes clubJolt{0%,100%{transform:translate(0,0) skew(0) scale(1.015)}12%{transform:translate(-7px,2px) skewX(-3deg) scale(1.035)}24%{transform:translate(5px,-2px) skewX(2deg) scale(.995)}39%{transform:translate(-2px,3px) skewY(-1deg) scale(1.045)}51%{transform:translate(8px,0) skewX(4deg) scale(1.01)}68%{transform:translate(-5px,-3px) skewX(-2deg) scale(1.035)}82%{transform:translate(2px,1px) skewX(1deg) scale(1.005)}}
@keyframes clubSiblingFlicker{0%,100%{opacity:.32}18%{opacity:.12}19%{opacity:.44}41%{opacity:.26}42%{opacity:.08}59%{opacity:.35}}
@keyframes clubBlade{0%{left:-60%;transform:rotate(-24deg) translateX(-150%)}100%{left:130%;transform:rotate(-24deg) translateX(90%)}}
@keyframes clubStrobe{0%,100%{opacity:.12;transform:translateY(0)}20%{opacity:.82;transform:translateY(-4px)}21%{opacity:.08}46%{opacity:.55;transform:translateY(3px)}47%{opacity:.15}73%{opacity:.9}74%{opacity:.1}}
@keyframes clubMedia{0%,100%{transform:scale(1.03) translate(0,0);filter:contrast(1.1)}22%{transform:scale(1.13) translate(-3%,-2%);filter:contrast(1.8) saturate(1.8)}43%{transform:scale(1.05) translate(2%,1%);filter:brightness(.7)}66%{transform:scale(1.16) translate(-1%,2%);filter:hue-rotate(10deg) contrast(1.4)}82%{transform:scale(1.08) translate(2%,-1%)}}
@keyframes clubType{0%,100%{transform:translate(0)}22%{transform:translateX(-5px)}23%{transform:translateX(3px)}55%{transform:translateY(-2px)}56%{transform:translateY(2px)}}
.week-event:hover,.today-event:hover{animation:clubJolt .68s steps(1,end) infinite!important;box-shadow:inset 12px 0 0 var(--acid),inset -8px 0 0 var(--hot)!important}.week-event:hover::after,.today-event:hover::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.18) 0 2px,transparent 2px 12px);pointer-events:none;animation:clubStrobe .36s steps(1,end) infinite}

@media(prefers-reduced-motion:reduce){.month-event,.month-cell,.month-event::before,.month-event::after,.month-event *,.week-event,.today-event,.live-dot{animation:none!important}.open-call-hero-video,.open-call-card-video,.feature-background-video{display:none!important}}
@media(max-width:860px){.detail-toolbar{grid-template-columns:1fr}.detail-back{min-height:48px;border-inline-end:0;border-bottom:1px solid #090909}.open-call-peer-nav{grid-template-columns:1fr 1fr}.open-call-peer{grid-template-columns:auto minmax(0,1fr)}.open-call-peer small{display:none}.open-call-logo{width:34vw;height:100px}.open-call-hero-copy{width:calc(100% - 24px);padding:12px}.open-call-date-band{grid-template-columns:1fr!important}.open-call-countdown{width:100%}.month-event:hover{animation:clubJoltMobile .68s steps(1,end) infinite!important}@keyframes clubJoltMobile{0%,100%{transform:scale(1.01)}25%{transform:translateX(-3px) skewX(-1deg) scale(1.025)}50%{transform:translateX(3px) skewX(1deg) scale(1.015)}75%{transform:translateY(-2px) scale(1.025)}}}

/* V5.3 finishing corrections */
.open-call-card-video{z-index:0!important}.open-call-card::after{z-index:1!important}.open-call-card .content-placeholder-mark{position:relative;z-index:2}.open-call-card-copy{z-index:3!important}
.open-call-hero-video{z-index:0!important}.open-call-detail-hero::after{z-index:1!important}.open-call-hero-copy{z-index:2!important}.open-call-logo{z-index:3!important}
.content-card.media:not(.open-call-card){text-shadow:none!important}.content-card.media:not(.open-call-card)>small,.content-card.media:not(.open-call-card)>h3,.content-card.media:not(.open-call-card)>p{position:relative;z-index:2;width:fit-content;max-width:92%;background:#fffaf0;color:#090909;padding:.08em .18em;box-decoration-break:clone;-webkit-box-decoration-break:clone;text-shadow:none!important}


/* ========================================================================
   IndieTZ V5.4 STAGING — timeline Open Calls / readable chaos / directories
   ======================================================================== */
/* Open Calls: neutral controls, timeline placement, real slide track. */
.open-calls-heading{display:grid!important;grid-template-columns:1fr auto!important;direction:rtl;align-items:center!important}.open-calls-heading>span{justify-self:start}.open-call-actions{justify-self:end;direction:rtl!important}.open-call-actions button,.open-call-actions a{background:#bdbdb7!important;color:#111!important;border:1px solid #777!important;box-shadow:none!important}.open-call-actions button:hover,.open-call-actions a:hover{background:#deded9!important}.open-call-actions button:disabled{opacity:.25!important;cursor:default}.open-calls-grid{overflow:hidden!important;position:relative}.open-calls-grid>.open-call-card{position:relative;width:100%;will-change:transform}
.open-call-peer-nav{direction:ltr!important;background:#aaa}.open-call-peer{background:#bdbdb7!important;color:#111!important;border-color:#777!important;transition:background .2s ease,opacity .2s ease}.open-call-peer.closed{background:#8f8f8b!important;color:#3e3e3e!important;filter:grayscale(1)}.open-call-peer:hover{background:#d9d9d4!important;color:#090909!important}.open-call-peer.empty{display:block;background:#999!important;opacity:.18}.open-call-peer.newer{grid-column:1}.open-call-peer.older{grid-column:2}
.open-call-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.open-call-card-video{z-index:0!important}.open-call-card::after{z-index:1!important}.open-call-card-copy{z-index:3!important}
/* The actual Open Call image/video is the hero background. Never overwrite it with an !important gradient. */
.open-call-detail-hero{background-color:#151515!important;background-image:var(--open-call-hero-image,none)!important;background-size:cover!important;background-position:center!important}.open-call-detail-hero.has-image{background-color:#090909!important}.open-call-detail-hero::after{background:rgba(0,0,0,.08)!important}.open-call-hero-copy{width:min(760px,calc(100% - 36px))!important;border:0!important;padding:10px 12px!important;background:rgba(255,250,240,.94)!important}.open-call-detail-hero h1{font-size:clamp(52px,9vw,132px)!important}.open-call-detail-hero p{font-size:clamp(16px,2.1vw,26px)!important}.open-call-status{padding:5px 8px!important;border:0!important}.live-dot{background:#39ff63!important;box-shadow:0 0 0 1px #39ff63!important}.open-call-date-band{background:#c8c8c4!important}
/* Calendar: remove the colored blade/side bars; keep the club pressure and add readable micro-scramble. */
.month-event::after{display:none!important}.month-event:hover::after{display:none!important}.month-event:hover{box-shadow:0 0 0 2px rgba(255,255,255,.92),0 12px 24px rgba(0,0,0,.34)!important;animation:clubJoltV54 .48s steps(1,end) infinite!important}.month-event:hover::before{background:repeating-linear-gradient(0deg,rgba(255,255,255,.32) 0 2px,transparent 2px 9px),linear-gradient(90deg,transparent 0 42%,rgba(255,255,255,.28) 42% 48%,transparent 48% 100%)!important;animation:clubStrobeV54 .24s steps(1,end) infinite!important}.month-events:has(.month-event:hover) .month-event:not(:hover){animation:clubSiblingFlickerV54 .39s steps(1,end) infinite!important}.calendar-scrambling{filter:brightness(1.35) contrast(1.25);text-shadow:2px 0 0 rgba(255,255,255,.22);will-change:contents}
@keyframes clubJoltV54{0%,100%{transform:translate(0,0) skew(0) scale(1.015)}9%{transform:translate(-8px,3px) skewX(-4deg) scale(1.045)}18%{transform:translate(5px,-3px) skewX(3deg) scale(.99)}31%{transform:translate(-3px,4px) skewY(-2deg) scale(1.055)}45%{transform:translate(9px,-1px) skewX(4deg) scale(1.01)}58%{transform:translate(-7px,-4px) skewX(-3deg) scale(1.045)}73%{transform:translate(4px,3px) skewX(2deg) scale(.995)}86%{transform:translate(-2px,-2px) scale(1.035)}}
@keyframes clubStrobeV54{0%,100%{opacity:.08}12%{opacity:.92}13%{opacity:.04}37%{opacity:.5}38%{opacity:.08}61%{opacity:.82}62%{opacity:.03}84%{opacity:.62}85%{opacity:.08}}
@keyframes clubSiblingFlickerV54{0%,100%{opacity:.34;filter:brightness(.7)}14%{opacity:.08;filter:brightness(.4)}15%{opacity:.5;filter:brightness(1.25)}44%{opacity:.18}45%{opacity:.44}71%{opacity:.1}72%{opacity:.38}}
/* Directory media + alphabetical navigation. */
.artist-directory-page,.production-directory-page{position:relative;isolation:isolate;min-height:100vh!important;background:transparent!important}.directory-ambient{position:fixed;inset:58px 0 0;z-index:0;background:#141414;overflow:hidden}.directory-ambient img,.directory-ambient video{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.08)}.directory-ambient::after{content:"";position:absolute;inset:0;background:rgba(9,9,9,var(--directory-overlay,.62))}.directory-alt-logo{position:absolute!important;z-index:3!important;top:28px!important;right:24px!important;width:min(28vw,360px)!important;height:auto!important;max-height:28vh!important;object-fit:contain!important;filter:none!important}.directory-ambient.placeholder{background:radial-gradient(circle at 18% 30%,#2a2a2a 0 8%,transparent 9%),linear-gradient(125deg,#090909,#262626 48%,#111)}.directory-ambient.placeholder span{position:absolute;left:3vw;bottom:4vh;color:#444;font:900 clamp(70px,18vw,280px)/.7 var(--font-display);letter-spacing:-.08em}.directory-page-content{position:relative;z-index:1;padding:0 18px 90px}.directory-page-content .listing-head{background:rgba(9,9,9,.82);color:#fffaf0;margin-inline:-18px;padding-inline:18px}.directory-alpha-top{display:flex;flex-wrap:wrap;gap:4px;padding:12px 0 18px;position:relative;z-index:5}.directory-alpha-top button,.directory-alpha-side button{border:0;background:#c4c4bf;color:#111;font:900 11px var(--font-utility);min-width:30px;height:30px;cursor:pointer}.directory-alpha-top button:hover,.directory-alpha-side button:hover{background:#fff}.directory-alpha-side{position:fixed;left:0;top:50%;transform:translate(-110%,-50%);z-index:75;display:grid;grid-template-columns:repeat(2,30px);gap:2px;padding:5px;background:rgba(9,9,9,.9);transition:transform .28s ease;max-height:70vh;overflow:auto}.directory-alpha-side.is-visible{transform:translate(0,-50%)}.directory-letter-section{scroll-margin-top:76px;padding:18px 0 34px;border-top:1px solid rgba(255,255,255,.28)}.directory-letter-section>h2{margin:0 0 14px;color:#fffaf0;font:900 clamp(42px,6vw,88px)/.75 var(--font-display)}.artist-directory-groups{display:grid;gap:10px}.artists-public{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important}.artist-public-card{background:#fffaf0;color:#090909;padding:0!important;overflow:hidden}.artist-public-card img,.artist-public-placeholder{height:240px!important;margin:0!important}.artist-public-name{padding:12px;font:900 clamp(20px,2.2vw,32px)/.95 var(--font-display)}
/* Production directory: more breathing room, colored separators, solid black copy, next-date square. */
.production-directory-page{padding:0!important}.production-directory-groups{display:grid;gap:8px}.production-directory{gap:14px!important}.production-directory-card{min-height:410px!important;border-top:8px solid var(--divider,#aaa);background:#111}.production-directory-copy{background:#090909!important;padding:15px 16px 15px 145px!important;min-height:92px;align-content:center}.production-directory-copy strong{line-height:.9}.next-date-square{position:absolute;z-index:4;left:12px;bottom:12px;width:118px;min-height:86px;background:#fffaf0;color:#090909;padding:8px;display:grid;align-content:end;gap:2px}.next-date-square small{font:900 9px var(--font-utility)}.next-date-square b{font:900 15px var(--font-display)}.next-date-square em{font:900 12px var(--font-utility);font-style:normal}
/* Generic content pages may use photo or looping video as their media field. */
.content-detail-hero{position:relative;overflow:hidden;isolation:isolate;background-color:#1a1a1a!important;background-image:var(--detail-hero-image,linear-gradient(125deg,#151515,#2b2b2b))!important;background-size:cover!important;background-position:center!important;min-height:58vh}.content-detail-hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.15);z-index:1}.detail-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.content-detail-hero h1{position:relative;z-index:2;width:fit-content;max-width:90%;background:#090909;color:#fffaf0;padding:.08em .14em}.content-detail-hero.media-placeholder{background:linear-gradient(125deg,#151515,#2b2b2b)!important}
@media(max-width:900px){.artists-public{grid-template-columns:repeat(2,minmax(0,1fr))!important}.directory-alpha-side{grid-template-columns:repeat(2,28px)}.production-directory-copy{padding-left:128px!important}.next-date-square{width:104px}.open-calls-heading{grid-template-columns:1fr!important;gap:8px}.open-call-actions{justify-self:start!important}}
@media(prefers-reduced-motion:reduce){.calendar-scrambling{filter:none!important}.directory-alpha-side{transition:none!important}}

.detail-hero[style*="--detail-hero-image"]{background-image:var(--detail-hero-image)!important;background-size:cover!important;background-position:center!important;color:#fff!important}

/* =====================================================================
   V5.5 — Open Call stability + broadcast-interrupt calendar refinement
   ===================================================================== */
.open-calls-grid{
  height:clamp(390px,48vh,570px)!important;
  min-height:clamp(390px,48vh,570px)!important;
  overflow:hidden!important;
  position:relative!important;
}
.open-calls-grid>.open-call-card{
  height:100%!important;
  min-height:0!important;
  width:100%!important;
}
.open-calls-grid>.open-call-slide-incoming{
  position:absolute!important;
  inset:0!important;
  z-index:8!important;
}
.open-call-card.is-closed-grace,.open-call-card.is-archived{
  filter:grayscale(1)!important;
  opacity:.68!important;
}
.open-call-card-deadline{
  background:#d7d7d1!important;
  color:#111!important;
  border:0!important;
  padding:7px 9px!important;
}
.open-call-card:not(.is-closed-grace):not(.is-archived) .open-call-card-deadline{
  background:#39ff63!important;
}

/* Detail pages remain vivid when a call closes; only state controls mute. */
.open-call-detail.closed .open-call-detail-hero{
  filter:none!important;
}
.open-call-date-band{
  background:#090909!important;
  gap:0!important;
}
.open-call-date-band>div{
  color:#090909!important;
  border-color:#090909!important;
}
.open-call-date-band .deadline-date{background:#ff2b93!important}
.open-call-date-band .response-date{background:#39ff63!important}
.open-call-date-band .presentation-dates{background:#39e7ff!important}
.open-call-detail.closed .open-call-date-band .deadline-date{
  background:#b9b9b4!important;
  color:#333!important;
}
.open-call-submit-button.disabled{
  background:#bdbdb7!important;
  color:#333!important;
  border-color:#bdbdb7!important;
}
.open-call-closed-note{
  display:flex;
  align-items:center;
  background:#777!important;
  color:#fff!important;
  padding:14px 18px;
  font:900 clamp(16px,2vw,26px)/1 var(--font-display);
}
.open-call-countdown{
  background:#39ff63!important;
  color:#090909!important;
  border-color:#39ff63!important;
  font-variant-numeric:tabular-nums;
  min-width:min(100%,520px);
}

/* Periodic whole-calendar broadcast interruption. */
.calendar{position:relative!important;isolation:isolate}
.calendar.calendar-interrupt::before,
.calendar.calendar-interrupt::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.calendar.calendar-interrupt::before{
  z-index:0;
  background:
    repeating-linear-gradient(0deg,rgba(255,255,255,.22) 0 2px,transparent 2px 7px),
    repeating-linear-gradient(90deg,#39ff63 0 13%,#39e7ff 13% 28%,#ff2b93 28% 43%,#090909 43% 48%,#39ff63 48% 61%,#ff2b93 61% 78%,#39e7ff 78% 100%);
  background-size:100% 13px,220% 100%;
  animation:calendarBroadcastStatic .105s steps(2,end) infinite,calendarBroadcastSweep .72s steps(5,end) infinite;
}
.calendar.calendar-interrupt::after{
  z-index:1;
  inset:7%;
  background-image:var(--calendar-interrupt-logo,none);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  mix-blend-mode:difference;
  filter:contrast(1.5) saturate(1.5);
  animation:calendarBroadcastLogo .18s steps(2,end) infinite;
}
.calendar.calendar-interrupt>.weekday-head,
.calendar.calendar-interrupt>.month-grid,
.calendar.calendar-interrupt>.week-grid,
.calendar.calendar-interrupt>.today-stage{position:relative;z-index:3;background:transparent!important}
.calendar.calendar-interrupt .month-cell,
.calendar.calendar-interrupt .week-day,
.calendar.calendar-interrupt .today-stage,
.calendar.calendar-interrupt .today-date-panel,
.calendar.calendar-interrupt .today-events{
  background:transparent!important;
}
.calendar.calendar-interrupt .month-event,
.calendar.calendar-interrupt .week-event,
.calendar.calendar-interrupt .today-event,
.calendar.calendar-interrupt .calendar-insert{
  background:transparent!important;
  box-shadow:none!important;
}
.calendar.calendar-interrupt .month-event>*:not(.event-time):not(.event-title),
.calendar.calendar-interrupt .month-event .event-time,
.calendar.calendar-interrupt .month-event .event-title,
.calendar.calendar-interrupt .week-event>* ,
.calendar.calendar-interrupt .today-event>* ,
.calendar.calendar-interrupt .calendar-insert>* ,
.calendar.calendar-interrupt .weekday-head span,
.calendar.calendar-interrupt .week-day-name,
.calendar.calendar-interrupt .date-copy{
  opacity:0!important;
}
.calendar.calendar-interrupt .month-date,
.calendar.calendar-interrupt .week-day-num,
.calendar.calendar-interrupt .big-date{
  opacity:1!important;
  color:#fff!important;
  background:#090909!important;
  mix-blend-mode:normal;
  z-index:10!important;
}
@keyframes calendarBroadcastStatic{
  0%{transform:translateY(0);filter:brightness(1)}
  50%{transform:translateY(-7px);filter:brightness(1.45) contrast(1.2)}
  100%{transform:translateY(4px);filter:brightness(.8)}
}
@keyframes calendarBroadcastSweep{
  0%{background-position:0 0,0 0}
  100%{background-position:0 19px,120% 0}
}
@keyframes calendarBroadcastLogo{
  0%,100%{transform:translate(0,0) scale(.97);opacity:.82}
  33%{transform:translate(-7px,3px) scale(1.02);opacity:1}
  66%{transform:translate(6px,-2px) scale(.99);opacity:.66}
}

@media(max-width:860px){
  .open-calls-grid{height:390px!important;min-height:390px!important}
  .open-call-date-band .deadline-date,.open-call-date-band .response-date,.open-call-date-band .presentation-dates{border-top:2px solid #090909!important}
  .open-call-date-band>div:first-child{border-top:0!important}
  .open-call-submit-row{gap:8px!important}
}
@media(prefers-reduced-motion:reduce){
  .calendar.calendar-interrupt::before,.calendar.calendar-interrupt::after{animation:none!important}
}
.calendar.calendar-interrupt .month-event,
.calendar.calendar-interrupt .week-event,
.calendar.calendar-interrupt .today-event,
.calendar.calendar-interrupt .calendar-insert{border-color:transparent!important}

/* =====================================================================
   V5.6 — directory flow, navigation colour, calendar broadcast, text flow
   ===================================================================== */
.body-copy,.source-box{white-space:pre-line}
.programme-magazine-divider{height:18px!important;margin:0!important;background-image:repeating-linear-gradient(135deg,var(--stripe-a,#777) 0 7px,var(--stripe-b,#111) 7px 14px)!important}
.next-kicker{font-size:14px!important}
.period-nav button,#dockPrevPeriod,#dockNextPeriod{font-family:Arial,sans-serif!important;font-size:28px!important;line-height:1!important}

/* Letter indexes stay useful without turning the directory into titled chapters. */
.artist-directory-continuous{position:relative}
.directory-alpha-top button,.directory-alpha-side button{transition:background .16s ease,color .16s ease,transform .16s ease;border:0!important}
.directory-alpha-top button:nth-child(6n+1):hover,.directory-alpha-side button:nth-child(6n+1):hover{background:#39ff63!important;color:#090909!important}
.directory-alpha-top button:nth-child(6n+2):hover,.directory-alpha-side button:nth-child(6n+2):hover{background:#39e7ff!important;color:#090909!important}
.directory-alpha-top button:nth-child(6n+3):hover,.directory-alpha-side button:nth-child(6n+3):hover{background:#ff2b93!important;color:#090909!important}
.directory-alpha-top button:nth-child(6n+4):hover,.directory-alpha-side button:nth-child(6n+4):hover{background:#ff6b21!important;color:#090909!important}
.directory-alpha-top button:nth-child(6n+5):hover,.directory-alpha-side button:nth-child(6n+5):hover{background:#dfff00!important;color:#090909!important}
.directory-alpha-top button:nth-child(6n):hover,.directory-alpha-side button:nth-child(6n):hover{background:#8f6cff!important;color:#fff!important}
.directory-alpha-top button.active,.directory-alpha-side button.active{background:#ff2b93!important;color:#090909!important;transform:scale(1.08)}
.artist-public-card[data-alpha-letter],.production-directory-card[data-alpha-letter],.past-productions-section[data-alpha-letter]{scroll-margin-top:110px}
.production-directory-current,.production-directory-past{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px!important}
.past-productions-section{margin-top:70px;padding-top:24px;border-top:8px solid #777}
.past-productions-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px;color:#fffaf0}
.past-productions-title h2{font:900 clamp(44px,7vw,110px)/.8 var(--font-display);letter-spacing:-.055em;margin:0}
.past-productions-title span{font:900 16px var(--font-utility)}
.past-production-card{filter:grayscale(1);opacity:.62;transition:filter .25s ease,opacity .25s ease}
.past-production-card:hover{filter:grayscale(.55);opacity:.86}

/* Main navigation and drawer get character only on interaction. */
.site-nav a,.site-map-content a{transition:background .16s ease,color .16s ease,transform .16s ease}
.site-nav a:nth-child(6n+1):hover,.site-nav a:nth-child(6n+1):focus-visible{background:#39ff63!important;color:#090909!important}
.site-nav a:nth-child(6n+2):hover,.site-nav a:nth-child(6n+2):focus-visible{background:#39e7ff!important;color:#090909!important}
.site-nav a:nth-child(6n+3):hover,.site-nav a:nth-child(6n+3):focus-visible{background:#ff2b93!important;color:#090909!important}
.site-nav a:nth-child(6n+4):hover,.site-nav a:nth-child(6n+4):focus-visible{background:#dfff00!important;color:#090909!important}
.site-nav a:nth-child(6n+5):hover,.site-nav a:nth-child(6n+5):focus-visible{background:#ff6b21!important;color:#090909!important}
.site-nav a:nth-child(6n):hover,.site-nav a:nth-child(6n):focus-visible{background:#8f6cff!important;color:#fff!important}
.site-map-content section:nth-child(5n+1) a:hover{background:#39ff63!important;color:#090909!important}
.site-map-content section:nth-child(5n+2) a:hover{background:#39e7ff!important;color:#090909!important}
.site-map-content section:nth-child(5n+3) a:hover{background:#ff2b93!important;color:#090909!important}
.site-map-content section:nth-child(5n+4) a:hover{background:#dfff00!important;color:#090909!important}
.site-map-content section:nth-child(5n) a:hover{background:#8f6cff!important;color:#fff!important}

/* Archive calls are neutral grey on the home carousel — no pink-grey cast. */
.home-open-call.is-closed-grace,.home-open-call.is-archived{filter:grayscale(1)!important;opacity:1!important;background-color:#777!important}
.home-open-call.is-closed-grace::after,.home-open-call.is-archived::after{background:rgba(95,95,95,.28)!important}
.home-open-call.is-closed-grace .open-call-card-copy,.home-open-call.is-archived .open-call-card-copy{background:#d0d0cc!important;color:#111!important}
.home-open-call.is-closed-grace .open-call-card-copy small,.home-open-call.is-archived .open-call-card-copy small{background:#666!important;color:#fff!important}

/* Make the full-calendar interruption unmistakable while leaving the grid legible. */
.calendar.calendar-interrupt::before{z-index:4!important;filter:saturate(1.45)!important}
.calendar.calendar-interrupt::after{
  content:attr(data-broadcast-label)!important;
  z-index:5!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  background-image:var(--calendar-interrupt-logo,none)!important;
  background-size:min(72vw,980px)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  color:rgba(255,255,255,.88)!important;
  font:900 clamp(70px,20vw,330px)/.7 var(--font-display)!important;
  letter-spacing:-.08em!important;
  text-shadow:8px 0 #ff2b93,-8px 0 #39e7ff,0 8px #39ff63!important;
  mix-blend-mode:screen!important;
}
.calendar.calendar-interrupt>.weekday-head,.calendar.calendar-interrupt>.month-grid,.calendar.calendar-interrupt>.week-grid,.calendar.calendar-interrupt>.today-stage{z-index:8!important}
.calendar.calendar-interrupt .month-cell,.calendar.calendar-interrupt .week-day{border-color:rgba(255,255,255,.72)!important}
.calendar.calendar-interrupt .month-date,.calendar.calendar-interrupt .week-day-num,.calendar.calendar-interrupt .big-date{z-index:12!important}

@media(max-width:900px){
  .production-directory-current,.production-directory-past{grid-template-columns:1fr!important}
  .directory-alpha-side{grid-template-columns:repeat(2,28px)!important}
}


/* ========================================================================
   IndieTZ V5.6.4 — mobile Featured stays a horizontal triptych
   ======================================================================== */
@media (max-width:860px){
  .featured-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    min-height:clamp(220px,62vw,300px)!important;
    height:clamp(220px,62vw,300px)!important;
    overflow:hidden!important;
  }
  .feature-screen{
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    border:0!important;
  }
  .feature-screen+.feature-screen{box-shadow:inset 1px 0 0 #090909!important}
  .feature-card{
    padding:10px 8px!important;
    background-position:center!important;
    justify-content:flex-end!important;
  }
  .feature-card h3{
    margin-top:5px!important;
    font-size:clamp(15px,4.6vw,22px)!important;
    line-height:.9!important;
    letter-spacing:-.04em!important;
    overflow-wrap:anywhere!important;
  }
  .feature-card p{display:none!important}
  .feature-type{font-size:7px!important}
}


/* ========================================================================
   IndieTZ V5.6.5 — mobile schedule: six-day viewport + right-side controls
   ======================================================================== */
@media (max-width:860px){
  .programme-head{
    display:flex!important;
    flex-direction:row!important;
    direction:rtl!important;
    justify-content:space-between!important;
    align-items:stretch!important;
    gap:0!important;
    padding:0!important;
  }
  .programme-head .period-nav{
    order:0!important;
    flex:0 0 min(56vw,210px)!important;
    margin:0!important;
  }
  .programme-head .view-switch{
    order:1!important;
    flex:1 1 auto!important;
    min-width:0!important;
    justify-content:flex-start!important;
  }
  .programme-head .view-switch button{
    min-width:0!important;
    flex:1 1 0!important;
    padding-inline:5px!important;
    font-size:9px!important;
  }
  .calendar.month-view{overflow-x:hidden!important}
  .calendar.month-view .weekday-head,
  .calendar.month-view .month-grid{
    grid-template-columns:repeat(7,minmax(calc(100vw / 6),calc(100vw / 6)))!important;
  }
  .calendar.month-view .weekday-head{
    overflow-x:hidden!important;
    scrollbar-width:none!important;
  }
  .calendar.month-view .weekday-head::-webkit-scrollbar{display:none!important}
  .calendar.month-view .month-grid{
    overflow-x:auto!important;
    overscroll-behavior-x:contain!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:thin!important;
  }
  .calendar.month-view .month-cell{scroll-snap-align:start!important}
  .calendar.month-view .month-date{font-size:15px!important;min-width:30px!important;padding:3px 5px!important}
  .calendar.month-view .month-event{padding-inline:4px!important}
  .calendar.month-view .month-event .event-title{font-size:9px!important}
  .calendar.month-view .month-event .event-time{font-size:7px!important}
}

/* ========================================================================
   IndieTZ V5.6.6 — mobile schedule: all seven days visible + right controls
   ======================================================================== */
@media (max-width:860px){
  .calendar.month-view{overflow-x:hidden!important}
  .calendar.month-view .weekday-head,
  .calendar.month-view .month-grid{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    overflow-x:hidden!important;
  }
  .calendar.month-view .weekday-head span{
    min-width:0!important;
    padding-inline:1px!important;
    font-size:8px!important;
    overflow:hidden!important;
  }
  .calendar.month-view .month-cell{
    min-width:0!important;
    padding-inline:1px!important;
  }
  .calendar.month-view .month-date{
    font-size:12px!important;
    min-width:0!important;
    padding:2px 2px!important;
  }
  .calendar.month-view .month-event{
    min-width:0!important;
    padding-inline:2px!important;
  }
  .calendar.month-view .month-event .event-title{
    font-size:8px!important;
    line-height:.92!important;
    overflow-wrap:anywhere!important;
  }
  .calendar.month-view .month-event .event-time{
    font-size:6px!important;
    line-height:1!important;
  }
}
@media (max-width:430px){
  .programme-head .period-nav{flex-basis:min(58vw,190px)!important}
  .calendar.month-view .weekday-head span{font-size:7px!important}
  .calendar.month-view .month-date{font-size:11px!important}
  .calendar.month-view .month-event .event-title{font-size:7px!important}
  .calendar.month-view .month-event .event-time{font-size:5.5px!important}
}


/* =====================================================================
   V5.8 — artist detail polish + production detail readability
   ===================================================================== */
.artist-profile-hero{
  grid-template-columns:minmax(240px,34vw) minmax(0,1fr)!important;
  min-height:auto!important;
  padding:34px 18px 40px;
  gap:clamp(24px,5vw,76px);
  align-items:end;
  background:#090909!important;
}
.artist-profile-photo-wrap{width:min(420px,34vw);aspect-ratio:4/5;overflow:hidden;align-self:start;background:#222}
.artist-profile-photo-wrap img{width:100%!important;height:100%!important;aspect-ratio:4/5;object-fit:cover!important;filter:none!important;display:block}
.artist-profile-title{padding:0 0 8px!important}.artist-profile-title h1{font-size:clamp(52px,8vw,126px)!important}.artist-profile-title .lead{font-size:clamp(18px,2.3vw,30px);margin:14px 0 0}
.artist-profile-body{max-width:1180px}.artist-profile-section{position:relative;border-bottom:0!important;padding:34px 0 42px!important}.artist-profile-section+.artist-profile-section::before{content:"";display:block;width:min(240px,48vw);height:12px;margin:0 0 30px;background:repeating-linear-gradient(-55deg,#ff2b93 0 9px,#090909 9px 15px,#dfff00 15px 24px,#090909 24px 30px,#00e5ff 30px 39px,#090909 39px 45px)}
.artist-profile-section h2{font-size:12px!important;letter-spacing:.08em;color:#bdbdb7}.artist-production-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}.artist-production-links a{display:grid!important;gap:8px!important;padding:16px 18px!important;background:#fffaf0;color:#090909!important;border:0!important}.artist-production-links a strong{font:900 clamp(24px,3vw,38px)/.9 var(--font-display)}.artist-production-links a span{font:800 14px/1.3 var(--font-utility);color:#555}.artist-socials{gap:10px!important}.artist-socials a{display:inline-flex!important;align-items:center;gap:7px;border:0!important;background:#fffaf0;color:#090909!important;padding:10px 13px!important}.artist-socials a span{margin:0!important;min-width:24px!important;width:24px;height:24px}.artist-socials svg{width:22px;height:22px;display:block}
.artist-public-card img,.artist-public-placeholder{height:auto!important;aspect-ratio:4/5!important;min-height:0!important}.artist-public-card img{filter:grayscale(1)!important}.artist-public-card:hover img{filter:grayscale(0)!important}
.production-detail-hero{min-height:82vh!important;background-image:var(--detail-hero-image,linear-gradient(135deg,var(--hot),var(--signal),var(--acid)))!important;background-size:cover!important;background-position:center!important}.production-detail-hero h1{background:#090909;color:#fffaf0;padding:.05em .1em;width:fit-content;max-width:94%}.production-detail-body .ticket-btn{color:#090909!important;background:var(--acid)!important;border-color:#090909!important;text-decoration:none!important}.production-detail-body .perf-buttons{gap:10px;margin:22px 0 34px}
@media(max-width:760px){.artist-profile-hero{grid-template-columns:1fr!important;padding-top:24px}.artist-profile-photo-wrap{width:min(70vw,360px);margin-inline:auto}.artist-profile-title{text-align:right}.artist-production-links{grid-template-columns:1fr!important}.production-detail-hero{min-height:68vh!important}}


/* V5.8.7 — unified page header media */
.page-media-header{position:relative;overflow:hidden;isolation:isolate;background:var(--page-header-fallback,var(--hot));background-image:var(--page-header-image,none);background-size:cover;background-position:center;min-height:52vh;color:#fffaf0}
.page-media-header::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--page-header-overlay,.26));z-index:1;pointer-events:none}
.page-media-header.media-placeholder{color:var(--ink);background:var(--page-header-fallback,var(--hot))}
.page-media-header.media-placeholder::after{display:none}
.page-media-header-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.page-media-header>h1{position:relative;z-index:3;width:fit-content;max-width:92%;background:#090909;color:#fffaf0;padding:.08em .14em}
.page-media-header.media-placeholder>h1{background:transparent;color:inherit;padding:0}
.page-header-alt-logo{position:absolute;z-index:3;top:28px;right:24px;width:min(28vw,360px);max-height:32%;object-fit:contain;object-position:right top;filter:none}
.open-calls-index-hero.page-media-header{min-height:48vh}
.collection-index-card{background:var(--collection-color)!important;color:var(--collection-text)!important;display:flex;flex-direction:column;justify-content:flex-end;gap:14px}
.collection-index-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.88;mix-blend-mode:multiply}
.collection-index-card h3{position:relative;z-index:2;width:fit-content;background:var(--collection-color);color:var(--collection-text);padding:.08em .12em}
.collection-detail-hero{min-height:62vh}
.collection-detail-body{max-width:1500px;font-family:var(--collection-font,var(--font-body))}
.collection-detail-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;border-bottom:2px solid var(--ink);padding-bottom:18px;font:900 13px var(--font-utility)}
.collection-production-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.collection-production-card{position:relative;min-height:340px;background:#090909;color:#fffaf0;text-decoration:none;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:16px}
.collection-production-card::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.9));z-index:1}
.collection-production-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.collection-production-card strong,.collection-production-card span{position:relative;z-index:2}
.collection-production-card strong{font:900 clamp(28px,3vw,52px)/.86 var(--font-display)}
.collection-production-card span{font-weight:800;margin-top:6px}
@media(max-width:860px){.page-media-header{min-height:46vh}.page-header-alt-logo{width:min(45vw,260px);top:20px;right:16px}.collection-production-grid{grid-template-columns:1fr}.collection-production-card{min-height:300px}}

/* V5.9 — seamless sentence marquee, graphic titles, rich content */
.header-marquee-track{display:flex!important;align-items:center!important;width:max-content!important;animation:indieMarqueeLoop var(--marquee-duration,24s) linear infinite!important;will-change:transform}
.marquee-loop-group{display:flex;align-items:center;flex:0 0 auto;min-width:max-content}
.marquee-loop-group .marquee-unit{display:inline-flex;align-items:center;flex:0 0 auto;padding-inline:32px!important}
@keyframes indieMarqueeLoop{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.header-marquee-track{animation:none!important}}
.page-title-image{position:relative;z-index:3;display:block;width:auto;max-width:min(78vw,980px);max-height:34vh;object-fit:contain;object-position:right center}
.page-header-alt-logo{z-index:4}
.directory-title-image{max-width:min(62vw,720px);max-height:150px;margin:8px 0 16px}
.artist-title-image{max-width:min(62vw,760px);max-height:180px}
.production-title-image{max-width:min(80vw,1000px);max-height:240px;background:transparent!important}
.open-call-title-image{max-width:min(64vw,760px);max-height:180px;margin:10px 0}
.content-title-image{max-width:min(72vw,900px);max-height:220px}
.content-detail-hero::after{background:rgba(0,0,0,var(--content-hero-overlay,.28))!important}
.rich-public-content{font-size:clamp(17px,1.65vw,22px);line-height:1.72;white-space:normal!important}
.rich-public-content p{margin:0 0 1.15em}.rich-public-content h2{font:900 clamp(38px,6vw,82px)/.9 var(--font-display);letter-spacing:-.04em;margin:1.15em 0 .4em}.rich-public-content h3{font:900 clamp(28px,4vw,54px)/.95 var(--font-display);margin:1.1em 0 .35em}
.rich-public-content blockquote{margin:30px 0;padding:22px 26px;border-inline-start:10px solid var(--hot);background:#efebe3;font-size:1.15em;font-weight:700}
.rich-public-content ul,.rich-public-content ol{padding-inline-start:1.6em;margin:1em 0 1.4em}.rich-public-content li{margin:.35em 0}
.rich-public-content .rich-image{margin:42px 0}.rich-public-content .rich-image img{display:block;width:auto;max-width:100%;max-height:82vh;object-fit:contain}.rich-public-content .rich-image figcaption{font:700 12px var(--font-utility);margin-top:9px;color:#5d5d59}
.rich-public-content .rich-person-card{display:inline-grid;grid-template-columns:110px minmax(180px,1fr);align-items:center;gap:18px;min-width:min(100%,360px);max-width:500px;margin:16px 8px 20px 0;border:3px solid var(--ink);background:var(--acid);color:var(--ink);text-decoration:none;padding:12px;transition:transform .18s ease,background .18s ease}
.rich-public-content .rich-person-card:hover{transform:translate(-4px,-4px);background:var(--cyan)}
.rich-public-content .rich-person-card img{width:110px;aspect-ratio:4/5;object-fit:cover}.rich-public-content .rich-person-card strong{display:block;font:900 clamp(20px,2.3vw,30px)/1 var(--font-display)}.rich-public-content .rich-person-card small{display:block;margin-top:7px;font:700 12px var(--font-utility)}
@media(max-width:720px){.page-title-image{max-width:88vw;max-height:26vh}.directory-title-image{max-width:80vw;max-height:110px}.rich-public-content .rich-person-card{grid-template-columns:82px 1fr;margin-inline:0}.rich-public-content .rich-person-card img{width:82px}}
