.conference-archive{background:#fff;border:1px solid #dce4ed;border-radius:18px;overflow:hidden}
.conference-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:18px;background:#edf2f8;border-bottom:1px solid #dce4ed}
.conference-tabs[hidden],.conference-panel[hidden]{display:none!important}
.conference-tabs button{flex:1 1 180px;border:1px solid #cfdae7;border-radius:10px;background:#fff;color:#234f86;padding:14px 18px;font:700 1rem/1.4 system-ui;cursor:pointer}
.conference-tabs button:hover{background:#e1eaf5}
.conference-tabs button[aria-selected="true"]{background:#234f86;color:#fff;border-color:#234f86;box-shadow:inset 0 -3px #d8a94b}
.conference-tabs button:focus-visible,.conference-panel:focus-visible,.archive-year summary:focus-visible,.archive-table-wrap:focus-visible{outline:3px solid #bd761c;outline-offset:-3px}
.conference-panel{padding:clamp(20px,4vw,44px);color:#253d58}
.archive-heading{margin-bottom:26px}
.archive-heading>span{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#98651f}
.archive-heading h2{font:clamp(1.8rem,3vw,2.5rem)/1.25 Georgia,serif;color:#173b68;margin:10px 0}
.archive-heading p{color:#526172;line-height:1.7;margin:0}
.archive-years{display:grid;gap:12px}
.archive-year{border:1px solid #dce4ed;border-radius:10px;overflow:hidden}
.archive-year summary{padding:17px 20px;background:#f3f6fa;cursor:pointer;font-weight:700;color:#234f86}
.archive-year summary span{float:right;font-size:.85rem;font-weight:500;color:#526172;margin-left:12px}
.archive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;margin:0;padding:22px 24px 22px 42px;line-height:1.65}
.archive-list li{padding-left:4px;overflow-wrap:anywhere}
.archive-note{padding:20px;margin:0}
.archive-table-wrap{overflow-x:auto;border:1px solid #dce4ed;border-radius:10px}
.archive-table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.55}
.archive-table caption{padding:12px 18px;color:#526172;font-size:.85rem}
.archive-table th,.archive-table td{padding:18px;text-align:left;vertical-align:top}
.archive-table thead{background:#243f60;color:#fff;text-transform:uppercase;font-size:.8rem}
.archive-table tbody tr:nth-child(odd){background:#eff3f8}
.archive-table td:nth-child(2){min-width:170px}
.archive-table td:last-child{min-width:260px}
body.conference-page #panel-photos .conference-gallery{padding:0!important;margin:0!important;border:0!important;background:transparent!important}
@media(max-width:600px){.conference-tabs{padding:12px;gap:8px}.conference-tabs button{flex-basis:calc(50% - 8px);padding:12px 8px;font-size:.87rem}.archive-list{grid-template-columns:1fr}.archive-table th,.archive-table td{padding:14px}.archive-year summary{padding:16px}}

.conference-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
body.conference-page .archive-table thead th{color:#fff!important;background:#243f60}
@media(max-width:850px){.conference-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Let the journey banner and its text use the full content width. */
body.conference-page .conference-journey{width:100%;max-width:none;box-sizing:border-box}
body.conference-page .conference-journey p{width:100%;max-width:none;margin:0 auto!important}


/* Keep the journey sentence on one line on desktop. */
@media(min-width:1200px){body.conference-page .conference-journey p{font-size:clamp(.8rem,1.08vw,.95rem)!important;white-space:nowrap}}


/* Give the purpose section a quieter hierarchy beneath the page title. */
body.conference-page .conference-story h2{
  font-family:inherit!important;
  font-size:clamp(1.25rem,2vw,1.65rem)!important;
  font-weight:600!important;
  line-height:1.4!important;
  letter-spacing:normal!important;
  margin:0 0 16px!important;
  color:#29435f!important;
}
body.conference-page .conference-story>div{
  background:#fff!important;
  border-left:1px solid #d8e0ea!important;
  box-shadow:0 6px 20px rgba(19,39,66,.04)!important;
}
