#programme{scroll-margin-top:145px}.programme-section .weekly-heading{display:flex!important;align-items:end!important;justify-content:space-between!important;padding-bottom:28px!important;margin-bottom:0!important;border-bottom:1px solid #aaa99e!important}.week-body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:36px;padding-top:28px}.week-body>.upcoming-list{min-width:0;margin:0;border-top:0}.week-body .upcoming-event{grid-template-columns:64px minmax(0,1fr) 64px 20px;gap:16px;padding:26px 0}.week-body .upcoming-event:first-child{padding-top:0}.week-body .upcoming-event-main h3{font:400 clamp(25px,2.6vw,38px)/1.15 var(--serif);letter-spacing:-.035em}.week-body .weekly-event-meta{font-size:12px}.week-body .upcoming-image{width:64px;height:75px}.week-highlight{min-width:0;display:flex;flex-direction:column;padding-left:28px;border-left:1px solid #aaa99e;color:#24251f}.highlight-topline{display:flex;justify-content:space-between;gap:12px;font:700 10px/1.5 var(--sans);letter-spacing:.12em;padding-bottom:15px}.highlight-topline span:last-child{color:#66685c}.highlight-art{position:relative;aspect-ratio:16/8;margin:0;overflow:hidden;background:#d4d6ce}.highlight-art img{width:100%;height:100%;object-fit:cover;display:block}.highlight-art figcaption{position:absolute;bottom:12px;left:12px;background:#f5f3eb;color:#24251f;padding:6px 9px;font:600 10px/1.4 var(--sans)}.highlight-content{padding-top:20px}.highlight-date{display:flex;gap:7px 15px;justify-content:space-between;flex-wrap:wrap;font:400 12px/1.5 var(--sans)}.highlight-content h3{font:400 clamp(33px,3.2vw,49px)/1.06 var(--serif);letter-spacing:-.045em;margin:13px 0}.highlight-content p{font:400 15px/1.6 var(--sans);margin:0 0 20px;max-width:42ch}.highlight-content .highlight-action{display:flex;width:100%;align-items:center;justify-content:space-between;min-height:46px;padding:12px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font:600 13px/1.5 var(--sans);cursor:pointer}.highlight-content .highlight-action:hover{color:#245bc4}.highlight-content .highlight-action:focus-visible{outline:2px solid #245bc4;outline-offset:4px}

