/*
 * Veranstaltungen – Übersicht und Detailseite.
 * Farben, Schriften und Button-Stile stammen aus dem bestehenden CREYDT.LAW-CI
 * (Raleway für Überschriften, Poppins für Fließtext, Magenta #910048,
 * Dunkelblau #002E5D, Inhaltsbreite 1170px wie im Elementor-Container).
 */

.clw-events{
	--clw-magenta:#910048;
	--clw-magenta-dark:#73003a;
	--clw-navy:#002e5d;
	--clw-ink:#1d2433;
	--clw-muted:#6b7280;
	--clw-line:#e5e7eb;
	--clw-bg-soft:#f7f7f9;
	font-family:"Poppins",sans-serif;
	color:var(--clw-ink);
	padding:60px 0 90px;
}
.clw-events *{box-sizing:border-box}
.clw-events__inner{width:100%;max-width:1170px;margin:0 auto;padding:0 15px}

.clw-events__section{margin-bottom:64px}
.clw-events__section-title{font-family:"Raleway",sans-serif;font-weight:700;font-size:22px;line-height:1.3;color:var(--clw-navy);margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--clw-magenta);display:inline-block}
.clw-events__section--past{opacity:.92}
.clw-events__empty{font-size:16px;color:var(--clw-muted)}
.clw-events__list{list-style:none;margin:0;padding:0}

/* ---------- Zeile (gemeinsame Basis) ---------- */
.clw-event{display:grid;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--clw-line)}
.clw-event:first-child{border-top:1px solid var(--clw-line)}

.clw-event__date{grid-area:date;text-align:center;line-height:1.15;color:var(--clw-navy)}
.clw-event__day{display:block;font-family:"Raleway",sans-serif;font-weight:700;font-size:28px}
.clw-event__month{display:block;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--clw-magenta)}
.clw-event__year{display:block;font-size:13px;font-weight:600;color:var(--clw-muted)}

.clw-event__media{grid-area:media}
.clw-event__media img{display:block;width:100%;height:120px;object-fit:cover}
.clw-event__media-placeholder{display:block;width:100%;height:120px;background:var(--clw-bg-soft)}

.clw-event__main{grid-area:main;min-width:0}
.clw-event__title{font-family:"Raleway",sans-serif;font-weight:700;font-size:19px;line-height:1.35;margin:0 0 6px;color:var(--clw-navy)}
.clw-event__title a{color:inherit;text-decoration:none}
.clw-event__title a:hover{color:var(--clw-magenta)}
.clw-event__subtitle{font-size:15px;line-height:1.55;color:var(--clw-muted);margin:0}
.clw-event__facts{margin:8px 0 0;font-size:13px;font-weight:600;color:var(--clw-muted);display:flex;flex-wrap:wrap;gap:6px 16px}
.clw-event__fact--date{display:none} /* Datum steht schon in der Datumsspalte */

