@charset "utf-8";

.sc-page {
  /* These pages always sit on white */
  --sc-ink: #000;
  --sc-accent: #e21833;
  --sc-accent-ink: #fff;            /* text on an accent-filled button */
  --sc-muted: rgba(0, 0, 0, .68);
  --sc-line: rgba(0, 0, 0, .16);
  background: #fff;
  color: var(--sc-ink);
}
#main:has(.sc-page) { background: #fff; }

.sc-band {
  --band-bg: #f1f1f1;
  --band-ink: #000;
  --band-accent: #e21833;
  --band-muted: rgba(0, 0, 0, .68);
  --band-line: rgba(0, 0, 0, .18);
  --band-on-accent: #fff;            /* text on an accent-filled button or tile */
  --band-dot: rgba(0, 0, 0, .14);    /* the node-grid dots */
  --sc-accent-ink: var(--band-on-accent);
  --sc-ink: var(--band-ink);
  --sc-accent: var(--band-accent);
  --sc-muted: var(--band-muted);
  --sc-line: var(--band-line);
  background: var(--band-bg);
  color: var(--band-ink);
}
.dark .sc-band {
  --band-bg: #1f1f1f;
  --band-ink: #fff;
  --band-accent: #ffd200;
  --band-muted: rgba(255, 255, 255, .74);
  --band-line: rgba(255, 255, 255, .22);
  --band-on-accent: #000;
  --band-dot: rgba(255, 255, 255, .17);
}

/* small pieces used on every page */
.sc-label {                                   /* small letter-spaced caps, like .umd-eyebrow */
  display: block;
  margin: 0 0 .6rem;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.3;
  color: var(--sc-muted);
}
.sc-rule {                                    /* the short accent rule */
  display: block;
  width: 2.75rem;
  height: 3px;
  margin: 1rem 0 1.25rem;
  background: var(--sc-accent);
  border: 0;
  opacity: 1;
}
.sc-page a.sc-link,
.sc-page .sc-people a,
.sc-page .sc-sessions a.sc-link {
  color: var(--sc-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
}
.sc-page a.sc-link:hover,
.sc-page .sc-people a:hover { text-decoration-thickness: 2px; }
.sc-page a:focus-visible,
.sc-page button:focus-visible,
.sc-page input:focus-visible,
.sc-page summary:focus-visible {
  outline: 2px solid var(--sc-accent);
  outline-offset: 3px;
}

.sc-btn {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .7rem 1.15rem;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--sc-accent);
  background: transparent;
  border: 1px solid var(--sc-accent);
  border-radius: 2px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
.sc-btn:hover, .sc-btn:focus-visible { color: var(--sc-accent-ink); background: var(--sc-accent); }
.sc-textbtn {                                  /* a quiet text-only button or link */
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .25rem 0;
  font-size: .9rem;
  font-weight: 600;
  color: var(--sc-accent);
  background: none;
  border: 0;
  text-decoration: none;
  cursor: pointer;
}
.sc-textbtn:hover { text-decoration: underline; text-underline-offset: .2em; }

.sc-i { width: 1.2rem; height: 1.2rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
/* Real platform marks used for share buttons */
.sc-iconbtn .fa-brands { font-size: 1.05rem; line-height: 1; }
.sc-tools { display: flex; align-items: center; gap: .6rem; }
.sc-tipwrap { position: relative; display: inline-block; }
.sc-iconbtn {
  display: inline-grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  color: var(--sc-ink);
  background: transparent;
  border: 1px solid var(--sc-muted);
  border-radius: 50%;
  cursor: pointer;
  transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}
.sc-iconbtn__i { display: grid; place-items: center; }
.sc-iconbtn:hover, .sc-iconbtn:focus-visible { color: var(--sc-accent); border-color: var(--sc-accent); }
.sc-iconbtn.is-done { color: var(--sc-accent-ink); background: var(--sc-accent); border-color: var(--sc-accent); }
.sc-iconbtn[aria-busy="true"] { cursor: progress; }
@media (pointer: coarse) { .sc-iconbtn { width: 2.75rem; height: 2.75rem; } }
.sc-spin { transform-origin: 12px 12px; animation: sc-spin .9s linear infinite; }
@keyframes sc-spin { to { transform: rotate(360deg); } }

.sc-tip {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 30;
  padding-top: .55rem;
  visibility: hidden;
  opacity: 0;
  transition: opacity .12s ease, visibility .12s;
}
.sc-tipwrap:hover .sc-tip, .sc-tipwrap:focus-within .sc-tip { visibility: visible; opacity: 1; }
.sc-tipwrap[data-dismissed] .sc-tip { visibility: hidden; opacity: 0; }
.sc-tip__box {
  display: block;
  width: max-content;
  max-width: 14rem;
  padding: .5rem .75rem .55rem;
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  color: #fff;
  background: #1f1f1f;
  border-radius: 3px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
}
.sc-tip__box small { display: block; margin-top: .1rem; font-size: .76rem; font-weight: 400; color: rgba(255, 255, 255, .82); }
.sc-tip__box small[hidden] { display: none; }

.sc-menu {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 31;
  margin-top: .55rem;
  min-width: 9rem;
  padding: .4rem;
  background: #1f1f1f;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
}
.sc-menu[hidden] { display: none; }
.sc-menu__label { margin: .15rem .5rem .35rem; font-size: .72rem; font-weight: 700; letter-spacing: .02em; color: rgba(255, 255, 255, .6); }
.sc-menu__item {
  display: flex;
  align-items: center;
  width: 100%;
  padding: .5rem .6rem;
  font-size: .88rem;
  font-weight: 600;
  color: #fff;
  text-align: left;
  background: transparent;
  border: 0;
  border-radius: 5px;
  cursor: pointer;
}
.sc-menu__item:hover, .sc-menu__item:focus-visible { background: rgba(255, 255, 255, .12); }
.sc-menu__item[aria-checked="true"]::after { content: "\2713"; margin-left: auto; padding-left: .5rem; }
.sc-tipwrap[data-menu-open] .sc-tip { visibility: hidden; opacity: 0; }

/* a solid (filled) button, for the one thing to do */
.sc-btn--solid { color: var(--sc-accent-ink); background: var(--sc-accent); }
.sc-btn--solid:hover, .sc-btn--solid:focus-visible { color: var(--sc-accent-ink); background: var(--sc-accent); filter: brightness(.9); }

.sc-nodes { position: relative; isolation: isolate; overflow: hidden; }
.sc-nodes::before, .sc-nodes::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: min(60%, 32rem); z-index: -1; pointer-events: none; }
.sc-nodes::before {
  background-image: radial-gradient(circle, var(--band-dot) 1.4px, transparent 1.9px);
  background-size: 22px 22px;
  -webkit-mask-image: linear-gradient(to left, #000 0%, transparent 100%);
  mask-image: linear-gradient(to left, #000 0%, transparent 100%);
}
.sc-nodes::after {
  background:
    radial-gradient(circle at 82% 26%, var(--band-accent) 0 3.5px, transparent 4.5px),
    radial-gradient(circle at 93% 64%, var(--band-accent) 0 2.5px, transparent 3.5px),
    radial-gradient(circle at 68% 80%, var(--band-accent) 0 2px, transparent 3px),
    radial-gradient(circle at 57% 18%, var(--band-accent) 0 1.8px, transparent 2.8px);
  opacity: .9;
}

/* initials in a circle (presenters); a team gets a group icon */
.sc-avatar {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: 3rem;
  height: 3rem;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1;
  border-radius: 50%;
  color: #fff;
  background: #1f1f1f;
}
.sc-avatar .sc-i { width: 1.35rem; height: 1.35rem; }
.sc-avatar--tier1 { --ring: #e21833; background: #e21833; color: #fff; }
.sc-avatar--tier2 { --ring: #ffd200; background: #ffd200; color: #000; }
.sc-avatar--tier3 { --ring: #b9b9b9; background: #e3e3e3; color: #000; }
.sc-avatar--host-umd   { --ring: #e21833; background: #e21833; color: #fff; }
.sc-avatar--host-btaa  { --ring: #005e8d; background: #005e8d; color: #fff; }
.sc-avatar--host-other { --ring: #b9b9b9; background: #e3e3e3; color: #000; }
.sc-avatar--photo { position: relative; box-sizing: border-box; border: 4.5px solid var(--ring); padding: 2px; background: #fff; }
.sc-avatar--photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; border-radius: 50%; display: block; }
.sc-avatar--logo img { object-fit: contain; padding: .3rem; background: #fff; }
.sc-avatar--xl { width: 5.5rem; height: 5.5rem; font-size: 2rem; }
.sc-avatar--xl .sc-i { width: 2.4rem; height: 2.4rem; }


/* tags: quiet outlined words, no color fills */
.sc-page .tag-pill {
  display: inline-block;
  margin: 0 .35rem .35rem 0;
  padding: .15rem .65rem;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.6;
  color: var(--sc-muted);
  background: transparent;
  border: 1px solid var(--sc-line);
  border-radius: 999px;
}
.sc-page .tag-pill i { display: none; }
.sc-page .tag-pill.event-featured { color: var(--sc-accent); border-color: var(--sc-accent); }
.sc-page a.tag-pill { text-decoration: none; transition: color .15s ease, border-color .15s ease; }        /* a tag that links to the catalog */
.sc-page a.tag-pill:hover, .sc-page a.tag-pill:focus-visible { color: var(--sc-accent); border-color: var(--sc-accent); text-decoration: underline; text-underline-offset: .2em; }

.sc-soon { padding: clamp(2rem, 6vw, 5rem) 0 clamp(3rem, 8vw, 7rem); }

/* --- filters: flat, thin lines, no card --- */
html .sc-page #filterSidebar {
  background: transparent;
  border: 0 !important;
  border-radius: 0;
  box-shadow: none !important;
  padding: 0 !important;
  color: var(--sc-ink);
}
@media (min-width: 992px) {
  html .sc-page #filterSidebar { padding-right: 1.5rem !important; }
}
html .sc-page .filter-actions-top {
  position: static;
  background: transparent !important;
  border-bottom: 1px solid var(--sc-line) !important;
  padding: 0 0 .75rem !important;
}
html .sc-page .filter-actions-top h3 { margin: 0; }
html .sc-page #dynamicFiltersContainer { padding: .5rem .25rem .5rem 0 !important; }
html .sc-page .filter-group { border-top: 1px solid var(--sc-line); margin-bottom: 0 !important; padding: .9rem 0 .5rem !important; }
html .sc-page .filter-group:first-child { border-top: 0; padding-top: .25rem !important; }
html .sc-page .filter-section-header,
html .sc-page label.filter-section-header,
html .sc-page span.filter-section-header {
  font-size: .85rem !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  color: var(--sc-muted) !important;
}
html .sc-page .filter-options-wrapper { background: transparent !important; padding: .35rem 0 .25rem !important; }
html .sc-page .filter-heading,
html .sc-page .filter-heading:hover,
html .sc-page .filter-heading:focus { background: transparent !important; color: var(--sc-ink); }
html .sc-page .toggle-icon { color: var(--sc-muted); }
html .sc-page #dynamicFiltersContainer .form-check { padding-top: .3rem !important; padding-bottom: .3rem !important; min-height: 0; }
html .sc-page #dynamicFiltersContainer .form-check-label {
  color: var(--sc-ink) !important;
  font-weight: 400 !important;
  font-size: .92rem !important;
  line-height: 1.3 !important;
}
html .sc-page #dynamicFiltersContainer .form-check-input {
  width: 1rem !important;
  height: 1rem !important;
  background-color: transparent;
  border: 1px solid var(--sc-muted);
  border-radius: 2px;
  box-shadow: none;
}
html .sc-page #dynamicFiltersContainer .form-check-input:checked {
  background-color: var(--sc-accent);
  border-color: var(--sc-accent);
}
html .sc-page #dynamicFiltersContainer .form-check-input:focus { box-shadow: 0 0 0 2px var(--sc-bg, transparent), 0 0 0 4px var(--sc-accent); }
html .sc-page .filter-group .badge {              /* the little count next to a filter heading */
  background: transparent !important;
  color: var(--sc-accent) !important;
  border: 1px solid var(--sc-accent);
  font-weight: 600;
}

/* the search box: just a line */
html .sc-page .static-module input,
html .sc-page #searchFilter {
  padding: .45rem 0 !important;
  font-size: .95rem !important;
  color: var(--sc-ink);
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--sc-muted);
  border-radius: 0;
  box-shadow: none;
}
html .sc-page #searchFilter::placeholder { color: var(--sc-muted); opacity: 1; }
html .sc-page #searchFilter:focus { border-bottom: 2px solid var(--sc-accent); box-shadow: 0 2px 0 0 rgba(226, 24, 51, .25); }
html .sc-page .keyword-bar-filter-container input[type="text"],
html .sc-page .search-input { margin-left: 0; }

/* mobile "Filter options" button */
html .sc-page #filterToggleBtn {
  color: var(--sc-ink);
  background: transparent;
  border: 0;
  border-top: 1px solid var(--sc-line);
  border-bottom: 1px solid var(--sc-line);
  border-radius: 0;
  padding: .85rem 0 !important;
  font-weight: 600;
}
html .sc-page #filterToggleBtn:hover { color: var(--sc-accent); background: transparent; }
html .sc-page #activeFilterPillsContainer .badge {
  background: transparent !important;
  color: var(--sc-accent) !important;
  border: 1px solid var(--sc-accent);
  font-weight: 600;
}

/* chips that show which filters are on */
html .sc-page .filter-pill {
  gap: .4rem;
  padding: .2rem .7rem;
  font-size: .8rem;
  font-weight: 600;
  color: var(--sc-ink);
  background: transparent;
  border: 1px solid var(--sc-line);
}
html .sc-page .filter-pill .btn-close-pill { color: var(--sc-muted); }
html .sc-page .filter-pill .btn-close-pill:hover { color: var(--sc-accent); }
html .sc-page #desktopActivePills .btn-link { color: var(--sc-accent) !important; font-weight: 600; }

/* --- day tabs: plain words on a thin line --- */
html .sc-page #eventDaysTabs {
  gap: .25rem 1.75rem;
  margin-bottom: 1.5rem !important;
  border-bottom: 1px solid var(--sc-line);
  flex-wrap: wrap;
}
html .sc-page #eventDaysTabs .nav-item { width: auto; }
html .sc-page #eventDaysTabs .nav-link {
  padding: .65rem 0;
  margin: 0 0 -1px;
  font-size: .9rem;
  font-weight: 600;
  color: var(--sc-muted) !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0;
}
html .sc-page #eventDaysTabs .nav-link:hover { color: var(--sc-ink) !important; border-color: transparent !important; }
html .sc-page #eventDaysTabs .nav-link.active { color: var(--sc-ink) !important; border-bottom: 2px solid var(--sc-accent) !important; }
html .sc-page #eventDaysTabs .badge {
  margin-left: .25rem;
  padding: 0;
  font-size: .75rem;
  font-weight: 400;
  color: var(--sc-muted);
  background: transparent !important;
}
@media (max-width: 767.98px) {
  html .sc-page #eventDaysTabs {
    flex-direction: row !important;
    flex-wrap: wrap;
    border-left: 0;
    border-bottom: 1px solid var(--sc-line) !important;
  }
  html .sc-page #eventDaysTabs .nav-item { flex: none; width: auto; }
  html .sc-page #eventDaysTabs .nav-link {
    margin: 0 0 -1px;
    padding: .65rem 0;
    border-left: 0 !important;
    border-bottom: 2px solid transparent !important;
    white-space: nowrap;
  }
  html .sc-page #eventDaysTabs .nav-link.active { border-left: 0 !important; border-bottom: 2px solid var(--sc-accent) !important; }
}

