.wb-today-slot {
  display: none !important;
  margin-block: clamp(1.25rem, 2.5vw, 2rem) !important;
}

.wb-today-slot.wb-today-slot--ready {
  display: block !important;
}

.wb-today[hidden] {
  display: none !important;
}

.wb-today {
  --wb-today-accent: #177d70;
  --wb-today-accent-soft: #e9f1ef;
  --wb-today-border: #dce9e5;
  --wb-today-text: #172522;
  color: var(--wb-today-text);
  container-type: inline-size;
}

.wb-today *,
.wb-today *::before,
.wb-today *::after {
  box-sizing: border-box;
}

.wb-today__card {
  background:
    radial-gradient(circle at 8% 0%, rgba(75, 193, 168, .13), transparent 32%),
    radial-gradient(circle at 100% 4%, rgba(102, 132, 236, .09), transparent 30%),
    linear-gradient(145deg, #f8fcfb 0%, #f8faff 100%);
  border: 1px solid #dfeae7;
  border-radius: 1.5rem;
  box-shadow: 0 16px 38px rgba(36, 67, 63, .07);
  overflow: hidden;
  padding: clamp(.75rem, 1.5vw, 1rem);
}

.wb-today__media {
  aspect-ratio: 3 / 2;
  background: var(--wb-today-accent-soft);
  border: 1px solid var(--wb-today-border);
  border-radius: 1rem;
  box-shadow: 0 5px 16px rgba(37, 70, 65, .045);
  display: block;
  overflow: hidden;
}

.wb-today__image {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.wb-today__body {
  padding: .9rem .25rem .25rem;
}

.wb-today__date {
  color: var(--wb-today-accent);
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .055em;
  line-height: 1.25;
  margin: 0 0 .55rem;
  text-transform: uppercase;
}

.wb-today__events {
  display: grid;
  gap: .65rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.wb-today__event {
  margin: 0;
  padding: 0;
}

.wb-today__event-link,
.wb-today__event-title {
  color: var(--wb-today-text);
  font-size: 1rem;
  font-weight: 720;
  letter-spacing: -.018em;
  line-height: 1.3;
}

.wb-today__event-link {
  text-decoration: none;
}

.wb-today__event-link:hover,
.wb-today__event-link:focus-visible {
  color: var(--wb-today-accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.wb-today__event-link:focus-visible,
.wb-today__all:focus-visible {
  border-radius: .25rem;
  outline: 3px solid rgba(39, 168, 145, .28);
  outline-offset: 3px;
}

.wb-today__all {
  color: var(--wb-today-accent);
  display: inline-flex;
  font-size: .9rem;
  font-weight: 720;
  margin-top: .9rem;
  text-decoration: none;
}

.wb-today__all::after {
  content: "→";
  margin-left: .4em;
}

.wb-today__all:hover,
.wb-today__all:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}
