/* Events: a legible calendar, compact agenda and consistent RSVP controls. */
#section-events{font:16px/1.6 var(--font-body);color:var(--dark)}
#section-events>.page-header{height:auto;min-height:0;max-width:1256px;margin:auto;padding:44px 44px 12px;border:0;background:none}
#section-events>.page-header h2{font:500 44px/1.15 var(--font-heading);letter-spacing:-.015em;text-transform:none;color:var(--dark)}
#section-events .breadcrumb{font:500 12px/1.5 var(--font-body);letter-spacing:.1em;color:var(--resident-soft);margin-bottom:10px}
#section-events #eventsSubtitle{font:400 15px/1.6 var(--font-body)!important;color:var(--resident-soft)!important;margin-top:12px!important}
#section-events>.page-content{max-width:1256px;margin:auto;padding:24px 44px 100px}
#section-events .events-page-layout{grid-template-columns:minmax(310px,.8fr) minmax(0,1.2fr);gap:24px}
#section-events .events-calendar-panel{padding:22px;background:var(--resident-paper);border:1px solid var(--resident-line);border-radius:12px}
#section-events .events-agenda-panel{padding:0;border:0;background:none}
#section-events .events-calendar-toolbar{flex-wrap:wrap;gap:14px}
#section-events .events-calendar-heading,#section-events .events-agenda-heading{font:500 26px/1.3 var(--font-heading);letter-spacing:0;text-transform:none}
#section-events .events-agenda-summary{font:400 13px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--resident-soft)}
#section-events .events-calendar-control{min-width:44px;min-height:44px;padding:10px 12px;border:1px solid var(--resident-line);border-radius:8px;font:500 13px/1.5 var(--font-body);letter-spacing:0;text-transform:none;background:var(--resident-paper);color:var(--dark)}
#section-events .events-calendar-grid{border:0;background:none;gap:2px;overflow:visible}
#section-events .events-calendar-column{font:500 11px/1.5 var(--font-body);letter-spacing:0;text-transform:none;background:none;color:var(--resident-soft);padding:8px 0}
#section-events .events-calendar-day,#section-events .events-calendar-empty-cell{min-height:50px;padding:8px 0;border-radius:8px;background:none;font:500 16px/1.5 var(--font-body);letter-spacing:0}
#section-events .events-calendar-day.has-events{background:#eee8dc;color:var(--dark)}
#section-events .events-calendar-day.is-today{border:1px solid #9e8c6b}
#section-events .events-calendar-day:disabled{color:#aaa69d;cursor:default}
#section-events .events-calendar-day-number{font:500 16px/1.5 var(--font-body);letter-spacing:0}
#section-events .events-calendar-legend{font:400 12px/1.5 var(--font-body);letter-spacing:0;text-transform:none;margin-top:16px;color:var(--resident-soft)}
#section-events .events-list{gap:16px}
#section-events .events-list-card{grid-template-columns:56px minmax(0,1fr);padding:22px;border:1px solid var(--resident-line);border-radius:12px;background:var(--resident-paper);column-gap:16px}
#section-events .events-list-date{border-radius:8px;background:#eee8dc;min-width:0;padding:10px 4px}
#section-events .events-list-month{font:500 12px/1.5 var(--font-body);letter-spacing:.02em;color:var(--resident-soft)}
#section-events .events-list-day{font:500 30px/1.1 var(--font-heading);color:var(--dark)}
#section-events .events-list-weekday{font:400 10px/1.5 var(--font-body);color:var(--resident-soft)}
#section-events .events-list-title{font:600 17px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--dark)}
#section-events .events-list-meta .caption{font:400 13px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--resident-soft)}
#section-events .events-list-description{font:400 14px/1.65 var(--font-body);color:var(--resident-soft);margin-top:8px}
#section-events .events-list-actions{gap:10px;grid-column:1/-1;margin-top:18px}
#section-events .events-list-attendance,#section-events .events-list-availability{font:500 12px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--resident-soft)}
#section-events .events-list-availability.is-going{color:#3e5b3d}
#section-events .events-list-availability.is-full{color:#81483e}
#section-events .events-list-action{min-height:44px;padding:10px 14px;border-radius:8px;font:500 13px/1.5 var(--font-body);letter-spacing:0;text-transform:none}
#section-events .events-list-action.is-details{border-color:var(--resident-line);color:var(--dark)}
#section-events .events-list-action.is-rsvp{background:var(--dark);color:var(--ivory);border-color:var(--dark)}
#section-events .events-list-action.is-rsvp.is-going{background:none;border-color:#c3a8a0;color:#81483e}
#section-events .events-list-action:disabled{opacity:.5;cursor:default}
#section-events .events-empty-state{border:1px solid var(--resident-line);border-radius:12px;background:var(--resident-paper);padding:24px}
#section-events .events-empty-state h3{font:500 24px/1.3 var(--font-heading);letter-spacing:0;text-transform:none}
#section-events .events-empty-state p{font-size:14px;color:var(--resident-soft)}
#eventDrawerOverlay .event-drawer{width:min(650px,100%);background:var(--resident-paper);border-radius:16px 0 0 16px}
#eventDrawerOverlay .event-drawer-header{padding:24px;border-color:var(--resident-line)}
#eventDrawerOverlay .event-drawer-context{font:500 14px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--resident-soft)}
#eventDrawerOverlay .event-drawer-body{padding:24px}
#eventDrawerOverlay .event-detail-card{background:none;padding:0}
#eventDrawerOverlay .event-detail-title,#eventDrawerOverlay .event-drawer-day-heading{font:500 30px/1.3 var(--font-heading);letter-spacing:0;text-transform:none;color:var(--dark)}
#eventDrawerOverlay .event-detail-date{border-radius:8px;background:#eee8dc;border:0}
#eventDrawerOverlay .event-detail-day{font:500 32px/1.1 var(--font-heading);color:var(--dark)}
#eventDrawerOverlay .event-detail-summary,#eventDrawerOverlay .event-detail-meta{font:400 14px/1.6 var(--font-body);letter-spacing:0;text-transform:none;color:var(--resident-soft)}
#eventDrawerOverlay .event-detail-description{font:400 15px/1.75 var(--font-body);color:var(--graphite)}
#eventDrawerOverlay .event-detail-section h4{font:500 23px/1.3 var(--font-heading);letter-spacing:0;text-transform:none}
#eventDrawerOverlay :is(.event-detail-back,.event-detail-rsvp,.event-drawer-day-action,.btn){min-height:44px;padding:10px 14px;border-radius:8px;border:1px solid var(--resident-line);font:500 14px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--dark);background:none}
#eventDrawerOverlay .event-detail-rsvp{background:var(--dark);border-color:var(--dark);color:var(--ivory)}
#eventDrawerOverlay .event-detail-rsvp.is-going{background:none;border-color:#c3a8a0;color:#81483e}
#eventDrawerOverlay .event-detail-rsvp:disabled{opacity:.5;cursor:default}
#eventDrawerOverlay .event-drawer-day-card{border-radius:12px;border-color:var(--resident-line);padding:20px;background:var(--resident-paper)}
#eventDrawerOverlay .event-drawer-day-title{font:600 17px/1.5 var(--font-body);letter-spacing:0;text-transform:none}
#eventDrawerOverlay .event-drawer-day-summary,#eventDrawerOverlay .event-drawer-day-meta{font:400 14px/1.6 var(--font-body);color:var(--resident-soft)}
#section-events :is(button,summary):focus-visible,#eventDrawerOverlay button:focus-visible{outline:2px solid #7d6943;outline-offset:3px}
@media(max-width:1150px){#section-events .events-page-layout{grid-template-columns:minmax(0,1fr)}#section-events .events-calendar-panel{max-width:520px;width:100%;margin-inline:auto}}
@media(max-width:1000px){#section-events>.page-header{padding:32px 26px 10px}#section-events>.page-content{padding:20px 26px 100px}}
@media(max-width:600px){#section-events>.page-header{padding:30px 20px 8px}#section-events>.page-header h2{font-size:38px}#section-events>.page-content{padding:22px 20px 110px}#section-events .events-calendar-panel{padding:18px 12px}#section-events .events-calendar-grid{gap:0}#section-events .events-list-card{padding:20px 16px}#section-events .events-list-action.is-details{margin-left:0}#section-events .events-list-actions{gap:8px}#eventDrawerOverlay .event-drawer{border-radius:0}#eventDrawerOverlay .event-drawer-body{padding:20px}#eventDrawerOverlay .event-detail-header{gap:14px;flex-direction:column}}
#section-events .events-calendar-day{display:flex;align-items:center;justify-content:center;flex-direction:column}
#eventDrawerOverlay .events-list-availability{font:500 13px/1.5 var(--font-body);letter-spacing:0;text-transform:none;color:var(--resident-soft)}
#eventDrawerOverlay .events-list-availability.is-going{color:#3e5b3d}
#eventDrawerOverlay .events-list-availability.is-full{color:#81483e}
