  /* ---------- CONCLAVE: image + type composition ---------- */
  .ed-block{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin-bottom:80px;}
  .ed-block:last-child{margin-bottom:0;}
  .ed-block:nth-child(even){direction:rtl;}
  .ed-block:nth-child(even) > *{direction:ltr;}
  @media(max-width:900px){.ed-block{grid-template-columns:1fr;direction:ltr !important;}}
  .ed-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .ed-photos img{width:100%;height:280px;object-fit:cover;border-radius:var(--r-md);}
  .ed-photos img:nth-child(1){margin-top:32px;}
  .ed-date{font-family:var(--accent);font-weight:700;font-size:13px;color:var(--red);margin-bottom:14px;}
  .ed-name{font-family:var(--display);font-weight:800;font-size:clamp(26px,2.6vw,36px);margin-bottom:16px;}
  .ed-copy{font-family:var(--body);font-size:15px;color:var(--muted-light);line-height:1.75;margin-bottom:22px;}
  .ed-stats{display:flex;gap:36px;}
  .ed-stats b{display:block;font-family:var(--display);font-weight:800;font-size:24px;}
  .ed-stats span{display:block;font-family:var(--accent);font-size:12px;color:var(--muted-light);margin-top:2px;}

  /* ---------- COLOUR-BLOCKED LIST ---------- */
  .item-list{display:flex;flex-direction:column;gap:12px;}
  .item-row{border-radius:var(--r-md);overflow:hidden;transition:background .4s var(--ease);}
  .item-row:nth-child(odd){background:var(--panel);}
  .item-row:nth-child(even){background:var(--white);}
  .item-row:hover{background:var(--blue);}
  .item-row-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;}
  .item-left{display:flex;align-items:baseline;gap:24px;flex-wrap:wrap;}
  .item-year{font-family:var(--display);font-weight:800;font-size:20px;color:var(--red);transition:color .4s var(--ease);width:52px;}
  .item-row:hover .item-year{color:#fff;}
  .item-title{font-family:var(--display);font-weight:700;font-size:20px;color:var(--ink);transition:color .4s var(--ease);}
  .item-row:hover .item-title{color:#fff;}
  .item-sub{font-family:var(--body);font-size:14px;color:var(--muted);transition:color .4s var(--ease);max-width:480px;}
  .item-row:hover .item-sub{color:rgba(255,255,255,.78);}
  .item-cta{font-family:var(--accent);font-weight:700;font-size:12.5px;color:var(--ink);background:#fff;border-radius:var(--r-pill);padding:9px 18px;transition:all .3s var(--ease);white-space:nowrap;}
  .item-row--next{background:var(--red) !important;}
  .item-row--next .item-year, .item-row--next .item-title{color:#fff;}
  .item-row--next .item-sub{color:rgba(255,255,255,.82);}


/* The Olympiad's past winners on a podium, one year at a time (tabs in podcast.js). */
.podium-wrap { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(18px, 2.4vw, 32px); row-gap: 28px; margin-top: clamp(48px, 6vw, 80px); }
.podium-wrap__head { grid-column: 1 / span 4; display: grid; gap: 16px; align-content: start; }
.events-page .podium-wrap__head h3 { font: clamp(30px, 3vw, 42px)/1.1 var(--serif) !important; color: var(--navy) !important; }
.podium-tabs { display: flex; gap: 8px; }
.podium-tabs button { min-height: 44px; padding: 0 18px; border: 1px solid var(--line); background: #fff; color: var(--navy); font: 600 15px var(--sans); cursor: pointer; transition: background-color 200ms, border-color 200ms, color 200ms, transform 200ms; }
.podium-tabs button[aria-selected="true"] { background: var(--bold-red, #D7263D); border-color: var(--bold-red, #D7263D); color: #fff; }
.podium-tabs button:active { transform: scale(.97); }
.podium { grid-column: 6 / span 7; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: end; gap: 8px; min-height: 420px; }
.podium[hidden] { display: none; }
.podium__place { display: flex; flex-direction: column; justify-content: flex-end; }
.podium__who { padding: 0 4px 14px; }
.events-page .podium__who b { display: block; font: 22px/1.15 var(--serif); color: var(--navy) !important; }
.events-page .podium__who span { display: block; margin-top: 5px; font-size: 14px; color: var(--muted) !important; }
.podium__bar { height: var(--hgt); clip-path: polygon(0 var(--top-l, 30%), 100% 0, 100% 100%, 0 100%); }
.podium__place--1 { order: 2; }
.podium__place--2 { order: 1; }
.podium__place--3 { order: 3; }
.podium__place--1 .podium__bar { --hgt: 256px; background: var(--bold-red, #D7263D); --top-l: 22%; }
.podium__place--2 .podium__bar { --hgt: 176px; background: var(--navy); --top-l: 30%; }
.podium__place--3 .podium__bar { --hgt: 128px; background: #2a4269; --top-l: 38%; }
@media (prefers-reduced-motion: no-preference) {
  .js-motion [data-rise]:not(.is-in) .podium__bar { transform: scaleY(0); }
  .js-motion [data-rise].is-in .podium:not([hidden]) .podium__bar { transform-origin: bottom; animation: pd-rise 900ms cubic-bezier(.19, 1, .22, 1) both; }
  .js-motion [data-rise].is-in .podium:not([hidden]) .podium__place--2 .podium__bar { animation-delay: 90ms; }
  .js-motion [data-rise].is-in .podium:not([hidden]) .podium__place--3 .podium__bar { animation-delay: 180ms; }
  .podium:not([hidden]) .podium__who { animation: pd-fade 600ms ease both 200ms; }
}
@keyframes pd-rise { from { transform: scaleY(0); } to { transform: none; } }
@keyframes pd-fade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (max-width: 900px) {
  .podium-wrap__head, .podium { grid-column: 1 / -1; }
  .podium { min-height: 0; gap: 6px; }
  .events-page .podium__who b { font-size: 16px; }
  .events-page .podium__who span { font-size: 12px; }
  .podium__place--1 .podium__bar { --hgt: 176px; }
  .podium__place--2 .podium__bar { --hgt: 128px; }
  .podium__place--3 .podium__bar { --hgt: 96px; }
}

.events-page .ed-block{border-top:1px solid var(--line);padding-top:30px;gap:48px}
.events-page .ed-photos img{border-radius:0}
.events-page .ed-copy,.events-page .ed-stats span,.events-page .item-sub{color:#30465f;font:16px/1.75 var(--sans)}
.events-page .ed-name{font:36px/1.2 var(--serif);color:var(--navy)}
.events-page .ed-date,.events-page .ed-stats b,.events-page .item-year{color:var(--maroon)}
.events-page .item-row{border-radius:0;border:1px solid var(--line)}
.events-page .item-row:hover{background:var(--cream)}
.events-page .item-row:hover .item-title{color:var(--navy)}
.events-page .item-row:hover .item-year{color:var(--maroon)}
.events-page .item-row:hover .item-sub{color:#30465f}

/* Use the available row width for Olympiad edition details. */
.events-page #olympiad .item-left{width:100%;flex-wrap:nowrap}
.events-page #olympiad .item-left>div:last-child{flex:1;min-width:0}
.events-page #olympiad .item-year{flex-shrink:0}
.events-page #olympiad .item-sub{max-width:none}
@media(max-width:600px){.events-page #olympiad .item-row-inner{padding:20px 16px}.events-page #olympiad .item-left{gap:14px}}
