/* Cross ALM Events – passt zum Theme „Cross ALM“ (Fassung ruhig) */
.cae { --cae-t: #003659; --cae-t6: rgba(0, 54, 89, .64); --cae-t4: rgba(0, 54, 89, .45); --cae-l: #E1E6F0; --cae-h: #F4F7FA; --cae-g: #47B27A; --cae-gt: #2B8552; --cae-k: linear-gradient(90deg, #47B27A, #004C79); }
.cae, .cae-hinweis { color: var(--cae-t, #003659); }
.cae-zwischen { margin: 40px 0 16px !important; font-size: 15px !important; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; color: rgba(0, 54, 89, .45) !important; }
.cae-leer { color: rgba(0, 54, 89, .64); }
.cae-karte { position: relative; overflow: hidden; display: grid; grid-template-columns: 110px minmax(0, 1fr) auto; gap: 28px; align-items: center; background: #fff; border: 1px solid #E1E6F0; border-radius: 20px; padding: 24px 28px; margin-bottom: 18px; }
.cae-karte::before, .cae-hinweis::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, #47B27A, #004C79); }
.cae-datum { background: #003659; color: #fff; border-radius: 14px; text-align: center; padding: 10px 6px; line-height: 1.1; }
.cae-datum small { display: block; font-size: 12px; font-weight: 900; letter-spacing: .1em; color: #9FE0BC; }
.cae-datum b { display: block; font-size: 28px; font-weight: 900; margin: 2px 0; }
.cae-datum span { font-size: 13px; font-weight: 700; }
.cae-art { font-size: 12px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; color: #2B8552; }
.cae h4, .cae-hinweis h4 { font-size: 21px !important; font-weight: 900; margin: 4px 0 6px !important; color: #003659; line-height: 1.25; }
.cae-inhalt p, .cae-hinweis p { color: rgba(0, 54, 89, .64); font-size: 15px; margin: 0 !important; }
.cae-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.cae-meta span { background: #F4F7FA; border: 1px solid #E1E6F0; border-radius: 999px; padding: 4px 12px; font-size: 13px; font-weight: 700; color: rgba(0, 54, 89, .82); }
.cae-etikett { position: absolute; top: 16px; right: 18px; background: #FFF4D6; color: #8A5A00; font-size: 11px; font-weight: 900; letter-spacing: .06em; border-radius: 999px; padding: 3px 10px; }
.cae-knopf { display: inline-block; background: #47B27A; color: #fff !important; border-radius: 999px; padding: 12px 22px; font-weight: 900; font-size: 15px; text-decoration: none !important; white-space: nowrap; }
.cae-knopf:hover { background: #339960; }
.cae-vorbei { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; }
.cae-vk { border: 1px solid #E1E6F0; border-radius: 18px; overflow: hidden; background: #fff; }
.cae-vk .cae-bild { width: 100%; height: 190px; object-fit: cover; object-position: 50% 40%; display: block; }
.cae-vk > div { padding: 16px 20px; }
.cae-vk b { font-size: 17px; color: #003659; }
.cae-vk p { color: rgba(0, 54, 89, .64); font-size: 14px; margin: 2px 0 6px !important; }
.cae-vk a { color: #2B8552; font-weight: 900; font-size: 14px; text-decoration: none; }
.cae-hinweis { position: relative; overflow: hidden; display: grid; grid-template-columns: 96px minmax(0, 1fr) auto; gap: 24px; align-items: center; background: #fff; border: 1px solid #E1E6F0; border-radius: 18px; padding: 22px 26px; margin-top: 26px; max-width: 820px; }
@media (max-width: 760px) {
	.cae-karte, .cae-hinweis { grid-template-columns: 80px minmax(0, 1fr); gap: 16px; padding: 20px; }
	.cae-cta, .cae-hinweis > .cae-knopf { grid-column: 1 / -1; }
	.cae-hinweis > .cae-knopf { justify-self: start; }
	.cae-datum b { font-size: 22px; }
	.cae h4, .cae-hinweis h4 { font-size: 18px !important; }
}
/* 1.1.0 Trainings */
.cae-mehr { margin: 6px 0 0 !important; }
.cae-mehr a { color: #267348; font-weight: 900; text-decoration: none; }
.cae-mehr a:hover { text-decoration: underline; }
.cae-termine-band .cae { margin-top: 18px; }
.cae-karte[id] { scroll-margin-top: 110px; }
#trainings { scroll-margin-top: 110px; }
/* Kalender auf der Trainingsübersicht */
.cae-kalender { margin-bottom: 44px; background: #fff; border: 1px solid #E1E6F0; border-radius: 20px; padding: 8px 28px 18px; position: relative; overflow: hidden; }
.cae-kalender::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, #47B27A, #004C79); }
.cak-kopf { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 6px 20px; }
.cak-kopf .cae-zwischen { margin: 22px 0 6px !important; }
.cak-alle { color: #267348; font-weight: 900; font-size: 14px; text-decoration: none; }
.cak-alle:hover { text-decoration: underline; }
.cak-monatsname { font-size: 13px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; color: #267348; padding: 14px 0 6px; border-bottom: 1px solid #E1E6F0; }
.cak-zeile { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 14px 0; border-bottom: 1px solid #E1E6F0; }
.cak-monat:last-child .cak-zeile:last-child { border-bottom: 0; }
.cak-tag { background: #003659; color: #fff; border-radius: 12px; text-align: center; padding: 6px 4px; line-height: 1.1; }
.cak-tag small { display: block; font-size: 11px; font-weight: 900; letter-spacing: .08em; color: #9FE0BC; text-transform: uppercase; }
.cak-tag b { display: block; font-size: 22px; font-weight: 900; }
.cak-text h3.ca-h { font-size: 18px !important; margin: 0 0 2px !important; line-height: 1.3; }
.cak-text h3 a { color: #004C79; text-decoration: none; }
.cak-text h3 a:hover { color: #267348; }
.cak-text p { margin: 0 !important; font-size: 14px; color: rgba(0, 54, 89, .7); }
.cak-etikett { display: inline-block; background: #FFF4D6; color: #8A5A00; font-size: 11px; font-weight: 900; letter-spacing: .06em; border-radius: 999px; padding: 2px 9px; margin-bottom: 4px; }
.cak-termin { color: #267348; font-weight: 900; font-size: 14px; text-decoration: none; white-space: nowrap; }
.cak-termin:hover { text-decoration: underline; }
@media (max-width: 600px) {
	.cae-kalender { padding: 4px 18px 12px; }
	.cak-zeile { grid-template-columns: 54px minmax(0, 1fr); gap: 14px; }
	.cak-termin { grid-column: 2; }
}
.cae-karte h4 a, .cae-karte h3 a { color: inherit; text-decoration: none; }
.cae-karte h4 a:hover, .cae-karte h3 a:hover { color: #267348; }
