.o-events {
  margin-top: var(--spacing-lg);
  margin-bottom: var(--spacing-lg);
}
@media screen and (min-width: 990px) {
  .o-events {
    margin-top: var(--spacing-xl);
    margin-bottom: var(--spacing-xl);
  }
}
.o-events__inner {
  --columns: 1;
  display: grid;
  gap: var(--spacing-lg);
  grid-template-columns: repeat(var(--columns), 1fr);
}
@media screen and (min-width: 990px) {
  .o-events__inner {
    --columns: 12;
  }
}
.o-events__intro, .o-events__events {
  grid-column: 1/-1;
}
@media screen and (min-width: 990px) {
  .o-events__intro {
    grid-column: span 4;
  }
  .o-events__events {
    grid-column: span 8;
  }
}

.m-event {
  --image-size: 6rem;
  --event-spacing: var(--spacing-sm);
  --content-spacing: var(--spacing-sm);
  --icon-rotate: 0deg;
  --event-columns: [image-start content-start] 1fr [content-end icon-start] auto
    [icon-end image-end];
  --event-rows: [image-start] auto [image-end content-start icon-start] auto
    [content-end icon-end];
  --content-row: 1 / -1;
  cursor: pointer;
  display: grid;
  align-items: center;
  gap: 0 var(--event-spacing);
  grid-template-columns: var(--event-columns);
  grid-template-rows: var(--event-rows);
  margin-bottom: var(--event-spacing);
  padding-bottom: var(--event-spacing);
  border-bottom: 1px solid var(--color-dark-green-transparent);
}
@media screen and (min-width: 768px) {
  .m-event {
    --event-spacing: var(--spacing-md);
    --image-size: min(15.5rem, 33%);
    --event-columns: [image-start] var(--image-size) [image-end content-start]
      1fr [content-end icon-start] auto [icon-end];
    --event-rows: [image-start icon-start content-start] auto [image-end
      icon-end] auto [content-end];
  }
}
.m-event--open {
  --icon-rotate: 180deg;
}
.m-event img {
  border-radius: var(--border-radius-20);
  object-fit: cover;
  aspect-ratio: 2/1;
  width: 100%;
  display: block;
}
@media screen and (min-width: 768px) {
  .m-event img {
    aspect-ratio: 1/1;
  }
}
.m-event__image {
  grid-area: image;
}
.m-event__content {
  grid-area: content;
}
.m-event__cta {
  padding-top: var(--content-spacing);
}
.m-event__icon {
  padding-block: var(--content-spacing);
  grid-area: icon;
  align-self: start;
}
@media screen and (min-width: 768px) {
  .m-event__icon {
    align-self: unset;
  }
}
.m-event__icon .a-icon__icon {
  --fa-rotate-angle: var(--icon-rotate);
}
.m-event__more {
  padding-top: var(--content-spacing);
  display: none;
  overflow: clip;
}
.m-event__heading {
  padding-top: var(--content-spacing);
}
.m-event__more > * + *, .m-event__heading > * + * {
  margin-top: var(--content-spacing);
}
.m-event__meta + .m-event__title {
  --content-spacing: var(--spacing-xs);
}
.m-event__details {
  background-color: var(--color-sand-dark);
  border-radius: var(--border-radius-20);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-lg);
  padding: var(--spacing-lg);
}
.m-event p {
  margin: 0;
}
