/* Bootstrap 5 table styling. Programme content is edited directly in option 3 PHP. */
/* Scoped copy sizes keep the shared 16px inner-page rule from widening the matrix. */
.pag3-table{--bts-content-font-size:calc(clamp(11px,.8vw,13px) * var(--language-font-scale,1))}
.pag3-guide,.pag3-footnote,.pag3-day-heading{--bts-content-font-size:calc(11px * var(--language-font-scale,1))}
.pag3-heading,.pag3-day{--bts-content-font-size:calc(12px * var(--language-font-scale,1))}
.pag3-page{background:#f7f8fc;color:#25304b;font-family:Inter,Arial,sans-serif}
.pag3-main{padding:38px 24px 46px;max-width:2200px}
.pag3-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:27px}
.pag3-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#796096;margin:0 0 10px}
.pag3-heading h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(28px,2.8vw,43px);font-weight:600;letter-spacing:-1.3px;color:#1b2541;margin:0 0 10px}.pag3-heading h1 span{color:#a260c7}
.pag3-description{font-size:13px;color:#687289;margin:0}.pag3-date{display:grid;gap:7px;flex-shrink:0;border-left:3px solid #aa79d6;padding:4px 0 4px 17px}.pag3-date strong{font-size:14px}.pag3-date span{font-size:10px;color:#737c8f}
.pag3-guide{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:14px 17px;background:#fff;border:1px solid #e2e6ef;border-radius:6px;font-size:10px;color:#69738a;margin-bottom:29px}.pag3-guide p{margin:0}.pag3-guide strong{color:#3b4560}.pag3-guide-dot{display:inline-block;width:6px;height:6px;background:#9b6cbe;border-radius:50%;margin-right:5px}.pag3-guide-divider{color:#c8c8d6;padding:0 10px}
.pag3-day{margin-bottom:32px}.pag3-day-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#1f2945;color:#fff;padding:13px 17px;border-radius:7px 7px 0 0}.pag3-day-heading>div{display:flex;align-items:center;gap:12px}.pag3-day-number{font-size:12px;font-weight:600;color:#e2ccf6;border-right:1px solid #ffffff40;padding-right:12px}.pag3-day-heading h2{font-size:16px;font-weight:600;margin:0}.pag3-day-heading>p{font-size:9px;color:#c6cde0;margin:0}
.pag3-announcement{padding:10px 17px;margin:0;background:#f0eaf9;border:1px solid #dcd2eb;border-top:0;color:#503b70;font-size:12px;font-weight:600}.pag3-announcement span{font-weight:500;font-size:9px;text-transform:uppercase;letter-spacing:.9px;padding-right:15px;color:#796490}
.pag3-table-wrap{border:1px solid #dce1eb;border-top:0;background:#fff;border-radius:0 0 7px 7px}.pag3-table-wrap:focus-visible{outline:3px solid #a485ce;outline-offset:3px}
.pag3-table{table-layout:fixed;width:100%;min-width:1120px;margin:0;border-color:#e0e5ed;font-size:clamp(10px,.79vw,13px);line-height:1.5;--bs-table-bg:transparent;--bs-table-color:#303b52}
.pag3-time-col{width:8.3%}.pag3-table>:not(caption)>*>*{padding:13px 8px;box-shadow:none}
.pag3-table thead th{vertical-align:top;color:#fff;background:#49566e;font-size:clamp(10px,.78vw,12px);font-weight:600;line-height:1.4;padding:14px 8px;border-color:#ffffff30}.pag3-table thead th small{display:block;font-size:9px;font-weight:400;line-height:1.4;margin-top:6px;color:#fff;opacity:.9}
.pag3-table thead .pag3-stage-time{background:#e9edf5;color:#38465e}.pag3-table thead .pag3-stage-inaugural{background:#7934db}.pag3-table thead .pag3-stage-trends{background:#a527aa}.pag3-table thead .pag3-stage-circuit{background:#0076c7}.pag3-table thead .pag3-stage-life{background:#008368}.pag3-table thead .pag3-stage-startup-one{background:#ba6200}.pag3-table thead .pag3-stage-startup-two{background:#ba6200}.pag3-table thead .pag3-stage-world-one{background:#245fe0}.pag3-table thead .pag3-stage-world-two{background:#245fe0}.pag3-table thead .pag3-stage-think{background:#008396}.pag3-table thead .pag3-stage-innovation{background:#4338ca}.pag3-table thead .pag3-stage-changenow{background:#57785a}
.pag3-table .pag3-time{background:#f0f3f8;color:#4d5971;font-size:10px;font-weight:600;line-height:1.7;white-space:normal}.pag3-time span{font-weight:400;color:#8790a1}.pag3-table tbody td{vertical-align:top;background:#fff;overflow-wrap:break-word}
.pag3-section{display:block;color:#897398;font-size:9px;font-weight:500;letter-spacing:.3px;margin:0 0 7px}.pag3-title{display:block;color:#28344e;font-size:inherit;font-weight:600;line-height:1.5}.pag3-note{display:block;color:#737f92;font-size:9px;font-weight:400;line-height:1.5;margin-top:7px}
.pag3-table tbody .pag3-empty{background:#fafbfe;vertical-align:middle;text-align:center}.pag3-unlisted{color:#c1c8d5;font-weight:400;font-size:11px}.pag3-table tbody .pag3-break{background:#f2f0f7;vertical-align:middle;text-align:center;padding:11px}.pag3-break .pag3-title{font-size:11px;color:#665675}.pag3-table tbody .pag3-reserved{vertical-align:middle;text-align:center;background:#fbf9f3}.pag3-reserved .pag3-title{color:#8e816c;font-weight:500;font-size:10px}
.pag3-footnote{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#7a8394;font-size:10px;line-height:1.7;padding:0 2px}.pag3-footnote p{margin:0}.pag3-footnote strong{font-weight:600;color:#5c667d}.pag3-mobile-hint{display:none}
@media(max-width:1199px){.pag3-main{padding:28px 16px}.pag3-mobile-hint{display:block;color:#7b6b8f;font-size:11px;margin:0 0 15px}.pag3-table .pag3-time{position:sticky;left:0;z-index:1;box-shadow:2px 0 4px #1f29450c}.pag3-table thead .pag3-stage-time{position:sticky;left:0;z-index:2}.pag3-heading{align-items:flex-start}}
@media(max-width:650px){.pag3-heading{flex-direction:column;gap:18px}.pag3-heading h1{font-size:30px}.pag3-description{font-size:12px;line-height:1.7}.pag3-guide{margin-bottom:20px;gap:8px}.pag3-day-heading{padding:12px}.pag3-day-heading h2{font-size:13px}.pag3-day-heading>p{display:none}.pag3-announcement{font-size:11px;padding:10px 12px}.pag3-announcement span{display:block;margin-bottom:3px}.pag3-date strong{font-size:13px}}
@media print{@page{size:A3 landscape;margin:8mm}.pag3-page .main-navbar,.pag3-page .top-header,.pag3-page footer:not(.pag3-footnote),#uw-main,#uw-widget-custom-trigger{display:none!important}.pag3-main{padding:0;max-width:none}.pag3-table{min-width:0;font-size:8px}.pag3-table>:not(caption)>*>*{padding:6px 4px}.pag3-day{break-before:page}.pag3-day:first-of-type{break-before:auto}.pag3-table-wrap{overflow:visible}.pag3-table thead{display:table-header-group}.pag3-page{-webkit-print-color-adjust:exact;print-color-adjust:exact}.pag3-mobile-hint{display:none}}

/* Bootstrap day tabs and stage-matched programme title colours. */
.pag3-day-tabs{gap:12px;margin-bottom:20px}
.pag3-day-tabs .nav-link{flex:1;max-width:260px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;border:1px solid #dce1eb;border-radius:7px;background:#fff;color:#4b5670;text-align:left}
.pag3-day-tabs .nav-link strong{font-size:14px;font-weight:600}
.pag3-day-tabs .nav-link span{font-size:16px;font-weight:600}
.pag3-day-tabs .nav-link.active{background:#1f2945;border-color:#1f2945;color:#fff}
.pag3-day-tabs .nav-link:hover:not(.active){background:#f0eaf9;border-color:#af93cd}
.pag3-day-tabs .nav-link:focus-visible,.pag3-panels>.tab-pane:focus-visible{outline:3px solid #aa79d6;outline-offset:3px}
.pag3-stage-inaugural{--pag3-accent:#7934db}
.pag3-stage-trends{--pag3-accent:#a527aa}
.pag3-stage-circuit{--pag3-accent:#0076c7}
.pag3-stage-life{--pag3-accent:#008368}
.pag3-stage-startup-one{--pag3-accent:#ba6200}
.pag3-stage-startup-two{--pag3-accent:#ba6200}
.pag3-stage-world-one{--pag3-accent:#245fe0}
.pag3-stage-world-two{--pag3-accent:#245fe0}
.pag3-stage-think{--pag3-accent:#008396}
.pag3-stage-innovation{--pag3-accent:#4338ca}
.pag3-stage-changenow{--pag3-accent:#57785a}
.pag3-table tbody td:not(.pag3-break) .pag3-title{color:var(--pag3-accent,#28344e)}
.pag3-table tbody td:not(.pag3-break) .pag3-section{color:var(--pag3-accent,#897398)}
@media(max-width:650px){.pag3-day-tabs{gap:7px}.pag3-day-tabs .nav-link{padding:12px 8px;flex-direction:column;align-items:flex-start;gap:5px}.pag3-day-tabs .nav-link span{font-size:13px}.pag3-day-tabs .nav-link strong{font-size:13px}}
@media print{.pag3-day-tabs{display:none!important}.pag3-panels>.tab-pane{display:block!important}}

/* Keep both axes labelled while scrolling the mobile timetable. */
@media screen and (max-width:1199px){
  .pag3-table-wrap{max-height:70vh;max-height:70dvh;overflow:auto;position:relative;isolation:isolate}
  .pag3-table thead th{position:sticky;top:0;z-index:3;box-shadow:0 2px 0 #dce1eb}
  .pag3-table thead .pag3-stage-time{top:0;left:0;z-index:4}
}

/* Keep the connector with the starting time, and the end on its own line. */
.pag3-table .pag3-time .pag3-time-start,.pag3-table .pag3-time .pag3-time-end{white-space:nowrap;font-weight:600;color:#4d5971}
.pag3-table .pag3-time .pag3-time-start>span{font-weight:400;color:#6b778c}
