/* Compact gallery; all photographs remain available without JavaScript. */
.news-text .ipco-conference-gallery {
    width: 100%; max-width: 520px; margin: 0 auto 32px;
}
.news-text .ipco-conference-gallery .ipco-conference-gallery__list {
    display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px;
    list-style: none; margin: 0; padding: 0;
}
.news-text .ipco-conference-gallery .ipco-conference-gallery__item {
    display: block; list-style: none; margin: 0; padding: 0;
}
.ipco-conference-gallery .ipco-conference-gallery__figure { margin: 0; padding: 0; }
.ipco-conference-gallery .ipco-conference-gallery__image {
    display: block; width: 100%; max-width: 100%; height: auto;
    max-height: 320px; object-fit: contain; margin: 0; background: #f3f4f6;
}
.ipco-conference-gallery.is-carousel .ipco-conference-gallery__list { display: block; }
.ipco-conference-gallery.is-carousel .ipco-conference-gallery__image { height: 300px; }
.ipco-conference-gallery .ipco-conference-gallery__item[hidden] { display: none !important; }
.ipco-conference-gallery .ipco-conference-gallery__caption {
    margin: 8px 0 0; font-size: 15px; line-height: 1.5; color: #4a4a4a;
}
.ipco-conference-gallery .ipco-conference-gallery__controls {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px;
}
.ipco-conference-gallery .ipco-conference-gallery__button {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; padding: 8px 14px; border: 1px solid #002060;
    border-radius: 5px; background: #002060; color: #fff;
    font: inherit; font-size: 15px; line-height: 1.4; cursor: pointer;
}
.news-text .ipco-conference-gallery .ipco-conference-gallery__counter {
    margin: 0; font-size: 15px; line-height: 1.4; color: #333; text-align: center;
}
.ipco-conference-gallery .ipco-conference-gallery__thumbnails {
    display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px;
}
.ipco-conference-gallery .ipco-conference-gallery__thumbnail {
    display: block; width: 76px; height: 56px; padding: 2px;
    border: 2px solid transparent; border-radius: 4px;
    background: #f3f4f6; cursor: pointer;
}
.ipco-conference-gallery .ipco-conference-gallery__thumbnail[aria-pressed="true"] { border-color: #002060; }
.ipco-conference-gallery .ipco-conference-gallery__thumbnail img {
    display: block; width: 100%; height: 100%; object-fit: cover;
}
.ipco-conference-gallery button:focus-visible { outline: 3px solid #ffbf47; outline-offset: 3px; }
/* Retain the old DOM so its inline slideshow code can finish safely. */
.news-text > .ipco-conference-gallery ~ .gallery { display: none !important; }

/* Shared news cards: allow long headlines to wrap; keep dates in normal flow. */
.single-post .related .related-list {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px;
    margin: 0 0 40px; padding: 0; list-style: none;
}
.single-post .related .related-list::before,
.single-post .related .related-list::after {
    content: none; display: none;
}
.single-post .related .related-list .related-list-item {
    display: flex; float: none; width: auto; min-width: 0;
    margin: 0; padding: 0; list-style: none;
}
.single-post .related .related-list .related-list-item-link {
    display: flex; flex-direction: column; width: 100%; max-width: none;
    min-height: 0; height: 100%; margin: 0;
    border: 1px solid #d9dee7; border-radius: 6px;
    overflow: hidden; background: #fff; text-decoration: none;
}
.single-post .related .related-list .related-list-item-text {
    display: flex; flex: 1; flex-direction: column; padding: 22px;
}
.single-post .related .related-list .related-list-item-headline {
    margin: 0 0 16px; font-size: 18px; line-height: 1.45;
    color: #002060; overflow-wrap: anywhere;
}
.single-post .related .related-list .related-list-item-details-bar {
    position: static; bottom: auto; width: auto; margin-top: auto; padding-top: 8px;
}
.single-post .related .related-list .related-list-item-date {
    display: block; font-size: 14px; line-height: 1.5; color: #4a4a4a;
}
.single-post .related .related-list .related-list-item-link:focus-visible {
    outline: 3px solid #ffbf47; outline-offset: 3px;
}
@media (max-width: 735px) {
    .ipco-conference-gallery.is-carousel .ipco-conference-gallery__image { height: clamp(180px, 57vw, 280px); }
    .ipco-conference-gallery .ipco-conference-gallery__controls { gap: 8px; }
    .ipco-conference-gallery .ipco-conference-gallery__button { padding: 8px 10px; }
    .single-post .related .related-list { grid-template-columns: minmax(0, 1fr); }
}