/* --- days, times and sessions --- */
html .sc-page .event-table { max-width: none; }
html .sc-page .day-block { margin: 3.5rem 0 0; border: 0; }
html .sc-page .day-block:first-of-type { margin-top: .5rem; }
html .sc-page .day-label {                        /* the day: plain type, no box */
  margin: 0 0 1.1rem;
  padding: 0;
  background: none;
  border: 0;
  color: var(--sc-ink);
}
html .sc-page .day-label h3 {
  margin: 0;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.01em;
  color: var(--sc-ink);
}
html .sc-page .dayName { font-weight: 700; }

html .sc-page .time-block {
  display: grid;
  grid-template-columns: 9rem minmax(0, 1fr);
  gap: 0 1.5rem;
  margin: 0;
  padding: 1.4rem 0 .4rem;
  border-top: 1px solid var(--sc-line);
}
html .sc-page .time-label {
  width: auto;
  min-height: 0;
  display: block;
  margin: 0;
  padding: 0;
  text-align: left;
  font-size: 1.35rem;                                /* the start time is the heading of the group */
  font-weight: 700;
  line-height: 1.2;
  color: var(--sc-ink);
  border: 0;
}
html .sc-page .time-event-block {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2.5rem;
  width: auto;
}
html .sc-page .event {
  flex: 1 1 17rem;
  min-width: 0;
  margin: 0;
  padding: 0 0 1.6rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--sc-ink);
}
@media (max-width: 767.98px) {
  html .sc-page .time-block { display: block; padding: 1.1rem 0 .2rem; }
  html .sc-page .time-label { padding: 0 0 .75rem; font-size: 1.25rem; }
  html .sc-page .time-event-block { display: block; }
}