.clw-event__labels{margin:0 0 8px;display:flex;flex-wrap:wrap;gap:8px}
.clw-event__tag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;text-decoration:none}
.clw-event__tag--typ{background:var(--clw-navy);color:#fff}
.clw-event__tag--bereich{background:var(--clw-bg-soft);color:var(--clw-navy);border:1px solid var(--clw-line)}
a.clw-event__tag--bereich:hover{background:var(--clw-magenta);color:#fff;border-color:var(--clw-magenta)}
.clw-event__tag--empty{background:none;color:var(--clw-muted);border:0;padding-left:0}

.clw-event__col{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.clw-event__col--bereich{grid-area:bereich}
.clw-event__col--typ{grid-area:typ}
.clw-event__col-label{display:none} /* nur mobil als Beschriftung nötig */

.clw-event__cta{grid-area:cta;justify-self:end}
.clw-event__button{display:inline-block;font-family:"Poppins",sans-serif;font-size:13px;font-weight:600;line-height:1;white-space:nowrap;padding:14px 24px;border:1px solid var(--clw-navy);color:var(--clw-navy);background:none;text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease}
.clw-event__button:hover{background:var(--clw-magenta);border-color:var(--clw-magenta);color:#fff}
.clw-event__button--solid{background:var(--clw-magenta);border-color:var(--clw-magenta);color:#fff;padding:16px 34px}
.clw-event__button--solid:hover{background:var(--clw-magenta-dark);border-color:var(--clw-magenta-dark);color:#fff}

/* ---------- Layout „Kompakt": Datum | Bild | Inhalt | CTA ---------- */
.clw-event--compact{grid-template-columns:76px 200px minmax(0,1fr) auto;grid-template-areas:"date media main cta"}

/* ---------- Layout „Tabellarisch" (Briefing): Datum | Event | Bild | Bereich | Typ | CTA ---------- */
.clw-event--briefing{grid-template-columns:76px minmax(0,1fr) 160px 150px 100px auto;grid-template-areas:"date main media bereich typ cta";gap:18px}
/* Lange Bereichsnamen dürfen umbrechen, ohne die Spalte zu sprengen. */
.clw-event--briefing .clw-event__tag{font-size:10px;line-height:1.35;padding:4px 8px;white-space:normal}
.clw-event--briefing .clw-event__media img,
.clw-event--briefing .clw-event__media-placeholder{height:100px}
.clw-event--briefing .clw-event__button{padding:12px 18px}

/* Spaltenköpfe des tabellarischen Layouts */
/* display:grid steht sonst nur auf .clw-event; die Kopfzeile ist kein Event. */
.clw-events__columns{display:grid;padding:0 0 10px;border-bottom:1px solid var(--clw-line);align-items:end;
	font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--clw-muted)}
.clw-events__columns + .clw-events__list .clw-event:first-child{border-top:0}
.clw-events__columns .clw-event__date{text-align:center}

/* Aufklapper für ältere vergangene Veranstaltungen */
.clw-events__more{margin-top:8px}
.clw-events__more-toggle{cursor:pointer;display:inline-block;padding:14px 0;font-size:13px;font-weight:600;color:var(--clw-navy);list-style:none}
.clw-events__more-toggle::-webkit-details-marker{display:none}
.clw-events__more-toggle::before{content:"+";display:inline-block;margin-right:8px;color:var(--clw-magenta);font-size:15px}
.clw-events__more[open] .clw-events__more-toggle::before{content:"–"}
.clw-events__more-toggle:hover{color:var(--clw-magenta)}

/* ---------- Tablet ---------- */
@media (max-width:1024px){
	.clw-event--compact{grid-template-columns:70px 160px minmax(0,1fr) auto;gap:18px}
	.clw-event--briefing{grid-template-columns:70px minmax(0,1fr) 140px auto;grid-template-areas:"date main media cta" "date bereich typ cta";gap:14px 18px}
	.clw-event--briefing .clw-event__col{flex-direction:row;flex-wrap:wrap;align-items:center}
	/* Umsortiertes Tablet-Raster: die Kopfzeile passt dort nicht mehr zu den Spalten. */
	.clw-events__columns{display:none}
}

/* ---------- Mobil: kompakte Card, keine Tabelle, kein Querscrollen ---------- */
@media (max-width:767px){
	.clw-events{padding:32px 0 56px}
	.clw-event,
	.clw-event--compact,
	.clw-event--briefing{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:20px 0}
	.clw-event__media{order:1}
	.clw-event__media img,
	.clw-event__media-placeholder{height:180px}
	.clw-event__date{order:2;display:flex;gap:6px;align-items:baseline;text-align:left}
	.clw-event__day,.clw-event__month,.clw-event__year{display:inline;font-size:16px}
	.clw-event__day{font-size:18px}
	.clw-event__col{order:3;flex-direction:row;align-items:center;gap:8px}
	.clw-event__main{order:4}
	.clw-event__cta{order:5;justify-self:stretch}
	.clw-event__button{display:block;text-align:center;padding:16px 24px;font-size:14px}
	.clw-event__col-label{display:inline;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--clw-muted)}
	.clw-event--briefing .clw-event__col--bereich .clw-event__tag--empty,
	.clw-event--briefing .clw-event__col--typ .clw-event__tag--empty{display:none}
	/* Auf der Card ersetzen die Beschriftungen pro Zeile die Tabellenköpfe. */
	.clw-events__columns{display:none}
}

/* ---------- Detailseite ---------- */

.clw-event-detail__head{margin-bottom:32px}
.clw-event-detail__subtitle{font-size:18px;line-height:1.6;color:var(--clw-muted);margin:0;max-width:60ch}

.clw-event-detail__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
.clw-event-detail__image{margin:0 0 28px;background:var(--clw-bg-soft)}
/* Deckelt hohe Hochformat-Grafiken, ohne Motive anzuschneiden. */
.clw-event-detail__image img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain}
.clw-event-detail__text{font-size:16px;line-height:1.7}
.clw-event-detail__text h2{font-family:"Raleway",sans-serif;font-size:24px;color:var(--clw-navy);margin:32px 0 12px}
.clw-event-detail__text h3{font-family:"Raleway",sans-serif;font-size:19px;color:var(--clw-navy);margin:24px 0 10px}
.clw-event-detail__text ul{padding-left:20px}

.clw-event-detail__meta{background:var(--clw-bg-soft);padding:28px;position:sticky;top:120px}
.clw-event-detail__meta dl{margin:0 0 24px}
.clw-event-detail__meta dt{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--clw-muted);margin-top:14px}
.clw-event-detail__meta dt:first-child{margin-top:0}
.clw-event-detail__meta dd{margin:2px 0 0;font-size:16px;font-weight:600;color:var(--clw-navy)}
.clw-event-detail__meta .clw-event__button{display:block;text-align:center}
.clw-event-detail__back{display:inline-block;margin-top:16px;font-size:13px;font-weight:600;color:var(--clw-navy);text-decoration:none}
.clw-event-detail__back:hover{color:var(--clw-magenta)}

@media (max-width:1024px){
	.clw-event-detail__grid{grid-template-columns:minmax(0,1fr) 280px;gap:32px}
}
@media (max-width:767px){
	.clw-event-detail__grid{grid-template-columns:1fr;gap:28px}
	.clw-event-detail__meta{position:static;padding:22px}
}
