/* ===== Events ===== */
.nwh-event{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:16px 0;border-top:1px solid #E3E9E7}
.nwh-event:first-child{border-top:0}
.nwh-event-date{font-family:var(--wp--preset--font-family--archivo-black);font-size:18px;color:#0B4F6C;line-height:1.3}
.nwh-event-meta{display:flex;gap:10px;align-items:center;margin-bottom:4px}
.nwh-event-held{font-size:16px;font-weight:700;color:#2F7A8F}
.nwh-event-title{font-size:21px;font-weight:700;line-height:1.3}
.nwh-event-where{font-size:18px;color:#3A4A46}
.nwh-event-src{font-size:18px;font-weight:700;display:inline-block;margin-top:4px}
.nwh-event-sub{font-size:16px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#56655F;margin:4px 0 0}
.nwh-body-side .nwh-event{grid-template-columns:1fr;gap:4px;padding:12px 0}
.nwh-body-side .nwh-event-date{font-size:16px}
.nwh-body-side .nwh-event-title{font-size:19px}
@media (max-width:640px){.nwh-event{grid-template-columns:1fr;gap:4px}}

/* ===== Calendar ===== */
.nwh-cal{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed}
.nwh-cal th{font-size:15px;color:#56655F;font-weight:700;padding:4px 0;text-align:center}
.nwh-cal td{background:#fff;border:1px solid #E3E9E7;border-radius:8px;vertical-align:top;height:92px;padding:5px 6px;font-size:16px}
.nwh-cal td.nwh-cal-empty{background:transparent;border:0}
.nwh-cal-n{font-weight:700;font-size:17px;color:#0D1B24;text-decoration:none}
.nwh-cal-day.is-today{border:2px solid #0B4F6C}
.nwh-cal-day.has-ev{background:#FFF1EA;border-color:#FF5A36}
.nwh-cal-day.has-ev.is-past{background:#EEF3F1;border-color:#9FB3AC}
.nwh-cal-chip{display:block;margin-top:3px;padding:2px 6px;border-radius:6px;background:#FF5A36;color:#0D1B24!important;font-size:14px;font-weight:700;text-decoration:none!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.is-past .nwh-cal-chip{background:#9FB3AC}
.nwh-cal-more{font-size:14px;font-weight:700;color:#56655F}
.nwh-cal-mini td{height:auto;padding:2px;text-align:center;font-size:15px;border-radius:6px}
.nwh-cal-mini th{font-size:13px}
.nwh-cal-mini .nwh-cal-n{font-size:15px;font-weight:600}
.nwh-cal-mini .has-ev .nwh-cal-n{color:#0D1B24;font-weight:800;border-bottom:3px solid #FF5A36}
.nwh-cal-head{font-weight:800;font-size:18px;margin:2px 0 6px}
.nwh-cal-head a{text-decoration:none}
.nwh-cal-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}
.nwh-cal-title{margin:0;font-size:30px}
.nwh-cal-arrow{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid #0D1B24;border-radius:10px;font-size:30px;line-height:1;text-decoration:none;color:#0D1B24;background:#fff}
.nwh-cal-months{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.nwh-cal-month{padding:8px 14px;border:2px solid #0D1B24;border-radius:999px;font-size:17px;font-weight:700;text-decoration:none;color:#0D1B24;background:#fff}
.nwh-cal-month span{display:inline-block;min-width:22px;padding:0 6px;margin-left:4px;border-radius:999px;background:#FF5A36;color:#0D1B24;font-size:15px;text-align:center}
.nwh-cal-month.is-past span{background:#9FB3AC}
.nwh-cal-month.is-on{background:#0B4F6C;border-color:#0B4F6C;color:#fff}
.nwh-evl{display:grid;grid-template-columns:92px 1fr auto;gap:10px;align-items:start;padding:9px 0;border-top:1px solid #E3E9E7}
.nwh-evl:first-of-type{border-top:0}
.nwh-evl-date{font-weight:800;font-size:16px;color:#0B4F6C;line-height:1.3}
.nwh-evl-main{display:flex;flex-direction:column;min-width:0}
.nwh-evl-title{font-weight:700;font-size:17px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nwh-evl-where{font-size:15px;color:#56655F}
.nwh-evl-link{font-size:22px;font-weight:700;text-decoration:none;padding:0 4px}
.nwh-evl.is-past .nwh-evl-date{color:#56655F}
.nwh-evl-note{grid-column:2 / 4;font-size:17px;line-height:1.5;color:#0D1B24}
.nwh-cal-list .nwh-evl-title{white-space:normal;font-size:20px}
.nwh-cal-list .nwh-evl-date{font-size:18px}
.nwh-cal-list .nwh-evl{grid-template-columns:130px 1fr auto;padding:14px 0}
.nwh-cal-none{font-size:19px;margin:18px 0}
.nwh-body-side .nwh-cal-mini{margin-bottom:8px}
@media (max-width:640px){
 .nwh-cal td{height:54px;padding:3px}
 .nwh-cal-chip{display:none}
 .nwh-cal-title{font-size:24px}
 .nwh-cal-list .nwh-evl{grid-template-columns:1fr auto}
 .nwh-cal-list .nwh-evl-date{grid-column:1 / 3}
}

/* ===== Mini calendar (front page): small, pageable ===== */
.nwh-mini .nwh-cal-mini{border-spacing:1px;margin:0 0 6px}
.nwh-mini .nwh-cal-mini td{padding:1px 0;height:28px;font-size:14px;border-radius:5px;line-height:1.3}
.nwh-mini .nwh-cal-mini th{font-size:12px;padding:2px 0}
.nwh-mini .nwh-cal-mini .nwh-cal-n{font-size:14px;font-weight:600}
.nwh-mini .nwh-cal-mini .has-ev{background:transparent;border-color:#E3E9E7}
.nwh-mini .nwh-cal-mini .has-ev .nwh-cal-n{font-weight:800;border-bottom:3px solid #FF5A36}
.nwh-mini .nwh-cal-mini .has-ev.is-past .nwh-cal-n{border-bottom-color:#9FB3AC}
.nwh-mini .nwh-cal-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 4px;font-size:16px}
.nwh-mini-btn{display:none;width:30px;height:30px;border:2px solid #0D1B24;border-radius:8px;background:#fff;font-size:20px;line-height:1;cursor:pointer;padding:0;color:#0D1B24}
.nwh-mini.is-js .nwh-mini-btn{display:inline-flex;align-items:center;justify-content:center}
.nwh-mini-month[hidden]{display:none}

/* Archive of months that are over: collapsed */
.nwh-cal-archive{margin:14px 0}
.nwh-cal-archive summary{cursor:pointer;font-size:19px;font-weight:700;padding:10px 0;color:#0B4F6C}

/* Colours: what is coming = orange, what has been = blue */
.nwh-evl-date{color:#CC3A16}
.nwh-evl.is-past .nwh-evl-date{color:#2F7A8F}
.nwh-evl.is-past .nwh-evl-title{color:#2F5F73}
.nwh-cal-day.has-ev.is-past{background:#EAF1F5;border-color:#8FB0C2}
.is-past .nwh-cal-chip{background:#B7CAD6}
.nwh-mini .nwh-cal-mini .has-ev.is-past .nwh-cal-n{border-bottom-color:#7FA3B8}
.nwh-cal-month.is-past span{background:#8FB0C2}
