/* Find Your Dose — events directory, music, venue and guide pages.
   Same cream kit as the homepage and /find-us: Sora headings with a teal
   accent word, Hanken Grotesk body, teal caps labels, ink + rust pills,
   rounded cream cards. Everything is scoped under .dz. */
body.ts-redesign::after{display:none;}
body.ts-redesign{background:#ECE6D8;}

.dz{--paper:#ECE6D8;--paper-hi:#F7F2E6;--card:#F3EEE3;--card-2:#E3DCC9;--olive:#7A6F58;
  --ink:#14110E;--ink-2:#3A342C;--soft:#5A524A;--rule:rgba(20,17,14,.13);--rule-soft:rgba(20,17,14,.07);
  --teal:#1F8C8C;--teal-dk:#0F5F62;--rust:#EA6A2C;--on-rust:#1a0f08;
  --display:'Sora','Helvetica Neue',Arial,sans-serif;--body:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif;
  --r:22px;--shadow:0 26px 46px -30px rgba(20,17,14,.55),0 2px 0 rgba(20,17,14,.04);
  font-family:var(--body);color:var(--ink);max-width:1180px;margin:0 auto;padding:40px 22px 72px;}
.dz *{box-sizing:border-box;}
.dz a{color:inherit;}
.dz :focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:6px;}

.dz-pill{display:inline-flex;align-items:center;font:700 .68rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:8px 13px;border-radius:99px;margin:0 0 18px;}
.dz-eyebrow{font:700 .7rem/1 var(--body);letter-spacing:.22em;text-transform:uppercase;color:var(--teal-dk);margin:0 0 10px;}
.dz-h1,.dz-h2{font-family:var(--display);font-weight:800;letter-spacing:-.025em;color:var(--ink);margin:0;text-wrap:balance;}
.dz-h1{font-size:clamp(2.2rem,5.4vw,3.8rem);line-height:.98;}
.dz-h2{font-size:clamp(1.5rem,3.2vw,2.1rem);line-height:1.04;}
.dz-h1 span,.dz-h2 span{color:var(--teal-dk);}
.dz-lede{font-size:1.05rem;line-height:1.55;color:var(--soft);margin:14px 0 0;max-width:56ch;}
.dz-intro{margin-bottom:26px;}
.dz-note{margin:16px 0 0;padding:12px 16px;border-radius:14px;background:var(--card);box-shadow:0 0 0 1px var(--rule-soft);font:500 14.5px/1.5 var(--body);color:var(--ink-2);max-width:60ch;}
.dz-note a{color:var(--teal-dk);font-weight:700;}

.dz-btn{display:inline-flex;align-items:center;gap:10px;font:700 .74rem/1 var(--body);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--paper);background:var(--ink);border:1.5px solid var(--ink);border-radius:99px;padding:12px 13px 12px 20px;white-space:nowrap;cursor:pointer;transition:transform .14s ease;}
.dz-btn:hover{transform:translateY(-1px);}
.dz-btn--line{background:transparent;color:var(--ink);padding:12px 20px;}
.dz a.dz-btn{color:var(--paper);}
.dz a.dz-btn--line{color:var(--ink);}
.dz-btn--sm{font-size:.64rem;padding:8px 9px 8px 13px;gap:8px;}
.dz-btn--sm.dz-btn--line{padding:9px 14px;}
.dz-arr{width:22px;height:22px;border-radius:99px;background:var(--teal);color:#fff;display:inline-grid;place-items:center;font-size:12px;line-height:1;flex:none;}
.dz-btn--sm .dz-arr{width:18px;height:18px;font-size:10px;}

/* ── Filters ─────────────────────────────────────────────────── */
.dz-filters{background:var(--paper-hi);border-radius:var(--r);box-shadow:var(--shadow),0 0 0 1px var(--rule-soft);padding:18px 18px 14px;display:grid;gap:14px;}
.dz-frow{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:start;}
.dz-flabel{font:700 10.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--teal-dk);padding-top:11px;}
.dz-chips{display:flex;flex-wrap:wrap;gap:6px;}
.dz-chip{display:inline-flex;align-items:center;gap:6px;font:600 13.5px/1 var(--body);padding:9px 14px;border-radius:999px;border:1px solid var(--rule);background:var(--card);color:var(--ink-2);text-decoration:none;cursor:pointer;white-space:nowrap;}
.dz-chip:hover{border-color:var(--soft);}
.dz-chip[aria-current="true"],.dz-chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.dz-chip small{font:700 11px/1 var(--body);color:var(--olive);}
.dz-chip.on small,.dz-chip[aria-current="true"] small{color:#7FC4C2;}
.dz-chip--sub{font-size:12.5px;padding:7px 12px;background:transparent;}
.dz-more{border-top:1px dashed var(--rule);padding-top:12px;}
.dz-more summary{list-style:none;cursor:pointer;font:700 12px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dk);display:inline-flex;gap:8px;align-items:center;}
.dz-more summary::-webkit-details-marker{display:none;}
.dz-more summary::after{content:"+";font-size:15px;}
.dz-more[open] summary::after{content:"–";}
.dz-more-grid{display:grid;gap:12px;margin-top:14px;}
.dz-select,.dz-date{font:500 14.5px/1 var(--body);padding:10px 14px;border:1px solid var(--rule);border-radius:999px;background:var(--card);color:var(--ink);max-width:100%;}
.dz-dates{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.dz-dates span{font:500 13px/1 var(--body);color:var(--soft);}

/* ── Summary strip + view toggle ─────────────────────────────── */
.dz-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:24px 0 8px;}
.dz-sum{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;font:500 14px/1.4 var(--body);color:var(--soft);}
.dz-sum b{font-weight:700;color:var(--ink);}
.dz-count{font:700 10.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--teal-dk);}
.dz-views{display:inline-flex;background:var(--card);border-radius:99px;padding:3px;box-shadow:0 0 0 1px var(--rule-soft);}
.dz-views a{font:700 11.5px/1 var(--body);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--ink-2);padding:9px 14px;border-radius:99px;}
.dz-views a[aria-current="true"]{background:var(--ink);color:var(--paper);}