html .sc-page .event .event-title,
html .sc-page .event-host-umd .event-title,
html .sc-page .event-host-other .event-title,
html .sc-page .event .event-title.event-host-btaa {
  display: block;
  min-height: 0;
  height: auto;
  margin: 0 0 .5rem;
  padding: 0;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--sc-ink);
  text-decoration: none;
}
html .sc-page .event .event-title h4 { margin: 0; font-size: inherit; font-weight: inherit; line-height: inherit; }
html .sc-page .event .event-title:hover h4,
html .sc-page .event .event-title:focus-visible h4 { color: var(--sc-accent); text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 1px; }
html .sc-page .event-host-other { border: 0; }

.sc-page .sc-presenters { margin: 0 0 .6rem; font-size: .95rem; line-height: 1.4; color: var(--sc-muted); }
.sc-page .sc-presenters a { color: var(--sc-accent); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.sc-page .sc-presenters a:hover { text-decoration-thickness: 2px; }

html .sc-page .event-host,
html .sc-page .event-time,
html .sc-page .event-location,
html .sc-page .event-date {
  display: block;
  margin: 0 0 .2rem 1.6rem;
  font-size: .9rem;
  line-height: 1.45;
  color: var(--sc-muted);
}
html .sc-page p.event-host i,
html .sc-page p.event-time i,
html .sc-page p.event-location i,
html .sc-page p.event-date i {
  left: -1.6rem;
  width: 1.1rem;
  color: var(--sc-muted);
  font-size: .85rem;
  text-align: center;
  padding: 0;
}
html .sc-page .event-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin: .85rem 0 .5rem;
  font-size: .95rem;
  line-height: 1.55;
  color: var(--sc-ink);
}
html .sc-page .event-keyword-container { margin: .5rem 0 0; padding: 0; }

html .sc-page .event.sc-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: .6rem .7rem 1.6rem;
  margin: -.6rem -.7rem 0;
  border-radius: .5rem;
  border: 0;
  transition: background-color .15s ease;
}
html .sc-page .event.sc-card:hover,
html .sc-page .event.sc-card:focus-within { background-color: rgba(0, 0, 0, .045); }
html .sc-page .sc-card__eyebrow {
  margin: 0 0 .5rem;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.35;
  color: var(--sc-muted);
}
html .sc-page .sc-card__eyebrow span + span::before { content: "\00b7"; margin: 0 .55em; font-weight: 400; }
html .sc-page .sc-card__eyebrow .is-featured { color: var(--sc-accent); }
html .sc-page .sc-card__eyebrow .fa-video { margin-right: .3em; }

