/* Oratio 0.1.9: CSS only; supplied HTML, data, classes and links retained. */
.site-shell :is(.oratio-classic-widget,.oratio-modern-widget,.og-classic-list,.og-modern-list,.og-classic-detail,.og-modern-detail){min-width:0;overflow-wrap:anywhere}
.site-shell .oratio-classic-widget{padding:0 24px 24px;background:#fff;border-radius:18px}
.site-shell .oratio-classic-widget__date strong{color:var(--crasc-bordeaux)}
.site-shell .oratio-classic-widget__type{white-space:normal}
.site-shell .oratio-classic-widget__more a{color:var(--crasc-bordeaux)}
.site-shell .oratio-modern-widget__top{grid-template-columns:minmax(0,1.15fr) minmax(0,.9fr)}
.site-shell .oratio-modern-widget__row{grid-template-columns:minmax(100px,30%) minmax(0,1fr);padding:12px;background:#faf9f8;border-radius:12px;border-bottom:0}
.site-shell .oratio-modern-widget__row-meta{flex-wrap:wrap;opacity:1}
.site-shell :is(.oratio-modern-widget__row-meta b,.oratio-modern-widget__card-type,.og-modern-list__type){background:#f5eae6;color:var(--crasc-bordeaux)}
.site-shell :is(.oratio-modern-widget__card,.og-modern-list__card,.og-modern-list__featured){background:#fff;box-shadow:0 4px 16px rgb(0 0 0 / 5%)}
.site-shell .oratio-modern-widget__card-body{padding:16px}
.site-shell .oratio-modern-widget__card h3{font-size:1rem;line-height:1.5}
.site-shell :is(.oratio-modern-widget__all a,.og-modern-list__detail-link){border:1px solid var(--crasc-bordeaux);border-radius:9px;padding:10px 16px}
.site-shell .oratio-modern-widget__all a{color:var(--crasc-bordeaux)}
.site-shell .og-modern-list__detail-link{background:var(--crasc-bordeaux);color:#fff}
.site-shell :is(.oratio-modern-widget__datebox,.og-modern-list__datebox){left:auto;right:auto;inset-inline-start:12px}
.site-shell :is(.oratio-modern-widget__datebox,.og-modern-list__datebox,.og-modern-detail__date) strong{color:var(--crasc-bordeaux)}
.site-shell :is(.oratio-modern-widget__featured-media,.oratio-modern-widget__thumb,.oratio-modern-widget__card-media,.og-classic-list__poster,.og-classic-list__archive-media,.og-modern-list__featured-media,.og-modern-list__card-media,.og-modern-detail__media){aspect-ratio:1100 / 760}
.site-shell :is(.oratio-modern-widget__featured-media,.oratio-modern-widget__thumb,.oratio-modern-widget__card-media,.og-classic-list__poster,.og-classic-list__archive-media,.og-modern-list__featured-media,.og-modern-list__card-media,.og-modern-detail__media) img{display:block;width:100%;height:100%;object-fit:cover}
.site-shell .og-classic-detail__poster{aspect-ratio:1100 / 760;object-fit:cover}
.site-shell :is(.oratio-classic-widget,.oratio-modern-widget,.og-classic-list,.og-modern-list) a:focus-visible{outline:2px solid var(--crasc-bordeaux);outline-offset:3px}
@media(max-width:1000px){.site-shell .oratio-modern-widget__top{grid-template-columns:1fr}}
@media(max-width:620px){.site-shell .oratio-classic-widget{padding:0 14px 18px}.site-shell .oratio-modern-widget__row{grid-template-columns:100px minmax(0,1fr);gap:12px}}

/* Fix geometry: grid stretch and intrinsic image size must not override ratio. */
.site-shell :is(.oratio-modern-widget__featured-media,.oratio-modern-widget__thumb,.oratio-modern-widget__card-media,.og-classic-list__poster,.og-classic-list__archive-media,.og-modern-list__featured-media,.og-modern-list__card-media,.og-modern-detail__media){position:relative;display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:1100 / 760;align-self:start;overflow:hidden;box-sizing:border-box}
.site-shell :is(.oratio-modern-widget__featured-media,.oratio-modern-widget__thumb,.oratio-modern-widget__card-media,.og-classic-list__poster,.og-classic-list__archive-media,.og-modern-list__featured-media,.og-modern-list__card-media,.og-modern-detail__media)>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:center;margin:0}
.site-shell img.og-classic-detail__poster{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:1100 / 760;object-fit:cover;object-position:center}

/* User-requested presentation: full title remains in Module HTML. */
.site-shell :is(.oratio-classic-widget__body h3,.oratio-modern-widget__row h3,.oratio-modern-widget__card h3,.og-classic-list__body h3,.og-classic-list__archive-card h3,.og-modern-list__featured-body h2,.og-modern-list__card-body h3,.oratio-modern-widget__featured-copy strong,.oratio-modern-widget__featured-fallback strong){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
/* Oratio 0.1.9 emits upcoming in grid--4 and past in grid--3.
   Do not infer temporal status from dates or translated headings.
   Featured/widget cards have no explicit status: no datebox there. */
.site-shell .oratio-modern-widget__datebox,
.site-shell .og-modern-list__featured .og-modern-list__datebox,
.site-shell .og-modern-list__grid--4 .og-modern-list__datebox{display:none}
/* Past cards keep the supplied datebox. Avoid its duplicate text date
   only where the card actually contains a datebox; no-image cards keep their date. */
.site-shell .og-modern-list__grid--3 .og-modern-list__card:has(.og-modern-list__datebox) .og-modern-list__date-line{display:none}

/* Featured manifestation: information below the supplied poster. */
.site-shell .og-modern-list__featured{grid-template-columns:minmax(0,1fr)}
.site-shell .og-modern-list__featured-body{align-items:flex-start;justify-content:flex-start;padding:24px 28px}
.site-shell .og-modern-list__featured-body .og-modern-list__type{align-self:flex-start;max-width:100%}
@media(max-width:620px){.site-shell .og-modern-list__featured-body{padding:18px}}

/* 1.1.48: mixed editorial composition within Module monthly groups.
   Natural flex rows fill remaining width; no fixed heights, empty cells or reordering. */
.site-shell .og-modern-year__past>.og-modern-year__month{margin-block:26px;padding:0;border:0;background:transparent}
.site-shell .og-modern-year__past>.og-modern-year__month>h2{margin:0 0 14px;padding-block-end:10px;border-bottom:1px solid #ded8d5;color:#4a363b;font-size:22px;line-height:1.3}
.site-shell .og-modern-year__past>.og-modern-year__month .og-modern-list__grid{display:flex;flex-wrap:wrap;align-items:flex-start;gap:18px}
.site-shell .og-modern-year__month .og-modern-list__card{flex:1 1 calc(25% - 18px);min-width:230px;max-width:100%;opacity:1;border:1px solid #e7e1de;border-radius:10px;box-shadow:0 2px 8px rgb(0 0 0 / 3%)}
.site-shell .og-modern-year__month .og-modern-list__card-body{padding:14px 16px}
.site-shell .og-modern-year__month .og-modern-list__card h3{font-size:16px;line-height:1.4;margin-block:9px}
.site-shell .og-modern-year__month .og-modern-list__date-line{display:block;font-size:13px;line-height:1.5}
/* Larger cards occupy a wider share among smaller siblings. */
.site-shell .og-modern-year__month:nth-child(3n+1) .og-modern-list__card:nth-child(5n+1){flex-basis:calc(42% - 18px)}
.site-shell .og-modern-year__month:nth-child(3n+2) .og-modern-list__card:nth-child(5n+2){flex-basis:calc(40% - 18px)}
.site-shell .og-modern-year__month:nth-child(3n) .og-modern-list__card:nth-child(5n+3){flex-basis:calc(44% - 18px)}
/* A compact horizontal card adds another format within the same group. */
.site-shell .og-modern-year__month .og-modern-list__card:nth-child(5n+4){display:flex;align-items:center;flex-basis:calc(36% - 18px)}
.site-shell .og-modern-year__month .og-modern-list__card:nth-child(5n+4) .og-modern-list__card-media{flex:0 0 42%;width:42%}
.site-shell .og-modern-year__month .og-modern-list__card:nth-child(5n+4) .og-modern-list__card-body{flex:1;min-width:0;padding:12px}
/* Small groups use a compact row rather than an enormous single poster. */
.site-shell .og-modern-year__month .og-modern-list__card:only-child{display:flex;align-items:center;flex-basis:100%}
.site-shell .og-modern-year__month .og-modern-list__card:only-child .og-modern-list__card-media{flex:0 0 32%;width:32%;max-width:380px}
.site-shell .og-modern-year__month .og-modern-list__card:only-child .og-modern-list__card-body{flex:1;min-width:0;padding:20px}
.site-shell .og-modern-year__month:nth-child(even) .og-modern-list__card:only-child{flex-direction:row-reverse}
/* Focus remains prominent without stretching its poster across the entire site. */
.site-shell .og-modern-year__focus .og-modern-list__featured{display:flex;align-items:center;gap:0}
.site-shell .og-modern-year__focus .og-modern-list__featured-media{flex:0 0 48%;width:48%}
.site-shell .og-modern-year__focus .og-modern-list__featured-body{flex:1;min-width:0;padding:24px}
.site-shell .og-modern-year__focus .og-modern-list__featured:nth-child(even){flex-direction:row-reverse}
@media(max-width:1000px){.site-shell .og-modern-year__past>.og-modern-year__month .og-modern-list__card:nth-child(n){flex-basis:calc(50% - 18px);min-width:200px}.site-shell .og-modern-year__past>.og-modern-year__month .og-modern-list__card:only-child{flex-basis:100%}.site-shell .og-modern-year__focus .og-modern-list__featured-body{padding:18px}}
@media(max-width:650px){.site-shell .og-modern-year__past>.og-modern-year__month .og-modern-list__grid{gap:14px}.site-shell .og-modern-year__past>.og-modern-year__month .og-modern-list__card:nth-child(n){display:block;flex-basis:100%;min-width:0}.site-shell .og-modern-year__past>.og-modern-year__month .og-modern-list__card:nth-child(n) .og-modern-list__card-media{width:100%;max-width:none}.site-shell .og-modern-year__past>.og-modern-year__month>h2{font-size:20px}.site-shell .og-modern-year__focus .og-modern-list__featured{display:block}.site-shell .og-modern-year__focus .og-modern-list__featured-media{width:100%}}