/* ── List ────────────────────────────────────────────────────── */
.dz-day{margin:26px 0 0;}
.dz-dayh{position:sticky;top:64px;z-index:2;background:var(--paper);font:800 1.1rem/1.2 var(--display);letter-spacing:-.015em;margin:0;padding:10px 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline;gap:12px;}
.dz-dayh small{font:700 10.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--teal-dk);}
.dz-list{list-style:none;margin:0;padding:0;}
.dz-ev{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:16px;align-items:start;padding:16px 0;border-bottom:1px solid var(--rule-soft);}
.dz-ev-time{font:700 15px/1.2 var(--display);letter-spacing:-.01em;color:var(--ink);padding-top:3px;}
.dz-ev-time small{display:block;font:600 11px/1.3 var(--body);color:var(--soft);letter-spacing:.04em;margin-top:3px;}
.dz-ev h3{margin:0;font:700 18px/1.25 var(--display);letter-spacing:-.02em;overflow-wrap:anywhere;}
.dz-ev h3 a{text-decoration:none;}
.dz-ev h3 a:hover{color:var(--teal-dk);}
.dz-ev-where{margin:4px 0 0;font:600 14px/1.4 var(--body);color:var(--ink-2);}
.dz-ev-where a{text-decoration:none;border-bottom:1px solid var(--rule);}
.dz-ev-where span{color:var(--soft);font-weight:500;}
.dz-ev-meta{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.dz-tag{font:700 10.5px/1 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--teal-dk);background:rgba(31,140,140,.10);padding:6px 9px;border-radius:99px;text-decoration:none;}
.dz-tag--fmt{color:var(--ink-2);background:var(--card-2);}
.dz-tag--price{color:var(--ink);background:transparent;box-shadow:inset 0 0 0 1px var(--rule);}
.dz-tag--pick{color:var(--on-rust);background:var(--rust);}
.dz-tag--cancel{color:#fff;background:#9A4A23;}
.dz-ev-blurb{margin:8px 0 0;font:500 14.5px/1.5 var(--body);color:var(--soft);max-width:70ch;}
.dz-ev-lu{margin:6px 0 0;font:500 13.5px/1.45 var(--body);color:var(--ink-2);}
.dz-ev-org{margin:6px 0 0;font:500 12.5px/1.4 var(--body);color:var(--soft);}
.dz-ev[data-ev]{cursor:pointer;}
.dz-ev-toggle{all:unset;cursor:pointer;}
.dz-ev-toggle:hover{color:var(--teal-dk);}
.dz-ev-toggle:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:4px;}
.dz-ev-chev{align-self:center;width:34px;height:34px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--rule);display:grid;place-items:center;transition:transform .2s,background .2s;}
.dz-ev-chev::before{content:'';width:8px;height:8px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:translateY(-2px) rotate(45deg);}
.dz-ev.open .dz-ev-chev{transform:rotate(180deg);background:var(--card-2);}
.dz-ev-panel{grid-column:2 / -1;display:flex;flex-direction:column;gap:14px;align-items:flex-start;cursor:auto;}
.dz-ev-panel .dz-btn{color:var(--paper);}
.dz-ev-panel[hidden]{display:none;}
.dz-ev-panel p{margin:0;}
.dz-ev-fly{width:min(300px,100%);border-radius:14px;overflow:hidden;background:var(--ink);box-shadow:0 18px 36px -18px rgba(0,0,0,.45);}
.dz-ev-fly img{display:block;width:100%;height:auto;}
.dz-ev-poster{aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding:22px;color:var(--paper);background:linear-gradient(160deg,var(--teal-dk),var(--ink) 70%);}
.dz-ev-poster[hidden]{display:none;}
.dz-ev-poster b{font:800 1.6rem/1.02 var(--display);letter-spacing:-.03em;text-transform:uppercase;overflow-wrap:anywhere;}
.dz-ev-poster em{font:700 11px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;font-style:normal;color:#9FD3D1;}
.dz-ev-poster small{font:600 12px/1.3 var(--body);opacity:.8;}
.dz-ev.is-cancelled h3,.dz-ev.is-cancelled .dz-ev-time{text-decoration:line-through;color:var(--soft);}

/* ── Empty state ─────────────────────────────────────────────── */
.dz-empty{margin-top:22px;padding:24px;border-radius:var(--r);background:var(--card);box-shadow:0 0 0 1px var(--rule-soft);}
.dz-empty p{margin:8px 0 0;color:var(--soft);font:500 15px/1.55 var(--body);max-width:60ch;}
.dz-empty .dz-list{margin-top:10px;}

/* ── Calendar ────────────────────────────────────────────────── */
.dz-cal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 10px;}
.dz-cal-head h2{margin:0;font:800 1.4rem/1 var(--display);letter-spacing:-.02em;}
.dz-cal{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed;}
.dz-cal th{font:700 10.5px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-dk);padding:6px 0;text-align:left;}
.dz-cal td{vertical-align:top;background:var(--card);border-radius:12px;padding:8px;height:108px;box-shadow:0 0 0 1px var(--rule-soft);}
.dz-cal td.out{background:transparent;box-shadow:none;opacity:.45;}
.dz-cal td.today{box-shadow:0 0 0 2px var(--teal);}
.dz-cal .n{font:700 13px/1 var(--display);color:var(--ink-2);}
.dz-cal ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;}
.dz-cal li a{display:block;font:600 12px/1.25 var(--body);text-decoration:none;color:var(--ink);background:var(--paper-hi);border-radius:7px;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.dz-cal li a:hover{background:var(--ink);color:var(--paper);}
.dz-cal td{overflow:hidden;}
.dz-cal-dot{display:none;}
.dz-cal .more{font:600 11.5px/1 var(--body);color:var(--teal-dk);}

/* ── Side links / index pages ────────────────────────────────── */
.dz-explore{margin-top:56px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.dz-card{background:var(--card);border-radius:var(--r);padding:18px 18px 16px;box-shadow:var(--shadow),0 0 0 1px var(--rule-soft);display:grid;gap:6px;align-content:start;}
.dz-card h3{margin:0;font:700 18px/1.2 var(--display);letter-spacing:-.02em;}
.dz-card h3 a{text-decoration:none;}
.dz-card h3 a:hover{color:var(--teal-dk);}
.dz-card p{margin:0;font:500 14px/1.5 var(--body);color:var(--soft);}
.dz-card ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:6px;}
.dz-card li a{font:600 14.5px/1.35 var(--body);color:var(--teal-dk);text-decoration:none;}
.dz-card li a:hover{text-decoration:underline;}
.dz-card .cnt{font:700 10.5px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-dk);}
.dz-card .nx{font:500 14px/1.4 var(--body);color:var(--ink-2);margin:6px 0 0;}
.dz-card .nx a{color:var(--ink);font-weight:700;text-decoration:none;}
.dz-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;}
.dz-seo{margin-top:56px;max-width:760px;}
.dz-seo h2{font:700 1.15rem/1.3 var(--display);letter-spacing:-.01em;margin:22px 0 6px;}
.dz-seo p{font:500 15px/1.65 var(--body);color:var(--soft);margin:0;}
.dz-seo a{color:var(--teal-dk);font-weight:600;}
.dz-crumb{font:600 12.5px/1 var(--body);color:var(--soft);margin:0 0 16px;}
.dz-crumb a{color:var(--teal-dk);text-decoration:none;}

@media (max-width:860px){
  .dz{padding:26px 16px 56px;}
  .dz-frow{grid-template-columns:1fr;gap:8px;}
  .dz-flabel{padding-top:0;}
  .dz-chips.scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -18px;padding:0 18px;}
  .dz-chips.scroll .dz-chip{flex:0 0 auto;}
  .dz-ev{grid-template-columns:58px minmax(0,1fr);gap:12px;}
  .dz-ev{grid-template-columns:58px minmax(0,1fr) 34px;}
  .dz-ev-panel{grid-column:1 / -1;}
  .dz-ev-fly{width:100%;max-width:340px;}
  .dz-explore{grid-template-columns:1fr;}
  .dz-cal{border-spacing:3px;}
  .dz-cal th{font-size:9.5px;letter-spacing:.06em;}
  .dz-cal td{height:58px;padding:5px;}
  .dz-cal ul{display:none;}
  .dz-cal-dot{display:inline-grid;place-items:center;margin-top:8px;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:var(--ink);color:var(--paper);font:700 11px/1 var(--body);text-decoration:none;}
  .dz-dayh{top:58px;}
}
@media (prefers-reduced-motion:reduce){.dz-btn{transition:none;}}