/* Align the last event rule and feature action with equal flexible rows. */
.week-body{display:block}.week-body.has-highlight{display:grid;align-items:stretch}
.week-body.has-highlight>.upcoming-list{display:grid;grid-auto-rows:1fr;align-self:stretch;border-bottom:1px solid var(--ink);padding-bottom:0}
.week-body.has-highlight .upcoming-event,.week-body.has-highlight .upcoming-event:first-child{padding-block:26px;align-content:center}
.week-body.has-highlight .upcoming-event:last-child{border-bottom:0}
.week-highlight{align-self:stretch;padding-bottom:0}.highlight-topline{text-transform:uppercase}.highlight-topline,.highlight-art{flex-shrink:0}
.highlight-content{display:flex;flex:1;flex-direction:column}.highlight-content .highlight-action{margin-top:auto;flex-shrink:0;text-decoration:none}
.highlight-art>img{object-fit:contain}.highlight-art>.giri-event-poster{min-height:0;height:100%;width:100%}
.week-body .upcoming-image .giri-event-poster{min-height:0;height:100%}
.giri-next-feature{display:grid;grid-template-columns:40% minmax(0,60%);padding:20px;margin:28px var(--pad) 0;min-height:350px;border:1px solid var(--hairline);color:var(--ink)}
.giri-next-art{margin:0;min-height:320px;position:relative;background:#e6e3d9;overflow:hidden}
.giri-next-art>img{position:absolute;width:100%;height:100%;inset:0;object-fit:contain}
.giri-next-art>.giri-event-poster{height:100%;min-height:320px}
.giri-next-copy{margin-left:22px;padding:0 18px 5px 26px;border-left:1px solid var(--hairline);display:flex;flex-direction:column;justify-content:center;min-width:0}
.giri-next-eyebrow{font:500 11px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.15em;border-bottom:1px solid var(--hairline);padding-bottom:12px;margin:0}
.giri-next-copy h2{font:400 clamp(36px,4.8vw,76px)/1.04 var(--serif);letter-spacing:-.06em;margin:19px 0;overflow-wrap:anywhere}
.giri-next-facts{display:flex;gap:12px 22px;flex-wrap:wrap;font:400 13px/1.5 var(--sans)}
.giri-next-description{font:400 19px/1.45 var(--serif);max-width:600px;margin:20px 0 24px}
.giri-next-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px}.giri-next-actions .solid-button{background:#245bc4;color:white}
.giri-calendar-panel[hidden]{display:none}.giri-calendar-scroll{overflow-x:auto;overscroll-behavior-inline:contain}
.giri-calendar-scroll .giri-programme-calendar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-width:720px}
.giri-programme-calendar .giri-calendar-weekday{display:block;font:600 13px/1.5 var(--sans);text-transform:uppercase;text-align:center}
.giri-programme-calendar .giri-calendar-day{display:flex;flex-direction:column;min-width:0;min-height:215px;padding:13px 12px 12px}
.giri-calendar-day>time{font:400 25px/1.2 var(--serif);margin-bottom:12px}
.giri-calendar-day .giri-calendar-event{flex:1;display:flex;flex-direction:column;align-items:flex-start;width:100%;min-height:144px;min-width:0;margin:0;padding:14px 12px;background:#eae8e0;border-left:3px solid #245bc4;color:#22221e;text-decoration:none}
.giri-calendar-day .giri-calendar-event[hidden]{display:none}
.giri-calendar-event+.giri-calendar-event{margin-top:10px}
.giri-calendar-event strong{display:block;width:100%;font:600 clamp(21px,2vw,28px)/1.2 var(--sans);letter-spacing:-.025em;white-space:normal;overflow-wrap:anywhere}
.giri-calendar-event>span{display:block;width:100%;font:500 14px/1.4 var(--sans);margin-top:12px}
.giri-calendar-event:hover{background:#e0dcd0}.giri-calendar-event:focus-visible{outline:3px solid #245bc4;outline-offset:-3px}
.giri-calendar-mobile-hint{display:none;font:400 12px/1.5 var(--sans);margin:0 0 13px;color:#52554b}
.giri-form-grid small{display:block;font:400 12px/1.5 var(--sans);margin-top:7px}
@media(max-width:1000px){.week-body.has-highlight{gap:25px;grid-template-columns:1.25fr 1fr}.week-highlight{padding-left:20px}.week-body .upcoming-event{grid-template-columns:48px minmax(0,1fr) 18px;gap:12px}.week-body .upcoming-image{display:none}.highlight-date{flex-direction:column;gap:4px}.programme-section .weekly-heading{gap:20px}}
@media(max-width:800px){.giri-calendar-mobile-hint{display:block}.giri-programme-calendar .giri-calendar-day{min-height:225px;padding:12px 10px}.giri-calendar-event strong{font-size:22px}.giri-calendar-day .giri-calendar-event{padding:12px 10px;min-height:155px}.giri-calendar-event>span{font-size:13px}.giri-next-copy{padding-left:18px;margin-left:14px;padding-right:4px}.giri-next-description{font-size:17px}}
@media(max-width:700px){#programme{scroll-margin-top:100px}.programme-section .weekly-heading{align-items:start!important;flex-direction:column!important}.week-body.has-highlight{grid-template-columns:1fr;gap:30px}.week-body.has-highlight>.upcoming-list{display:block}.week-body.has-highlight .upcoming-event:first-child{padding-top:0}.week-highlight{border-left:0;border-top:1px solid var(--hairline);padding:25px 0 0}.highlight-content{display:block}.highlight-content h3{font-size:40px}.highlight-date{flex-direction:row}.highlight-art{aspect-ratio:16/7}.week-body .upcoming-event-main h3{font-size:28px}.giri-next-feature{display:block;padding:12px}.giri-next-art{min-height:0;aspect-ratio:16/9}.giri-next-art>.giri-event-poster{min-height:0}.giri-next-copy{margin:0;border:0;padding:20px 4px 10px}.giri-next-copy h2{font-size:44px}}

/* The Programme title leads, followed by its horizontal next-event feature. */
.programme-directory > .giri-next-feature{margin:0 0 32px}
