/* Sub-page additions on top of site.css (same tokens, same type) */
[hidden]{ display:none !important; }

.nav-links a[aria-current="page"]{ opacity:1; }
.nav-links a[aria-current="page"]::after{ width:100%; }

.c-hero .eyebrow{ color:var(--med-copper); }
.c-hero .hero-cta{ margin-top:clamp(24px,3vw,36px); }
.c-hero > img{ animation:settle 2.4s var(--ease) forwards; transform:scale(1.04); }

/* honeypot */
.hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; }

/* corporate */
.zone-total{ margin:26px 0 0; font:400 clamp(15px,1.4vw,19px)/1.3 var(--f-mark); letter-spacing:.1em; text-transform:uppercase; color:var(--turmeric); }
.form .bad, .form [aria-invalid="true"]{ border-bottom-color:#ff9b7a !important; }
.form .err:empty{ display:none; }
.form button[disabled]{ opacity:.6; cursor:progress; }
.ready-msg{ margin:0 0 14px; color:var(--pale); font-size:15.5px; }
.form input:disabled,.form select:disabled,.form textarea:disabled{ opacity:.55; }

/* ── EVENTS ── */
.ev-band{ background:var(--pale); }
.ev-head{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:clamp(30px,4vw,52px); }
.ev-filter{ display:flex; flex-wrap:wrap; gap:8px; }
.ev-filter button{ font:600 10.5px/1 var(--f-label); letter-spacing:.22em; text-transform:uppercase; color:var(--copper);
  background:transparent; border:1px solid rgba(96,51,22,.35); padding:11px 15px; cursor:pointer; transition:background .3s, color .3s; }
.ev-filter button[aria-selected="true"]{ background:var(--slate); color:var(--pale); border-color:var(--slate); }

.ev-list{ border-top:2px solid var(--slate); }
.ev-month{ font:600 11px/1 var(--f-label); letter-spacing:.3em; text-transform:uppercase; color:var(--terracotta); margin:0; padding:30px 0 6px; }
.ev{ display:grid; grid-template-columns:84px 200px 1fr auto; gap:clamp(16px,2.4vw,36px); align-items:center;
     padding:clamp(20px,2.4vw,30px) 0; border-bottom:1px solid var(--line-d); }
.ev > *{ min-width:0; }
.ev-date{ text-align:left; }
.ev-date b{ display:block; font:400 clamp(34px,3.4vw,48px)/1 var(--f-mark); color:var(--terracotta); font-variant-numeric:tabular-nums; }
.ev-date span{ display:block; margin-top:8px; font:600 11px/1 var(--f-label); letter-spacing:.26em; text-transform:uppercase; color:var(--slate); }
.ev-date small{ display:block; margin-top:6px; font:600 10px/1 var(--f-label); letter-spacing:.22em; text-transform:uppercase; color:var(--copper); }
.ev-img{ display:block; padding:0; border:0; background:var(--ink); cursor:pointer; overflow:hidden; aspect-ratio:3/2; width:100%; }
.ev-img img{ width:100%; height:100%; object-fit:cover; transition:transform 1s var(--ease); }
.ev-img:hover img{ transform:scale(1.05); }
.ev-body h3{ margin:0; }
.ev-title{ all:unset; cursor:pointer; font:500 clamp(21px,2vw,28px)/1.1 var(--f-head); font-stretch:115%; color:var(--slate); letter-spacing:-.01em; transition:color .3s; }
.ev-title:hover,.ev-title:focus-visible{ color:var(--terracotta); }
.ev-title:focus-visible{ outline:2px solid var(--turmeric); outline-offset:4px; }
.ev-meta{ margin:10px 0 0; font:600 10.5px/1.7 var(--f-label); letter-spacing:.2em; text-transform:uppercase; color:var(--copper); display:flex; flex-wrap:wrap; align-items:center; gap:4px 0; }
.dot{ display:inline-block; width:4px; height:4px; border-radius:50%; background:currentColor; opacity:.5; margin:0 10px; }
.ev-sum{ margin:12px 0 0; max-width:60ch; font-size:15.5px; }
.ev-state{ margin:12px 0 0; font:600 10.5px/1 var(--f-label); letter-spacing:.2em; text-transform:uppercase; color:var(--green); }
.ev-state.s-few{ color:var(--turmeric); }
.ev-state.s-full,.ev-state.s-cancelled,.ev-state.s-closed{ color:var(--kesar); }
.ev-cta{ display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.ev-btn{ min-width:150px; }
.ev .btn:not(.btn-fill){ color:var(--slate); }
.ev .btn:not(.btn-fill):hover{ background:var(--slate); color:var(--pale); border-color:var(--slate); }
.ev-btn.is-off{ opacity:.55; cursor:default; }
.ev-link{ font:600 10.5px/1 var(--f-label); letter-spacing:.2em; text-transform:uppercase; color:var(--copper); border-bottom:1px solid currentColor; padding-bottom:3px; }
.ev.is-cancelled .ev-title{ text-decoration:line-through; text-decoration-thickness:1px; opacity:.7; }
.ev.is-cancelled .ev-img img{ filter:grayscale(1); opacity:.6; }
@media (max-width:980px){ .ev{ grid-template-columns:70px 150px 1fr; } .ev-cta{ grid-column:2/-1; flex-direction:row; align-items:center; } }
@media (max-width:640px){
  .ev{ grid-template-columns:62px 1fr; gap:14px 16px; }
  .ev-img{ grid-column:1/-1; grid-row:1; aspect-ratio:16/9; }
  .ev-date{ grid-row:2; align-self:start; }
  .ev-body{ grid-row:2; }
  .ev-cta{ grid-column:1/-1; flex-direction:row; flex-wrap:wrap; }
  .ev-btn{ flex:1; }
}
.ev-skel{ height:140px; border-bottom:1px solid var(--line-d); background:linear-gradient(90deg, transparent 0%, rgba(206,124,86,.12) 50%, transparent 100%) 0 0/200% 100%; animation:sk 1.4s linear infinite; }
@keyframes sk{ to{ background-position:-200% 0; } }
.ev-empty{ padding:clamp(36px,5vw,64px) 0; max-width:58ch; }
.ev-empty h3{ font-size:clamp(22px,2.2vw,30px); margin-bottom:12px; }
.ev-empty a{ border-bottom:1px solid currentColor; }
.ev-empty-cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.ev-empty-cta .btn{ border-bottom:1px solid currentColor; }
.ev-empty-cta .btn:not(.btn-fill){ color:var(--slate); }
.prog-foot{ margin:30px 0 0; color:var(--light-copper); font-size:15px; }
.prog-foot a{ color:var(--pale); border-bottom:1px solid var(--med-copper); }

/* dialog */
html.dlg-on{ overflow:hidden; }
.ev-dlg{ width:min(760px,100%); max-height:min(92vh,100%); padding:0; border:0; background:var(--pale); color:var(--slate); overflow:auto; overscroll-behavior:contain; }
.ev-dlg::backdrop{ background:rgba(11,7,5,.78); backdrop-filter:blur(4px); }
.ev-dlg[open]{ animation:dlgIn .45s var(--ease); }
@keyframes dlgIn{ from{ opacity:0; transform:translateY(24px); } to{ opacity:1; transform:none; } }
.dlg-x{ position:sticky; top:12px; float:right; margin:12px 12px -56px 0; z-index:3; width:44px; height:44px; border:0; border-radius:50%;
        background:rgba(11,7,5,.7); color:var(--pale); font:300 26px/1 var(--f-body); cursor:pointer; }
.dlg-x:hover{ background:var(--ink); }
.dlg-media{ background:var(--ink); }
.dlg-media img{ width:100%; aspect-ratio:16/9; object-fit:cover; }
.dlg-in{ padding:clamp(24px,4vw,44px); }
.dlg-when{ font:600 11px/1.6 var(--f-label); letter-spacing:.24em; text-transform:uppercase; color:var(--terracotta); margin:0 0 12px; }
.dlg-title{ font-size:clamp(28px,4vw,46px); }
.dlg-meta{ margin:14px 0 0; font:600 10.5px/1.7 var(--f-label); letter-spacing:.2em; text-transform:uppercase; color:var(--copper); }
.dlg-desc{ margin-top:20px; font-size:16px; }
.dlg-desc p{ margin:0 0 .9em; max-width:62ch; }
.dlg-form{ margin-top:26px; }
.dlg-spots{ margin:0; font:600 10.5px/1 var(--f-label); letter-spacing:.24em; text-transform:uppercase; color:var(--turmeric); }
.dlg-alt{ margin-top:22px; }
.dlg-alt a:not(.btn){ border-bottom:1px solid currentColor; }
.dlg-alt p{ margin:0; }
.dlg-done{ margin-top:26px; padding-top:24px; border-top:2px solid var(--slate); }
.dlg-done h3{ font-size:clamp(22px,2.4vw,30px); margin-bottom:10px; }
.dlg-actions{ display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 0; }
.dlg-actions .btn:not(.btn-fill){ color:var(--slate); }
.dlg-actions .btn:not(.btn-fill):hover{ background:var(--slate); color:var(--pale); border-color:var(--slate); }
.dlg-small{ margin:20px 0 0; font-size:14px; }
.dlg-small a{ border-bottom:1px solid currentColor; }
@media (max-width:640px){
  .ev-dlg{ width:100%; max-width:100%; height:100%; max-height:100%; margin:0; }
  .dlg-x{ margin-right:10px; }
}

/* uploaded creatives are shown whole: never cropped, never stretched */
.ev-img.is-poster{ aspect-ratio:4/5; background:var(--ink); }
.ev-img.is-poster img{ object-fit:contain; }
.ev-img.is-poster:hover img{ transform:none; }
.dlg-media.is-poster{ display:flex; justify-content:center; background:var(--ink); }
.dlg-media.is-poster img{ width:auto; max-width:100%; max-height:min(70vh,760px); aspect-ratio:auto; object-fit:contain; }
@media (max-width:640px){ .ev-img.is-poster{ aspect-ratio:4/5; max-height:none; } }

/* past events */
.ev-past{ background:var(--light-copper); padding-top:clamp(64px,8vw,110px); }
.ev-past .label{ color:var(--kesar); }
.past-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%,210px),1fr)); gap:clamp(18px,2.4vw,32px); margin-top:clamp(36px,4vw,56px); }
.past{ margin:0; }
.past-img{ aspect-ratio:4/5; background:var(--ink); overflow:hidden; }
.past-img img{ width:100%; height:100%; object-fit:cover; filter:saturate(.75); transition:filter .5s var(--ease); }
.past-img.is-poster img{ object-fit:contain; }
.past:hover .past-img img{ filter:none; }
.past-date{ margin:14px 0 6px; font:600 10.5px/1 var(--f-label); letter-spacing:.24em; text-transform:uppercase; color:var(--terracotta); }
.past h3{ font-size:clamp(16px,1.4vw,19px); }
.past-zone{ margin:6px 0 0; font:600 10px/1 var(--f-label); letter-spacing:.2em; text-transform:uppercase; color:var(--copper); }

.ig-line{ display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:clamp(28px,3vw,40px); padding:20px 22px;
          background:var(--slate); color:var(--pale); font:600 11px/1.5 var(--f-label); letter-spacing:.18em; text-transform:uppercase;
          transition:background .35s var(--ease); }
.ig-line b{ color:var(--turmeric); font-weight:600; }
.ig-line:hover{ background:var(--terracotta); }