html .sc-page .sc-card__avatars { position: relative; z-index: 2; display: flex; align-items: center; align-self: flex-start; margin: .75rem 0 0; }
html .sc-page .sc-card__avatars .sc-card__avatar-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  height: 3.3rem;
  margin-left: -.85rem;
  border-radius: 1.65rem;
  box-shadow: 0 0 0 2px #fff;
  text-decoration: none;
  transition: transform .12s ease, background-color .18s ease, color .18s ease;
}
html .sc-page .sc-card__avatars .sc-card__avatar-link[hidden] { display: none; }
html .sc-page .sc-card__avatars .sc-card__avatar-link:first-child { margin-left: 0; }
html .sc-page .sc-card__avatars .sc-card__avatar-link:hover,
html .sc-page .sc-card__avatars .sc-card__avatar-link:focus-visible { z-index: 5; }
html .sc-page .sc-card__avatars .sc-card__avatar-link:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 2px; }
html .sc-page .sc-card__avatars .sc-card__avatar-link:has(.sc-avatar--tier1) { background: #e21833; color: #fff; }
html .sc-page .sc-card__avatars .sc-card__avatar-link:has(.sc-avatar--tier2) { background: #ffd200; color: #000; }
html .sc-page .sc-card__avatars .sc-card__avatar-link:has(.sc-avatar--tier3) { background: #e3e3e3; color: #000; }
html .sc-page .sc-card__avatars .sc-avatar {
  flex: none;
  width: 3.3rem;
  height: 3.3rem;
  font-size: .85rem;
}
html .sc-page .sc-card__avatars .sc-avatar--photo { box-sizing: border-box; border: 3.5px solid var(--ring); padding: 0; }
html .sc-page .sc-card__avatars .sc-avatar .sc-i { width: 1.6rem; height: 1.6rem; }

html .sc-page .sc-card__avatars .sc-avatar-name {
  display: inline-block;
  max-width: 0;
  padding-left: 0;
  overflow: hidden;
  white-space: nowrap;
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .02em;
  opacity: 0;
  transition: max-width .3s ease-out .1s, padding-left .3s ease-out .1s, opacity .22s ease-out .1s;
}
html .sc-page .sc-card__avatars .sc-card__avatar-link.is-open .sc-avatar-name {
  max-width: 32rem;
  padding-left: .35rem;
  padding-right: 1.1rem;
  opacity: 1;
  transition: max-width .3s ease-out, padding-left .3s ease-out, opacity .22s ease-out;
}

html .sc-page .sc-card__avatars .sc-avatar--init {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 3.3rem;
  max-width: 3.3rem;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border-radius: 1.65rem;
  transition: max-width .32s ease-out .1s, padding .32s ease-out .1s;
}
html .sc-page .sc-card__avatars .sc-card__avatar-link.is-open .sc-avatar--init {
  justify-content: flex-start;
  max-width: 32rem;
  padding: 0 1.1rem;
  transition: max-width .32s ease-out, padding .32s ease-out;
}
html .sc-page .sc-card__avatars .sc-avatar__i { flex: none; font-weight: 700; }
html .sc-page .sc-card__avatars .sc-avatar__rest {
  display: inline-block;
  flex: none;
  max-width: 0;
  overflow: hidden;
  white-space: pre;
  opacity: 0;
  transition: max-width .3s ease-out .1s, opacity .24s ease-out .1s;
}
html .sc-page .sc-card__avatars .sc-card__avatar-link.is-open .sc-avatar__rest {
  max-width: 26rem;
  opacity: 1;
  transition: max-width .3s ease-out, opacity .24s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  html .sc-page .sc-card__avatars .sc-card__avatar-link,
  html .sc-page .sc-card__avatars .sc-avatar-name,
  html .sc-page .sc-card__avatars .sc-avatar--init,
  html .sc-page .sc-card__avatars .sc-avatar__rest {
    transition: none;
  }
}
html .sc-page .sc-card__avatars__more {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 3.3rem;
  height: 3.3rem;
  margin-left: -.85rem;
  padding: 0;
  font: inherit;
  font-size: 1rem;
  font-weight: 700;
  color: var(--sc-muted);
  background: #e9e9e9;
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 2px #fff;
  cursor: pointer;
}
html .sc-page .sc-card__avatars__more:hover,
html .sc-page .sc-card__avatars__more:focus-visible { color: var(--sc-accent-ink); background: var(--sc-accent); z-index: 5; }
html .sc-page .sc-card__avatars__more:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 2px; }
html .sc-page .event.sc-card .event-title { margin: 0 0 .3rem; font-size: 1.2rem; }
html .sc-page .event.sc-card .event-title::after { content: ""; position: absolute; inset: 0; z-index: 1; }
html .sc-page .event.sc-card:hover .event-title h4 { color: var(--sc-accent); text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 1px; }
html .sc-page .event.sc-card .sc-presenters { position: relative; z-index: 2; align-self: flex-start; margin: 0 0 .35rem; font-size: .92rem; }
html .sc-page .sc-card__meta { margin: 0; font-size: .88rem; line-height: 1.5; color: var(--sc-muted); }
html .sc-page .sc-card__meta span + span::before { content: "\00b7"; margin: 0 .55em; }
html .sc-page .sc-card__summary { margin: .75rem 0 0; font-size: .93rem; line-height: 1.55; color: var(--sc-ink); }

/* Register / Add to calendar / Watch the recording */
html .sc-page .sc-card__action { position: relative; z-index: 2; align-self: flex-start; margin: .85rem 0 0; }
html .sc-page .sc-card__action-btn {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .45rem .85rem;
  font-size: .8rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--sc-accent);
  background: transparent;
  border: 1px solid var(--sc-accent);
  border-radius: 2px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
html .sc-page .sc-card__action-btn:hover,
html .sc-page .sc-card__action-btn:focus-visible { color: var(--sc-accent-ink); background: var(--sc-accent); }
html .sc-page .sc-card__action-btn .sc-i { width: 1rem; height: 1rem; }
html .sc-page .event.sc-card .event-keyword-container { margin: .85rem 0 0; }
html .sc-page .event.sc-card .tag-pill { margin: 0 .3rem .3rem 0; padding: .05rem .6rem; font-size: .72rem; }
html .sc-page .event.sc-card .event-audience { color: var(--sc-ink); border-color: var(--sc-muted); }   /* a limited audience stands out a little */

html .sc-page .event.sc-card[data-host-kind] { --sc-host: var(--sc-ink); --sc-host-dark: var(--sc-ink); }
html .sc-page .event.sc-card[data-host-kind="umd"]  { --sc-host: #e21833; --sc-host-dark: #b3122a; }
html .sc-page .event.sc-card[data-host-kind="btaa"] { --sc-host: #005e8d; --sc-host-dark: #003c5a; }
html .sc-page .event.sc-card[data-host-kind="umd"] .event-title,
html .sc-page .event.sc-card[data-host-kind="btaa"] .event-title { color: var(--sc-host); }
html .sc-page .event.sc-card[data-host-kind="umd"]:hover .event-title h4,
html .sc-page .event.sc-card[data-host-kind="btaa"]:hover .event-title h4 { color: var(--sc-host-dark); }
html .sc-page .sc-card__eyebrow .is-host { color: var(--sc-host, var(--sc-muted)); font-weight: 700; }
html .sc-page .event.sc-card[data-host-kind="btaa"] .sc-presenters a { color: var(--sc-host); }
/* Register / Add to calendar / Watch the recording button */
html .sc-page .event.sc-card[data-host-kind="btaa"] .sc-card__action-btn { color: var(--sc-host); border-color: var(--sc-host); }
html .sc-page .event.sc-card[data-host-kind="btaa"] .sc-card__action-btn:hover,
html .sc-page .event.sc-card[data-host-kind="btaa"] .sc-card__action-btn:focus-visible { color: var(--sc-accent-ink); background: var(--sc-host); }

/* nothing matched the filters */
html .sc-page #noResults,
html .sc-page .tab-no-results {
  padding: 3rem 0 !important;
  color: var(--sc-muted);
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--sc-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
html .sc-page #noResults i, html .sc-page .tab-no-results i { color: var(--sc-muted) !important; font-size: 1.75rem; }

.sc-page .sc-flyer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 24rem);
  grid-template-areas:
    "top   top"
    "meta  tags"
    "about people";
  column-gap: clamp(2rem, 5vw, 4.5rem);
  align-items: start;
  margin: 0;
  padding: 1.25rem 0 1rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--sc-ink);
}
.sc-page .sc-top { grid-area: top; }
.sc-page .sc-meta { grid-area: meta; }
.sc-page .sc-cta { grid-area: cta; }
.sc-page .sc-about { grid-area: about; }
.sc-page .sc-presenters-section { grid-area: people; }
.sc-page .sc-tags-section { grid-area: tags; }
/* No tags on this session */
.sc-page .sc-flyer:has(.sc-tags-section.d-none) {
  grid-template-areas:
    "top   top"
    "meta  people"
    "about people";
}
/* Desktop only */
@media (min-width: 992px) {
  .sc-page .sc-flyer:has(.sc-tags-section.d-none) .sc-presenters-section { margin-top: 0; }
}

.sc-page .sc-top { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1.25rem; margin: 0 0 1.1rem; }
.sc-page .sc-top:not(:has(.sc-eyebrow:not(.d-none), .sc-tools:not(.d-none))) { display: none; }
.sc-page .sc-top .sc-tools { margin-left: auto; }
.sc-page .sc-eyebrow {
  margin: 0;
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.35;
  color: var(--sc-muted);
}
.sc-page .sc-eyebrow span + span::before { content: "\00b7"; margin: 0 .6em; font-weight: 400; }
.sc-page .sc-eyebrow .is-featured { color: var(--sc-accent); }
@media (max-width: 991.98px) {
  .sc-page .sc-top { align-items: flex-start; }
  .sc-page .sc-eyebrow { display: flex; flex-direction: column; gap: .3rem; }
  .sc-page .sc-eyebrow span + span::before { content: none; margin: 0; }
}

.sc-banner-links {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: .35rem 1.75rem;
  margin: .6rem 0 0;
  width: 100%;
  pointer-events: auto;                     /* the banner itself ignores the pointer; these are links */
}
@media (max-width: 768px) {
  .sc-banner-links {
    justify-content: flex-start;
    align-self: flex-start;
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    width: calc(100% + 3rem);
  }
}
.banner-parent-wrapper:has(.sc-banner-links--split) .text-overlay-layer { flex: 1 1 auto; }
.sc-banner-links--split { flex-wrap: nowrap; justify-content: space-between; }
.sc-banner-links__side { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem 1.75rem; min-width: 0; }
@media (max-width: 768px) {
  .sc-banner-links__side {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
  }
  .sc-banner-links__side--end { align-items: flex-end; }   /* stacked right-side links stay flush with the right margin */
}
.sc-banner-links a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--text-main);
  text-decoration: none;
  text-shadow: 0 0 8px var(--bg-color), 0 0 16px var(--bg-color);
  transition: color 0.3s ease;
}
.sc-banner-links a::before {
  content: "";
  position: absolute;
  inset: -.5em -.85em;
  border-radius: .85em;
  background-color: rgba(255, 255, 255, 0.055);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at center, #000 40%, transparent 90%);
  mask-image: radial-gradient(ellipse 100% 100% at center, #000 40%, transparent 90%);
  backdrop-filter: blur(6px) saturate(140%);
  -webkit-backdrop-filter: blur(6px) saturate(140%);
  transition: background-color 0.3s ease, backdrop-filter 0.3s ease;
  z-index: -1;
  pointer-events: none;
}
:root:not(.dark) .sc-banner-links a::before {
  background-color: rgba(0, 0, 0, 0.035);
}
.sc-banner-links a:hover, .sc-banner-links a:focus-visible { color: var(--text-accent); text-decoration: underline; text-underline-offset: .2em; }
.sc-banner-links a:hover::before, .sc-banner-links a:focus-visible::before { background-color: rgba(255, 255, 255, 0.15); backdrop-filter: blur(11px) saturate(170%); -webkit-backdrop-filter: blur(11px) saturate(170%); }
:root:not(.dark) .sc-banner-links a:hover::before, :root:not(.dark) .sc-banner-links a:focus-visible::before { background-color: rgba(0, 0, 0, 0.10); }
.sc-banner-links a.d-none { display: none !important; }
.banner-parent-wrapper:has(#heroHeadline) .text-overlay-layer { position: static; }   /* so the corner link is placed against the banner itself */
.sc-banner-corner {
  position: absolute;
  right: 1.5rem;
  bottom: 2rem;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--text-main);
  text-decoration: none;
  text-shadow: 0 0 8px var(--bg-color), 0 0 16px var(--bg-color);
  pointer-events: auto;
  transition: color 0.3s ease;
}
.sc-banner-corner::before {
  content: "";
  position: absolute;
  inset: -.5em -.85em;
  border-radius: .85em;
  background-color: rgba(255, 255, 255, 0.055);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at center, #000 40%, transparent 90%);
  mask-image: radial-gradient(ellipse 100% 100% at center, #000 40%, transparent 90%);
  backdrop-filter: blur(6px) saturate(140%);
  -webkit-backdrop-filter: blur(6px) saturate(140%);
  transition: background-color 0.3s ease, backdrop-filter 0.3s ease;
  z-index: -1;
  pointer-events: none;
}
:root:not(.dark) .sc-banner-corner::before {
  background-color: rgba(0, 0, 0, 0.035);
}
.sc-banner-corner:hover, .sc-banner-corner:focus-visible { color: var(--text-accent); text-decoration: underline; text-underline-offset: .2em; }
.sc-banner-corner:hover::before, .sc-banner-corner:focus-visible::before { background-color: rgba(255, 255, 255, 0.15); backdrop-filter: blur(11px) saturate(170%); -webkit-backdrop-filter: blur(11px) saturate(170%); }
:root:not(.dark) .sc-banner-corner:hover::before, :root:not(.dark) .sc-banner-corner:focus-visible::before { background-color: rgba(0, 0, 0, 0.10); }
.sc-banner-corner.d-none { display: none !important; }
@media (max-width: 768px) { .sc-banner-corner { position: static; margin-top: .35rem; align-self: flex-end; } }

.sc-page-links { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.75rem; margin: 0 0 1.25rem; }
.sc-page-links a {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--sc-accent);
  text-decoration: none;
}
.sc-page-links a:hover, .sc-page-links a:focus-visible { text-decoration: underline; text-underline-offset: .2em; }
.sc-page-links a.d-none { display: none !important; }
.sc-page-links__end { margin-left: auto; }

/* Content fills #page-body's own width naturally */
body:has(#heroHeadline) #page-body > .sc-notfound { max-width: 34rem; }

.umd-headline[data-len] { max-width: min(100%, 64rem); overflow-wrap: break-word; }
.umd-headline[data-len="long"]  { font-size: clamp(1.9rem, 3.6vw, 3.6rem); }
.umd-headline[data-len="xlong"] { font-size: clamp(1.7rem, 3vw, 2.8rem); }
@media (max-width: 768px) { .umd-headline[data-len] { font-size: clamp(1.6rem, 7vw, 2.4rem); } }


/* the links that matter right now, as buttons in the band */
.sc-page .sc-cta { margin: 2.25rem 0 0; }
.sc-page .sc-links { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0; padding: 0; list-style: none; }
.sc-page .sc-links li { margin: 0; padding: 0; }
.sc-page .sc-links .sc-btn { padding: .8rem 1.3rem; font-size: .95rem; }

/* --- the facts (right column on wide screens) --- */
.sc-page .sc-facts { display: flex; flex-wrap: wrap; gap: 1.1rem 3rem; margin: 0; padding: 0; }
.sc-page .sc-fact { display: block; margin: 0; padding: 0; }
.sc-page .sc-fact dt { display: flex; align-items: center; gap: .5rem; margin: 0 0 .35rem; font-family: Interstate, Helvetica, Arial, Verdana, sans-serif; font-size: .85rem; font-weight: 600; letter-spacing: .02em; line-height: 1.3; color: var(--sc-muted); }
.sc-page .sc-fact dt .sc-i { color: var(--sc-accent); width: 1.05rem; height: 1.05rem; }
.sc-page .sc-fact dd { margin: 0; font-size: 1.05rem; line-height: 1.45; }
.sc-page .sc-fact dd strong { display: block; font-weight: 600; }
.sc-page .sc-fact dd span { display: block; margin-top: .1rem; color: var(--sc-muted); font-size: .95rem; }

/* --- body sections --- */
.sc-page .sc-section { margin: 2.25rem 0 0; }
.sc-page .sc-about { margin-top: 2rem; }
.sc-page .sc-tags-section { margin-top: 0; }
.sc-page .event-description-text { font-size: 1.1rem; line-height: 1.75; color: var(--sc-ink) !important; white-space: pre-line; max-width: 42rem; margin: 0; }

/* presenters (details page) */
.sc-page .sc-people { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; margin: 0; padding: 0; list-style: none; }
.sc-page .sc-people li {
  position: relative; display: flex; align-items: center; gap: .95rem; line-height: 1.35;
  margin: -.4rem -.5rem; padding: .4rem .5rem; border-radius: .4rem; transition: background-color .15s ease;
}
.sc-page .sc-people .sc-avatar { width: 4rem; height: 4rem; font-size: 1.5rem; }
.sc-page .sc-people .sc-avatar .sc-i { width: 1.75rem; height: 1.75rem; }

@media (max-width: 991.98px) {
  .sc-page .sc-people .sc-avatar { width: 3.5rem; height: 3.5rem; font-size: 1.3rem; }
  .sc-page .sc-people .sc-avatar .sc-i { width: 1.5rem; height: 1.5rem; }
}
.sc-page .sc-person__pronouns { font-weight: 400; opacity: .75; margin-left: .1em; font-size: 0.85rem; }
.sc-page .sc-people li:hover,
.sc-page .sc-people li:focus-within { background-color: rgba(0, 0, 0, .045); }
.sc-page .sc-people li a.sc-person__name::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.sc-page .sc-person__name { font-size: 1.05rem; font-weight: 600; }
.sc-page #pdfPrintArea[data-host-kind="btaa"] .sc-person__name { color: #005e8d; }
.sc-page #pdfPrintArea[data-host-kind="btaa"] .sc-fact dt .sc-i { color: #005e8d; }
.sc-page #eventDetailContent[data-host-kind="btaa"] .sc-btn { color: #005e8d; border-color: #005e8d; }
.sc-page #eventDetailContent[data-host-kind="btaa"] .sc-btn:hover,
.sc-page #eventDetailContent[data-host-kind="btaa"] .sc-btn:focus-visible { color: var(--sc-accent-ink); background: #005e8d; }
.sc-page #eventDetailContent[data-host-kind="btaa"] .sc-btn--solid { color: var(--sc-accent-ink); background: #005e8d; }
.sc-page #eventDetailContent[data-host-kind="btaa"] .sc-btn--solid:hover,
.sc-page #eventDetailContent[data-host-kind="btaa"] .sc-btn--solid:focus-visible { color: var(--sc-accent-ink); background: #005e8d; filter: brightness(.9); }
.sc-page .sc-person__meta { display: block; margin-top: .15rem; font-size: .9rem; color: var(--sc-muted); }
.sc-page .sc-person__role { display: block; margin-top: .2rem; font-size: .8rem; font-weight: 600; letter-spacing: .02em; color: var(--sc-muted); }
.sc-page .sc-hint { margin: 1.1rem 0 0; font-size: .85rem; color: var(--sc-muted); }

/* not found (details and presenters) */
/* Coming Soon / not-found panels sit centered on the page */
.sc-page .sc-notfound { max-width: 34rem; margin: 3rem auto; text-align: center; }
.sc-page .sc-notfound .sc-rule { margin-left: auto; margin-right: auto; }
.sc-page .sc-notfound h2 { margin: 0; font-size: 1.75rem; font-weight: 700; color: var(--sc-ink) !important; }
.sc-page .sc-notfound p { margin: 0 0 1.5rem; color: var(--sc-muted) !important; line-height: 1.55; }

.sc-flyerframe { position: fixed; top: 0; left: -10000px; width: 1200px; height: 900px; border: 0; visibility: visible; pointer-events: none; }

@media (max-width: 991.98px) {
  .sc-page .sc-flyer,
  .sc-page .sc-flyer:has(.sc-tags-section.d-none) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "top" "meta" "about" "tags" "people";   /* no "cta" row -- see the wide-screen comment above */
  }
  .sc-page .sc-presenters-section { margin-top: 2.25rem; }
  .sc-page .sc-tags-section { margin-top: 2.25rem; }
}
@media (max-width: 575.98px) {
}
@media (prefers-reduced-motion: reduce) {
  .sc-spin { animation: none; }
}

/* PRESENTERS (/sessions/presenters/) */
.sc-page .sc-profile {
  display: flex;
  align-items: flex-start;
  gap: 1.75rem;
  margin: .5rem 0 0;
  padding: 0;
}
.sc-page .sc-profile .sc-avatar--xl { margin-top: .25rem; }
.sc-page .sc-profile__text { flex: 1 1 auto; min-width: 0; }
.sc-page .sc-profile__tools { margin-left: auto; }
@media (max-width: 575.98px) {
  .sc-page .sc-profile { flex-wrap: wrap; align-items: center; gap: 1rem; }
  .sc-page .sc-profile__tools { order: 2; }
  .sc-page .sc-profile__text { order: 3; flex: 1 0 100%; }
}
.sc-page .sc-profile__titles { margin: 0; padding: 0; list-style: none; font-size: 1.05rem; line-height: 1.45; color: var(--sc-muted); }
.sc-page .sc-profile__bio { margin: 1.25rem 0 0; max-width: 42rem; font-size: 1.05rem; line-height: 1.7; white-space: pre-line; }

.sc-hero-pronouns { font-size: clamp(1rem, 2vw, 1.75rem); font-weight: 400; text-transform: none; letter-spacing: 0; opacity: .85; margin-left: .4em; }
.banner-parent-wrapper:has(#heroHeadline) { overflow: visible; }
.sc-hero-avatar {
  position: absolute;
  top: 100%;
  transform: translate(-40%,-60%);
  right: 15rem;
  width: clamp(10rem, 17.5vw, 20rem);
  height: clamp(10rem, 17.5vw, 20rem);
  font-size: clamp(4rem, 6.75vw, 7.75rem);
  z-index: 3;
}
@media (max-width: 768px) {
  .sc-hero-avatar {
    right: auto;
    left: 50%;
    transform: translate(-50%, -30%);
    width: clamp(6rem, 26vw, 9rem);
    height: clamp(6rem, 26vw, 9rem);
    font-size: clamp(2.25rem, 9vw, 4rem);
  }
  body:has(#presenterAvatar) #page-body { margin-top: 6.5rem; }
  body:has(#presenterAvatar:not(.d-none)) .text-overlay-layer {
    padding-bottom: calc(0.3 * clamp(6rem, 26vw, 9rem) + 1rem);
  }
}
.sc-page .sc-count { margin: 3rem 0 .25rem; }

.sc-page .sc-sessions { margin: 0; padding: 0; list-style: none; }
.sc-page .sc-sessions > li {
  position: relative;
  display: grid;
  grid-template-columns: 19rem minmax(0, 1fr);
  gap: .35rem 2rem;
  padding: 1.25rem .5rem;
  margin: 0 -.5rem;
  border-top: 1px solid var(--sc-line);
  border-radius: .4rem;
  transition: background-color .15s ease;
}
.sc-page .sc-sessions > li:last-child { border-bottom: 1px solid var(--sc-line); }
.sc-page .sc-sessions > li:hover,
.sc-page .sc-sessions > li:focus-within { background-color: rgba(0, 0, 0, .045); }
.sc-page .sc-sessions > li .sc-session__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.sc-page .sc-sessions > li .sc-session__with { position: relative; z-index: 2; }
.sc-page .sc-when { display: flex; align-items: flex-start; gap: 1rem; font-size: .95rem; line-height: 1.45; color: var(--sc-muted); }
.sc-page .sc-when strong { display: block; font-weight: 600; color: var(--sc-ink); }
.sc-page .sc-when strong { white-space: nowrap; }
@media (max-width: 359.98px) { .sc-page .sc-when strong { white-space: normal; } }
.sc-page .sc-mini {                          /* a small date tile: month over day */
  flex: none;
  display: grid;
  gap: .15rem;
  width: 3.1rem;
  padding: .4rem 0 .45rem;
  text-align: center;
  line-height: 1;
  color: #fff;
  background: var(--sc-accent);
  border-radius: 2px;
}
.sc-page .sc-mini b { font-size: .62rem; font-weight: 700; letter-spacing: .14em; }
.sc-page .sc-mini i { font-size: 1.35rem; font-style: normal; font-weight: 700; }
.sc-page .sc-session__title { margin: 0 0 .3rem; font-size: 1.15rem; font-weight: 600; line-height: 1.3; }
.sc-page .sc-session__title a { color: var(--sc-ink); text-decoration: none; }
.sc-page .sc-session__title a:hover, .sc-page .sc-session__title a:focus-visible { color: var(--sc-accent); text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 1px; }
.sc-page .sc-session__meta { margin: 0; font-size: .9rem; line-height: 1.5; color: var(--sc-muted); }
.sc-page .sc-sessions > li[data-host-kind] { --sc-host: var(--sc-ink); --sc-host-dark: var(--sc-ink); }
.sc-page .sc-sessions > li[data-host-kind="umd"]  { --sc-host: #e21833; --sc-host-dark: #b3122a; }
.sc-page .sc-sessions > li[data-host-kind="btaa"] { --sc-host: #005e8d; --sc-host-dark: #003c5a; }
.sc-page .sc-sessions > li[data-host-kind] .sc-session__title a { color: var(--sc-host); }
.sc-page .sc-sessions > li[data-host-kind] .sc-session__title a:hover,
.sc-page .sc-sessions > li[data-host-kind] .sc-session__title a:focus-visible { color: var(--sc-host-dark); }
.sc-page .sc-sessions > li[data-host-kind] .sc-mini { background: var(--sc-host); }
.sc-page .sc-sessions > li[data-host-kind] .sc-session__with a.sc-link { color: var(--sc-host); }
@media (max-width: 767.98px) {
  .sc-page .sc-sessions > li { grid-template-columns: 1fr; }
}

/* the list of everyone */
.sc-page .sc-find { max-width: 26rem; margin: 0 0 2rem; }
.sc-page .sc-find input {
  min-height: 44px;
  width: 100%;
  padding: .55rem 0;
  font-size: 1rem;
  color: var(--sc-ink);
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--sc-muted);
  border-radius: 0;
}
.sc-page .sc-find input::placeholder { color: var(--sc-muted); opacity: 1; }
.sc-page .sc-find input:focus { outline: none; border-bottom: 2px solid var(--sc-accent); box-shadow: 0 2px 0 0 rgba(226, 24, 51, .25); }
.sc-page .sc-index { display: block; margin: 0; padding: 0; list-style: none; }               /* one block per letter */
.sc-page .sc-index > .sc-group { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr); column-gap: 1rem; margin: 0; padding: 0; border-top: 3px solid var(--sc-ink); scroll-margin-top: 1rem; }
.sc-page .sc-index > .sc-group:last-child { border-bottom: 1px solid var(--sc-line); }
.sc-page .sc-index > .sc-group:not(:first-child) { margin-top: 2.25rem; }                       /* air between letter blocks, so they read as separate groups */
.sc-page .sc-group__letter { align-self: start; position: sticky; top: .75rem; margin: 0; padding: .55rem 0 0; font-family: 'Barlow Condensed', Arial Narrow, sans-serif; font-style: italic; font-weight: 700; font-size: 3rem; line-height: 1; color: var(--sc-accent); }
.sc-page .sc-group__rows { display: block; margin: 0; padding: 0; list-style: none; }
.sc-page .sc-group__rows > li {
  position: relative; display: flex; align-items: center; gap: 1rem; border-top: 1px solid var(--sc-line);
  margin: 0 -.5rem; padding: .9rem .5rem; border-radius: .4rem; transition: background-color .15s ease;
}
.sc-page .sc-group__rows > li:hover,
.sc-page .sc-group__rows > li:focus-within { background-color: rgba(0, 0, 0, .045); }
.sc-page .sc-group__rows > li:first-child { border-top: 0; }                                     /* the heavy rule above the block already does this job */
.sc-page .sc-group__rows > li .sc-index__who > a.sc-link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.sc-page .sc-index .sc-avatar { width: 5rem; height: 5rem; font-size: 2rem; }
.sc-page .sc-index__who { flex: 1 1 auto; min-width: 0; }
.sc-page .sc-index a { font-weight: 600; font-size: 1.05rem; color: var(--sc-ink); text-decoration: none; }
.sc-page .sc-index a:hover, .sc-page .sc-index a:focus-visible { color: var(--sc-accent); text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 1px; }
.sc-page .sc-index .sc-person__meta { margin: .1rem 0 0; }
@media (max-width: 560px) {
  .sc-page .sc-index > .sc-group { grid-template-columns: minmax(0, 1fr); }                     /* on a phone the letter goes above its rows */
  .sc-page .sc-group__letter { position: static; padding: .5rem 0 .1rem; font-size: 2.25rem; }
}
/* A to Z jump bar */
.sc-page .sc-jump { margin: 0 0 1.25rem; }
.sc-page .sc-jump__list { display: flex; flex-wrap: wrap; gap: .15rem; margin: 0 0 0 -.6rem; padding: 0; list-style: none; }
.sc-page .sc-jump__list li { margin: 0; padding: 0; }
.sc-page .sc-jump__btn {
  min-width: 2.1rem; height: 2.1rem; padding: 0 .3rem; font: inherit; font-size: .9rem; font-weight: 700; line-height: 1;
  color: var(--sc-ink); background: transparent; border: 0; border-bottom: 2px solid transparent; border-radius: 0; cursor: pointer;
}
.sc-page .sc-jump__btn:hover:not(:disabled), .sc-page .sc-jump__btn:focus-visible:not(:disabled) { color: var(--sc-accent); border-bottom-color: var(--sc-accent); }
.sc-page .sc-jump__btn:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 2px; }
.sc-page .sc-jump__btn:disabled { color: rgba(0, 0, 0, .28); cursor: default; }
.sc-page .sc-index__meta { display: flex; flex-direction: column; align-items: flex-end; gap: .4rem; flex: none; }
.sc-page .sc-index__n { padding-top: .2rem; font-size: .85rem; color: var(--sc-muted); white-space: nowrap; }

.sc-page .sc-index__tiles { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .3rem; max-width: 9.5rem; }
.sc-page .sc-index__tile { position: relative; z-index: 2; display: inline-block; }   /* above the row's own stretch-link */
.sc-page .sc-index__tile:hover,
.sc-page .sc-index__tile:focus-within { z-index: 10; }
.sc-page .sc-index__tile-link { display: block; border-radius: 2px; }
.sc-page .sc-index__tile-link:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 2px; }
.sc-page .sc-index .sc-mini--tiny { width: 2.1rem; padding: .28rem 0 .3rem; border-radius: 2px; transition: transform .12s ease; }
.sc-page .sc-index .sc-mini--tiny b { font-size: .58rem; letter-spacing: .06em; }
.sc-page .sc-index .sc-mini--tiny i { font-size: 1rem; }
.sc-page .sc-index__tile[data-host-kind] { --sc-host: var(--sc-ink); --sc-host-dark: var(--sc-ink); }
.sc-page .sc-index__tile[data-host-kind="umd"]  { --sc-host: #e21833; --sc-host-dark: #b3122a; }
.sc-page .sc-index__tile[data-host-kind="btaa"] { --sc-host: #005e8d; --sc-host-dark: #003c5a; }
.sc-page .sc-index__tile[data-host-kind] .sc-mini--tiny { background: var(--sc-host); }
.sc-page .sc-group__rows > li[data-host-kind="umd"] .sc-index__who a.sc-link:hover,
.sc-page .sc-group__rows > li[data-host-kind="umd"] .sc-index__who a.sc-link:focus-visible { color: #e21833; }
.sc-page .sc-group__rows > li[data-host-kind="btaa"] .sc-index__who a.sc-link:hover,
.sc-page .sc-group__rows > li[data-host-kind="btaa"] .sc-index__who a.sc-link:focus-visible { color: #005e8d; }
.sc-page .sc-index__pronouns { font-weight: 400; opacity: .75; margin-left: .15em; }
.sc-page .sc-index__tile-link:hover .sc-mini--tiny,
.sc-page .sc-index__tile-link:focus-visible .sc-mini--tiny { transform: translateY(-.1rem); }
.sc-page .sc-index__tile .sc-tip { top: 100%; right: auto; left: 50%; transform: translateX(-50%); }
.sc-page .sc-index__tile .sc-tip__box { text-align: center; }
.sc-page .sc-index__tile--more {
  display: grid;
  place-items: center;
  width: 1.7rem;
  height: 2.05rem;
  font-size: .68rem;
  font-weight: 700;
  color: var(--sc-muted);
  background: var(--sc-line);
  border-radius: 2px;
}
@media (max-width: 560px) {
  .sc-page .sc-index__tiles { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .sc-btn { transition: none; }
}

/* AGENDA AT-A-GLANCE */
.sc-ag-bar {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: .75rem 1.5rem; padding-bottom: 1.25rem;
}
.sc-ag-range { margin: 0; font-size: 1.6rem; font-weight: 800; line-height: 1.15; color: var(--sc-ink);}
.sc-ag-tools { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.75rem; }
.sc-ag-tools .sc-textbtn { font-size: .9rem; }
.sc-ag-tools .sc-iconbtn:disabled { opacity: .55; cursor: progress; }
.sc-ag-status { min-height: 1.4em; margin: 0 0 .5rem; font-size: .85rem; color: var(--sc-muted); text-align: right; }
.sc-ag-status:empty { min-height: 0; margin: 0; }

.sc-ag-ongoing {
  display: grid; grid-template-columns: repeat(var(--ag-days, 5), minmax(0, 1fr)); align-items: start; gap: 0 2.25rem;
  padding: .9rem 0 1.1rem; border-top: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); margin-bottom: 2rem;
}
/* Same size/weight/case as the day-of-week heading */
.sc-ag-ongoing-label { grid-column: 1; font-size: 1.6rem; font-weight: 700; letter-spacing: .02em; line-height: 1.2; color: var(--sc-accent); }
.sc-ag-ongoing .sc-ag-list { grid-column: 2 / -1; }
.sc-ag-grid { display: grid; grid-template-columns: repeat(var(--ag-days, 5), minmax(0, 1fr)); gap: 0 2.25rem; align-items: start; }
.sc-ag-dayhead { margin: 0; padding: 0 0 .7rem; font-family: inherit; }
.sc-ag-dow { display: block; font-size: 1.6rem; font-weight: 700; letter-spacing: .02em; line-height: 1.2; color: var(--sc-accent); }
.sc-ag-date { display: block; margin-top: .15rem; font-size: 1.1rem; font-weight: 700; line-height: 1.15; color: var(--sc-ink); }
.sc-ag-list { position: relative; list-style: none; margin: 0; padding: 0; }
.sc-ag-list::before {                       /* a thin line down the day, through the host dots */
  content: ""; position: absolute; left: calc(.22rem - .5px); top: 0; bottom: .35rem; width: 1px; background: var(--sc-line); z-index: 0;
}
.sc-ag-list:has(.sc-ag-none)::before { display: none; }
.sc-ag-list > li { margin: 0; padding: 0; }
.sc-ag-none { padding-top: 1rem; font-size: .9rem; color: var(--sc-muted); }

.sc-ag-item {
  display: block; padding: 1rem 0 0; margin: 0 0 .1rem;
  color: var(--sc-ink); text-decoration: none; --ag-host: var(--sc-muted);
}
.sc-ag-item[data-host-kind="umd"] { --ag-host: #e21833; }
.sc-ag-item[data-host-kind="btaa"] { --ag-host: #005e8d; }
.sc-ag-meta { display: block; font-size: .8rem; line-height: 1.35; color: var(--sc-muted); }
.sc-ag-meta::before {
  content: ""; display: inline-block; position: relative; z-index: 1; width: .55em; height: .55em; margin-right: .5em; border-radius: 50%;
  background: var(--ag-host); vertical-align: .05em;
  box-shadow: 0 0 0 0 var(--ag-host);
  transition: box-shadow .2s ease;
}
.sc-ag-item:hover .sc-ag-meta::before,
.sc-ag-item:focus-visible .sc-ag-meta::before { box-shadow: 0 0 6px 2px var(--ag-host); }
.sc-ag-host::before { content: " \00b7  "; white-space: pre; }
.sc-ag-title { display: block; margin-top: .15rem; padding-left: .84rem; font-size: 1rem; font-weight: 700; line-height: 1.3; color: var(--sc-ink); }
.sc-ag-item:hover .sc-ag-title, .sc-ag-item:focus-visible .sc-ag-title { color: var(--ag-host); text-decoration: underline; text-underline-offset: .2em; }
.sc-ag-item:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 3px; }

.sc-ag-foot { display: flex; flex-wrap: wrap; gap: .5rem 1.75rem; margin: 2.5rem 0 0; padding-top: 1rem; border-top: 1px solid var(--sc-line); font-size: .85rem; color: var(--sc-muted); }
.sc-ag-key { display: inline-flex; gap: 1.25rem; font-weight: 600; color: var(--sc-ink); }
.sc-ag-keyitem { display: inline-flex; align-items: center; gap: .45rem; }
.sc-ag-dot { width: .6em; height: .6em; border-radius: 50%; background: var(--sc-muted); display: inline-block; }
.sc-ag-keyitem[data-host-kind="umd"] .sc-ag-dot { background: #e21833; }
.sc-ag-keyitem[data-host-kind="btaa"] .sc-ag-dot { background: #005e8d; }
.sc-ag-empty { padding: 3rem 0; text-align: center; color: var(--sc-muted); }

[data-ldw-requires]:not([data-ldw-available]) { display: none !important; }

@media (max-width: 1000px) {
  .sc-ag-grid { grid-template-columns: 1fr; }
  .sc-ag-day { display: grid; grid-template-columns: 12.5rem minmax(0, 1fr); gap: 0 1.5rem; padding: 1.5rem 0; border-bottom: 1px solid var(--sc-line); }
  .sc-ag-ongoing { grid-template-columns: 12.5rem minmax(0, 1fr); gap: 0 1.5rem; }
  .sc-ag-ongoing-label, .sc-ag-ongoing .sc-ag-list { grid-column: auto; }
  .sc-ag-day:first-child { padding-top: 0; }
  .sc-ag-day:last-child { border-bottom: 0; padding-bottom: 0; }
  .sc-ag-dayhead { border-bottom: 0; padding: 0; }
  .sc-ag-item { padding-top: 0; margin-bottom: 1rem; }
  .sc-ag-list > li:last-child .sc-ag-item { margin-bottom: 0; }
  .sc-ag-none { padding-top: 0; }
  .sc-ag-status { text-align: left; }
}
@media (max-width: 640px) {
  .sc-ag-day { grid-template-columns: 1fr; gap: .75rem 0; }
  .sc-ag-dow { font-size: 1.3rem; }
  .sc-ag-date { font-size: .95rem; }
  .sc-ag-ongoing { grid-template-columns: 1fr; gap: .75rem 0; }
  .sc-ag-ongoing-label { font-size: 1.3rem; }  /* matches .sc-ag-dow's own mobile size right above */
  .sc-ag-tools .sc-btn { width: 100%; justify-content: center; }
  .sc-ag-tools { width: 100%; }
}
.sc-ag-link { display: flex; flex-wrap: wrap; gap: .4rem 1.75rem; margin: .25rem 0 1.25rem; }
.sc-ag-link a { display: inline-flex; align-items: center; gap: .5rem; font-size: .95rem; font-weight: 600; color: var(--sc-accent); text-decoration: none; }
.sc-ag-link a:hover, .sc-ag-link a:focus-visible { text-decoration: underline; text-underline-offset: .2em; }
@media (prefers-reduced-motion: reduce) { .sc-ag-item, .sc-ag-meta::before { transition: none; } }

.sc-ag-item--live .sc-ag-meta::before { animation: sc-ag-pulse 1.8s ease-out infinite; }
@keyframes sc-ag-pulse {
  0%   { box-shadow: 0 0 0 0 color-mix(in srgb, var(--ag-host) 60%, transparent); }
  70%  { box-shadow: 0 0 0 .5em color-mix(in srgb, var(--ag-host) 0%, transparent); }
  100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--ag-host) 0%, transparent); }
}
@media (prefers-reduced-motion: reduce) {
  html:not(.ldw-motion-playing) .sc-ag-item--live .sc-ag-meta::before { animation: none; box-shadow: 0 0 6px 2px var(--ag-host); }
}
html.ldw-motion-paused .sc-ag-item--live .sc-ag-meta::before { animation: none; box-shadow: 0 0 6px 2px var(--ag-host); }
.sc-ag-nowtag { font-weight: 700; letter-spacing: .02em; color: var(--ag-host); }
.sc-ag-nowtag::after { content: " \00b7  "; white-space: pre; letter-spacing: 0; font-weight: 400; color: var(--sc-muted); }
.sc-ag-now { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* SESSIONS CATALOG */

@media (min-width: 992px) {
  html .sc-page #filterSidebar { position: sticky; top: 1.5rem; }
}

html .sc-page .filter-group { border-top: 0 !important; padding: .6rem 0 !important; }
html .sc-page .filter-group:first-child { padding-top: .35rem !important; }
html .sc-page .filter-group + .filter-group { border-top: 1px solid var(--sc-line) !important; }

/* accordion summary: no native marker, tighter chevron */
html .sc-page summary.filter-heading { list-style: none; }
html .sc-page summary.filter-heading::-webkit-details-marker { display: none; }
html .sc-page .toggle-icon { font-size: .7rem; transition: transform .15s ease; }
html .sc-page details[open] > summary .toggle-icon { transform: rotate(180deg); }

html .sc-page .filter-group .badge {
  background: var(--sc-accent) !important;
  color: #fff !important;
  border: 0;
  font-size: .68rem;
  font-weight: 700;
  min-width: 1.3rem;
  padding: .1rem .4rem !important;
}

html .sc-page .filter-options-wrapper {
  display: flex !important;
  flex-wrap: wrap;
  gap: .3rem;
  padding: .4rem 0 .1rem !important;
}
html .sc-page #dynamicFiltersContainer .form-check {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 0;
  min-height: 0;
  margin: 0;
}
html .sc-page #dynamicFiltersContainer .form-check { position: relative; }
html .sc-page #dynamicFiltersContainer .form-check-input {
  position: absolute !important;
  left: 50%; top: 50%;
  z-index: 1;
  width: max(100%, 44px) !important;
  height: 44px !important;
  margin: 0 !important;
  transform: translate(-50%, -50%);
  opacity: 0 !important;
  cursor: pointer;
}
html .sc-page #dynamicFiltersContainer .form-check-label {
  font-family: inherit !important;
  display: inline-flex !important;
  align-items: center;
  margin: 0 !important;
  padding: .12rem .6rem !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .02em;
  line-height: 1.6 !important;
  color: var(--sc-muted) !important;
  background: transparent;
  border: 1px solid var(--sc-line);
  border-radius: 999px;
  cursor: pointer;
  white-space: nowrap;
  transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}
html .sc-page #dynamicFiltersContainer .form-check-input:checked + .form-check-label {
  color: #fff !important;
  background: var(--sc-accent);
  border-color: var(--sc-accent);
}
html .sc-page #dynamicFiltersContainer .form-check-input:hover + .form-check-label { border-color: var(--sc-accent); color: var(--sc-accent) !important; }
html .sc-page #dynamicFiltersContainer .form-check-input:checked:hover + .form-check-label { color: #fff !important; }
html .sc-page #dynamicFiltersContainer .form-check-input:focus-visible + .form-check-label {
  outline: 2px solid var(--sc-accent);
  outline-offset: 2px;
}

html .sc-page #filterSidebar .filter-actions-top { border-bottom: 0 !important; }
html .sc-page #filterSidebar .filter-actions-top .sc-label {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: var(--sc-ink) !important;
}

