.home-events{margin-bottom:50px;scroll-margin-top:110px}.he-heading-note{font-size:12px;color:#8490a0}.he-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:30px;align-items:start}.he-agenda{border:1px solid #e4e9ef;border-radius:10px;padding:26px;background:#fff}.he-agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.he-eyebrow{font-size:9px;letter-spacing:1.8px;color:#7791b1;font-weight:800}.he-agenda-heading h3{font-size:25px;color:#253659;margin:6px 0 0}.he-agenda-heading label{margin:0}.he-agenda-heading select{max-width:180px;border:1px solid #e1e7ef;border-radius:5px;background:white;color:#62758e;padding:9px;font-size:12px}.he-selection{font-size:11px;color:#8897a9;margin:13px 0 20px}.he-event-list{max-height:475px;overflow:auto;overscroll-behavior:contain}.he-event{display:flex;gap:22px;padding:22px 0;border-top:1px solid #edf0f4}.he-event[hidden],.he-empty[hidden]{display:none}.he-poster{width:125px;height:160px;object-fit:cover;border-radius:6px;flex:0 0 auto}.he-date-tile{width:72px;height:82px;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:7px;background:#eef3fb;color:#2e4870}.he-date-tile strong{font-size:28px;line-height:1.1}.he-date-tile span{font-size:11px;text-transform:uppercase;margin-top:5px}.he-event-copy{min-width:0}.he-category{display:inline-block;font-size:9px;font-weight:800;color:#5d7fae;text-transform:uppercase;letter-spacing:.7px;margin-bottom:8px}.he-event h4{font-size:20px;line-height:1.4;color:#253659;margin:0 0 11px;overflow-wrap:anywhere}.he-meta{font-size:11px;color:#7c8da4;margin:6px 0;line-height:1.7}.he-meta i{margin-inline-end:8px;color:#7d99be}.he-description{font-size:12px;line-height:1.8;color:#7b899c;margin:12px 0;overflow-wrap:anywhere;max-height:140px;overflow:auto}.he-event-link{font-size:11px;font-weight:700;color:#426da9}.he-event-link i{margin-left:6px;font-size:9px}.he-calendar{border-radius:10px;padding:25px;background:#223653;color:white;box-shadow:0 7px 22px #22365310;direction:ltr}.he-month-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px}.he-month-nav strong{font-size:17px}.he-month-nav a{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:5px;background:#ffffff0d;color:#d3e0f2;font-size:11px}.he-month-nav a:hover{background:#ffffff25}.he-weekdays,.he-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.he-weekdays{font-size:10px;color:#a4b6cf;margin-bottom:14px}.he-days button{position:relative;height:38px;border:1px solid transparent;border-radius:6px;color:#dce5f1;background:transparent;font:500 12px Arial,sans-serif}.he-days button:hover{background:#ffffff16}.he-days button[aria-pressed=true]{background:#5685d8;color:white}.he-days .he-today{border-color:#7d9cc8}.he-has-event::after{content:"";position:absolute;bottom:3px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:#9dbdff}.he-calendar-legend{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #ffffff20;margin-top:20px;padding-top:18px;font-size:9px;color:#afc0d7}.he-calendar-legend i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#9dbdff;margin-right:6px}.he-calendar-legend button{border:0;background:transparent;color:#c8d9f2;padding:0;text-decoration:underline;font-size:10px}.he-empty{padding:55px 20px;text-align:center;color:#8393a9}.he-empty>i{font-size:32px;color:#9eb2cd;margin-bottom:18px}.he-empty h4{font-size:20px;color:#3d5373;margin:0 0 10px}.he-empty p{font-size:12px;line-height:1.8;max-width:340px;margin:auto}.home-events :focus-visible{outline:2px solid #78a2e8;outline-offset:3px}@media(max-width:991px){.he-layout{grid-template-columns:minmax(0,1fr) 320px;gap:20px}.he-calendar,.he-agenda{padding:20px}.he-agenda-heading{align-items:start;flex-direction:column}.he-poster{width:85px;height:120px}.he-event{gap:15px}.he-event h4{font-size:18px}}@media(max-width:767px){.he-layout{grid-template-columns:1fr}.he-calendar{grid-row:1}.he-heading-note{display:none}.he-agenda-heading{flex-direction:row;align-items:center}.he-days button{height:42px}.he-calendar-legend{font-size:10px}.he-event h4{font-size:19px}}
.he-calendar { background:#fff; color:#253659; border:1px solid #e4e9ef; box-shadow:0 5px 18px rgba(29,45,77,.06); }
.he-month-nav a { background:#f0f4fa; color:#617da3; }
.he-month-nav a:hover { background:#e5edf8; }
.he-weekdays { color:#788ba4; }
.he-days button { color:#425873; }
.he-days button:hover { background:#edf3fc; }
.he-days button[aria-pressed=true] { background:#5685d8; color:#fff; }
.he-days .he-today { border-color:#8caad3; }
.he-has-event::after,.he-calendar-legend i { background:#5685d8; }
.he-days button[aria-pressed=true]::after { background:#fff; }
.he-calendar-legend { border-top-color:#e6ebf2; color:#7b8da5; }
.he-calendar-legend button { color:#4d73a8; }
.he-scroll-controls { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin:-4px 0 14px; color:#8192a9; font-size:10px; }
.he-scroll-controls[hidden] { display:none; }
.he-scroll-controls button { display:inline-flex; align-items:center; justify-content:center; width:29px; height:29px; border:1px solid #e1e7ef; border-radius:5px; background:#f5f8fc; color:#5679aa; font-size:10px; }
.he-scroll-controls button:hover:not(:disabled) { background:#e8f0fc; }
.he-scroll-controls button:disabled { opacity:.35; cursor:default; }
.he-event-list.he-multiple-events { display:flex; gap:18px; overflow-x:auto; overflow-y:hidden; max-height:none; padding-bottom:14px; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b4c6e0 #f2f5fa; }
.he-multiple-events .he-event { flex:0 0 calc(100% - 22px); min-width:0; scroll-snap-align:start; align-self:stretch; }
.he-layout { align-items:start; }
.he-agenda { min-width:0; }
.he-calendar { display:flex; flex-direction:column; }
.he-days { align-content:start; }
.he-event-list[hidden] { display:none; }
.he-empty { padding:16px 0; text-align:start; }
.he-empty p { max-width:none; margin:0; }
