/* Event cards: shared by the calendar list and homepage. */
.ob-calendar-page .event-list,.ob-events-home .event-list{display:grid;gap:18px;border:0;margin-top:0}
.ob-calendar-page .ob-event-card.event-row,.ob-events-home .ob-event-card.event-row{display:grid;grid-template-columns:124px minmax(0,1fr);gap:16px;padding:0;align-items:stretch;border:0;margin:0;min-width:0}
.ob-calendar-page .ob-event-date.event-date,.ob-events-home .ob-event-date.event-date{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:start;gap:10px;width:124px;height:124px;min-width:0;margin:0;padding:14px 6px;text-align:center;border:0;border-radius:8px;background:#eee4c9;color:#234b35;box-shadow:inset 0 0 0 1px #dfd1ad}
.ob-calendar-page .ob-event-card .ob-event-background,.ob-events-home .ob-event-card .ob-event-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;object-fit:cover;object-position:center;z-index:-2}
.ob-calendar-page .ob-event-date.has-photo:after,.ob-events-home .ob-event-date.has-photo:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.58);z-index:-1}
.ob-calendar-page .ob-event-date.event-date strong,.ob-events-home .ob-event-date.event-date strong{display:block;position:relative;font-family:OrkiestraRoboto,Roboto,Arial,sans-serif;font-size:48px;font-weight:700;line-height:1;letter-spacing:-.025em;color:#234b35}
.ob-calendar-page .ob-event-date.event-date span,.ob-events-home .ob-event-date.event-date span{display:block;position:relative;font-size:12px;font-weight:500;line-height:1.2;letter-spacing:.06em;text-transform:uppercase;margin:0;color:#725d2d}
.ob-calendar-page .ob-event-panel,.ob-events-home .ob-event-panel{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:24px;min-width:0;min-height:124px;padding:24px 26px;border-radius:8px;background:#234b35;color:#fff}
.ob-calendar-page .ob-event-panel.has-photo:after,.ob-events-home .ob-event-panel.has-photo:after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,.58)}
.ob-calendar-page .ob-event-card .event-info,.ob-events-home .ob-event-card .event-info{position:relative;flex:1;min-width:0}
.ob-calendar-page .ob-event-card .event-meta,.ob-events-home .ob-event-card .event-meta{gap:8px 18px;line-height:1.5;color:#fff;font-size:11px;font-weight:500;letter-spacing:.06em}
.ob-calendar-page .ob-event-card .event-info h3,.ob-events-home .ob-event-card .event-info h3{margin:8px 0 0;color:#fff;font-size:24px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.ob-calendar-page .ob-event-card .event-info h3 a,.ob-events-home .ob-event-card .event-info h3 a{color:#fff;text-decoration:none}
.ob-calendar-page .ob-event-card .event-info h3 a:hover,.ob-events-home .ob-event-card .event-info h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.ob-calendar-page .ob-event-card .event-info p,.ob-events-home .ob-event-card .event-info p{color:#fff;font-size:13px;line-height:1.6;margin:9px 0 0}
.ob-calendar-page .ob-event-card .event-arrow,.ob-events-home .ob-event-card .event-arrow{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #ffffff66;border-radius:50%;color:#fff;font-size:25px;line-height:1;text-decoration:none;background:#ffffff0d}
.ob-calendar-page .ob-event-card .event-arrow:hover,.ob-events-home .ob-event-card .event-arrow:hover{background:#ffffff26}
.ob-calendar-page .ob-event-card .status-badge,.ob-events-home .ob-event-card .status-badge{padding:3px 8px;border:1px solid #ffffff80;border-radius:3px;color:#fff;font-weight:700;background:#1b3c2c}
.ob-calendar-page .ob-event-card.is-cancelled .status-badge,.ob-events-home .ob-event-card.is-cancelled .status-badge{background:#7b2525}
.ob-calendar-page .ob-event-card a:focus-visible,.ob-events-home .ob-event-card a:focus-visible{outline:3px solid #fff;outline-offset:4px}

.ob-calendar-page .ob-event-panel .ob-event-background,.ob-events-home .ob-event-panel .ob-event-background{left:0;right:0;width:100%;max-width:none;height:100%;object-fit:cover;object-position:center top}
.ob-calendar-page .ob-event-date.has-photo strong,.ob-events-home .ob-event-date.has-photo strong,.ob-calendar-page .ob-event-date.has-photo span,.ob-events-home .ob-event-date.has-photo span{color:#fff}
.ob-calendar-page .ob-events-list-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}
.ob-calendar-page .ob-events-list-heading .eyebrow{margin:0}
.ob-calendar-page .ob-events-list-heading .text-link{flex-shrink:0}
.ob-calendar-page .ob-event-date.has-color,.ob-events-home .ob-event-date.has-color{background:var(--ob-date-bg,#eee4c9);box-shadow:none}
.ob-calendar-page .ob-event-date.has-color strong,.ob-events-home .ob-event-date.has-color strong,.ob-calendar-page .ob-event-date.has-color span,.ob-events-home .ob-event-date.has-color span{color:var(--ob-date-text,#000)}
@media(max-width:767px){
 .ob-calendar-page .ob-event-card.event-row,.ob-events-home .ob-event-card.event-row{display:grid;grid-template-columns:minmax(0,1fr);gap:0;background:#234b35;border-radius:10px;overflow:hidden;isolation:isolate;position:relative}
 .ob-calendar-page .ob-event-panel,.ob-events-home .ob-event-panel{display:contents}
 .ob-calendar-page .ob-event-panel.has-photo:after,.ob-events-home .ob-event-panel.has-photo:after,.ob-calendar-page .ob-event-date.has-photo:after,.ob-events-home .ob-event-date.has-photo:after{content:none}
 .ob-calendar-page .ob-event-card .ob-event-panel > .ob-event-background,.ob-events-home .ob-event-card .ob-event-panel > .ob-event-background{display:none}
 .ob-calendar-page .ob-event-date.event-date,.ob-events-home .ob-event-date.event-date{grid-column:1;grid-row:2;justify-content:flex-start;flex-direction:row;align-items:baseline;align-self:auto;gap:8px;width:auto;height:auto;padding:20px 20px 0;border:0;border-radius:0;box-shadow:none;background:none;text-align:left;overflow:visible;isolation:auto}
 .ob-calendar-page .ob-event-date .ob-event-background,.ob-events-home .ob-event-date .ob-event-background{display:none}
 .ob-calendar-page .ob-event-date.event-date strong,.ob-events-home .ob-event-date.event-date strong{font-size:27px;color:#ecd49e}
 .ob-calendar-page .ob-event-date.event-date span,.ob-events-home .ob-event-date.event-date span{font-size:12px;color:#ecd49e;letter-spacing:.06em}
 .ob-calendar-page .ob-event-card .event-info,.ob-events-home .ob-event-card .event-info{grid-column:1;grid-row:3;padding:14px 20px 0;min-width:0}
 .ob-calendar-page .ob-event-card .event-info h3,.ob-events-home .ob-event-card .event-info h3{font-size:21px;line-height:1.3;margin-top:8px}
 .ob-calendar-page .ob-event-card .event-meta,.ob-events-home .ob-event-card .event-meta{font-size:10px;gap:6px 12px}
 .ob-calendar-page .ob-event-card .event-arrow,.ob-events-home .ob-event-card .event-arrow{grid-column:1;grid-row:4;justify-self:end;width:40px;height:40px;font-size:24px;margin:16px 20px 20px}
 .ob-calendar-page .ob-events-list-heading{align-items:flex-start;flex-direction:column;gap:12px}
}

@media(max-width:767px){
 .ob-calendar-page .ob-event-date.event-date.has-color,.ob-events-home .ob-event-date.event-date.has-color{background:var(--ob-date-bg,#eee4c9);padding:16px 20px}
 .ob-calendar-page .ob-event-date.event-date.has-color strong,.ob-events-home .ob-event-date.event-date.has-color strong,.ob-calendar-page .ob-event-date.event-date.has-color span,.ob-events-home .ob-event-date.event-date.has-color span{color:var(--ob-date-text,#000)}
 .ob-calendar-page .ob-event-date.event-date.has-photo,.ob-events-home .ob-event-date.event-date.has-photo{position:static;isolation:auto;overflow:visible;padding:20px 20px 0;background:none;z-index:auto}
 .ob-calendar-page .ob-event-date.event-date.has-photo > .ob-event-background,.ob-events-home .ob-event-date.event-date.has-photo > .ob-event-background{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center;z-index:-2}
 .ob-calendar-page .ob-event-date.event-date.has-photo:after,.ob-events-home .ob-event-date.event-date.has-photo:after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,.58)}
 .ob-calendar-page .ob-event-date.event-date.has-photo strong,.ob-events-home .ob-event-date.event-date.has-photo strong,.ob-calendar-page .ob-event-date.event-date.has-photo span,.ob-events-home .ob-event-date.event-date.has-photo span{color:#fff}
}
