:root{--tbi-blue:#2651b2;--tbi-navy:#162d6e;--tbi-yellow:#f5c200;--tbi-paper:#f6f7f9;--tbi-line:#dfe5ee}.whats-on-page{background:var(--tbi-paper)}.whats-on-page main{max-width:1240px}.whats-on-intro{position:relative;overflow:hidden;margin:36px 0 24px;padding:36px 40px;border-radius:12px;background:var(--tbi-navy);color:#fff}.whats-on-intro:after{position:absolute;right:-70px;bottom:-190px;width:380px;height:380px;border:24px solid rgba(245,194,0,.85);border-radius:50%;content:""}.whats-on-intro h1{position:relative;z-index:1;margin:3px 0 8px;color:#fff;font-size:clamp(42px,6vw,74px)}.whats-on-intro p{position:relative;z-index:1;max-width:620px;margin:0;color:#e7edfa;font-size:18px}.whats-on-kicker{position:relative;z-index:1;color:#f5c200;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.whats-on-shell{padding:24px;border:1px solid var(--tbi-line);border-radius:12px;background:#fff}.whats-on-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid var(--tbi-line)}.whats-on-year{display:flex;align-items:center;gap:12px}.whats-on-year strong{min-width:96px;color:var(--tbi-navy);font:800 36px/1 "Barlow Condensed","Arial Narrow",sans-serif;text-align:center}.whats-on-toolbar p{margin:0;color:#667085}.whats-on-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.whats-on-month{min-height:240px;border-top:4px solid var(--tbi-blue);background:#f9fafc}.whats-on-month h2{margin:0;padding:13px 16px;border-bottom:1px solid var(--tbi-line);color:var(--tbi-navy);font-size:21px}.whats-on-month-list{display:grid;gap:1px}.whats-on-event{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;padding:14px 16px;border-bottom:1px solid #e8ecf2;color:inherit;text-decoration:none}.whats-on-event:hover,.whats-on-event:focus-visible{background:#fff;box-shadow:inset 4px 0 var(--tbi-yellow)}.whats-on-event-date{display:grid;place-items:center;align-content:center;width:44px;height:48px;border-radius:7px;background:var(--tbi-navy);color:#fff}.whats-on-event-date strong{font:800 23px/1 "Barlow Condensed","Arial Narrow",sans-serif}.whats-on-event-date span{font-size:9px;font-weight:800;letter-spacing:.05em}.whats-on-event.has-date-range{grid-template-columns:62px minmax(0,1fr)}.whats-on-event-date.is-range{width:60px}.whats-on-event-date.is-range strong{font-size:18px;white-space:nowrap}.whats-on-event-copy{min-width:0}.whats-on-event-copy h3{margin:3px 0;color:var(--tbi-navy);font-family:"Barlow",Arial,sans-serif;font-size:15px;line-height:1.25}.whats-on-event-copy p{display:-webkit-box;overflow:hidden;margin:4px 0;color:#667085;font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.whats-on-event.has-description-tooltip{cursor:pointer}.whats-on-event.has-description-tooltip:focus-visible{outline:3px solid var(--tbi-yellow);outline-offset:-3px}.whats-on-event-tooltip{position:fixed;z-index:60;box-sizing:border-box;padding:10px 12px;border:2px solid var(--tbi-navy);border-radius:7px;background:var(--tbi-yellow);color:var(--tbi-navy);box-shadow:0 8px 22px rgba(22,45,110,.28);font-size:13px;font-weight:700;line-height:1.35;pointer-events:none}.whats-on-event-tooltip[hidden]{display:none}.whats-on-more-details{display:inline-flex;align-items:center;margin:2px 0 1px;padding:0;border:0;background:transparent;color:var(--tbi-blue);font:800 12px/1.2 "Barlow",Arial,sans-serif;text-decoration:underline;cursor:pointer}.whats-on-more-details:hover,.whats-on-more-details:focus-visible{color:var(--tbi-navy);outline:0}.whats-on-event-copy small{color:#475467;font-size:11px;font-weight:700}.whats-on-category{display:inline-flex;border-radius:999px;padding:2px 7px;background:#dce8ff;color:#173e89;font-size:9px;font-weight:800;text-transform:uppercase}.whats-on-category-competition{background:#fff0a8;color:#533f00}.whats-on-category-community{background:#d9f2e2;color:#14532d}.whats-on-category-social{background:#f5ddf6;color:#70256f}.whats-on-category-development{background:#d9eff8;color:#164e63}.whats-on-empty{padding:34px 16px;color:#98a2b3;text-align:center}.whats-on-loading{padding:60px 20px;color:#667085;text-align:center}.site-footer{display:flex;max-width:1200px;align-items:center;justify-content:center;gap:7px;margin:0 auto;padding:26px;color:#667085;font-size:12px;font-weight:700}.site-footer img{width:24px;height:24px;object-fit:contain}.site-footer a{display:flex;color:#667085;text-decoration:none}.site-footer a:last-child{margin-left:auto}.whats-on-embed{margin:0;background:transparent}.whats-on-embed .whats-on-shell{border-radius:10px}@media(max-width:900px){.whats-on-months{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.whats-on-page main{padding:0 14px}.whats-on-intro{margin:18px 0;padding:26px 24px}.whats-on-intro:after{right:-180px}.whats-on-shell{padding:14px}.whats-on-toolbar{align-items:stretch;flex-direction:column}.whats-on-year{display:grid;grid-template-columns:48px 1fr 48px}.whats-on-year button{min-width:0;padding:8px}.whats-on-months{grid-template-columns:1fr}.whats-on-month{min-height:0}.site-footer{flex-wrap:wrap}.site-footer a:last-child{width:100%;justify-content:center;margin-left:0}}
:root .whats-on-event-image{float:right;width:58px;height:48px;margin:0 0 6px 10px;border-radius:6px;object-fit:cover}
:root .whats-on-event-actions{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0 0!important;-webkit-line-clamp:unset!important}:root .whats-on-event-actions a{color:var(--tbi-blue);font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:2px}
:root .whats-on-event-location{display:block;margin-top:6px;color:#344054;font-size:11px;font-weight:700}
:root .whats-on-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center}.whats-on-toolbar>div:first-child{min-width:0}.whats-on-year{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:end;gap:16px}.whats-on-actions{display:flex;gap:10px}.whats-on-year strong{min-width:150px;font-size:32px;white-space:nowrap}.whats-on-toolbar p{margin:4px 0 0}@media(max-width:760px){:root .whats-on-toolbar{grid-template-columns:1fr!important;align-items:stretch}.whats-on-year{grid-template-columns:1fr;justify-content:stretch;gap:10px}.whats-on-year strong{min-width:0;text-align:left;font-size:22px;white-space:normal}.whats-on-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.whats-on-actions button{min-width:0;padding-inline:6px}}
:root .whats-on-page .site-footer{max-width:1200px;justify-content:space-between;gap:16px;padding:0 24px 24px}.whats-on-page .footer-left,.whats-on-page .footer-links{display:flex;align-items:center;gap:10px}.whats-on-page .footer-brand{padding:0}.whats-on-page .footer-brand img{width:22px;height:22px;object-fit:contain}.whats-on-page .footer-links a{display:inline;color:#667085}.whats-on-page .footer-links a:hover,.whats-on-page .footer-links a:focus-visible{color:#2651b2;text-decoration:underline}@media(max-width:700px){:root .whats-on-page .site-footer{justify-content:center;gap:10px;padding:20px 14px 18px;text-align:center}.whats-on-page .footer-left,.whats-on-page .footer-links{width:100%;justify-content:center;flex-wrap:wrap}.whats-on-page .footer-links .public-staff-link{flex-basis:100%;margin-top:2px}}
:root .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.whats-on-search{display:block;max-width:320px;margin-top:14px}.whats-on-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:14px}.whats-on-filters .whats-on-search{margin-top:0}.whats-on-category-filter{display:grid;gap:4px;color:#667085;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.whats-on-category-filter select{min-height:42px;border:1px solid var(--tbi-line);border-radius:6px;padding:8px 28px 8px 10px;background:#fff;color:var(--tbi-navy);font:700 14px "Barlow",Arial,sans-serif;text-transform:none}.whats-on-search input{width:100%;min-height:42px;box-sizing:border-box;border:1px solid var(--tbi-line);border-radius:6px;padding:9px 12px;background:#fff;color:var(--tbi-navy);font:600 15px/1.2 "Barlow",Arial,sans-serif}.whats-on-search input:focus-visible{outline:3px solid var(--tbi-yellow);outline-offset:2px;border-color:var(--tbi-blue)}.whats-on-no-results{margin:28px 0 8px;color:#667085;text-align:center}@media(max-width:760px){.whats-on-search{max-width:none}.whats-on-filters{align-items:stretch}.whats-on-filters .whats-on-search{flex:1 1 220px}.whats-on-category-filter{flex:1 1 160px}}@media(max-width:620px){.whats-on-year{grid-template-columns:1fr;width:100%}.whats-on-year strong{min-width:0}.whats-on-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.whats-on-actions button{width:100%;min-width:0!important;padding-inline:6px!important}}
/* Event details open in a centred branded dialog, never a floating hover tooltip. */
.whats-on-event-tooltip{display:none!important}.whats-on-event-interactive{cursor:pointer}.whats-on-event-interactive:focus-visible{outline:3px solid var(--tbi-yellow);outline-offset:-3px}.whats-on-view-details{display:inline-flex;margin:7px 0 0;padding:0;border:0;background:transparent;color:var(--tbi-blue);font:800 12px/1.3 "Barlow",Arial,sans-serif;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.whats-on-view-details:focus-visible{outline:3px solid var(--tbi-yellow);outline-offset:3px}.whats-on-dialog{width:min(640px,calc(100vw - 32px));max-height:min(760px,calc(100dvh - 32px));box-sizing:border-box;margin:auto;padding:0;border:1px solid #cfd8e6;border-radius:12px;background:#fff;color:#1d2939;box-shadow:0 22px 70px rgba(16,32,72,.32)}.whats-on-dialog::backdrop{background:rgba(16,32,72,.62);backdrop-filter:blur(2px)}.whats-on-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 20px;border-bottom:3px solid var(--tbi-yellow);background:var(--tbi-navy);color:#fff}.whats-on-dialog-head h2{margin:4px 0 0;color:#fff;font:800 38px/1.08 "Barlow Condensed","Arial Narrow",sans-serif}.whats-on-dialog-close{flex:none;min-height:42px;border-color:#fff!important;background:#fff!important;color:var(--tbi-navy)!important}.whats-on-dialog-body{overflow:auto;padding:24px 26px 28px}.whats-on-dialog-image{float:right;width:120px;height:100px;margin:0 0 16px 20px;border-radius:8px;object-fit:contain;background:#fff}.whats-on-dialog-meta{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;color:#475467;font-size:18px}.whats-on-dialog-meta strong{color:var(--tbi-navy);font-size:19px}.whats-on-dialog-location{flex-basis:100%;font-weight:400}.whats-on-dialog-location strong{font-weight:800}.whats-on-event-location{font-weight:400}.whats-on-event-location strong{font-weight:800}.whats-on-dialog-description{clear:both;margin-top:16px;padding:11px 14px;border-left:4px solid var(--tbi-yellow);background:#f6f8fc;color:#344054;font-size:15px;line-height:1.35;overflow-wrap:anywhere}.whats-on-dialog-description p{margin:0;white-space:pre-line}.whats-on-dialog-description p+p{margin-top:10px}.whats-on-dialog-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.whats-on-dialog-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid var(--tbi-blue);border-radius:6px;color:var(--tbi-navy);font-size:18px;font-weight:800;text-decoration:none}@media(max-width:620px){.whats-on-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.whats-on-dialog-head{padding:18px}.whats-on-dialog-head h2{font-size:32px}.whats-on-dialog-body{padding:18px}.whats-on-dialog-image{width:84px;height:70px}.whats-on-dialog-description{padding:10px 12px;font-size:14px}.whats-on-dialog-description p+p{margin-top:8px}}
.whats-on-dialog-sessions{clear:both;margin-top:22px;padding-top:17px;border-top:1px solid var(--tbi-line)}.whats-on-dialog-sessions h3{margin:0;color:var(--tbi-navy);font:800 24px/1.1 "Barlow Condensed","Arial Narrow",sans-serif}.whats-on-dialog-session-summary{margin:5px 0 15px;color:#475467;font-size:15px;font-weight:650}.whats-on-dialog-session-months{display:grid;gap:11px}.whats-on-dialog-session-month{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:start;gap:10px}.whats-on-dialog-session-month h4{margin:5px 0 0;color:var(--tbi-navy);font-size:14px;line-height:1.2}.whats-on-dialog-session-dates{display:flex;flex-wrap:wrap;gap:6px}.whats-on-dialog-session-dates span{display:inline-flex;align-items:center;min-height:30px;padding:3px 9px;border:1px solid #dbe3ef;border-radius:5px;background:#f6f8fc;color:#344054;font-size:13px;font-weight:750;white-space:nowrap}@media(max-width:620px){.whats-on-dialog-sessions h3{font-size:22px}.whats-on-dialog-session-summary{font-size:14px}.whats-on-dialog-session-month{grid-template-columns:1fr;gap:5px}.whats-on-dialog-session-month h4{margin:0}.whats-on-dialog-session-dates span{font-size:12px}}
.whats-on-dialog-date,.whats-on-dialog-time,.whats-on-dialog-location{flex-basis:100%}.whats-on-dialog-date{font-weight:800}
.whats-on-print-head{display:none}@media(max-width:760px){.whats-on-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@page{size:A4 portrait;margin:10mm}@media print{body *{visibility:hidden!important}.whats-on-shell,.whats-on-shell *{visibility:visible!important}.whats-on-shell{position:absolute!important;inset:0 auto auto 0!important;width:100%!important;box-sizing:border-box!important;padding:0!important;border:0!important;border-radius:0!important}.whats-on-print-head{display:flex!important;align-items:center;justify-content:space-between;margin:0 0 8mm;padding:0 0 4mm;border-bottom:2px solid #162d6e}.whats-on-print-head span{font-size:10pt;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.whats-on-print-head h1{margin:1mm 0;color:#162d6e;font-size:24pt}.whats-on-print-head p{margin:1mm 0;color:#344054;font-size:10pt}.whats-on-print-head img{width:24mm;height:24mm;object-fit:contain}.whats-on-toolbar,.whats-on-loading,.whats-on-no-results,.whats-on-dialog{display:none!important}.whats-on-months{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4mm!important}.whats-on-month{display:block!important;min-height:0!important;border-top:2px solid #162d6e!important;background:#fff!important;break-inside:avoid;page-break-inside:avoid}.whats-on-month h2{padding:2.5mm 3mm!important;border-bottom:1px solid #aab4c4!important;font-size:14pt!important}.whats-on-month-list{display:grid!important}.whats-on-event{display:grid!important;grid-template-columns:10mm minmax(0,1fr)!important;gap:2.5mm!important;padding:2.5mm 3mm!important;border-bottom:1px solid #d4dae4!important;background:#fff!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}.whats-on-event-date{width:9mm!important;height:10mm!important;border:1px solid #162d6e!important;background:#fff!important;color:#162d6e!important}.whats-on-event-date strong{font-size:13pt!important}.whats-on-event-date span{font-size:7pt!important}.whats-on-event-copy h3{font-size:10pt!important}.whats-on-event-copy p{display:block!important;overflow:visible!important;margin:1mm 0!important;color:#344054!important;font-size:8pt!important;-webkit-line-clamp:unset!important}.whats-on-event-copy small,.whats-on-event-location{font-size:8pt!important}.whats-on-category{border:1px solid currentColor!important;background:#fff!important;font-size:7pt!important}.whats-on-event-actions{display:none!important}}
@media print{.whats-on-months{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important}.whats-on-month.is-empty{display:none!important}.whats-on-month{border:1px solid #c9d1dd!important;border-top:3px solid #162d6e!important}.whats-on-month h2{background:#eef2f7!important}.whats-on-event-image{float:right!important;width:14mm!important;height:12mm!important;margin:0 0 2mm 3mm!important;object-fit:contain!important}.whats-on-event-copy h3{margin:1mm 0!important;font-size:11pt!important}.whats-on-event-copy>small{display:block!important;margin-top:1mm!important;font-weight:700!important}.whats-on-print-head{margin-bottom:5mm!important}.whats-on-print-head h1{font-size:22pt!important}}

/* The print route is the one canonical report surface for both the standalone
   calendar and the WordPress widget. Its screen preview deliberately mirrors
   the final paper hierarchy instead of inheriting either host page. */
.whats-on-print-page{margin:0;background:#e9edf3;color:#162d6e}.whats-on-print-page main{max-width:1180px;margin:0 auto;padding:28px}.whats-on-print-page .whats-on-shell{padding:28px;border:0;border-radius:0;background:#fff;box-shadow:0 12px 36px rgba(22,45,110,.12)}.whats-on-print-page .whats-on-print-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:18px;border-bottom:3px solid #162d6e}.whats-on-print-page .whats-on-print-head span{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.whats-on-print-page .whats-on-print-head h1{margin:3px 0;color:#162d6e;font-size:38px}.whats-on-print-page .whats-on-print-head p{margin:3px 0;color:#475467;font-weight:650}.whats-on-print-page .whats-on-print-head img{width:92px;height:92px;object-fit:contain}.whats-on-print-page .whats-on-toolbar{display:none!important}.whats-on-print-page .whats-on-months{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.whats-on-print-page .whats-on-month.is-empty{display:none}.whats-on-print-page .whats-on-month{min-height:0;border:1px solid #d2d9e4;border-top:4px solid #162d6e;background:#fff}.whats-on-print-page .whats-on-month h2{background:#eef2f7}.whats-on-print-page .whats-on-event-copy p{display:block;-webkit-line-clamp:unset}.whats-on-print-page .whats-on-event-actions{display:none}@media(max-width:720px){.whats-on-print-page main{padding:12px}.whats-on-print-page .whats-on-shell{padding:18px}.whats-on-print-page .whats-on-print-head h1{font-size:30px}.whats-on-print-page .whats-on-print-head img{width:70px;height:70px}.whats-on-print-page .whats-on-months{grid-template-columns:1fr}}

@page{size:A4 portrait;margin:8mm}@media print{html,body{width:auto!important;height:auto!important;margin:0!important;background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.whats-on-print-page main{max-width:none!important;padding:0!important}.whats-on-print-page .whats-on-shell{position:static!important;width:auto!important;padding:0!important;box-shadow:none!important}.whats-on-print-head{display:flex!important;min-height:22mm!important;margin:0 0 4mm!important;padding:0 0 3mm!important;border-bottom:2px solid #162d6e!important;break-after:avoid}.whats-on-print-head h1{margin:.5mm 0!important;font-size:20pt!important;line-height:1!important}.whats-on-print-head p{margin:.5mm 0!important;font-size:8.5pt!important}.whats-on-print-head img{width:21mm!important;height:21mm!important}.whats-on-months{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:3.5mm!important;align-items:start!important}.whats-on-month{min-height:0!important;border:1px solid #bbc5d3!important;border-top:2.5px solid #162d6e!important;background:#fff!important;break-inside:avoid-page;page-break-inside:avoid}.whats-on-month h2{margin:0!important;padding:2mm 2.5mm!important;background:#edf1f6!important;color:#162d6e!important;font-size:12.5pt!important;line-height:1.1!important;break-after:avoid}.whats-on-event{grid-template-columns:9mm minmax(0,1fr)!important;gap:2mm!important;padding:2mm 2.5mm!important;break-inside:avoid;page-break-inside:avoid}.whats-on-event-date{width:8mm!important;height:9mm!important}.whats-on-event-date strong{font-size:11.5pt!important}.whats-on-event-copy h3{margin:.5mm 0!important;font-size:9.5pt!important;line-height:1.15!important}.whats-on-event-copy p{display:-webkit-box!important;overflow:hidden!important;margin:.5mm 0!important;font-size:7.5pt!important;line-height:1.25!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}.whats-on-event-copy small,.whats-on-event-location{font-size:7.5pt!important;line-height:1.25!important}.whats-on-event-image{float:right!important;width:11mm!important;height:10mm!important;margin:0 0 1mm 2mm!important}.whats-on-category{padding:.5mm 1.5mm!important;font-size:6.5pt!important}.whats-on-event-actions,.whats-on-more-details{display:none!important}}

/* 2026-09 design review: one toolbar row, readable kicker, lighter cards, mobile-first hero, loading skeleton. */
:root .whats-on-shell .whats-on-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:14px}
.whats-on-toolbar .whats-on-kicker,.whats-on-dialog .whats-on-kicker{color:var(--tbi-blue)}
.whats-on-toolbar-intro p{margin:4px 0 0}
.whats-on-toolbar-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;flex-wrap:wrap}
.whats-on-toolbar-controls .whats-on-filters{margin-top:0;flex-wrap:nowrap}
.whats-on-toolbar-controls .whats-on-search{margin-top:0;width:240px}
.whats-on-toolbar-controls .whats-on-year{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}
.whats-on-toolbar-controls .whats-on-year strong{min-width:0;font-size:28px;text-align:right}
.whats-on-actions [data-print]{margin-left:6px}
.whats-on-event.is-common-category .whats-on-category{display:none}
.whats-on-loading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:0}
.whats-on-skeleton-month{border-top:4px solid #d6def0;background:#f9fafc}
.whats-on-skeleton-month i,.whats-on-skeleton-month em,.whats-on-skeleton-month span{display:block;border-radius:5px;background:linear-gradient(90deg,#e9edf4 0,#f4f6fa 50%,#e9edf4 100%);background-size:200% 100%;animation:whats-on-shimmer 1.3s ease-in-out infinite}
.whats-on-skeleton-month i{width:45%;height:18px;margin:15px 16px}
.whats-on-skeleton-month b{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:14px 16px;border-top:1px solid #e8ecf2}
.whats-on-skeleton-month em{height:48px;border-radius:7px}
.whats-on-skeleton-month span{height:14px;margin-top:6px;box-shadow:0 22px 0 -2px #eef1f6}
@keyframes whats-on-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.whats-on-skeleton-month i,.whats-on-skeleton-month em,.whats-on-skeleton-month span{animation:none}}
@media(max-width:900px){.whats-on-loading{grid-template-columns:repeat(2,minmax(0,1fr))}.whats-on-skeleton-month:nth-child(n+3){display:none}}
@media(max-width:760px){.whats-on-toolbar-controls{display:grid;grid-template-columns:1fr;gap:12px}.whats-on-toolbar-controls .whats-on-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}.whats-on-toolbar-controls .whats-on-search{width:auto}.whats-on-toolbar-controls .whats-on-year{display:grid;grid-template-columns:1fr;justify-content:stretch;gap:10px}.whats-on-toolbar-controls .whats-on-year strong{font-size:22px;text-align:left}
  /* Previous, Today and Next stay together; Print drops to its own full-width row. */
  :root .whats-on-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px}.whats-on-actions [data-print]{grid-column:1/-1;margin-left:0}}
@media(max-width:620px){.whats-on-intro{margin:12px 0 14px;padding:18px 20px}.whats-on-intro:after{display:none}.whats-on-intro h1{margin:2px 0 4px;font-size:32px}.whats-on-intro p{font-size:15px}.whats-on-toolbar-intro{display:none}.whats-on-toolbar-controls .whats-on-filters{grid-template-columns:1fr}.whats-on-loading{grid-template-columns:1fr}.whats-on-skeleton-month:nth-child(n+2){display:none}}
.whats-on-loading[hidden]{display:none!important}
/* Every organisation logo, TBI's included, uses the same box so the card column lines up. */
:root .whats-on-event-image{width:56px;height:44px;object-fit:contain}
/* Print: the screen toolbar never prints, and date-range badges widen so "20-22" fits. */
@media print{:root .whats-on-shell .whats-on-toolbar{display:none!important}.whats-on-event.has-date-range{grid-template-columns:11.5mm minmax(0,1fr)!important}.whats-on-event-date.is-range{width:11mm!important}.whats-on-event-date.is-range strong{font-size:10pt!important;white-space:nowrap!important}}
/* Print: content previously ran to the exact edge of the printable area, so right-hand borders were clipped. Inset both sides by 2mm. */
@media print{:root .whats-on-shell,:root .whats-on-print-page .whats-on-shell{box-sizing:border-box!important;padding:0 2mm!important}}
