/* Layout only: colors, fonts and links inherit from the active theme. */
.ecos-single-layout {
    box-sizing: border-box;
    padding-block: clamp(2rem, 5vw, 4rem);
    float: none;
    clear: both;
}
.ecos-single-event { width: 100%; min-width: 0; }
.ecos-single-event__title { overflow-wrap: anywhere; }
.ecos-single-event__image { margin: 1.5rem 0; }
.ecos-single-event__image img { display: block; max-width: 100%; height: auto; }
.ecos-single-event__content { overflow-wrap: break-word; }
.ecos-single-event__header { margin-bottom: 2rem; }
.ecos-single-event__title { line-height: 1.15; letter-spacing: -.025em; }
.ecos-single-event__image img { border-radius: 1rem; }
.ecos-event-detail { --ecos-line: color-mix(in srgb, currentColor 16%, transparent); }
.ecos-event-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin:2rem 0 3rem; }
.ecos-event-facts > div { display:flex; flex-direction:column; gap:.6rem; padding:1.4rem; border:1px solid var(--ecos-line, #ddd); border-radius:1rem; background:color-mix(in srgb,currentColor 3%,transparent); min-width:0; }
.ecos-event-facts [class$="__label"] { font-size:.75em; text-transform:uppercase; letter-spacing:.09em; font-weight:600; }
.ecos-event-facts [class$="__value"] { font-size:1.1em; font-weight:600; line-height:1.5; }
.ecos-event-programa { margin-block:2.5rem; }
.ecos-event-programa__content { line-height:1.8; }
.ecos-event-enlace { margin:2rem 0; }
.ecos-event-enlace__link { display:inline-flex; padding:.9rem 1.3rem; border:1px solid currentColor; border-radius:999px; font-weight:600; text-decoration:none; }
.ecos-event-enlace__link:hover { text-decoration:underline; }
.ecos-event-location { padding-top:2rem; margin-top:3rem; border-top:1px solid var(--ecos-line, #ddd); }
.ecos-event-location__map { height:420px; width:100%; border-radius:1rem; z-index:0; background:#eee; }
.ecos-event-location__link { font-weight:600; }
@media(max-width:900px) { .ecos-event-facts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:550px) { .ecos-event-facts { grid-template-columns:1fr; } .ecos-event-location__map { height:320px; } }
