/* CSL Events — interactive calendar. "R" = .csl-cx.csl-ev-cal (specificity beats the theme's body.csl-themed .csl-dc rules). */

/* ---------- tokens ---------- */
.csl-cx.csl-ev-cal, .csl-cx-layer{
  --cx-panel:#fbf7f2;--cx-surface:#fff;--cx-surface-2:#f6f0e8;--cx-hover:#fdf6ee;
  --cx-line:rgba(20,16,58,.1);--cx-line-2:rgba(20,16,58,.16);
  --cx-ink:#14103A;--cx-ink-2:#4c4770;--cx-ink-3:#8a85a3;
  --cx-accent:#f47c20;--cx-accent-ink:#b3500a;
  --cx-seg:rgba(20,16,58,.06);--cx-seg-on:#14103A;--cx-seg-on-ink:#fff;
  --cx-shadow:0 1px 2px rgba(20,16,58,.06),0 24px 60px -24px rgba(20,16,58,.28);
  --cx-pop-shadow:0 2px 6px rgba(20,16,58,.08),0 30px 70px -20px rgba(20,16,58,.45);
  --cx-ease:cubic-bezier(.16,1,.3,1);
  --cx-display:'Josefin Sans',sans-serif;--cx-body:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
.csl-cx.csl-ev-cal [data-g], .csl-cx-layer [data-g], .csl-cx-layer .cx-pop{--gc:#7b7594;--gi:#57516e}
.csl-cx.csl-ev-cal [data-g="services"], .csl-cx-layer [data-g="services"]{--gc:#f47c20;--gi:#b3500a}
.csl-cx.csl-ev-cal [data-g="classes"], .csl-cx-layer [data-g="classes"]{--gc:#6a57e3;--gi:#4a37c4}
.csl-cx.csl-ev-cal [data-g="arts"], .csl-cx-layer [data-g="arts"]{--gc:#dc3f78;--gi:#a8215a}
.csl-cx.csl-ev-cal [data-g="yoga"], .csl-cx-layer [data-g="yoga"]{--gc:#12a192;--gi:#0b7166}
.csl-cx.csl-ev-cal [data-g="all"]{--gc:#14103A;--gi:#14103A}
@media (prefers-color-scheme:dark){
  .csl-cx.csl-ev-cal, .csl-cx-layer{
    --cx-panel:#110d2c;--cx-surface:#1a1543;--cx-surface-2:#141036;--cx-hover:#221c52;
    --cx-line:rgba(255,255,255,.09);--cx-line-2:rgba(255,255,255,.16);
    --cx-ink:#f6f1eb;--cx-ink-2:#c6c0de;--cx-ink-3:#8f89b0;
    --cx-accent-ink:#ff9d52;
    --cx-seg:rgba(255,255,255,.07);--cx-seg-on:#fbf7f2;--cx-seg-on-ink:#14103A;
    --cx-shadow:0 1px 2px rgba(0,0,0,.4),0 30px 80px -30px rgba(0,0,0,.8);
    --cx-pop-shadow:0 2px 8px rgba(0,0,0,.4),0 34px 80px -20px rgba(0,0,0,.85);
  }
  .csl-cx.csl-ev-cal [data-g], .csl-cx-layer [data-g], .csl-cx-layer .cx-pop{--gi:#c3bddb}
  .csl-cx.csl-ev-cal [data-g="services"], .csl-cx-layer [data-g="services"]{--gi:#ffa765}
  .csl-cx.csl-ev-cal [data-g="classes"], .csl-cx-layer [data-g="classes"]{--gc:#8878ff;--gi:#b4aaff}
  .csl-cx.csl-ev-cal [data-g="arts"], .csl-cx-layer [data-g="arts"]{--gc:#f0588f;--gi:#ff8db6}
  .csl-cx.csl-ev-cal [data-g="yoga"], .csl-cx-layer [data-g="yoga"]{--gc:#1dbba9;--gi:#5fe0cf}
  .csl-cx.csl-ev-cal [data-g="all"]{--gc:#fbf7f2;--gi:#fbf7f2}
}

/* ---------- shell ---------- */
.csl-cx.csl-ev-cal{
  position:relative;isolation:isolate;display:block;
  background:var(--cx-panel);color:var(--cx-ink);font-family:var(--cx-body);font-size:16px;line-height:1.45;
  border:1px solid var(--cx-line);border-radius:22px;padding:clamp(20px,2.6vw,36px);
  box-shadow:var(--cx-shadow);text-align:left;min-height:980px;overflow:hidden;
}
.csl-cx.csl-ev-cal.is-ready{min-height:0}
.csl-cx.csl-ev-cal::before{content:"";position:absolute;inset:-1px;z-index:-1;pointer-events:none;border-radius:inherit;
  background:radial-gradient(700px 320px at 92% -8%,rgba(244,124,32,.13),transparent 70%),radial-gradient(600px 300px at -5% 110%,rgba(106,87,227,.07),transparent 70%)}
@media (prefers-color-scheme:dark){
  .csl-cx.csl-ev-cal::before{background:radial-gradient(760px 360px at 92% -10%,rgba(244,124,32,.2),transparent 70%),radial-gradient(700px 360px at -8% 108%,rgba(136,120,255,.16),transparent 70%)}
}
.csl-cx.csl-ev-cal *, .csl-cx-layer *{box-sizing:border-box}
.csl-cx.csl-ev-cal button, .csl-cx-layer button{font-family:inherit;-webkit-tap-highlight-color:transparent;margin:0}
.csl-cx.csl-ev-cal a, .csl-cx.csl-ev-cal a:hover, .csl-cx-layer a, .csl-cx-layer a:hover{text-decoration:none!important}
.csl-cx.csl-ev-cal :focus-visible, .csl-cx-layer :focus-visible{outline:2px solid var(--cx-accent);outline-offset:2px}
.csl-cx.csl-ev-cal .cx-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- header ---------- */
.csl-cx.csl-ev-cal .cx-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px 28px;flex-wrap:wrap}
.csl-cx.csl-ev-cal .cx-titlewrap{min-width:0;flex:1 1 360px}
.csl-cx.csl-ev-cal .cx-eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--cx-display);font-size:13px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--cx-accent);margin:0 0 12px}
.csl-cx.csl-ev-cal .cx-eyebrow::before{content:"";width:36px;height:1px;background:currentColor}
.csl-cx.csl-ev-cal .cx-title{position:relative;margin:0!important;padding:0;font-family:var(--cx-display)!important;font-weight:300!important;text-transform:uppercase;letter-spacing:-.01em!important;
  font-size:clamp(38px,5vw,68px)!important;line-height:1!important;color:var(--cx-ink)!important;white-space:nowrap;height:1em;text-wrap:nowrap}
.csl-cx.csl-ev-cal .cx-t{display:inline-block;padding-top:.06em}
.csl-cx.csl-ev-cal[data-view="week"] .cx-title{font-size:clamp(30px,3.4vw,50px)!important}
.csl-cx.csl-ev-cal .cx-t b{font-weight:700;color:var(--cx-accent)}
.csl-cx.csl-ev-cal .cx-t-out{position:absolute;left:0;top:0;pointer-events:none;animation:cx-out .34s cubic-bezier(.4,0,.2,1) forwards}
.csl-cx.csl-ev-cal .cx-t-in{animation:cx-in .56s var(--cx-ease) both}
.csl-cx.csl-ev-cal .cx-ctrls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.csl-cx.csl-ev-cal .cx-btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:1px 20px 0;border-radius:999px;border:1px solid var(--cx-line-2);background:var(--cx-surface);color:var(--cx-ink);
  font-family:var(--cx-display);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,color .2s,background .2s,transform .2s,opacity .2s;line-height:1}
.csl-cx.csl-ev-cal .cx-btn:hover:not(:disabled){border-color:var(--cx-accent);color:var(--cx-accent-ink)}
.csl-cx.csl-ev-cal .cx-btn:disabled{opacity:.45;cursor:default}
.csl-cx.csl-ev-cal .cx-arrows{display:flex;gap:6px}
.csl-cx.csl-ev-cal .cx-iconbtn, .csl-cx-layer .cx-iconbtn{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--cx-line-2);background:var(--cx-surface);color:var(--cx-ink);cursor:pointer;
  transition:border-color .2s,color .2s,background .2s,transform .2s}
.csl-cx.csl-ev-cal .cx-iconbtn:hover, .csl-cx-layer .cx-iconbtn:hover{border-color:var(--cx-accent);color:var(--cx-accent-ink);transform:translateY(-1px)}
.csl-cx.csl-ev-cal .cx-iconbtn:active, .csl-cx-layer .cx-iconbtn:active{transform:scale(.94)}
.csl-cx.csl-ev-cal .cx-iconbtn svg, .csl-cx-layer .cx-iconbtn svg{display:block}
.csl-cx.csl-ev-cal .cx-views{position:relative;display:flex;padding:4px;border-radius:999px;background:var(--cx-seg);border:1px solid var(--cx-line)}
.csl-cx.csl-ev-cal .cx-views-ind{position:absolute;left:0;top:4px;bottom:4px;border-radius:999px;background:var(--cx-seg-on);box-shadow:0 6px 16px -6px rgba(20,16,58,.5);transition:transform .45s var(--cx-ease),width .45s var(--cx-ease)}
.csl-cx.csl-ev-cal .cx-view{position:relative;z-index:1;height:36px;padding:1px 18px 0;border:0;border-radius:999px;background:transparent;color:var(--cx-ink-2);cursor:pointer;
  font-family:var(--cx-display);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:color .3s}
.csl-cx.csl-ev-cal .cx-view:hover{color:var(--cx-ink)}
.csl-cx.csl-ev-cal .cx-view[aria-selected="true"]{color:var(--cx-seg-on-ink)}

/* ---------- filter bar ---------- */
.csl-cx.csl-ev-cal .cx-bar{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;margin:26px 0 22px;flex-wrap:wrap}
.csl-cx.csl-ev-cal .cx-chips{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.csl-cx.csl-ev-cal .cx-chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 14px;border-radius:999px;border:1px solid var(--cx-line-2);background:var(--cx-surface);color:var(--cx-ink);
  font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .25s,border-color .25s,color .25s,transform .25s var(--cx-ease),box-shadow .25s}
.csl-cx.csl-ev-cal .cx-chip:hover{border-color:var(--gc);transform:translateY(-1px)}
.csl-cx.csl-ev-cal .cx-chip:active{transform:scale(.97)}
.csl-cx.csl-ev-cal .cx-chip-dot{width:8px;height:8px;border-radius:50%;background:var(--gc);box-shadow:0 0 0 3px color-mix(in srgb,var(--gc) 18%,transparent);transition:background .25s}
.csl-cx.csl-ev-cal .cx-chip[data-g="all"] .cx-chip-dot{background:conic-gradient(#f47c20 0 25%,#6a57e3 0 50%,#dc3f78 0 75%,#12a192 0);box-shadow:none}
.csl-cx.csl-ev-cal .cx-chip-n{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:inline-grid;place-items:center;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;
  background:var(--cx-seg);color:var(--cx-ink-2);transition:background .25s,color .25s}
.csl-cx.csl-ev-cal .cx-chip.is-zero{color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-chip.is-zero .cx-chip-dot{opacity:.45}
.csl-cx.csl-ev-cal .cx-chip.is-on{background:var(--gc);border-color:var(--gc);color:#fff;box-shadow:0 10px 24px -12px var(--gc)}
.csl-cx.csl-ev-cal .cx-chip.is-on .cx-chip-dot{background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.28)}
.csl-cx.csl-ev-cal .cx-chip.is-on .cx-chip-n{background:rgba(255,255,255,.22);color:#fff}
.csl-cx.csl-ev-cal .cx-chip[data-g="all"].is-on{color:var(--cx-seg-on-ink)}
.csl-cx.csl-ev-cal .cx-chip[data-g="all"].is-on .cx-chip-n{background:color-mix(in srgb,var(--cx-seg-on-ink) 14%,transparent);color:var(--cx-seg-on-ink)}
.csl-cx.csl-ev-cal .cx-chip[data-g="all"].is-on .cx-chip-dot{box-shadow:none}
.csl-cx.csl-ev-cal .cx-search{position:relative;display:flex;align-items:center;flex:0 1 280px;height:42px;border-radius:999px;border:1px solid var(--cx-line-2);background:var(--cx-surface);color:var(--cx-ink-3);
  padding:0 14px;gap:8px;cursor:text;transition:border-color .2s,box-shadow .2s;margin:0}
.csl-cx.csl-ev-cal .cx-search:focus-within{border-color:var(--cx-accent);box-shadow:0 0 0 4px rgba(244,124,32,.16)}
.csl-cx.csl-ev-cal .cx-search svg{flex:0 0 auto}
.csl-cx.csl-ev-cal .cx-search input{flex:1;min-width:0;height:100%;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;padding:0!important;margin:0!important;
  font:600 15px/1 var(--cx-body)!important;color:var(--cx-ink)!important;-webkit-appearance:none;appearance:none}
.csl-cx.csl-ev-cal .cx-search input::placeholder{color:var(--cx-ink-3);opacity:1}
.csl-cx.csl-ev-cal .cx-search input::-webkit-search-cancel-button{-webkit-appearance:none}

/* ---------- body / panes ---------- */
.csl-cx.csl-ev-cal .cx-body{position:relative;border-radius:18px;outline:0;touch-action:pan-y}
.csl-cx.csl-ev-cal .cx-body:focus-visible{box-shadow:0 0 0 2px var(--cx-panel),0 0 0 4px var(--cx-accent)}
.csl-cx.csl-ev-cal .cx-stage{position:relative}
.csl-cx.csl-ev-cal .cx-pane.is-leaving{position:absolute;left:0;right:0;top:0;pointer-events:none;animation:cx-out .34s cubic-bezier(.4,0,.2,1) forwards}
.csl-cx.csl-ev-cal .cx-pane.is-entering{animation:cx-in .56s var(--cx-ease) both}
@keyframes cx-in{from{opacity:0;transform:translate3d(calc(var(--dir,0) * 44px),calc((1 - var(--dir,0) * var(--dir,0)) * 10px),0);filter:blur(6px)}}
@keyframes cx-out{to{opacity:0;transform:translate3d(calc(var(--dir,1) * -44px),0,0);filter:blur(6px)}}
@keyframes cx-rise{from{opacity:0;transform:translateY(6px) scale(.98)}}
@keyframes cx-shimmer{from{background-position:-200% 0}to{background-position:200% 0}}

/* ---------- month ---------- */
.csl-cx.csl-ev-cal .cx-dows{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin:0 0 10px}
.csl-cx.csl-ev-cal .cx-dows span{padding:0 12px;font-family:var(--cx-display);font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(128px,auto);gap:1px;background:var(--cx-line);border:1px solid var(--cx-line);border-radius:18px;overflow:hidden}
.csl-cx.csl-ev-cal .cx-cell{position:relative;min-width:0;display:flex;flex-direction:column;gap:4px;padding:8px 8px 10px;background:var(--cx-surface);cursor:pointer;transition:background .25s}
.csl-cx.csl-ev-cal .cx-cell:hover{background:var(--cx-hover)}
.csl-cx.csl-ev-cal .cx-cell.is-out{background:var(--cx-surface-2)}
.csl-cx.csl-ev-cal .cx-cell.is-out > *{opacity:.42}
.csl-cx.csl-ev-cal .cx-cell.is-out:hover > *{opacity:.8}
.csl-cx.csl-ev-cal .cx-dn{align-self:flex-start;display:inline-grid;place-items:center;min-width:32px;height:32px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--cx-ink);cursor:pointer;
  font-family:var(--cx-display);font-size:16px;font-weight:600;line-height:1;transition:background .2s,color .2s}
.csl-cx.csl-ev-cal .cx-dn span{padding-top:.14em}
.csl-cx.csl-ev-cal .cx-cell.is-past:not(.is-today) .cx-dn{color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-cell:hover .cx-dn{background:var(--cx-seg)}
.csl-cx.csl-ev-cal .cx-cell.is-today{background:color-mix(in srgb,var(--cx-accent) 6%,var(--cx-surface))}
.csl-cx.csl-ev-cal .cx-cell.is-today::after{content:"";position:absolute;inset:0;border:1.5px solid var(--cx-accent);pointer-events:none}
.csl-cx.csl-ev-cal .cx-cell.is-today .cx-dn,.csl-cx.csl-ev-cal .cx-cell.is-today:hover .cx-dn{background:var(--cx-accent);color:#fff;box-shadow:0 6px 16px -6px rgba(244,124,32,.8)}
.csl-cx.csl-ev-cal .cx-pills{display:flex;flex-direction:column;gap:4px;min-width:0}
.csl-cx.csl-ev-cal .cx-pill{display:flex;align-items:center;gap:6px;min-width:0;height:26px;padding:0 8px 0 10px;border-radius:8px;position:relative;overflow:hidden;
  background:color-mix(in srgb,var(--gc) 12%,var(--cx-surface));color:var(--gi)!important;font-size:12.5px;font-weight:700;line-height:1;
  transition:background .2s,color .2s,transform .25s var(--cx-ease),box-shadow .25s;animation:cx-rise .42s var(--cx-ease) both;animation-delay:calc(var(--i,0) * 45ms)}
.csl-cx.csl-ev-cal .cx-pill::before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;border-radius:0 3px 3px 0;background:var(--gc)}
.csl-cx.csl-ev-cal .cx-pill-time{flex:0 0 auto;font-size:11.5px;font-weight:800;opacity:.72;font-variant-numeric:tabular-nums}
.csl-cx.csl-ev-cal .cx-pill-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.csl-cx.csl-ev-cal .cx-pill:hover,.csl-cx.csl-ev-cal .cx-pill:focus-visible{background:var(--gc);color:#fff!important;transform:translateY(-1px);box-shadow:0 8px 18px -10px var(--gc)}
.csl-cx.csl-ev-cal .cx-pill:hover::before{background:rgba(255,255,255,.6)}
.csl-cx.csl-ev-cal .cx-more{align-self:flex-start;border:0;background:transparent;padding:3px 6px;margin-left:2px;border-radius:6px;color:var(--cx-ink-2);font-size:12px;font-weight:800;cursor:pointer;transition:color .2s,background .2s}
.csl-cx.csl-ev-cal .cx-more:hover{color:var(--cx-accent-ink);background:var(--cx-seg)}
.csl-cx.csl-ev-cal .cx-dots{display:none}
.csl-cx.csl-ev-cal .cx-month.is-loading .cx-cell:not(.is-out):nth-child(3n+2)::before{content:"";display:block;position:absolute;left:10px;right:30%;top:48px;height:22px;border-radius:7px;
  background:linear-gradient(90deg,var(--cx-seg) 25%,var(--cx-line-2) 50%,var(--cx-seg) 75%);background-size:200% 100%;animation:cx-shimmer 1.3s linear infinite}

/* ---------- shared: media, tag, price, card ---------- */
.csl-cx.csl-ev-cal .cx-media, .csl-cx-layer .cx-media{position:relative;overflow:hidden;background:#0f0c1e;display:block}
.csl-cx.csl-ev-cal .cx-media-bg, .csl-cx-layer .cx-media-bg{position:absolute;inset:-16px;background-size:cover;background-position:center;filter:blur(16px) brightness(.55) saturate(1.2)}
.csl-cx.csl-ev-cal .cx-media img, .csl-cx-layer .cx-media img{position:relative;display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain;margin:0!important;border-radius:0!important;box-shadow:none!important}
.csl-cx.csl-ev-cal .cx-media.is-empty, .csl-cx-layer .cx-media.is-empty{display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--gc,#f47c20),#14103A)}
.csl-cx.csl-ev-cal .cx-tag, .csl-cx-layer .cx-tag{display:inline-flex;align-items:center;height:24px;padding:1px 10px 0;border-radius:999px;background:color-mix(in srgb,var(--gc) 14%,transparent);color:var(--gi);
  font-family:var(--cx-display);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;line-height:1}
.csl-cx.csl-ev-cal .cx-price, .csl-cx-layer .cx-price{font-size:13.5px;font-weight:800;color:var(--cx-ink)}
.csl-cx.csl-ev-cal .cx-price.is-free, .csl-cx-layer .cx-price.is-free{color:#0b7166}
@media (prefers-color-scheme:dark){.csl-cx.csl-ev-cal .cx-price.is-free, .csl-cx-layer .cx-price.is-free{color:#5fe0cf}}
.csl-cx.csl-ev-cal .cx-card, .csl-cx-layer .cx-card{display:grid;grid-template-columns:104px minmax(0,1fr) 28px;gap:16px;align-items:center;padding:10px 14px 10px 10px;border-radius:18px;border:1px solid var(--cx-line);
  background:var(--cx-surface);color:var(--cx-ink)!important;transition:transform .35s var(--cx-ease),border-color .25s,box-shadow .35s var(--cx-ease);animation:cx-rise .5s var(--cx-ease) both;animation-delay:calc(var(--i,0) * 55ms)}
.csl-cx.csl-ev-cal .cx-card:hover, .csl-cx-layer .cx-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--gc) 55%,transparent);box-shadow:0 18px 40px -22px color-mix(in srgb,var(--gc) 70%,#000)}
.csl-cx.csl-ev-cal .cx-card-media, .csl-cx-layer .cx-card-media{width:104px;height:104px;border-radius:12px}
.csl-cx.csl-ev-cal .cx-card-body, .csl-cx-layer .cx-card-body{display:flex;flex-direction:column;gap:6px;min-width:0}
.csl-cx.csl-ev-cal .cx-card-time, .csl-cx-layer .cx-card-time{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:800;color:var(--gi);font-variant-numeric:tabular-nums}
.csl-cx.csl-ev-cal .cx-card-title, .csl-cx-layer .cx-card-title{font-size:17px;font-weight:800;line-height:1.28;color:var(--cx-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.csl-cx.csl-ev-cal .cx-card-meta, .csl-cx-layer .cx-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:2px}
.csl-cx.csl-ev-cal .cx-card-go, .csl-cx-layer .cx-card-go{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--cx-ink-3);transition:transform .35s var(--cx-ease),color .25s,background .25s}
.csl-cx.csl-ev-cal .cx-card:hover .cx-card-go, .csl-cx-layer .cx-card:hover .cx-card-go{color:#fff;background:var(--gc);transform:translateX(3px)}

/* ---------- week ---------- */
.csl-cx.csl-ev-cal .cx-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.csl-cx.csl-ev-cal .cx-wcol{min-width:0;display:flex;flex-direction:column;border-radius:18px;border:1px solid var(--cx-line);background:var(--cx-surface);padding:8px;min-height:420px;animation:cx-rise .5s var(--cx-ease) both;animation-delay:calc(var(--i,0) * 35ms)}
.csl-cx.csl-ev-cal .cx-wcol.is-today{border-color:var(--cx-accent);box-shadow:0 0 0 1px var(--cx-accent),0 20px 40px -26px rgba(244,124,32,.7)}
.csl-cx.csl-ev-cal .cx-whead{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 8px 12px;border:0;border-bottom:1px solid var(--cx-line);border-radius:12px 12px 0 0;background:transparent;color:var(--cx-ink);cursor:pointer;text-align:left;transition:background .2s}
.csl-cx.csl-ev-cal .cx-whead:hover{background:var(--cx-hover)}
.csl-cx.csl-ev-cal .cx-wdow{font-family:var(--cx-display);font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-wnum{font-family:var(--cx-display);font-size:34px;font-weight:300;line-height:1}
.csl-cx.csl-ev-cal .cx-wcol.is-today .cx-wdow,.csl-cx.csl-ev-cal .cx-wcol.is-today .cx-wnum{color:var(--cx-accent)}
.csl-cx.csl-ev-cal .cx-wcol.is-today .cx-wnum{font-weight:600}
.csl-cx.csl-ev-cal .cx-wcol.is-past:not(.is-today) .cx-wnum{color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-wlist{display:flex;flex-direction:column;gap:8px;padding-top:10px}
.csl-cx.csl-ev-cal .cx-wnone{padding:14px 8px;font-size:13px;color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-wcard{display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:var(--cx-surface-2);border:1px solid var(--cx-line);color:var(--cx-ink)!important;position:relative;
  transition:transform .3s var(--cx-ease),box-shadow .3s,border-color .25s;animation:cx-rise .45s var(--cx-ease) both;animation-delay:calc(120ms + var(--j,0) * 50ms)}
.csl-cx.csl-ev-cal .cx-wcard::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--gc)}
.csl-cx.csl-ev-cal .cx-wcard:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--gc) 55%,transparent);box-shadow:0 16px 30px -18px color-mix(in srgb,var(--gc) 70%,#000)}
.csl-cx.csl-ev-cal .cx-wcard-media{aspect-ratio:4/3;width:100%}
.csl-cx.csl-ev-cal .cx-wcard-body{display:flex;flex-direction:column;gap:4px;padding:9px 10px 11px}
.csl-cx.csl-ev-cal .cx-wcard-time{font-size:12px;font-weight:800;color:var(--gi);font-variant-numeric:tabular-nums}
.csl-cx.csl-ev-cal .cx-wcard-title{font-size:14px;font-weight:800;line-height:1.28;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.csl-cx.csl-ev-cal .cx-wcard .cx-price{font-size:12.5px}

/* ---------- list ---------- */
.csl-cx.csl-ev-cal .cx-list{display:flex;flex-direction:column}
.csl-cx.csl-ev-cal .cx-lday{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;padding:24px 0;border-top:1px solid var(--cx-line);animation:cx-rise .5s var(--cx-ease) both;animation-delay:calc(var(--i,0) * 45ms)}
.csl-cx.csl-ev-cal .cx-lday:first-child{border-top:0;padding-top:4px}
.csl-cx.csl-ev-cal .cx-ldate{position:sticky;top:120px;align-self:start;display:flex;flex-direction:column;align-items:flex-start;font-family:var(--cx-display);text-transform:uppercase;line-height:1}
.csl-cx.csl-ev-cal .cx-ldow{font-size:13px;font-weight:600;letter-spacing:.26em;color:var(--cx-accent)}
.csl-cx.csl-ev-cal .cx-lnum{font-size:64px;font-weight:300;letter-spacing:-.02em;margin:8px 0 4px;color:var(--cx-ink)}
.csl-cx.csl-ev-cal .cx-lmon{font-size:13px;font-weight:600;letter-spacing:.26em;color:var(--cx-ink-3)}
.csl-cx.csl-ev-cal .cx-lday.is-today .cx-lnum{color:var(--cx-accent);font-weight:600}
.csl-cx.csl-ev-cal .cx-levs{display:flex;flex-direction:column;gap:12px;min-width:0}
.csl-cx.csl-ev-cal .cx-card.is-big{grid-template-columns:150px minmax(0,1fr) 36px;gap:22px;padding:12px 18px 12px 12px}
.csl-cx.csl-ev-cal .cx-card.is-big .cx-card-media{width:150px;height:150px;border-radius:14px}
.csl-cx.csl-ev-cal .cx-card.is-big .cx-card-title{font-size:21px;-webkit-line-clamp:3}
.csl-cx.csl-ev-cal .cx-card.is-big .cx-card-time{font-size:14.5px}
.csl-cx.csl-ev-cal .cx-card.is-big .cx-card-go{width:36px;height:36px}
.csl-cx.csl-ev-cal .cx-lmonth{display:flex;align-items:center;gap:16px;padding:18px 0 6px;font-family:var(--cx-display);font-size:13px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--cx-accent)}
.csl-cx.csl-ev-cal .cx-lmonth::before,.csl-cx.csl-ev-cal .cx-lmonth::after{content:"";flex:1;height:1px;background:var(--cx-line-2)}
.csl-cx.csl-ev-cal .cx-lmonth + .cx-lday{border-top:0}
.csl-cx.csl-ev-cal .cx-skel{display:block;border-radius:12px;background:linear-gradient(90deg,var(--cx-seg) 25%,var(--cx-line-2) 50%,var(--cx-seg) 75%);background-size:200% 100%;animation:cx-shimmer 1.3s linear infinite;height:120px}
.csl-cx.csl-ev-cal .cx-skel.is-short{height:60px}
.csl-cx.csl-ev-cal .cx-skel.is-date{width:70px;height:90px}
.csl-cx.csl-ev-cal .cx-skel.is-card{height:176px}

/* ---------- empty / notes / hint ---------- */
.csl-cx.csl-ev-cal .cx-empty, .csl-cx-layer .cx-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:64px 20px;text-align:center;color:var(--cx-ink-2);border:1px dashed var(--cx-line-2);border-radius:18px;animation:cx-rise .5s var(--cx-ease) both}
.csl-cx.csl-ev-cal .cx-empty svg, .csl-cx-layer .cx-empty svg{color:var(--cx-accent)}
.csl-cx.csl-ev-cal .cx-empty p, .csl-cx-layer .cx-empty p{margin:0!important;font-size:16px;color:var(--cx-ink-2)}
.csl-cx-layer .cx-empty.is-small{padding:44px 20px}
.csl-cx.csl-ev-cal .cx-note{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:16px;font-size:15px;color:var(--cx-ink-2);animation:cx-rise .4s var(--cx-ease) both}
.csl-cx.csl-ev-cal .cx-hint{margin:18px 0 0!important;text-align:center;font-size:13px!important;color:var(--cx-ink-3)!important;letter-spacing:.01em}
.csl-cx.csl-ev-cal .cx-hint span{font-family:var(--cx-display);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--cx-accent);margin-right:6px;font-size:11.5px}
.csl-cx.csl-ev-cal[data-view="list"] .cx-hint{visibility:hidden}
@media (hover:none){.csl-cx.csl-ev-cal .cx-hint{display:none}}

/* ---------- popover ---------- */
.csl-cx-layer .cx-pop{position:fixed;z-index:100001;left:0;top:0;width:320px;border-radius:20px;overflow:hidden;background:var(--cx-surface);color:var(--cx-ink);border:1px solid var(--cx-line);
  box-shadow:var(--cx-pop-shadow);font-family:var(--cx-body);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px) scale(.97);transform-origin:left center;
  transition:opacity .22s,transform .35s var(--cx-ease),visibility 0s .35s}
.csl-cx-layer .cx-pop[data-side="l"]{transform-origin:right center}
.csl-cx-layer .cx-pop.is-on{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .22s,transform .35s var(--cx-ease),visibility 0s}
.csl-cx-layer .cx-pop.is-measuring{visibility:hidden;transition:none}
.csl-cx-layer .cx-pop-media{height:190px}
.csl-cx-layer .cx-pop-media::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--gc)}
.csl-cx-layer .cx-pop-body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px 18px 14px}
.csl-cx-layer .cx-pop-title{font-size:18px;font-weight:800;line-height:1.25;color:var(--cx-ink);margin:2px 0 2px}
.csl-cx-layer .cx-pop-row{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--cx-ink-2);line-height:1.3}
.csl-cx-layer .cx-pop-row svg{flex:0 0 auto;color:var(--gi)}
.csl-cx-layer .cx-pop-link{display:inline-flex;align-items:center;gap:8px;min-height:40px;margin-top:2px;font-family:var(--cx-display);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cx-accent-ink)!important}
.csl-cx-layer .cx-pop-link span{transition:transform .3s var(--cx-ease)}
.csl-cx-layer .cx-pop-link:hover span{transform:translateX(4px)}

/* ---------- drawer / bottom sheet ---------- */
html.cx-locked{overflow:hidden!important}
.csl-cx-layer .cx-scrim{position:fixed;inset:0;z-index:100002;background:rgba(10,8,30,.5);-webkit-backdrop-filter:blur(6px) saturate(1.1);backdrop-filter:blur(6px) saturate(1.1);opacity:0;transition:opacity .35s}
.csl-cx-layer .cx-scrim.is-on{opacity:1}
.csl-cx-layer .cx-drawer{position:fixed;z-index:100003;top:0;right:0;bottom:0;width:min(480px,100vw);display:flex;flex-direction:column;background:var(--cx-panel);color:var(--cx-ink);font-family:var(--cx-body);
  border-left:1px solid var(--cx-line);box-shadow:-30px 0 80px -30px rgba(10,8,30,.6);transform:translateX(104%);transition:transform .5s var(--cx-ease);outline:0}
.csl-cx-layer .cx-drawer.is-on{transform:none}
.csl-cx-layer .cx-drawer::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(420px 220px at 100% 0,rgba(244,124,32,.14),transparent 70%)}
.csl-cx-layer .cx-grab{display:none}
.csl-cx-layer .cx-drawer-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:30px 26px 22px 30px;border-bottom:1px solid var(--cx-line)}
.csl-cx-layer .cx-dh-text{display:flex;flex-direction:column;min-width:0}
.csl-cx-layer .cx-dh-eyebrow{font-family:var(--cx-display);font-size:13px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--cx-accent)}
.csl-cx-layer .cx-dh-title{margin:10px 0 8px!important;padding:0;font-family:var(--cx-display)!important;font-size:40px!important;font-weight:300!important;line-height:1!important;letter-spacing:-.01em!important;text-transform:uppercase;color:var(--cx-ink)!important}
.csl-cx-layer .cx-dh-count{font-size:14px;font-weight:700;color:var(--cx-ink-3)}
.csl-cx-layer .cx-dh-ctrls{display:flex;gap:6px;flex:0 0 auto}
.csl-cx-layer .cx-drawer-body{position:relative;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:20px 22px 34px;display:flex;flex-direction:column;gap:12px}
@media (max-width:640px){
  .csl-cx-layer .cx-drawer.is-sheet{top:auto;left:0;right:0;width:100%;max-height:86vh;max-height:86dvh;border-left:0;border-top:1px solid var(--cx-line);border-radius:26px 26px 0 0;
    box-shadow:0 -30px 80px -20px rgba(10,8,30,.7);transform:translateY(104%);padding-bottom:env(safe-area-inset-bottom)}
  .csl-cx-layer .cx-drawer.is-sheet.is-on{transform:none}
  .csl-cx-layer .cx-drawer.is-sheet::before{border-radius:inherit}
  .csl-cx-layer .cx-drawer.is-sheet .cx-grab{display:block;width:44px;height:5px;border-radius:9px;background:var(--cx-line-2);margin:10px auto 0;flex:0 0 auto}
  .csl-cx-layer .cx-drawer-head{padding:16px 16px 16px 20px}
  .csl-cx-layer .cx-dh-title{font-size:32px!important;margin:8px 0 6px!important}
  .csl-cx-layer .cx-dh-ctrls .cx-dprev,.csl-cx-layer .cx-dh-ctrls .cx-dnext{display:none}
  .csl-cx-layer .cx-drawer-body{padding:16px 16px 28px}
  .csl-cx-layer .cx-card{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:8px 12px 8px 8px}
  .csl-cx-layer .cx-card-media{width:88px;height:88px}
  .csl-cx-layer .cx-card-go{display:none}
  .csl-cx-layer .cx-card-title{font-size:16.5px}
  .csl-cx-layer .cx-card .cx-tag{letter-spacing:.06em;font-size:11px;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px;padding-top:0}
  .csl-cx-layer .cx-pop{display:none}
}

/* ---------- tablet ---------- */
@media (max-width:900px){
  .csl-cx.csl-ev-cal .cx-grid{grid-auto-rows:minmax(108px,auto)}
  .csl-cx.csl-ev-cal .cx-pill{height:24px;padding:0 6px 0 9px;font-size:12px}
  .csl-cx.csl-ev-cal .cx-pill-time{display:none}
  .csl-cx.csl-ev-cal .cx-dows span{padding:0 8px;letter-spacing:.16em}
  .csl-cx.csl-ev-cal .cx-week{grid-template-columns:1fr;gap:8px}
  .csl-cx.csl-ev-cal .cx-wcol{flex-direction:row;min-height:0;padding:8px;gap:12px;align-items:stretch}
  .csl-cx.csl-ev-cal .cx-whead{flex:0 0 64px;width:64px;align-items:center;justify-content:flex-start;border-bottom:0;border-right:1px solid var(--cx-line);border-radius:10px 0 0 10px;padding:8px 6px}
  .csl-cx.csl-ev-cal .cx-wlist{flex:1;min-width:0;padding-top:0;justify-content:center}
  .csl-cx.csl-ev-cal .cx-wnone{padding:10px 0}
  .csl-cx.csl-ev-cal .cx-wcard{flex-direction:row;align-items:center}
  .csl-cx.csl-ev-cal .cx-wcard::after{right:auto;bottom:0;width:3px;height:auto}
  .csl-cx.csl-ev-cal .cx-wcard-media{aspect-ratio:auto;width:84px;height:84px;flex:0 0 84px}
  .csl-cx.csl-ev-cal .cx-wcard-body{padding:10px 12px}
  .csl-cx.csl-ev-cal .cx-wcard-title{font-size:15.5px}
  .csl-cx.csl-ev-cal .cx-wcard-time{font-size:13px}
  .csl-cx.csl-ev-cal .cx-lday{grid-template-columns:84px minmax(0,1fr);gap:18px}
  .csl-cx.csl-ev-cal .cx-lnum{font-size:48px}
  .csl-cx.csl-ev-cal .cx-card.is-big{grid-template-columns:120px minmax(0,1fr) 32px;gap:16px}
  .csl-cx.csl-ev-cal .cx-card.is-big .cx-card-media{width:120px;height:120px}
  .csl-cx.csl-ev-cal .cx-card.is-big .cx-card-title{font-size:18px}
}

/* ---------- phone ---------- */
@media (max-width:640px){
  .csl-cx.csl-ev-cal{padding:20px 14px 18px;border-radius:20px}
  .csl-cx.csl-ev-cal .cx-head{gap:16px}
  .csl-cx.csl-ev-cal .cx-titlewrap{flex-basis:100%}
  .csl-cx.csl-ev-cal .cx-eyebrow{font-size:12px;margin-bottom:10px}
  .csl-cx.csl-ev-cal .cx-title{font-size:min(8.6vw,40px)!important}
  .csl-cx.csl-ev-cal[data-view="week"] .cx-title{font-size:min(7.4vw,34px)!important}
  .csl-cx.csl-ev-cal .cx-ctrls{width:100%;gap:8px}
  .csl-cx.csl-ev-cal .cx-today{padding:1px 18px 0;letter-spacing:.12em;flex:1}
  .csl-cx.csl-ev-cal .cx-card .cx-tag{letter-spacing:.06em;font-size:11px;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px;padding-top:0}
  .csl-cx.csl-ev-cal .cx-card-time,.csl-cx.csl-ev-cal .cx-card.is-big .cx-card-time{font-size:13px;white-space:nowrap}
  .csl-cx.csl-ev-cal .cx-views{flex:1 1 100%;justify-content:space-between;order:3}
  .csl-cx.csl-ev-cal .cx-view{flex:1;height:44px;padding:1px 6px 0;letter-spacing:.1em;font-size:12.5px}
  .csl-cx.csl-ev-cal .cx-bar{margin:18px 0 16px;gap:12px}
  .csl-cx.csl-ev-cal .cx-chips{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;margin:0 -14px;padding:2px 14px 4px;width:calc(100% + 28px)}
  .csl-cx.csl-ev-cal .cx-chips::-webkit-scrollbar{display:none}
  .csl-cx.csl-ev-cal .cx-chip{height:44px;scroll-snap-align:start;font-size:15px;flex:0 0 auto}
  .csl-cx.csl-ev-cal .cx-search{flex:1 1 100%;height:46px}
  .csl-cx.csl-ev-cal .cx-search input{font-size:16px!important}
  .csl-cx.csl-ev-cal .cx-dows{margin-bottom:6px}
  .csl-cx.csl-ev-cal .cx-dows span{padding:0;text-align:center;font-size:11px;letter-spacing:.12em}
  .csl-cx.csl-ev-cal .cx-grid{grid-auto-rows:60px;border-radius:14px}
  .csl-cx.csl-ev-cal .cx-cell{align-items:center;justify-content:flex-start;gap:3px;padding:6px 2px}
  .csl-cx.csl-ev-cal .cx-dn{align-self:center;min-width:34px;height:34px;padding:0;font-size:15px;pointer-events:none}
  .csl-cx.csl-ev-cal .cx-pills{display:none}
  .csl-cx.csl-ev-cal .cx-dots{display:flex;gap:3px;justify-content:center}
  .csl-cx.csl-ev-cal .cx-dots i{width:6px;height:6px;border-radius:50%;background:var(--gc);animation:cx-rise .4s var(--cx-ease) both}
  .csl-cx.csl-ev-cal .cx-cell.has-ev .cx-dn{font-weight:700}
  .csl-cx.csl-ev-cal .cx-cell.is-out .cx-dots{display:none}
  .csl-cx.csl-ev-cal .cx-month.is-loading .cx-cell::before{display:none!important}
  .csl-cx.csl-ev-cal .cx-wcard-media{width:72px;height:72px;flex-basis:72px}
  .csl-cx.csl-ev-cal .cx-whead{flex-basis:56px;width:56px}
  .csl-cx.csl-ev-cal .cx-wnum{font-size:28px}
  .csl-cx.csl-ev-cal .cx-lday{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:18px 0}
  .csl-cx.csl-ev-cal .cx-ldate{top:90px}
  .csl-cx.csl-ev-cal .cx-ldow{font-size:11px;letter-spacing:.16em}
  .csl-cx.csl-ev-cal .cx-lnum{font-size:36px;margin:6px 0 3px}
  .csl-cx.csl-ev-cal .cx-lmon{font-size:11px;letter-spacing:.16em}
  .csl-cx.csl-ev-cal .cx-card.is-big{grid-template-columns:92px minmax(0,1fr);gap:14px;padding:8px 12px 8px 8px;border-radius:16px}
  .csl-cx.csl-ev-cal .cx-card.is-big .cx-card-media{width:92px;height:92px;border-radius:11px}
  .csl-cx.csl-ev-cal .cx-card.is-big .cx-card-title{font-size:16.5px;-webkit-line-clamp:3}
  .csl-cx.csl-ev-cal .cx-card.is-big .cx-card-time{font-size:13.5px}
  .csl-cx.csl-ev-cal .cx-card-go{display:none!important}
  .csl-cx.csl-ev-cal .cx-lmonth{font-size:12px}
}

/* ---------- motion preferences ---------- */
@media (prefers-reduced-motion:reduce){
  .csl-cx.csl-ev-cal *, .csl-cx.csl-ev-cal *::before, .csl-cx.csl-ev-cal *::after, .csl-cx-layer *, .csl-cx-layer *::before, .csl-cx-layer *::after{animation:none!important;transition-duration:.01ms!important}
}

/* ---------- "Save the date" upcoming list on the indigo halo section (calendar page) ---------- */
.csl-upc-halo .csl-ev-list{--csl-ink:#f6f1eb;--csl-muted:#c6c0de;--csl-line:rgba(255,255,255,.1);--csl-card:transparent}
body .csl-upc-halo .csl-ev-list .csl-ev-card{position:relative;background:linear-gradient(160deg,rgba(255,255,255,.085),rgba(255,255,255,.03))!important;border:1px solid rgba(255,255,255,.11)!important;border-radius:22px;
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 30px 70px -34px rgba(0,0,0,.75)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .45s}
body .csl-upc-halo .csl-ev-list .csl-ev-card:hover{transform:translateY(-4px);border-color:rgba(244,124,32,.55)!important;box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 36px 80px -30px rgba(244,124,32,.35)!important}
body .csl-upc-halo .csl-ev-card .csl-ev-thumb{border-radius:0}
body .csl-upc-halo .csl-ev-card .csl-ev-datebadge{background:rgba(20,16,58,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 20px rgba(0,0,0,.35)}
body .csl-upc-halo .csl-ev-card .csl-ev-datebadge .mo{color:#ff9d52}
body .csl-upc-halo .csl-ev-card .csl-ev-datebadge .dy{color:#fff}
body .csl-upc-halo .csl-ev-card .csl-ev-cat{color:#ffab6b!important;font-family:'Josefin Sans',sans-serif;letter-spacing:.2em;font-weight:600}
body .csl-upc-halo .csl-ev-card .csl-ev-card-title,body .csl-upc-halo .csl-ev-card .csl-ev-card-title a{color:#f6f1eb!important;font-family:'Mulish',sans-serif!important;text-transform:none!important;letter-spacing:-.01em!important;font-weight:800!important}
body .csl-upc-halo .csl-ev-card .csl-ev-card-title a:hover{color:#ffab6b!important}
body .csl-upc-halo .csl-ev-card .csl-ev-when,body .csl-upc-halo .csl-ev-card .csl-ev-excerpt{color:rgba(246,241,235,.74)!important}
body .csl-upc-halo .csl-ev-card .csl-ev-card-foot{border-top:1px solid rgba(255,255,255,.08)}
body .csl-upc-halo .csl-ev-pill.free{background:rgba(29,187,169,.16);color:#6fe8d8}
body .csl-upc-halo .csl-ev-pill.fixed,body .csl-upc-halo .csl-ev-pill.tickets{background:rgba(244,124,32,.18);color:#ffb67d}
body .csl-upc-halo .csl-ev-pill.tiers{background:rgba(136,120,255,.2);color:#c9bdff}
body .csl-upc-halo .csl-ev-pill.donation{background:rgba(240,88,143,.18);color:#ffa3c4}
body .csl-upc-halo .csl-ev-card a.csl-ev-btn.primary{background:#f47c20;color:#14103A!important;font-family:'Josefin Sans',sans-serif;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:10px 18px 8px;box-shadow:0 10px 24px -12px rgba(244,124,32,.9)}
body .csl-upc-halo .csl-ev-card a.csl-ev-btn.primary:hover{background:#fbf7f2;color:#14103A!important}
@keyframes cx-halo{0%,100%{opacity:.85;transform:translate(0,0) scale(1)}50%{opacity:1;transform:translate(-2%,2%) scale(1.06)}}
.csl-upc-halo .upc-glow{animation:cx-halo 14s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.csl-upc-halo .upc-glow{animation:none}}
