:root {
  --sbr-ink: #0d1220;
  --sbr-paper: #f6f7f2;
  --sbr-white: #ffffff;
  --sbr-accent: #dfff2f;
  --sbr-muted: #667085;
  --sbr-border: rgba(13, 18, 32, 0.14);
  --sbr-radius: 24px;
}

.sbr-page {
  background: var(--sbr-paper);
  color: var(--sbr-ink);
  overflow: hidden;
}

.sbr-page h1,
.sbr-page h2,
.sbr-page h3 {
  color: var(--sbr-ink);
  letter-spacing: -0.035em;
}

.sbr-page h2 {
  font-size: clamp(2.1rem, 5vw, 4.5rem);
  line-height: 0.98;
  margin: 0 0 1.25rem;
}

.sbr-hero {
  background:
    radial-gradient(circle at 80% 15%, rgba(223,255,47,.20), transparent 24%),
    linear-gradient(135deg, #0d1220 0%, #171d2f 100%);
  color: var(--sbr-white);
  min-height: min(760px, 82vh);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(5rem, 10vw, 9rem) 1.5rem;
}

.sbr-hero .sbr-title,
.sbr-hero .sbr-tagline,
.sbr-hero .sbr-eyebrow {
  color: var(--sbr-white);
}

.sbr-title {
  font-size: clamp(3.6rem, 10vw, 8.5rem);
  line-height: .88;
  max-width: 1000px;
  margin: 0 auto 1.5rem;
}

.sbr-eyebrow,
.sbr-kicker,
.sbr-event-meta {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.sbr-eyebrow,
.sbr-kicker {
  color: #7c891f;
}

.sbr-hero .sbr-eyebrow {
  color: var(--sbr-accent);
}

.sbr-tagline {
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  margin-bottom: 2rem;
}

.sbr-section {
  padding: clamp(4rem, 8vw, 8rem) 1.5rem;
}

.sbr-intro p {
  max-width: 760px;
  font-size: clamp(1.15rem, 2vw, 1.45rem);
  line-height: 1.6;
}

.sbr-card-grid,
.sbr-event-grid {
  gap: 1.25rem;
  margin-top: 2.25rem;
}

.sbr-card,
.sbr-event-card,
.sbr-notice {
  background: var(--sbr-white);
  border: 1px solid var(--sbr-border);
  border-radius: var(--sbr-radius);
  box-shadow: 0 16px 45px rgba(13, 18, 32, 0.06);
}

.sbr-card,
.sbr-event-card {
  padding: clamp(1.5rem, 3vw, 2.25rem);
}

.sbr-card h3,
.sbr-event-card h3 {
  font-size: clamp(1.55rem, 2.5vw, 2.2rem);
  margin-top: 0;
}

.sbr-card-time {
  font-weight: 800;
  margin: .5rem 0 1rem;
}

.sbr-events-wrap {
  background: #eceee7;
}

.sbr-event-card {
  position: relative;
}

.sbr-event-meta {
  color: #747d2d;
  margin-bottom: 1rem;
}

.sbr-notice {
  padding: clamp(2rem, 5vw, 4rem);
  background: var(--sbr-accent);
  box-shadow: none;
  border-color: rgba(13,18,32,.18);
}

.sbr-cta {
  background: var(--sbr-ink);
  color: var(--sbr-white);
  padding: clamp(4rem, 8vw, 7rem) 1.5rem;
}

.sbr-cta h2,
.sbr-cta p {
  color: var(--sbr-white);
}

.sbr-page .wp-block-button__link {
  border-radius: 999px;
  padding: .95rem 1.35rem;
  font-weight: 800;
  transition: transform .18s ease, box-shadow .18s ease;
}

.sbr-page .wp-block-button__link:hover {
  transform: translateY(-2px);
}

.sbr-button-primary .wp-block-button__link,
.sbr-inline-button .wp-block-button__link {
  background: var(--sbr-accent);
  color: var(--sbr-ink);
}

.sbr-button-secondary .wp-block-button__link {
  color: inherit;
  border-color: currentColor;
}

.sbr-inline-button .wp-block-button__link {
  padding: .7rem 1rem;
  font-size: .92rem;
}

@media (max-width: 781px) {
  .sbr-hero {
    min-height: 620px;
  }
  .sbr-card-grid,
  .sbr-event-grid {
    gap: 1rem;
  }
}
