.sr-oclocher-news { overflow-wrap:anywhere; }
.sr-oclocher-feed > .sr-oclocher-news + .sr-oclocher-news { margin-top:2em; }
.sr-oclocher-news .sr-oclocher-image { display:block; max-width:100%; width:100%; height:auto; margin:0 auto 1em; }
.sr-oclocher-video { width:100%; aspect-ratio:16 / 9; background:#000; }
.sr-oclocher-video iframe, .sr-oclocher-video video { display:block; width:100%; height:100%; border:0; }
.sr-oclocher-news .sr-oclocher-video-link { margin-top:.5em; }
.sr-diaporama .sr-oclocher-news .sr-oclocher-video-link { font-size:.8em; }
.sr-diaporama .sr-oclocher-news { font-size:clamp(20px,2.3vw,32px); line-height:1.5; }
.sr-diaporama .sr-oclocher-news h1 { font-size:clamp(30px,3.5vw,48px); line-height:1.2; margin-top:0; }
.sr-diaporama .sr-oclocher-news .sr-oclocher-image { width:auto; height:auto; max-width:100%; max-height:calc(var(--sr-canvas-height,100vh) * .6); object-fit:contain; }

.sr-diaporama .sr-oclocher-agenda-section + .sr-oclocher-agenda-section { margin-top:1.5em; }
.sr-diaporama .sr-oclocher-agenda .sr-oclocher-news h2 { font-size:1.1em; margin:0 0 .25em; }
.sr-diaporama .sr-oclocher-agenda .sr-oclocher-date { font-weight:600; margin:.25em 0; }
.sr-diaporama .sr-oclocher-agenda .sr-oclocher-location { margin:.25em 0; }
.sr-diaporama .sr-oclocher-agenda .sr-oclocher-feed > article + article { margin-top:1em; padding-top:.6em; border-top:1px solid #ddd; }

/* Shared table columns align every day's appointments, including two-digit dates. */
.sr-oclocher-grouped .sr-agenda-table { table-layout:fixed; width:100%; border-collapse:collapse; border:0; margin:0; font:inherit; color:inherit; background:transparent; }
.sr-oclocher-grouped .sr-agenda-date-col { width:7em; }
.sr-oclocher-grouped .sr-agenda-table th,
.sr-oclocher-grouped .sr-agenda-table td { vertical-align:top; text-align:left; border:0; border-bottom:1px solid #e5e0e8; padding:.65em 0; font:inherit; line-height:inherit; background:transparent; }
.sr-oclocher-grouped .sr-agenda-table th { padding-right:.6em; font-weight:700; }
.sr-oclocher-grouped .sr-agenda-table th time { white-space:nowrap; }
.sr-oclocher-grouped .sr-agenda-table td { overflow-wrap:anywhere; }
.sr-oclocher-grouped .sr-agenda-day ul { list-style:none; padding:0; margin:0; }
.sr-oclocher-grouped .sr-agenda-day li { display:block; margin:0; padding:0; }
.sr-oclocher-grouped .sr-agenda-day li + li { margin-top:.3em; }
.sr-oclocher-grouped .sr-agenda-item-hour { white-space:nowrap; }
.sr-oclocher-grouped .sr-agenda-item-warning { font-size:.9em; }
.sr-agenda-caption { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
@media(max-width:480px) { .sr-oclocher-grouped .sr-agenda-date-col { width:7em; } }

/* Keep theme table borders from adding an outer frame or a top rule. */
.sr-oclocher-grouped table.sr-agenda-table,
.sr-oclocher-grouped table.sr-agenda-table > caption,
.sr-oclocher-grouped table.sr-agenda-table > colgroup,
.sr-oclocher-grouped table.sr-agenda-table col,
.sr-oclocher-grouped table.sr-agenda-table > tbody,
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr,
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr > th,
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr > td { border:0 !important; box-shadow:none !important; outline:0; }
.sr-oclocher-grouped table.sr-agenda-table { border-spacing:0 !important; }
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr + tr > th,
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr + tr > td { border-top:1px solid #e5e0e8 !important; }
.sr-oclocher-grouped table.sr-agenda-table .sr-agenda-date-col { width:7em !important; }
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr > th { width:7em; padding:.65em .6em .65em 0 !important; box-sizing:border-box; }
.sr-oclocher-grouped table.sr-agenda-table > tbody > tr > td { padding:.65em 0 !important; }

/* Screen agenda: dates and appointments share the configured list text size. */
.sr-diaporama .sr-oclocher-agenda table.sr-agenda-table { font-size:var(--sr-agenda-fit-text-size,var(--sr-agenda-text-size,1em)) !important; }
.sr-diaporama .sr-oclocher-agenda table.sr-agenda-table :is(th,td,ul,li,time,span) { font-size:inherit !important; line-height:inherit; }

/* Compact spacing for the public combined agenda. */
body:not(.sr-diaporama) .sr-oclocher-grouped table.sr-agenda-table > tbody > tr > th { padding:.65em .6em .65em 0 !important; }
body:not(.sr-diaporama) .sr-oclocher-grouped table.sr-agenda-table > tbody > tr > td { padding:.65em 0 !important; }
body:not(.sr-diaporama) .sr-oclocher-grouped table.sr-agenda-table ul { margin:0 !important; padding:0 !important; }
body:not(.sr-diaporama) .sr-oclocher-grouped table.sr-agenda-table li { margin:0 !important; padding:0 !important; }
body:not(.sr-diaporama) .sr-oclocher-grouped table.sr-agenda-table li + li { margin-top:.3em !important; }

.sr-diaporama .canva-direct.sr-agenda-viewport { overflow:hidden; }
.sr-diaporama .sr-oclocher-agenda { display:flow-root; transform-origin:top left; }
.sr-diaporama .sr-oclocher-agenda > h1, .sr-diaporama .sr-agenda-upcoming > h1 { font-size:var(--sr-agenda-fit-title-size,var(--sr-agenda-title-base-size,clamp(30px,3.5vw,48px))) !important; }

.sr-diaporama .canva-direct.sr-news-viewport { overflow:hidden; }
.sr-diaporama .sr-news-viewport > article.sr-oclocher-news { display:flow-root; margin:0; transform-origin:top center; }

.sr-oclocher-read-more { margin-top:1em; }
.sr-diaporama .sr-oclocher-read-more { font-weight:400; }

.sr-oclocher-news .sr-oclocher-meta { margin:.3em 0 1em; }
.sr-diaporama .sr-oclocher-news .sr-oclocher-meta { font-size:.75em; line-height:1.4; color:#626262; }
.sr-diaporama .sr-oclocher-news p.sr-oclocher-meta { font-size:.75em !important; }

/* Screen calendar: one compact card per date, entirely non-interactive. */
.sr-diaporama .sr-oclocher-agenda .sr-calendar-screen { font-size:var(--sr-agenda-fit-text-size,var(--sr-screen-agenda-base-size,24px)) !important; line-height:1.12; }


/* Public news shortcode: modest spacing and bounded images on larger screens. */
.sr-oclocher-shortcode { padding-top:10px; }
.sr-oclocher-shortcode > .sr-oclocher-news .sr-oclocher-image { width:100%; height:auto; max-width:1000px; max-height:none; object-fit:contain; }
@media (max-width:767px) {
    .sr-oclocher-shortcode > .sr-oclocher-news .sr-oclocher-image { width:100%; max-width:1000px; height:auto; max-height:none; }
}

/* Apply the public image bounds to embedded media and their player container. */
.sr-oclocher-shortcode > .sr-oclocher-news :is(.sr-oclocher-video,iframe,video,audio,embed,object) { display:block; width:100%; max-width:min(100%,1000px); max-height:600px; margin-left:auto; margin-right:auto; }
.sr-oclocher-shortcode > .sr-oclocher-news video { object-fit:contain; }
@media (max-width:767px) {
    .sr-oclocher-shortcode > .sr-oclocher-news :is(.sr-oclocher-video,iframe,video,audio,embed,object) { max-width:100%; max-height:none; }
}

.sr-oclocher-meta :is(.sr-oclocher-event-meta,.sr-oclocher-location-meta) { display:block; margin-top:.2em; color:inherit; font:inherit; }
.sr-oclocher-meta :is(.sr-oclocher-event-meta,.sr-oclocher-location-meta) > .sr-agenda-icon { display:inline-block; width:1em; height:1em; margin-right:.4em; vertical-align:-.12em; color:inherit; }

.sr-oclocher-news .sr-oclocher-screen-meta > span { display:inline; margin-top:0; }
.sr-oclocher-news .sr-oclocher-screen-meta > span + span::before { content:" · "; white-space:pre; }

.sr-oclocher-news .sr-oclocher-facts { margin-top:1em; }

/* Markdown headings scale together with the complete screen content. */
.sr-diaporama .sr-oclocher-agenda .sr-upcoming-copy :is(h1,h2,h3,h4,h5,h6) { font-size:calc(var(--sr-agenda-fit-text-size,28px) * 1.12);line-height:1.2;margin:.4em 0 .2em; }
.sr-diaporama .sr-oclocher-agenda .sr-upcoming-copy :is(p,li,blockquote,pre) { font-size:inherit; }
.sr-diaporama .sr-oclocher-news pre, .sr-sheet-description pre { white-space:pre-wrap;overflow-wrap:anywhere; }

/* Divi/FitVids may wrap an iframe after initial rendering. The plugin's
   aspect-ratio box remains the single source of the player's dimensions. */
.sr-oclocher-video { position:relative; }
.sr-oclocher-video > .fluid-width-video-wrapper {
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    padding:0 !important;
    margin:0 !important;
    aspect-ratio:auto !important;
}
.sr-oclocher-video > .fluid-width-video-wrapper > iframe {
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
}

/* Spotify only in news shortcodes; keep a fixed audio-player height with FitVids. */
.sr-oclocher-shortcode .sr-oclocher-audio { position:relative;width:100%;max-width:1000px;height:152px;margin:16px auto; }
.sr-oclocher-shortcode .sr-oclocher-audio > .fluid-width-video-wrapper { position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;padding:0 !important;margin:0 !important; }
.sr-oclocher-shortcode .sr-oclocher-audio iframe { display:block;position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;margin:0 !important;border:0;border-radius:12px; }
@media(max-width:767px) { .sr-oclocher-shortcode .sr-oclocher-audio { max-width:100%; } }

.sr-oclocher-shortcode .sr-oclocher-pagination { display:block;float:none;clear:both;position:relative;width:100%;max-width:none;box-sizing:border-box;margin:2em 0 0;padding-top:1em;padding-bottom:32px;font:inherit;color:inherit; }
.sr-oclocher-pagination .sr-pagination-count { margin:0 0 .6em;font-size:.9em;text-align:right; }
.sr-oclocher-pagination .nav-links { display:flex;float:none;width:100%;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.4em; }
.sr-oclocher-pagination .page-numbers { display:inline-flex;align-items:center;justify-content:center;min-width:2.2em;min-height:2.2em;padding:.25em .6em;border:1px solid currentColor;border-radius:3px;font:inherit;line-height:1.4;text-decoration:none; }
.sr-oclocher-pagination .page-numbers.current { font-weight:700;border-width:2px; }
.sr-oclocher-pagination .page-numbers.dots { border-color:transparent;min-width:1em; }
.sr-oclocher-pagination a.page-numbers:focus-visible { outline:2px solid currentColor;outline-offset:3px; }
.sr-oclocher-shortcode[id] { scroll-margin-top:2em; }
.sr-oclocher-shortcode { display:flow-root;clear:both; }

/* Optional news cards, confined to this shortcode. */
.sr-oclocher-shortcode .sr-news-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;align-items:stretch; }
.sr-oclocher-shortcode .sr-news-grid > .sr-oclocher-news { min-width:0;margin:0;padding:20px;border:1px solid #dcdcde;border-radius:12px;display:flex;flex-direction:column;box-sizing:border-box; }
.sr-oclocher-shortcode .sr-news-grid > .sr-oclocher-news > h2 { margin-top:0; }
.sr-oclocher-shortcode .sr-news-grid .sr-oclocher-image { display:block;width:100%;max-width:1000px;height:auto;max-height:none;margin:0 0 16px;border-radius:8px; }
.sr-oclocher-shortcode .sr-news-grid :is(.sr-oclocher-video,.sr-oclocher-audio,iframe,video,audio,embed,object) { max-width:100%; }
@media(max-width:600px) { .sr-oclocher-shortcode .sr-news-grid { grid-template-columns:minmax(0,1fr);gap:20px; } }

.sr-oclocher-shortcode .sr-news-image-link { display:block;max-width:1000px;width:100%;margin-inline:auto;cursor:zoom-in; }
.sr-oclocher-shortcode .sr-news-image-link:focus-visible { outline:2px solid currentColor;outline-offset:4px; }
dialog.sr-news-lightbox { position:fixed;inset:0;box-sizing:border-box;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;margin:0;padding:48px 16px 16px;border:0;background:rgba(0,0,0,.92);color:#fff;overflow:auto; }
dialog.sr-news-lightbox[open] { display:flex;align-items:center;justify-content:center; }
dialog.sr-news-lightbox::backdrop { background:rgba(0,0,0,.85); }
dialog.sr-news-lightbox > img { display:block;max-width:100%;max-height:calc(100dvh - 64px);width:auto;height:auto;object-fit:contain;margin:auto; }
dialog.sr-news-lightbox .sr-news-lightbox-close { position:fixed;top:8px;right:16px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid #fff;border-radius:50%;background:#222;color:#fff;font:32px/1 sans-serif;cursor:pointer; }
dialog.sr-news-lightbox .sr-news-lightbox-close:focus-visible { outline:3px solid #fff;outline-offset:3px; }

.sr-oclocher-shortcode .sr-news-image-link { border:0 !important;box-shadow:none !important; }
.sr-oclocher-shortcode .sr-news-image-link:focus:not(:focus-visible),
.sr-oclocher-shortcode .sr-news-image-link:active,
.sr-oclocher-shortcode .sr-news-image-link img { outline:none !important;border:0 !important;box-shadow:none !important; }

/* Local, neutral placeholder; no third-party thumbnail requested. */
.sr-oclocher-shortcode .sr-consent-placeholder.cmplz-blocked-content-container { background:#252525 !important;background-image:none !important;color:#fff; }
.sr-oclocher-shortcode .sr-consent-placeholder .cmplz-blocked-content-notice { display:flex !important;flex-direction:column;align-items:center;justify-content:center;gap:10px;position:absolute !important;inset:0 !important;transform:none !important;width:100% !important;max-width:none !important;height:100% !important;box-sizing:border-box;margin:0 !important;padding:20px !important;background:#252525 !important;color:#fff !important;border:0;border-radius:0;text-align:center;font:inherit; }
.sr-oclocher-shortcode .sr-consent-placeholder .cmplz-blocked-content-notice a { color:#fff; }
.sr-oclocher-shortcode .sr-consent-service { display:flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:1.05em; }
.sr-oclocher-shortcode .sr-consent-service svg { flex:none;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round; }
.sr-oclocher-shortcode .sr-oclocher-audio.sr-consent-placeholder.cmplz-blocked-content-container { min-height:220px;height:220px; }

/* Optional compact slideshow agenda; remains noninteractive. */

/* Classic slideshow view matches the shortcode's separate appointment cards. */
