/* REV19: THE PROGRAMME shared desktop/tablet/mobile tabs & clean schedule header.
   Scoped to #rundown; no changes to registration, map, gallery, or partner areas. */
#rundown .rundown-intro{margin-bottom:27px;align-items:end;gap:24px}
#rundown .rundown-intro .section-title{font-size:clamp(30px,3.5vw,48px);line-height:1.13;letter-spacing:-.048em}
#rundown .rundown-intro>p{max-width:360px;font-size:14px;line-height:1.75;color:#5b708c}
#rundown .rundown-all-device-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(100%,560px);margin:0 0 24px;padding:6px;border:1px solid #dae7fa;border-radius:21px;background:rgba(255,255,255,.84);box-shadow:0 10px 34px rgba(27,87,160,.06)}
#rundown .rundown-all-device-tabs .rundown-mobile-tab{display:flex;align-items:center;justify-content:center;gap:13px;min-width:0;min-height:76px;padding:10px 20px;border:1px solid transparent;border-radius:15px;background:transparent;color:#64748b;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s,color .18s}
#rundown .rundown-all-device-tabs .rundown-tab-number{font-size:31px;line-height:1;font-weight:800;letter-spacing:-.08em;color:#b9c9df}
#rundown .rundown-all-device-tabs .rundown-tab-label{display:flex;flex-direction:column;gap:5px;text-align:left;white-space:nowrap}
#rundown .rundown-all-device-tabs strong{font-size:16px;line-height:1.05;font-weight:800}
#rundown .rundown-all-device-tabs small{font-size:12px;line-height:1.2;font-weight:600;color:#6b809b}
#rundown .rundown-all-device-tabs .is-active{background:#eaf3ff;border-color:#acd0fb;color:#0753b9;box-shadow:0 6px 18px rgba(0,102,255,.09)}
#rundown .rundown-all-device-tabs .is-active .rundown-tab-number{color:#4c9cff}
#rundown .rundown-all-device-tabs .is-active.is-day-two{background:#f4efff;border-color:#d7c9fa;color:#7043c3;box-shadow:0 6px 18px rgba(115,81,193,.09)}
#rundown .rundown-all-device-tabs .is-active.is-day-two .rundown-tab-number{color:#ad94e9}
#rundown .rundown-all-device-tabs .rundown-mobile-tab:hover:not(.is-active){background:#f6f9ff}
#rundown .rundown-all-device-tabs .rundown-mobile-tab:focus-visible{outline:3px solid #0066ff;outline-offset:2px}
/* A single full-width rundown eliminates the short Day2 card beside Day1's long programme. */
#rundown .rundown-grid{display:block;grid-template-columns:none;max-width:100%;margin:0}
#rundown .rundown-grid>.rundown-day{display:none;width:100%;max-width:none;margin:0}
#rundown .rundown-grid>.rundown-day.is-mobile-active{display:block}
#rundown .rundown-day{border-radius:28px;background:rgba(255,255,255,.92);box-shadow:0 18px 52px rgba(15,73,147,.065)}
/* Compact, well-aligned heading across all breakpoints. */
#rundown .rundown-day-heading{display:flex;align-items:center;gap:22px;min-height:156px;padding:28px 38px;background:linear-gradient(115deg,#eff8ff 0%,#f8fcff 58%,#ffffff 100%)}
#rundown .rundown-day-two .rundown-day-heading{background:linear-gradient(115deg,#f4f0ff,#fbfaff 62%,#fff)}
#rundown .rundown-day-number{flex:0 0 72px;display:grid;place-items:center;width:72px;height:72px;border:1px solid #d6e9fc;border-radius:21px;background:#e1f1ff;color:#397ed2;opacity:1;font-size:34px;font-weight:800;line-height:1;letter-spacing:-.07em}
#rundown .rundown-day-two .rundown-day-number{background:#ebe3ff;border-color:#e2d7ff;color:#9070d4}
#rundown .rundown-heading-content{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
#rundown .rundown-label{margin:0 0 3px;color:var(--day-accent);font-size:10px;line-height:1.5;letter-spacing:.16em}
#rundown .rundown-day-heading h3{margin:0;color:#101b31;font-size:clamp(25px,2.4vw,32px);line-height:1.2;font-weight:800;letter-spacing:-.04em}
#rundown .rundown-day-heading time{display:block;color:#50657f;font-size:14px;line-height:1.45;font-weight:650}
#rundown .rundown-header-meta{display:flex;flex-wrap:wrap;align-items:center;column-gap:9px;row-gap:4px;margin-top:9px;color:#56728d;font-size:12px;line-height:1.55}
#rundown .rundown-meta-time{white-space:nowrap;color:#1a5daf;font-weight:750}
#rundown .rundown-meta-divider{color:#b4c5db}
#rundown .day1-venue-caption{margin:0;max-width:none;color:#526d88;font-size:12px;line-height:1.55}
#rundown .rundown-status{margin-left:auto;flex:0 0 auto;padding:8px 14px;font-size:12px;background:#fff;border-color:#ded7f7}
/* Wider reading column and controlled line lengths for the published schedule. */
#rundown .day1-published-timeline{padding:10px clamp(22px,3vw,44px) 18px}
#rundown .day1-published-timeline .day1-item{grid-template-columns:minmax(115px,150px) minmax(0,1fr);gap:34px;padding:22px 0}
#rundown .day1-time-range{font-size:14px;gap:7px}
#rundown .day1-duration{font-size:11px;padding:4px 10px}
#rundown .day1-session-body{padding-left:22px}
#rundown .day1-session-kicker{font-size:10px;letter-spacing:.16em}
#rundown .day1-session-title{font-size:17px;line-height:1.5;font-weight:750}
#rundown .day1-type-keynote .day1-session-title,#rundown .day1-type-panel .day1-session-title{font-size:18px}
#rundown .day1-featured-speaker{margin-top:10px}
#rundown .day1-speaker-name{font-size:13px}
#rundown .day1-speaker-role{font-size:12px}
#rundown .day1-speakers-details{max-width:650px}
#rundown .rundown-day-footer{padding:19px clamp(22px,3vw,44px)}
#rundown .rundown-note{margin-top:22px}
/* A balanced one-column flow for smaller laptops/tablets. */
@media(max-width:1023px){
  #rundown .rundown-day-heading{padding:26px 28px;gap:18px}
  #rundown .day1-published-timeline .day1-item{grid-template-columns:115px minmax(0,1fr);gap:22px}
  #rundown .day1-session-title{font-size:15px}
  #rundown .day1-type-keynote .day1-session-title,#rundown .day1-type-panel .day1-session-title{font-size:16px}
}
@media(max-width:639px){
  #rundown .rundown-intro{margin-bottom:22px;gap:10px}
  #rundown .rundown-intro .section-title{font-size:clamp(30px,8vw,40px)}
  #rundown .rundown-intro>p{font-size:12px;margin-top:14px}
  #rundown .rundown-all-device-tabs{gap:8px;width:100%;padding:5px;border-radius:17px;margin-bottom:16px}
  #rundown .rundown-all-device-tabs .rundown-mobile-tab{min-height:64px;gap:9px;padding:9px 7px;border-radius:12px}
  #rundown .rundown-all-device-tabs .rundown-tab-number{font-size:25px}
  #rundown .rundown-all-device-tabs strong{font-size:14px}
  #rundown .rundown-all-device-tabs small{font-size:10px}
  #rundown .rundown-day{border-radius:22px}
  #rundown .rundown-day-heading{min-height:auto;padding:20px 18px;gap:14px;align-items:flex-start}
  #rundown .rundown-day-number{width:48px;height:48px;flex-basis:48px;border-radius:14px;font-size:24px;letter-spacing:-.06em}
  #rundown .rundown-heading-content{gap:3px}
  #rundown .rundown-label{font-size:9px;letter-spacing:.14em}
  #rundown .rundown-day-heading h3{font-size:25px}
  #rundown .rundown-day-heading time{font-size:12px}
  #rundown .rundown-header-meta{gap:4px 7px;margin-top:7px;font-size:10px}
  #rundown .day1-venue-caption{font-size:10px;max-width:100%;line-height:1.5}
  #rundown .rundown-meta-divider{display:none}
  #rundown .rundown-meta-time{display:block;width:100%}
  #rundown .rundown-status{margin-top:3px;padding:5px 9px;font-size:10px}
  #rundown .day1-published-timeline{padding:8px 14px 14px}
  #rundown .day1-published-timeline .day1-item{grid-template-columns:76px minmax(0,1fr);gap:10px;padding:15px 0}
  #rundown .day1-time-range{font-size:11px;gap:3px}
  #rundown .day1-duration{font-size:9px;padding:3px 6px}
  #rundown .day1-session-body{padding-left:13px}
  #rundown .day1-session-title{font-size:13px;line-height:1.45}
  #rundown .day1-type-keynote .day1-session-title,#rundown .day1-type-panel .day1-session-title{font-size:14px}
  #rundown .day1-session-kicker{font-size:9px}
  #rundown .day1-speaker-name{font-size:12px}
  #rundown .day1-speaker-role{font-size:11px}
  #rundown .rundown-day-footer{padding:16px 15px}
}
@media(max-width:359px){
  #rundown .rundown-day-heading{padding:17px 12px;gap:10px}
  #rundown .rundown-status{padding:5px 7px;font-size:9px}
  #rundown .rundown-day-number{flex-basis:42px;width:42px;height:42px;font-size:21px}
  #rundown .rundown-day-heading h3{font-size:23px}
}
@media(prefers-reduced-motion:reduce){#rundown .rundown-all-device-tabs .rundown-mobile-tab{transition:none}}
