/* ==========================================================================
   Laravel integration — small additions on top of main.css (2026 brand).
   main.css is kept as delivered; anything specific to this site lives here.
   ========================================================================== */

.prog__kicker { margin: 0 0 4px; font-size: .85rem; font-weight: 600; color: var(--gold-ink); }
.drawer__sub a { padding-inline-start: 18px; font-size: .95em; color: var(--ink-2); }

/* Program / event details box */
.info-list { margin: 0 0 20px; }
.info-list > div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.info-list > div:last-child { border-bottom: 0; }
.info-list dt { color: var(--ink-2); font-size: .95rem; }
.info-list dd { margin: 0; font-weight: 600; color: var(--plum); text-align: end; }
.program-body--more { margin-top: 28px; }

/* Quotes in news and events */
.quote { margin: 32px 0; padding: 22px 28px; background: var(--white); border-inline-start: 4px solid var(--gold); font-size: 1.15rem; font-weight: 500; color: var(--plum); }
.quote p { margin: 0; }
.quote cite { display: block; margin-top: 8px; font-size: .9rem; font-style: normal; color: var(--gold-ink); }

/* News: search, categories and tags */
.news-tools { display: grid; gap: 20px; margin-bottom: 36px; }
.news-search { display: flex; gap: 10px; max-width: 560px; }
.news-search input { flex: 1; min-width: 0; min-height: 48px; padding: 0 16px; border: 1.5px solid #D5C8BB; border-radius: var(--radius); background: var(--white); font: inherit; }
.news-search input:focus { outline: 2px solid var(--plum); outline-offset: 1px; border-color: var(--plum); }
.news-tools .filter { margin: 0; }
a.filter__chip { text-decoration: none; color: inherit; }
a.filter__chip[aria-current="true"] { background: var(--plum); border-color: var(--plum); color: var(--white); }
a.filter__chip[aria-current="true"] span { color: var(--gold); }
.tag-cloud { margin-top: 56px; }
.track-list a { color: inherit; text-decoration: none; }
.track-list a:hover { text-decoration: underline; }
.article__tags { margin-top: 28px; }
.jump a[aria-current="page"] { background: var(--plum); border-color: var(--plum); color: var(--white); }
.jump a[aria-current="page"] span { color: var(--gold); }

/* Pagination */
.pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; margin-top: 48px; }
.pagination__pages { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.pagination__page, .pagination__step, .pagination__gap {
  display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 14px;
  border: 1px solid var(--line); border-radius: var(--radius); background: var(--white);
  color: var(--plum); font-weight: 600; text-decoration: none;
}
.pagination__page { font-family: var(--font-en); }
.pagination__page:hover, .pagination__step:hover { border-color: var(--plum); }
.pagination__page.is-current { background: var(--plum); border-color: var(--plum); color: var(--white); }
.pagination__step.is-disabled { opacity: .45; pointer-events: none; }
.pagination__gap { border-color: transparent; background: none; }

/* Registration */
.fieldset [data-req-for] { margin-top: 8px; }
.field input[readonly] { background: var(--sand); color: var(--ink-2); cursor: not-allowed; }
.thanks .steps-next { margin-bottom: 28px; }

/* Program prev / next */
.pager .btn { max-width: 48%; white-space: normal; text-align: center; }
@media (max-width: 680px) {
  .pager { flex-direction: column; }
  .pager .btn { max-width: none; }
  .news-search { max-width: none; }
}
