.agenda-page{background:#fff;color:#253144;font-family:Roboto,Arial,sans-serif;padding:64px 20px 100px}.agenda-wrap{max-width:1050px;margin:auto}.agenda-back{color:#386a92;font-size:14px}.agenda-header{margin:42px 0 36px;max-width:900px}.agenda-eyebrow{color:#2581a5;font-size:13px;font-weight:700;letter-spacing:.12em}.agenda-header h1{font-family:Montserrat,Arial,sans-serif;font-size:clamp(32px,4vw,48px);line-height:1.2;margin:16px 0 20px}.agenda-location{font-size:18px;line-height:1.6;color:#647288}.agenda-hero{display:block;width:100%;height:auto}.agenda-intro{max-width:850px;margin:40px auto 65px;font-size:17px;line-height:1.85;color:#46556a}.agenda-intro p{margin:0 0 20px}.agenda-page h2{font:700 30px/1.3 Montserrat,Arial,sans-serif;margin:0 0 22px}.agenda-flagship{margin-bottom:70px}.agenda-table-wrap{overflow-x:auto}.agenda-page table{width:100%;border-collapse:collapse;min-width:700px;font-size:15px;line-height:1.5}.agenda-page th,.agenda-page td{text-align:left;padding:16px;border-bottom:1px solid #dce4e9;vertical-align:top}.agenda-page th{background:#eff5f7;color:#253144}.agenda-venue{font-weight:700;font-size:17px}.agenda-note{color:#647288;font-size:14px;line-height:1.6;margin:12px 0 32px}.agenda-day{border-top:2px solid #2b839f;padding:22px 0 12px}.agenda-day>h3{font:700 22px/1.4 Montserrat,Arial,sans-serif;margin:0 0 10px}.agenda-day>h3 span{display:block;font:400 15px/1.5 Roboto,Arial,sans-serif;color:#647288;margin-top:4px}.agenda-event{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid #e4e9ed}.agenda-event time{font-weight:700;color:#287a96}.agenda-event h3{font:700 17px/1.5 Montserrat,Arial,sans-serif;margin:0 0 6px}.agenda-event p{font-size:15px;line-height:1.5;color:#647288;margin:0}@media(max-width:600px){.agenda-page{padding:35px 18px 60px}.agenda-header{margin:30px 0}.agenda-event{grid-template-columns:1fr;gap:6px}.agenda-page h2{font-size:25px}.agenda-intro{margin:28px auto 45px}}

/* Keep the existing news detail layout while styling the agenda itself. */
.agenda-content .agenda-hero{display:block;width:100%;height:auto;margin:30px auto}.agenda-content .agenda-intro{margin:32px auto 60px}.agenda-content .agenda-intro p,.agenda-content .agenda-location{line-height:1.8}.news-main .agenda-content h2{font:700 28px/1.3 Montserrat,Arial,sans-serif;text-align:center;margin:0 0 22px}.agenda-content .agenda-flagship{margin-bottom:60px}.agenda-content .agenda-table-wrap{overflow-x:auto}.agenda-content table{width:100%;min-width:700px;border-collapse:collapse;font-size:15px;line-height:1.5}.agenda-content th,.agenda-content td{padding:16px;text-align:left;vertical-align:top;border-bottom:1px solid #dce4e9}.agenda-content th{background:#eff5f7}.agenda-content .agenda-day{border-top:2px solid #2b839f;padding:22px 0 12px}.agenda-content .agenda-day>h3{font:700 22px/1.4 Montserrat,Arial,sans-serif;margin:0 0 10px}.agenda-content .agenda-day>h3 span{display:block;font:400 15px/1.5 Roboto,Arial,sans-serif;color:#647288;margin-top:4px}.agenda-content .agenda-event{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid #e4e9ed}.agenda-content .agenda-event time{font-weight:700;color:#287a96}.agenda-content .agenda-event h3{font:700 17px/1.5 Montserrat,Arial,sans-serif;margin:0 0 6px}.agenda-content .agenda-event p{font-size:15px;line-height:1.5;color:#647288;margin:0}.agenda-content .agenda-note{font-size:14px;color:#647288}.agenda-content .agenda-venue{font-weight:700}@media(max-width:600px){.agenda-content .agenda-event{grid-template-columns:1fr;gap:6px}}

.agenda-content table { background-color: #AFD4E1; }
.agenda-content th { background-color: #AFD4E1; color: #102f35; }
.agenda-content .agenda-theme th { background-color: #AFD4E1; color: #163a3e; }
.agenda-content td, .agenda-content th { border-bottom-color: #b8dfe1; }

.news-main.cop31-news-main { width: calc(100% - 30px); max-width: 1200px; }

.news-content.agenda-content { width: 100%; max-width: 1200px; }

/* COP31 agenda tables */
.agenda-content table { background: #fff; border: 1px solid #d5e8f1; }
.agenda-content thead th { background: #0C79C0; color: #fff; font-weight: 700; }
.agenda-content tbody td { background: #f5fafc; color: #253d50; border-bottom: 1px solid #d5e8f1; }
.agenda-content tbody tr:nth-child(even) td { background: #eaf5f9; }
.agenda-content .agenda-theme th { background: #AFD4E1; color: #123e59; border-bottom: 1px solid #98c6d7; }
.agenda-content th, .agenda-content td { line-height: 1.55; }

.agenda-content .agenda-intro { max-width: 1200px; }

.agenda-flagship table th:nth-child(2),
.agenda-flagship table td:nth-child(2),
.agenda-content section:not(.agenda-flagship) table thead th:first-child,
.agenda-content section:not(.agenda-flagship) table td:first-child { min-width: 150px; white-space: nowrap; }

.agenda-flagship table th:first-child,
.agenda-flagship table td:first-child { min-width: 80px; white-space: nowrap; }

/* Give session titles more room in the pavilion agenda. */
.agenda-content section:not(.agenda-flagship) table { table-layout: fixed; }
.agenda-content section:not(.agenda-flagship) thead th:nth-child(1) { width: 150px; }
.agenda-content section:not(.agenda-flagship) thead th:nth-child(2) { width: 40%; }


/* Stack each event on narrow screens so all details fit without sideways scrolling. */
@media (max-width: 600px) {
  .agenda-content .agenda-table-wrap { overflow-x: visible; }
  .agenda-content table, .agenda-content section:not(.agenda-flagship) table { display: block; min-width: 0; table-layout: auto; border: 0; }
  .agenda-content thead { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .agenda-content tbody, .agenda-content tbody tr, .agenda-content tbody td, .agenda-content .agenda-theme th { display: block; }
  .agenda-content tbody tr:not(.agenda-theme) { margin-bottom: 12px; border: 1px solid #d5e8f1; }
  .agenda-content tbody td, .agenda-flagship table td:first-child, .agenda-flagship table td:nth-child(2), .agenda-content section:not(.agenda-flagship) table td:first-child { min-width: 0; padding: 9px 12px; white-space: normal; overflow-wrap: anywhere; }
  .agenda-content tbody td::before { display: block; margin-bottom: 2px; color: #527184; font-size: 12px; font-weight: 700; }
  .agenda-flagship tbody td:nth-child(1)::before { content: 'Date'; }
  .agenda-flagship tbody td:nth-child(2)::before { content: 'Time'; }
  .agenda-flagship tbody td:nth-child(3)::before { content: 'Host organization(s)'; }
  .agenda-flagship tbody td:nth-child(4)::before { content: 'Session'; }
  .agenda-flagship tbody td:nth-child(5)::before { content: 'Location'; }
  .agenda-content section:not(.agenda-flagship) tbody td:nth-child(1)::before { content: 'Time'; }
  .agenda-content section:not(.agenda-flagship) tbody td:nth-child(2)::before { content: 'Host organization(s)'; }
  .agenda-content section:not(.agenda-flagship) tbody td:nth-child(3)::before { content: 'Session'; }
  .agenda-content .agenda-theme th { padding: 12px; white-space: normal; }
}

@media (max-width: 600px) {
  .agenda-content section:not(.agenda-flagship) tbody tr:not(.agenda-theme) { margin-bottom: 0; border-top: 0; }
  .agenda-content section:not(.agenda-flagship) tbody tr.agenda-theme:not(:first-child) { margin-top: 12px; }
}

/* Four-column pavilion agenda: column widths apply only to the desktop table. */
@media (min-width: 601px) {
  .agenda-content section:not(.agenda-flagship) table.agenda-pavilion-table { min-width: 800px; table-layout: fixed; }
  .agenda-content .agenda-pavilion-table thead th:nth-child(1) { width: 14%; }
  .agenda-content .agenda-pavilion-table thead th:nth-child(2) { width: 27%; }
  .agenda-content .agenda-pavilion-table thead th:nth-child(3) { width: auto; }
  .agenda-content .agenda-pavilion-table thead th:nth-child(4) { width: 140px; box-sizing: border-box; white-space: nowrap; }
}

/* Every mobile card field and its background fills the available card width. */
@media (max-width: 600px) {
  .agenda-content table,
  .agenda-content tbody,
  .agenda-content tbody tr,
  .agenda-content tbody td,
  .agenda-content .agenda-theme th {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .agenda-content .agenda-pavilion-table tbody td:nth-child(4)::before { content: 'Thematic Axes'; white-space: nowrap; }
  .agenda-content .agenda-pavilion-table tbody td:nth-child(4):empty { display: none; }
}
