.sge-event-filters {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 24px;
}

.sge-filter-button {
  border:1px solid #d67a17;
  background:#fff;
  color:#d67a17;
  padding:10px 18px;
  cursor:pointer;
  font-weight:700;
}

.sge-filter-button.is-active {
  background:#d67a17;
  color:#fff;
}

.sge-event-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:30px;
}

.sge-event-card {
  background:#efefef;
  position:relative;
  overflow:hidden;
}

.sge-event-card__taxonomy {
  background:#ef7f1a;
  color:#fff;
  font-weight:700;
  text-transform:uppercase;
  text-align:center;
  padding:10px 12px;
  font-size:1.2rem;
}

.sge-event-card__image {
  display:block;
  width:100%;
  height:240px;
  object-fit:cover;
}

.sge-event-card__body {
  padding:22px 20px 28px;
}

.sge-event-card__title,
.sge-event-card__title a {
  margin:0 0 12px;
  color:#ef7f1a;
  font-size:1.8rem;
  line-height:1.2;
  text-transform:uppercase;
  text-decoration:none;
}

.sge-event-card__date {
  font-weight:700;
  margin-bottom:16px;
  color:#ef7f1a;
  text-transform:uppercase;
}

.sge-event-card__excerpt {
  color:#222;
}

.sge-event-card__excerpt p:last-child {
  margin-bottom:0;
}

.sge-lightbox-trigger {
  position:absolute;
  right:18px;
  bottom:18px;
  border:0;
  background:transparent;
  color:#ef7f1a;
  width:34px;
  height:34px;
  padding:0;
  cursor:pointer;
}

.sge-icon-search {
  display:block;
  width:100%;
  height:100%;
  position:relative;
}

.sge-icon-search::before,
.sge-icon-search::after {
  content:"";
  position:absolute;
}

.sge-icon-search::before {
  width:18px;
  height:18px;
  border:3px solid currentColor;
  border-radius:50%;
  left:2px;
  top:2px;
  box-sizing:border-box;
}

.sge-icon-search::after {
  width:12px;
  height:3px;
  background:currentColor;
  transform:rotate(45deg);
  right:1px;
  bottom:4px;
  transform-origin:center;
}

.sge-lightbox {
  position:fixed;
  inset:0;
  z-index:9999;
}

.sge-lightbox__backdrop {
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.8);
}

.sge-lightbox__dialog {
  position:relative;
  max-width:900px;
  width:calc(100% - 40px);
  margin:40px auto;
  background:#fff;
  z-index:2;
  padding:16px;
}

.sge-lightbox__close {
  position:absolute;
  top:8px;
  right:8px;
  border:0;
  background:#fff;
  font-size:34px;
  line-height:1;
  cursor:pointer;
}

.sge-lightbox__content img,
.sge-lightbox__content iframe {
  display:block;
  width:100%;
  max-width:100%;
}

.sge-lightbox__content iframe {
  min-height:80vh;
  border:0;
}

.sge-empty-message {
  margin:16px 0 0;
}

.sge-empty-message[hidden] {
  display:none !important;
}

.sge-single-event__hero img {
  display:block;
  width:100%;
  height:auto;
  margin-bottom:24px;
}

.sge-single-event__meta {
  margin-bottom:24px;
}

.sge-no-scroll {
  overflow:hidden;
}

@media (max-width: 991px) {
  .sge-event-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .sge-event-grid {
    grid-template-columns:1fr;
  }
}
