/* Compact section titles in the opened event's visit card. */
.event-detail-side .event-action-card h2{font-size:16px;line-height:1.3;margin-bottom:12px}
.event-detail-side .event-action-card .event-link-group h3{font-size:13px;line-height:1.35;font-weight:700;letter-spacing:0;text-transform:none;margin:0 0 6px}

.event-detail-side .event-action-card .event-link-group{margin-top:18px;padding-top:14px;border-top:1px solid #e8e2d1}.event-detail-side .event-action-card .event-link-group h3{margin-bottom:10px}

/* Per-date ticket picker: a scrollable date strip, the chosen night, one ticket button. */
.tdp{margin:0 0 10px;padding:14px;border:1px solid #eadfca;border-radius:16px;background:linear-gradient(180deg,#fff 0%,#fffaf2 100%);box-shadow:0 1px 2px rgba(36,28,21,.04),0 8px 24px rgba(36,28,21,.06)}
.tdp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.tdp-title{display:block;font-size:14px;font-weight:800;color:#241c15}
.tdp-range{display:block;margin-top:1px;font-size:12px;color:#7a6a58;white-space:nowrap}
.tdp-navs{display:flex;gap:6px;flex:none}.tdp-navs[hidden]{display:none}
.tdp-strip-wrap{position:relative;margin:0 -4px}
/* The long date strip scrolls inside the card; it must never widen the sidebar. */
.event-detail-side,.event-action-card,.tdp,.tdp-strip-wrap{min-width:0}.tdp{max-width:100%}
.tdp-strip{display:flex;gap:6px;overflow-x:auto;scroll-behavior:smooth;padding:4px;scrollbar-width:none}
.tdp-strip::-webkit-scrollbar{display:none}
.tdp.has-more-left .tdp-strip{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28px);mask-image:linear-gradient(90deg,transparent 0,#000 28px)}
.tdp.has-more-right .tdp-strip{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent 100%)}
.tdp.has-more-left.has-more-right .tdp-strip{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%)}
.tdp-day{flex:0 0 54px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 7px;border:1px solid #eadfca;border-radius:12px;background:#fff;color:#241c15;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s}
.tdp-day:hover{border-color:#f0a37f;transform:translateY(-1px)}
.tdp-day:focus-visible{outline:2px solid #ef5a1f;outline-offset:2px}
.tdp-day.is-selected{background:#241c15;border-color:#241c15;color:#fff;box-shadow:0 6px 16px rgba(36,28,21,.22)}
.tdp-wd{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ef5a1f}
.tdp-day.is-selected .tdp-wd{color:#ffb38f}
.tdp-dd{font-size:19px;font-weight:900;line-height:1.05;font-variant-numeric:tabular-nums}
.tdp-mo{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#8a7a68}
.tdp-day.is-selected .tdp-mo{color:#d9cbb8}
.tdp-nav{width:30px;height:30px;padding:0;border:1px solid #eadfca;border-radius:50%;background:#fff;color:#241c15;font-size:18px;line-height:1;cursor:pointer;box-shadow:0 1px 3px rgba(36,28,21,.08);transition:border-color .15s,color .15s,opacity .15s}
.tdp-nav:hover:not(:disabled){border-color:#ef5a1f;color:#ef5a1f}
.tdp-nav:disabled{opacity:.35;cursor:default;box-shadow:none}
.tdp-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:11px 14px;border-radius:12px;background:#ef5a1f;color:#fff;text-decoration:none;box-shadow:0 6px 16px rgba(239,90,31,.28);transition:background .15s,transform .15s}
.tdp-cta:hover{background:#d94c14;transform:translateY(-1px)}
.tdp-cta-text{display:flex;flex-direction:column;line-height:1.2}
.tdp-cta-label{font-size:15px;font-weight:900}
.tdp-cta-date{font-size:12px;opacity:.92}
.tdp-cta-arrow{font-size:18px;font-weight:900}
.tdp-cta.is-pulsing{animation:tdp-pulse .35s ease-out}
@keyframes tdp-pulse{0%{transform:scale(.98)}100%{transform:scale(1)}}
.tdp-note{margin:9px 0 0;font-size:11.5px;color:#7a6a58;text-align:center}
.tdp-hint{margin:10px 0 0;color:#53627c;font-size:13px;font-weight:700;text-align:center}
/* Pop-up for the tapped night. */
.tdp-dialog{width:min(360px,calc(100vw - 32px));padding:22px 20px 16px;border:0;border-radius:20px;background:#fffdf8;color:#241c15;box-shadow:0 24px 60px rgba(36,28,21,.35);text-align:center}
.tdp-dialog::backdrop{background:rgba(36,28,21,.55);backdrop-filter:blur(2px)}
.tdp-dialog[open]{animation:tdp-pop .18s ease-out}
@keyframes tdp-pop{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
.tdp-dialog-close{position:absolute;top:8px;right:8px;margin:0}
.tdp-dialog-close button{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#7a6a58;font-size:22px;line-height:1;cursor:pointer}
.tdp-dialog-close button:hover{background:#f3ece0;color:#241c15}
.tdp-dialog-kicker{margin:0 28px 6px;color:#ef5a1f;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.event-detail-side .event-action-card .tdp-dialog h3.tdp-dialog-date{margin:0;color:#241c15;font-size:24px;font-weight:900;line-height:1.2;letter-spacing:0;text-transform:none}
.tdp-dialog-time{margin:6px 0 0;color:#6b5b4b;font-size:13px}
.tdp-dialog .tdp-cta{justify-content:center;gap:8px;margin-top:18px;padding:14px 16px}
.tdp-dialog .tdp-cta-label{font-size:17px}
.tdp-dialog form{margin:0}
.tdp-dialog-other{margin-top:8px;padding:6px 10px;border:0;background:transparent;color:#53627c;font-size:13px;font-weight:700;text-decoration:underline;cursor:pointer}
@media (prefers-reduced-motion:reduce){.tdp-dialog[open]{animation:none}}
@media (prefers-reduced-motion:reduce){.tdp-strip{scroll-behavior:auto}.tdp-day,.tdp-cta{transition:none}.tdp-cta.is-pulsing{animation:none}}
/* The event calendar: another listing of the same event is a ringed, clickable day. */
a.rc-day{text-decoration:none}
.rc-day.is-other{color:#c2410c;cursor:pointer}
.rc-day.is-other::before{position:absolute;inset:2px calc(50% - 13px);border:1.5px dashed #f97316;border-radius:999px;content:""}
a.rc-day.is-other:hover::before,a.rc-day.is-other:focus-visible::before{border-style:solid;background:#fff1e8}
a.rc-day.is-other:focus-visible{outline:none}
.rc-key.is-other{width:14px;height:14px;border:1.5px dashed #f97316;border-radius:50%}
/* About this event sits under the title, above the When / Where cards. */
.event-description.is-lead{margin:16px 0 20px}
.event-description.is-lead h2{margin-top:0}
/* Host and attendance inside the When card, under the date and time. */
.event-when-extras{margin-top:14px;padding-top:12px;border-top:1px solid #eee7d6}
.event-when-host{margin:0;color:#4b4335;font-size:13px;line-height:1.4}
.event-when-host b{color:#241c15;font-weight:800}
.event-when-host+.event-when-host{margin-top:6px}
.event-when-extras .event-detail-chips{margin:10px 0 0}
/* The card's "WHEN" label styles every span in it; chips keep their own look. */
.event-facts .event-when-extras .event-detail-chips span{display:inline-block;margin:0;padding:6px 10px;border-radius:12px;font-size:12px;font-weight:800;line-height:1.35;letter-spacing:0;text-transform:none}
/* Caption under the venue photo on the WHERE card. */
.event-venue-caption{display:block;margin:-4px 0 8px;color:#6b5b4b;font-size:12px;font-style:italic;line-height:1.35}