html .sc-page #filterSidebar #searchFilter {
  min-height: 44px;
  font-family: inherit !important;
  padding: .55rem .75rem !important;
  border: 1px solid var(--sc-line) !important;
  border-radius: 6px !important;
  background: var(--sc-bg, #fff);
}
html .sc-page #filterSidebar #searchFilter:focus {
  border-color: var(--sc-accent) !important;
  box-shadow: 0 0 0 2px rgba(226, 24, 51, .15) !important;
}

html .sc-page .event.sc-card .tag-pill.is-keyword-match {
  color: #fff !important;
  background: var(--sc-accent);
  border-color: var(--sc-accent);
}

html .sc-page #dynamicFiltersContainer .ldw-chip {
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  margin: 0;
  padding: .12rem .6rem;
  font: inherit;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.6;
  color: var(--sc-muted);
  background: transparent;
  border: 1px solid var(--sc-line);
  border-radius: 999px;
  cursor: pointer;
  white-space: nowrap;
  transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}
html .sc-page #dynamicFiltersContainer .ldw-chip:hover { border-color: var(--sc-accent); color: var(--sc-accent); }
html .sc-page #dynamicFiltersContainer .ldw-chip[aria-pressed="true"] {
  color: #fff;
  background: var(--sc-accent);
  border-color: var(--sc-accent);
}
html .sc-page #dynamicFiltersContainer .ldw-chip .ldw-chip__n { margin-left: .15rem; font-weight: 500; }
html .sc-page #dynamicFiltersContainer .ldw-chip:focus-visible { outline: 2px solid var(--sc-accent); outline-offset: 2px; }

html .sc-page #ldwQuick { display: flex; margin: 0 0 1.25rem; }
html .sc-page .sc-jump-today-btn .sc-i { width: 1.1rem; height: 1.1rem; }

@keyframes scJumpPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(226, 24, 51, 0); }
  50% { box-shadow: 0 0 0 7px rgba(226, 24, 51, .3); }
}
html .sc-page .event.sc-card.sc-jump-highlight { outline: 2px solid var(--sc-accent); outline-offset: 3px; animation: scJumpPulse 1.1s ease-in-out 2; }

html .sc-page #dynamicFiltersContainer .sc-switch {
  font-family: inherit !important;
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  min-height: 1.5rem;
  cursor: pointer;
  user-select: none;
}
html .sc-page #dynamicFiltersContainer .sc-switch input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
}
html .sc-page #dynamicFiltersContainer .sc-switch__track {
  position: relative;
  flex: none;
  width: 2.35rem;
  height: 1.3rem;
  background: transparent;
  border: 1px solid var(--sc-line);
  border-radius: 999px;
  transition: background-color .15s ease, border-color .15s ease;
}
html .sc-page #dynamicFiltersContainer .sc-switch__thumb {
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(1.3rem - 4px);
  height: calc(1.3rem - 4px);
  background: var(--sc-muted);
  border-radius: 50%;
  transition: transform .2s cubic-bezier(.4, 0, .2, 1), background-color .15s ease;
}
html .sc-page #dynamicFiltersContainer .sc-switch input:checked + .sc-switch__track {
  background: var(--sc-accent);
  border-color: var(--sc-accent);
}
html .sc-page #dynamicFiltersContainer .sc-switch input:checked + .sc-switch__track .sc-switch__thumb {
  transform: translateX(1.05rem);
  background: #fff;
}
html .sc-page #dynamicFiltersContainer .sc-switch input:focus-visible + .sc-switch__track {
  outline: 2px solid var(--sc-accent);
  outline-offset: 2px;
}
html .sc-page #dynamicFiltersContainer .sc-switch__label {
  font-family: inherit !important;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .02em;
  color: var(--sc-muted);
}
html .sc-page #dynamicFiltersContainer .sc-switch input:checked ~ .sc-switch__label { color: var(--sc-ink); }

/* HOST filter */
html .sc-page #dynamicFiltersContainer .form-check-input.filter-type-host[value="BTAA"]:checked + .form-check-label {
  color: #fff !important;
  background: #005e8d;
  border-color: #005e8d;
}
html .sc-page #dynamicFiltersContainer .form-check-input.filter-type-host[value="BTAA"]:hover + .form-check-label {
  border-color: #005e8d;
  color: #005e8d !important;
}
html .sc-page #dynamicFiltersContainer .form-check-input.filter-type-host[value="BTAA"]:checked:hover + .form-check-label {
  color: #fff !important;
}

@media (prefers-reduced-motion: reduce) {
  html .sc-page #dynamicFiltersContainer .form-check-label,
  html .sc-page .toggle-icon,
  html .sc-page details[open] > summary .toggle-icon,
  html .sc-page #dynamicFiltersContainer .ldw-chip,
  html .sc-page .event.sc-card.sc-jump-highlight,
  html .sc-page #dynamicFiltersContainer .sc-switch__track,
  html .sc-page #dynamicFiltersContainer .sc-switch__thumb { transition: none; animation: none; }
}

html .sc-page summary.filter-heading { min-height: 44px; align-items: center; }
