/* 20240909 Hoefling */
.eventdetails {
   display:grid;
   grid-template-columns:23.5rem auto;
}

@media screen and (max-width: 960px) {
   .eventdetails {
      display:block;
   }
}


.event-img-wrap .show-only-on-mobile {
   display:flex;
   flex-direction:column;
}

.event-img-wrap .hide-on-mobile {
   width:22.5 rem;
}


/* ################# */

/*------------ GENERAL ------------*/
.calendar .error {
	border: 3px solid red;
	padding: 10px;
}

.calendar .view-header {
	text-align: center !important;
}

.calendar .header-buttons div {
	background-image:url(../img/calendar-icon_bg.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	width: 40px;
	height: 27px;
	text-align: center;
	float:right;
}

.calendar .header-buttons div a{
	line-height:29px;
	font-size: xx-small;
}

.calendar .previous-button,
.calendar .next-button {
	margin-bottom: 2px;
}

.calendar .previous-button {
	float:left;
}

.calendar .next-button {
	float:right;
}

.calendar .previous-button a,
.calendar .next-button a {
	padding:2px 7px 0;
}

.calendar .timeborder {
	border-bottom:1px solid #ddd;
	padding-right:2px;
}

.calendar .ics_link {
	width:100%;
	text-align:center;
}

.calendar .ics_link a{
	padding-left: 25px;
	background-image: url(../img/calendar-share.png);
	background-repeat: no-repeat;
	font-size:small;
}


/*------------ MONTH ------------*/

.calendar .month-weeknums {
	background-color:#DCF0FA;
}

.calendar .month-large .month-weeknums {
	width: 2em;
}

.calendar .month-weekdays {
	border-bottom:1px solid #AAAAAA;
	background-color:#EFEFEF;
}

.calendar .month-small a:link,
.calendar .monthoff a:visited {
	color: #000000;
}

.calendar .month-small th,
.calendar .month-small td {
	padding: 2px;
	width: 22px;
	font-size: 10px;
	text-align: right;
}

.calendar .month-small,
.calendar .month-medium,
.calendar .month-large {
	border-collapse: collapse;
}

.calendar .month-small td,
.calendar .month-medium td {
	border:1px solid #AAAAAA;
}

.calendar .month-large td {
	border-left:1px solid #AAAAAA;
	border-right:1px solid #AAAAAA;
	vertical-align: top;
}

.calendar .month-large tr.days td {
	border:1px solid #AAAAAA;
}

.calendar .month-large tbody tr:last-child td {
	border-bottom:1px solid #AAAAAA;
}

.calendar .month-large td.weekday,
.calendar .month-large .weekday0,
.calendar .month-large .weekday1,
.calendar .month-large .weekday2,
.calendar .month-large .weekday3,
.calendar .month-large .weekday4,
.calendar .month-large .weekday5,
.calendar .month-large .weekday6,
.calendar .month-large .weekday7,
.calendar .month-large .currentDay {
  font-size: 0.8em;
}

.calendar .month-large .eventCountIs1, .calendar .month-large .emptyWeek .empty {
	height: 4em;
}

.calendar .month-large .eventCountIs2 {
	height: 2em;
}

.calendar .month-large .eventCountIs3 {
	height: 1.33em;
}

.calendar .month-large .eventCountIs4 {
	height: 1em;
}

.calendar .month-small th,
.calendar .month-medium th,
.calendar .month-large th {
	background-color: #DCF0FA;
	text-align: center;
	font-weight: normal;
	font-size: small;
}
			

.calendar .month-large .weeknum {
	width: 22px;
}

.calendar .month-large .daylink {
	font-weight: bold;
}

.calendar .month-large .day {
	height: 4em;
	vertical-align: top;
	text-align: left;
}

.calendar .month-large div.vevent,
.calendar .month-large div.vtodo {
	overflow:hidden;
	white-space:nowrap;
}
		
.calendar .month-large .dayNum,
.calendar .month-medium .dayNum {
	border-bottom: none;
	background-color: #E8EEF7;
	text-align: right;
	font-size:xx-small;
	line-height:12px;
}
	
.calendar .monthWeekend {
	background-color: #FFFFEF;
}

.calendar .monthCurrentWeek {
}

.calendar .month-small th a:link,
.calendar .month-small th a:visited,
.calendar .month-medium th a:link,
.calendar .month-medium th a:visited,
.calendar .month-large th a:link,
.calendar .month-large th a:visited {
	font-weight: bold;
	color: #000000;
}

.calendar .monthView .currentDay {
	background:#FFF7D7 none repeat scroll 0% !important;
	border-color:#556677 rgb(170, 187, 204) rgb(170, 187, 204) rgb(85, 102, 119) !important;
	border-style:solid !important;
	border-width:1px !important;
}

.calendar .weekday0,
.calendar .weekday6 {
	background-color: #F8F9F8;
}

.calendar .month-medium {
	margin: 1em auto 2em;
	border-collapse:collapse;
	border-spacing:0px;
	width: 80%;
}

.calendar .month-medium th,
.calendar .month-medium td {
	height: 2em;
	width: 5%;
	text-align: center;
	vertical-align: middle;
}

.calendar .month-medium td {
	border:1px solid #A1A5A9;
}

#month-footer {
	text-align: center;
	margin-top: 10px;
}

/*------------ YEAR ------------*/

.calendar .yearview h1 {
	text-align: center;
}

.calendar .year-table,
.calendar .month-large {
	clear: both;
	width: 100%;
	background-color:#FFFFFF;
	table-layout: fixed;
}

.calendar .year-table .year-month {
	vertical-align: top;
	text-align: center;
}

.calendar .year-table .year-month + .year-month + .year-month{
	padding-right: 0px;
}

/*------------ SIDEBAR ------------*/
		
.calendar .sidebar {
	border:1px solid #CCCCCC;
	border-collapse:collapse;
	float:left;
	padding:5px;
	margin-left:5px;
}

.calendar .month-sidebar h4 {
	border-top:3px solid #CCCCCC;
	margin-top:5px;
	padding-top:6px;
}

.calendar .sidebar h4:first-child {
	border: none; 
	margin-top:0px;
	line-height:1.8em;
	padding-top:0px;
}

.calendar .sidebar .button {
	padding: 1px 4px;
	background:#EEEEEE none repeat scroll 0 0;
	border: 1px solid #CCCCCC;
	cursor: pointer;
	margin-left: 3px;
	vertical-align: sub;
	float:right;
}

.calendar .sidebar .category-submit{
	margin-left:11em;
}

/*------------ SEARCHBOX ------------*/
		
.calendar .search-box {
	background: transparent url(../img/bg_searchInput.gif) no-repeat scroll 0 0;
	border: 0 none;
	border-right:1px solid #6C6761;
	color:#515151;
	padding:1px 0 5px 20px;
	width:110px;
}

/*------------ EVENT ------------*/

.calendar .vevent {
	cursor:default;
	color:#fff;
   color:#5F5F5F;
	-moz-user-select:none;
}

.calendar .vevent .freq {
	vertical-align: text-bottom;
}

.calendar .vevent dt {
	margin-top:-1px;
	font:bold 80%/normal Verdana,sans-serif;
	white-space:nowrap;
	overflow:hidden;
	padding:0 0 1px 0;
	text-align:left;
}

.calendar .vevent dl {
	margin:0;
	padding:0 0 1px 0;
	border-left:1px solid;
	border-right:1px solid;
	overflow:hidden;
}

.calendar .vevent dd {
	margin:0;
	overflow:hidden;
	padding:0 1px;
	font:100%/1.3em Verdana,sans-serif;
	text-align:left;
	word-wrap:break-word;
}

.calendar .gridcontainertop .vevent {
	width: 100%;
}

.calendar .weekview .vevent,
.calendar .dayview .vevent {
	-moz-border-radius:3px;
	position:absolute;
}

.calendar .weekview .allday .vevent,
.calendar .dayview .allday .vevent {
	position: relative;
}

.calendar .month-large .vevent,
.calendar .weekview .wk-allday .vevent,
.calendar .dayview .wk-allday .vevent {
	position: inherit;
}

.calendar .month-large .vevent {
	line-height: normal;
	margin: 1px;
	text-align: left;
}

.calendar .month-large div.vevent a:link span.popup,
.calendar .month-large div.vevent a:visited span.popup,
.calendar .month-medium span.popup {
	display: none;
}

.calendar .month-large div.vevent a:hover span.popup,
.calendar .month-medium .dayNum:hover span.popup {
	position: absolute;
	margin:15px 0px 0px 20px;
	background-color: #F5F5DC;
	max-width:220px;
	border: 1px solid #C0C0C0;
	font: normal 10px/12px verdana;
	color: #000;
	text-align:left;
	display: block;
}

/*------------ TODO ------------*/

.calendar .vtodo {
	cursor:default;
	color:#fff;
	-moz-user-select:none;
}

.calendar .vtodo .freq {
	vertical-align: text-bottom;
}

.calendar .vtodo dt {
	margin-top:-1px;
	font:bold 80%/normal Verdana,sans-serif;
	white-space:nowrap;
	overflow:hidden;
	padding:0 0 1px 0;
	text-align:left;
}

.calendar .vtodo dl {
	margin:0;
	padding:0 0 1px 0;
	border-left:1px solid;
	border-right:1px solid;
	overflow:hidden;
}

.calendar .vtodo dd {
	margin:0;
	overflow:hidden;
	padding:0 1px;
	font:100%/1.3em Verdana,sans-serif;
	text-align:left;
	word-wrap:break-word;
}

.calendar .gridcontainertop .vtodo {
	width: 100%;
}

.calendar .weekview .vtodo,
.calendar .dayview .vtodo {
	-moz-border-radius:3px;
	position:absolute;
}

.calendar .weekview .allday .vtodo,
.calendar .dayview .allday .vtodo {
	position: relative;
}

.calendar .month-large .vtodo,
.calendar .weekview .wk-allday .vtodo,
.calendar .dayview .wk-allday .vtodo {
	position: inherit;
}

.calendar .month-large .vtodo {
	line-height: normal;
	margin: 1px;
	text-align: left;
}

.calendar .month-large div.vtodo a:link span.popup,
.calendar .month-large div.vtodo a:visited span.popup,
.calendar .month-medium span.popup {
	display: none;
}

.calendar .month-large div.vtodo a:hover span.popup,
.calendar .month-medium .dayNum:hover span.popup {
	position: absolute;
	margin:15px 0px 0px 20px;
	background-color: #F5F5DC;
	max-width:220px;
	border: 1px solid #C0C0C0;
	font: normal 10px/12px verdana;
	color: #000;
	text-align:left;
	display: block;
}

/*---------------- DAY & WEEK VIEW ------------------*/
.calendar .dayview,
.calendar .weekview {
	border-left:5px solid #DCF0FA;
	clear: both;
}

.calendar .gridcontainer {
	background:#f8f8f8;
	position:relative;
	-webkit-user-select:none;
	-khtml-user-select:none;
	overflow-y: visible;
	height: 411px;
	border-top: 10px solid #DCF0FA;
}

.calendar .gridcontainertop {
	table-layout:fixed;
	width:100%;
	background-color:#DCF0FA;
	overflow:hidden;
	font-size:11px;
	line-height:14px;
	border-bottom: 10px solid #DCF0FA;
}

.calendar .gridcontainertop .allday {
	table-layout:fixed;
	width:100%;
}

.calendar .gridcontainertop td {
	height:20px;
	vertical-align:top;
	background-color: #FFFFFF;
}

.calendar .gridcontainertop .daynames th {
	text-align: center;
}

.calendar .gridcontainertop .daynames th.dummy {
	width: 15px;
}

.calendar .gridcontainertop .daynames td {
	width: 40px;
	background-color:#DCF0FA;
}

.calendar .scrolltime {
	position:relative;
	overflow-y:scroll;
	overflow-x:hidden;
	border-top:1px solid #DCF0FA;
	border-left:0 none;
	border-bottom:1px solid #DCF0FA;
	padding:0;
	font-size:11px;
	line-height:normal;
	height: 370px;
}

.calendar .scrolltime .timetable {
	background-color:#fff;
	table-layout:fixed;
	width:100%;
	margin-top:-1px;
	border-bottom:1px solid #bcf;
}

.calendar .scrolltime .timetable .width {
	width: 40px;
}

.calendar .scrolltime .timetable .wrapper {
	position:relative;
	margin-left:1px;
	top:3px;
}

.calendar .scrolltime .timetable .wrapper .hours {
	position:absolute;
	width:100%;
}

.calendar .scrolltime .timetable .wrapper .hours .cell {
	height:42px;
}

.calendar .scrolltime .timetable .wrapper .hours .cell .line {
	border-bottom: 1px dotted #ddd;
	border-top:1px solid #ddd;
	font-size:1px;
	height:20px;
	margin-bottom:20px;
}

.calendar .scrolltime .timetable .times {
	background-color:#f6f9fc;
	color:#666;
	padding:1px 0 0 0;
	text-align:right;
	vertical-align:top;
}

.calendar .scrolltime .timetable .times div {
	height: 42px;
}

.calendar .scrolltime .timetable .times div.timeborder {
	height: 41px;
}

.calendar .scrolltime .timetable .event-column {
	border-left:1px solid #ddd;
	vertical-align:top;
}

.calendar .scrolltime .timetable .event-column .wrapper {
	position:relative;
	cursor:default;
	position:relative;
	margin-right:10px;
}

/*------------ GENERAL Category styles ------------*/

.calendar div.default_catheader dl,
.calendar div.default_catheader_allday,
.calendar div.yellow_catheader dl,
.calendar div.yellow_catheader_allday,
.calendar div.orange_catheader dl,
.calendar div.orange_catheader_allday,
.calendar div.red_catheader dl,
.calendar div.red_catheader_allday,
.calendar div.pink_catheader dl,
.calendar div.pink_catheader_allday,
.calendar div.blue_catheader dl,
.calendar div.blue_catheader_allday,
.calendar div.green_catheader dl,
.calendar div.green_catheader_allday,
.calendar div.brown_catheader dl,
.calendar div.brown_catheader_allday,
.calendar div.grey_catheader dl,
.calendar div.grey_catheader_allday,
.calendar div.fnb_header dl,
.calendar div.fnb_header_allday {
	-moz-border-radius:3px;
  padding-left: 0.2em;
  opacity: 0.9;
}

.calendar div.default_catheader dt,
.calendar div.yellow_catheader dt,
.calendar div.orange_catheader dt,
.calendar div.red_catheader dt,
.calendar div.pink_catheader dt,
.calendar div.blue_catheader dt,
.calendar div.green_catheader dt,
.calendar div.brown_catheader dt,
.calendar div.grey_catheader dt,
.calendar div.fnb_header dt {
	font-size:xx-small;
}

.calendar div.default_catheader dd,
.calendar div.yellow_catheader dd,
.calendar div.orange_catheader dd,
.calendar div.red_catheader dd,
.calendar div.pink_catheader dd,
.calendar div.blue_catheader dd,
.calendar div.green_catheader dd,
.calendar div.brown_catheader dd,
.calendar div.grey_catheader dd,
.calendar div.fnb_header {
	white-space: nowrap;
}

.calendar .alldays .vevent .default_catheader_text,
.calendar .alldays .vevent .blue_catheader_text,
.calendar .alldays .vtodo .default_catheader_text,
.calendar .alldays .vtodo .blue_catheader_text,
.calendar .alldays .vevent .yellow_catheader_text,
.calendar .alldays .vtodo .yellow_catheader_text,
.calendar .alldays .vevent .orange_catheader_text,
.calendar .alldays .vtodo .orange_catheader_text,
.calendar .alldays .vevent .red_catheader_text,
.calendar .alldays .vtodo .red_catheader_text,
.calendar .alldays .vevent .pink_catheader_text,
.calendar .alldays .vtodo .pink_catheader_text,
.calendar .alldays .vevent .green_catheader_text,
.calendar .alldays .vtodo .green_catheader_text,
.calendar .alldays .vevent .brown_catheader_text,
.calendar .alldays .vtodo .brown_catheader_text,
.calendar .alldays .vevent .grey_catheader_text,
.calendar .alldays .vtodo .grey_catheader_text,
.calendar .alldays .vevent .fnb_header_text,
.calendar .alldays .vtodo .fnb_header_text, 
.calendar .allday.vevent span:first-child,
.calendar .allday.vtodo span:first-child {
	color:#FFFFFF;
}

/* available colors: yellow, orange, red, pink, blue (default), green, brown, grey


/*------------ BLUE (DEFAULT) ------------*/

.calendar div.default_catheader dl,
.calendar div.default_catheader_allday,
.calendar div.blue_catheader dl,
.calendar div.blue_catheader_allday {
	border: 1px solid #2952A3;
	border-left: 4px solid #2952A3;
	background-color: #668CD9;
	color: #FFFFFF;
}

.calendar .default_catheader_allday a .summary,
.calendar .default_catheader_allday a:visited .summary,
.calendar .default_catheader dd a,
.calendar .default_catheader dd a:visited,
.calendar .blue_catheader_allday a .summary,
.calendar .blue_catheader_allday a:visited .summary,
.calendar .blue_catheader dd a,
.calendar .blue_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .default_catheader_text,
.calendar .vevent .blue_catheader_text,
.calendar .vtodo .default_catheader_text,
.calendar .vtodo .blue_catheader_text{
	color: #668CD9;
}
				
/*------------ GREEN ------------*/

.calendar div.green_catheader dl,
.calendar div.green_catheader_allday {
	border: 1px solid #0D7813;
	border-left: 4px solid #0D7813;
	background-color: #4CB052;
	color: #FFFFFF;
}

.calendar .green_catheader_allday a .summary,
.calendar .green_catheader_allday a:visited .summary,
.calendar .green_catheader dd a,
.calendar .green_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .green_catheader_text,
.calendar .vevent .green_catheader_text a,
.calendar .vtodo .green_catheader_text,
.calendar .vtodo .green_catheader_text a {
	color: #4CB052;
}

/*------------ ORANGE ------------*/

.calendar div.orange_catheader dl,
.calendar div.orange_catheader_allday {
	border: 1px solid #BE6D00;
	border-left: 4px solid #BE6D00;
	background-color: #F2A640;
	color: #FFFFFF;
}

.calendar .orange_catheader_allday a .summary,
.calendar .orange_catheader_allday a:visited .summary,
.calendar .orange_catheader dd a,
.calendar .orange_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .orange_catheader_text,
.calendar .vevent .orange_catheader_text a,
.calendar .vtodo .orange_catheader_text,
.calendar .vtodo .orange_catheader_text a {
	color: #F2A640;
}

/*------------ PINK ------------*/
		
.calendar div.pink_catheader dl,
.calendar div.pink_catheader_allday {
	border: 1px solid #B1365F;
	border-left: 4px solid #B1365F;
	background-color: #E67399;
	color: #FFFFFF;
}

.calendar .pink_catheader_allday a .summary,
.calendar .pink_catheader_allday a:visited .summary,
.calendar .pink_catheader dd a,
.calendar .pink_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .pink_catheader_text,
.calendar .vevent .pink_catheader_text a,
.calendar .vtodo .pink_catheader_text,
.calendar .vtodo .pink_catheader_text a {
	color: #E67399;
}

/*------------ RED ------------*/

.calendar div.red_catheader dl,
.calendar div.red_catheader_allday {
	border: 1px solid #A32929;
	border-left: 4px solid #A32929;
	background-color: #D96666;
	color: #FFFFFF;
}

.calendar .red_catheader_allday a .summary,
.calendar .red_catheader_allday a:visited .summary,
.calendar .red_catheader dd a,
.calendar .red_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .red_catheader_text,
.calendar .vevent .red_catheader_text a
.calendar .vtodo .red_catheader_text,
.calendar .vtodo .red_catheader_text a {
	color: #D96666;
}
		
/*------------ YELLOW ------------*/

.calendar div.yellow_catheader dl,
.calendar div.yellow_catheader_allday {
	border: 1px solid #AB8B00;
	border-left: 4px solid #AB8B00;
	background-color: #E0C240;
	color: #FFFFFF;
}

.calendar .yellow_catheader_allday a .summary,
.calendar .yellow_catheader_allday a:visited .summary,
.calendar .yellow_catheader dd a,
.calendar .yellow_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .yellow_catheader_text,
.calendar .vevent .yellow_catheader_text a,
.calendar .vtodo .yellow_catheader_text,
.calendar .vtodo .yellow_catheader_text a {
	color: #E0C240;
}
		
/*------------ GREY ------------*/

.calendar div.grey_catheader dl,
.calendar div.grey_catheader_allday {
	border: 1px solid #4E5D6C;
	border-left: 4px solid #4E5D6C;
	background-color: #8997A5;
	color: #FFFFFF;
}

.calendar .grey_catheader_allday a .summary,
.calendar .grey_catheader_allday a:visited .summary,
.calendar .grey_catheader dd a,
.calendar .grey_catheader dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .grey_catheader_text,
.calendar .vevent .grey_catheader_text a,
.calendar .vtodo .grey_catheader_text,
.calendar .vtodo .grey_catheader_text a {
	color: #8997A5;
}

/*------------- free & busy styles ----------*/

.calendar div.fnb_header dl,
.calendar div.fnb_header_allday {
	border: 1px solid #4E5D6C;
	border-left: 4px solid #4E5D6C;
	background-color: #8997A5;
	color: #FFFFFF;
}

.calendar .fnb_header_allday a .summary,
.calendar .fnb_header_allday a:visited .summary,
.calendar .fnb_header dd a,
.calendar .fnb_header dd a:visited {
	color: #FFFFFF !important;
}

.calendar .vevent .fnb_header_text,
.calendar .vevent .fnb_header_text a,
.calendar .vtodo .fnb_header_text,
.calendar .vtodo .fnb_header_text a {
	color: #8997A5;
}
		
/*------------ color style package end ------------*/

/*--- TODO: to be checked from here on to the end!! ---*/
/*------------- list styles ------------*/

.calendar .even {
	background-color: #FAFAFA;
}

.calendar .list-view .vevent,
.calendar .list-view .vtodo {
	color: #000000;
}

.calendar .list-view .vevent .dtstart-container,
.calendar .list-view .vtodo .dtstart-container {
	float:left;
	margin-right:1em;
	text-align:right;
	width:12em;
}

.calendar .list-view .vevent .summary,
.calendar .list-view .vtodo .summary {
}

.calendar h1, .calendar .found, .calendar .pagebrowser {
	text-align: center;
}

.calendar .current {
   padding:0.25em;
/* 20200609 Hg
   border:1px solid #7096E6;

*/   margin-right:0.25em;
   color:white;
/* 20200609 Hg
   background-color:#7096E6;
*/
   text-align:center;
}

.calendar .notcurrent,
.calendar .nextpage,
.calendar .prevpage,
.calendar .first,
.calendar .last {
   padding:0.25em;
/* 20200609 Hg
   border:1px solid #7096E6;
*/
   margin-right:0.25em;
/* 20200609 Hg
   color: #0F3286;
*/
   background-color:#FFFFFF;
   text-align:center;
}

.calendar .pagination .notcurrent a,
.calendar .pagination .nextpage a,
.calendar .pagination .prevpage a,
.calendar .pagination .first a,
.calendar .pagination .last a {
   text-decoration:none;
}

.calendar h1.eventtitle {
   text-align:left;
}

.calendar .eventlocation {
/* 20240909 Hoefling */
/*   font-size:14px; */
   font-size:0.75rem;
   padding-bottom:1rem;
/* ################# */
}

.calendar .eventorganisation {
/* 20240909 Hoefling */
/*   font-size:14px; */
   font-size:0.75rem;
/* ################# */
}

.calendar .eventdescription {
   padding-top:0rem;
   padding-left:1rem;
}

/* 20240909 Hoefling */
@media screen and (max-width: 960px) {
   .calendar .eventdescription {
      padding-left:0rem;
   }
}
/* ################# */



.calendar .eventdate {
   font-size:0.75rem;
   color: #5F5F5F;
}

.calendar .eventlocation {
}

.calendar h2.eventtitle {
   font-size:1.25rem;
   font-weight:700;
   border:none;
}


.calendar #calendar-event-backlink {
/* 20200609 Hg
   color:#0F3286;
*/
/* 20200609 Hg */
/*   font-size:14px; */
   font-size:0.75rem;
/* # ######### */
}


.calendar #calendar-event-backlink::before {
   content:"[";
}

.calendar #calendar-event-backlink::after {
   content:"]";
}

.events .eventdate {
   font-size: 0.875rem;
   line-height: 1.2rem;
   padding-top: 0.25rem;
   color: #5F5F5F;
}

.events .allevents {
   margin-top: 1.5rem;
}

/*------------- fe-editing styles ------------*/		
		
.calendar .cal_required {
	color: red;
}

.calendar .constrain {
	color: red;
	font-weight:bold;
}


#editorWrap1 textarea {
	display: block
}


/*Credits: By Santosh Setty (http://webdesigninfo.wordpress.com) */
/*Posted to: Dynamic Drive CSS Library (http://www.dynamicdrive.com/style/) */

.calendar .create-edit-event .tabcontent label {
	display: inline-block;
	vertical-align:top;
	width: 6em;
}

.calendar .basictab ul {
	margin: 4px;
	padding: 3px 0;
	margin-left: 0;
	font: bold 12px Verdana;
	border-bottom: 1px solid gray;
	list-style-type: none;
	text-align: left; /*set to left, center, or right to align the menu as desired*/
}

.calendar .basictab li {
	display: inline;
	margin: 0;
}

.calendar .basictab li a {
	text-decoration: none;
	padding: 3px 7px;
	margin-right: 3px;
	border: 1px solid gray;
	border-bottom: none;
	background-color: #6699CC;
	color: #FFFFFF;
}

.calendar .basictab li a:visited {
	color: #2d2b2b;
}

.calendar .basictab li a:hover,
.calendar .basictab li a.current {
	background-color: #557CA3;
	color: #FFFFFF;
}

.calendar .basictab li a:active {
	color: #000000;
}

.calendar .tabcontainer {
	clear: left;
	width:95%; /*width of 2nd level sub menus*/
	height:1.5em; /*height of 2nd level sub menus. Set to largest's sub menu's height to avoid jittering.*/
}

.calendar .tabcontent {
	display:none;
}

#tx_cal_controller_create_element input[type="text"]:not([size]) { 
	width: 6em;    /* Desired width of input field */
}

#tx_cal_controller_create_element .treelevel0 {
	display:block;
	margin-left: 70px;
}

#tx_cal_controller_create_element p {
	margin: 7px;
}

#tx_cal_controller_create_element .notify,
#tx_cal_controller_create_element .shared,
#tx_cal_controller_create_element .exception {
	display:block;
	margin-left: 140px;
}
		
#allday {
	width:10px;
}

#until label,
#by_day label,
#by_monthday label,
#by_month label {
	margin-left: 50px;
}

#by_month label,
#by_monthday label {
	width: 230px;
}

.calendar .reminderOffset {
	width: 2em !important;
}

.calendar .tabcontent table {
	margin: 2em 0;
}

.calendar .tabcontent table > tbody > tr > td {
	vertical-align:top;
	padding-right: 1em;
	padding-bottom: 1em;
	border-bottom: 1px solid #999999;
}

.calendar .tabcontent table > tbody > tr > td label {
	width: 6em;
	margin-bottom: 1em;
}

.calendar .tabcontent table > tbody > tr > td label > input[type='text'] {
	width: 20em;
	margin-bottom: 1em;
}

ul.calcategories {
   display:inline;
   list-style-type: none;
}
li.calcategory {
   display:inline;
   list-style-type: none;
}

@media screen and (max-width: 960px) {

   .calendar {
      clear:both;
      width:100%;
   }

   .calendar.categories {
      display: flex;
      justify-content: center;
      align-items: center;
   }

   .calendar ul {
      background: white;
/* 20240909 Hoefling
      padding-left: 0;
      margin: 0;
      list-style: none;
      text-align:center;
*/
      z-index:99;
   }

   .calendar li {
      background: transparent;
/*
      color: #0F3286;
      color: var(--maincolor,yellow);
      display: block;
      float: left;
      padding: 1rem;
      position: relative;
*/
      text-decoration: none;
      transition-duration: 0.5s;
   }
  
   .calendar li a {
      font-size:0.75rem;
      padding-right:0.75rem;
/*
      color: #0F3286 !important;
      color: var(--maincolor,yellow);
*/
   }

   .calendar li a.active {
/*
      background-color:#0F3286;
      color: #fff !important;
*/
      font-weight:700;
      text-decoration: none !important;
   }

   .calendar li a.inactive {
      background-color:#fff;
      color: #0F3286 !important;
      color: var(--maincolor,yellow);
      text-decoration: none !important;
   }

   .calendar li:hover,
   .calendar li:focus-within {
      cursor: pointer;
   }

   .calendar li:focus-within a {
      outline: none;
   }

   .calendar ul li ul {
      background:transparent;
      visibility: hidden;
      opacity: 0;
      min-width: 5rem;
      position: absolute;
      transition: all 0.5s ease;
      margin-top: 1rem;
      left: 0;
/*      display: none;*/
   }

   .calendar ul li:hover > ul,
   .calendar ul li:focus-within > ul,
   .calendar ul li ul:hover,
   .calendar ul li ul:focus {
      visibility: visible;
      opacity: 1;
      display: block
   }

   .calendar ul li ul li {
     clear: both;
     width: 100%;
   }


   .calendar a.inactive.catbutton,
   .calendar a.active.catbutton {
      text-align:left;
      text-wrap: nowrap;
   }
}

.row-cols-1 > * {
    flex: 0 0 auto;
    width: 100%;
}

._xcard {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 1rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-border-width: 1px;
    --bs-card-border-color: var(--bs-border-color-translucent);
    --bs-card-border-radius: 0.375rem;
    --bs-card-box-shadow: ;
    --bs-card-inner-border-radius: calc(0.375rem - 1px);
    --bs-card-cap-padding-y: 0.5rem;
    --bs-card-cap-padding-x: 1rem;
    --bs-card-cap-bg: rgba(0,0,0,0.03);
    --bs-card-cap-color: ;
    --bs-card-height: ;
    --bs-card-color: ;
    --bs-card-bg: #fff;
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 0.75rem;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: var(--bs-card-height);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    background-clip: border-box;
    border: var(--bs-card-border-width) solid var(--bs-card-border-color);
    border-radius: var(--bs-card-border-radius);
}

.events-vertical-big__item {
    padding: 1rem 0;
    border: none 0 !important;
    border-bottom: 1px solid #e1e1e1 !important;
}

._xg-0, ._xgx-0 {
    --bs-gutter-x: 0;
}

._xg-0, ._xgy-0 {
    --bs-gutter-y: 0;
}

.col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.tx-sf-event-mgt .calendar:before, .tx-sf-event-mgt .calendar:after {
    position: absolute;
    height: 2.5rem;
    width: 2.5rem;
    line-height: 1.3;
    left: 0.5rem;
    text-align: center;
    z-index: 1;
}


.events-vertical-big .calendar:before {
    content: attr(data-day);
    top: 1.5rem;
    font-size: 1.3rem;
    font-weight: bold;
    color: #9FC646;
    background: #fff;
    border-radius: 0.3rem;
}

.events-vertical-big .calendar:after {
    content: attr(data-month);
    top: 3rem;
    font-size: 0.7rem;
    text-transform: uppercase;
}

.col-md-7 {
    flex: 0 0 auto;
    width: 62.5%;
}

.card-body {
    flex: 1 1 auto;
/*
    padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
    color: var(--bs-card-color);
*/
}

.tx-sf-event-mgt .events-vertical-big .card-body {
    padding: 0rem 1rem;
}


.col-md-3 {
    flex: 0 0 auto;
    width: 25%;
}

@media screen and (max-width: 960px) {
   .col-md-2 {
      flex: 0 0 auto;
      width: 100%;
   }
   .col-md-7 {
      margin-top:0.5rem;
      flex: 0 0 auto;
      width: 100%;
   }
   .col-md-3 {
      margin-top:0.5rem;
      flex: 0 0 auto;
      width: 100%;
   }
}






.align-self-center {
    align-self: center !important;
}


.btn {
/*
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.375rem;
    --bs-btn-font-family: ;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 400;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: #212529;
    --bs-btn-bg: transparent;
    --bs-btn-border-width: 1px;
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: 0.375rem;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb),.5);
*/
    display: inline-block;
/*
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
*/
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
/*
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    transition: color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;
*/
   border:1px solid #0F3286;
   border: 1px solid var(--maincolor,yellow);
}

.btn-outline-primary {
    --bs-btn-color: #0F3286;
    --bs-btn-border-color: #0F3286;
    --bs-btn-color: var(--maincolor,yellow);
    --bs-btn-border-color: var(--maincolor,yellow);
/*
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #9FC646;
    --bs-btn-hover-border-color: #0F3286;
    --bs-btn-focus-shadow-rgb: 159,198,70;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #0F3286;
    --bs-btn-active-border-color: #0F3286;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,0.125);
    --bs-btn-disabled-color: #0F3286;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #0F3286;
    --bs-gradient: none;
*/
}

.btn {
    min-width: 8rem;
    margin-right: 0.8rem;
    margin-bottom: 0.8rem;
    padding: 0.6rem 0.5rem;
    font-size: 0.7rem;
    font-weight: bold;
    text-transform: uppercase;
    border-radius: 0.4rem;
}

.btn:hover {
   background-color: var(--maincolor,yellow);
   color: #ffffff !important;
}

.btn:hover a.back {
   color: #ffffff !important;
   background-color: var(--maincolor,yellow);
   text-decoration: none;
}


a.back:hover {
   color: #ffffff;
}

a:link {
/*
    text-decoration: none;
*/
/*
    transition-property: color,margin,padding;
    transition-duration: 0.5s;
    -moz-transition-property: color,margin,padding;
    -moz-transition-duration: 0.5s;
    -o-transition-property: color,margin,padding;
    -o-transition-duration: 0.5s;
    -webkit-transition-property: color,margin,padding;
    -webkit-transition-duration: 0.5s;
*/
}

.allevents a.more {
   text-decoration: underline;
}

.calendar dl a {
/*    border-bottom: 1px !important; */
}


.calendar dl {
    padding: 0;
    margin: 0;
    font-size: 1rem;
    font-family: 'Cabin', Verdana, sans-serif;
}

.calendar dl a {
/*    border-bottom: 0; */
}


.calendar dt.callist287_odd, .calendar dt.callist287_even {
    border-bottom: 1px dotted black;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
}

.calendar dt.callist_odd, .calendar dt.callist_even {
    border-bottom: 1px dotted black;
    padding-top: 0.75em;
    padding-bottom: 0.25em;
}


.calendar p.organizer {
    font-weight: 700;
}


.calendar span.label_organizer {
    font-weight: 700;
}

.calendar p.location {
    font-weight: 700;
}


.calendar span.label_location {
    font-weight: 700;
}

.calendar span.datetime {
    /*
   color:#0F3286;
*/
    font-family: 'Cabin', Verdana, sans-serif;
    color: #0F3286;
    color: var(--maincolor,yellow);
    font-size: 1.25em;
    font-size: 1em;
    font-weight: 400;
}


.pagination {
    padding-top: 1em;
    display:flex;
}

.pagination::after {


}

.calendar span.actpage {
    padding: 0.25em;
    border: 1px solid #7096E6;
    margin-right: 0.25em;
    color: white;
    background-color: #7096E6;
    text-align: center;
}

.calendar span.page {
    padding: 0.25em;
    border: 1px solid #7096E6;
    margin-right: 0.25em;

    color: #7096E6;
    background-color: white;
    text-align: center;
}

.calendar span.nextpage {
    padding: 0.25em;
    border: 1px solid #7096E6;
    margin-right: 0.25em;

    color: #7096E6;
    background-color: white;
    text-align: center;
}

.calendar span.prevpage {
    padding: 0.25em;
    border: 1px solid #7096E6;
    margin-right: 0.25em;

    color: #7096E6;
    background-color: white;
    text-align: center;
}


.calendar .vevent {
    /* lightpink */
    color: #ffb6c1;
    /* pink */
    color: #ffc0cb;
    /* hotpink */
    color: #ff69b4;
    /* deeppink */
    color: #ff1493;
    /* shockingpink */
    color: #fc0fc0;

    color: #7F7F7F;
    font-weight: 400;
    border-bottom: 1px solid #7F7F7F;
    padding-bottom: 0.25em;
}

.calendar .even {
    padding-bottom: 0.25em;
}

.calendar .odd {
    padding-bottom: 0.25em;
}

.calendar abbr[title] {
    color: #0F3286;
   color: var(--maincolor,yellow);
}

/*
.calendar #calendar-event-backliink {
   padding-top:5em:
   }

.calendar #calendar-event-backlink a {
   background: url("/fileadmin/layouts/common/imgs/icons/pfeil.png") no-repeat scroll 0 0 transparent;
   padding-left: 1em;
   font-size:0.75em;
}
*/


.calendar h1, .calendar .found, .calendar .pagebrowser {
    text-align: left;
}

/*.eventdescription h2 {*/
/*    border-top: 0 !important;*/
/*}*/



/* 20200609 Hg */
.calendar #calendar-event-backlink {
   color:#0F3286;
   color: var(--maincolor,yellow);
}

.calendar .current {
/*
   border:1px solid #7096E6;
   background-color:#7096E6;
*/
   border:1px solid #0F3286;
   background-color:#0F3286;
   border: 1px solid var(--maincolor,yellow);
   background-color: var(--maincolor,yellow);
}

.calendar .notcurrent,
.calendar .nextpage,
.calendar .prevpage,
.calendar .first,
.calendar .last {
   border:1px solid #7096E6;
   color: #0F3286;
   color: var(--maincolor,yellow);
}
.calendar dl a {
   color: #0F3286;
   color: var(--maincolor,yellow);
}

.calendar .col {
    margin-top: 0;
}

.calendar .calendar:before,.calendar .calendar:after {
    position: absolute;
    height: 2.5rem;
    width: 2.5rem;
    line-height: 1.3;
    left: 0.5rem;
    text-align: center;
    z-index: 1;
}

.calendar .card-title a {
    color: #0F3286;
   color: var(--maincolor,yellow);
}

.calendar a.more {
    font-size: 0.75rem;
    line-height: 0.85rem;
    font-weight:400;
    color: #0F3286 !important;
   color: var(--maincolor,yellow) !important;
    text-decoration: none;
}

.calendar a.more:hover {
   color: #ffffff !important;
   background-color:#0F3286;
   background-color: var(--maincolor,yellow);
   text-decoration:none;
}

.calendar a.back {
    font-size: 0.75rem;
    font-weight: bold;
    color: #0F3286;
   color: var(--maincolor,yellow);
    text-decoration: none;
}

a.inactive.catbutton {
   color:#0F3286 !important;
   color: var(--maincolor,yellow) !important;
   background-color:#ffffff;
   display: inline-block;
   text-align: center;
   text-decoration: none;
   vertical-align: middle;
   cursor: pointer;
   border: 1px solid #0F3286;
   border: 1px solid var(--maincolor,yellow);
   border-radius:0.4rem;
   padding: 0.25rem;
   text-decoration:none !important;
}

a.active.catbutton {
   color:#ffffff !important;
   background-color:#0F3286;
   background-color: var(--maincolor,yellow);
   display: inline-block;
   text-align: center;
   text-decoration: none;
   vertical-align: middle;
   cursor: pointer;
   border: 1px solid #0F3286;
   border: 1px solid var(--maincolor,yellow);
   border-radius:0.4rem;
   padding: 0.25rem;
   text-decoration:none !important;
}

ul.calcategories {
   padding:0;
   margin:0;
   line-height:2.5rem !important;
}


.calendar .card-text {
    margin: 0;
}

.calendar .events-vertical-small:first-child {
    border-top: 1px solid #e1e1e1 !important;
}

.calendar .events-vertical-small__item {
    padding: 0.9rem 0 0.5rem;
    border: none 0 !important;
    border-bottom: 1px solid #e1e1e1 !important;
}

.calendar .events-vertical-small__item:hover {
    background: #f8f8f8;
}

.calendar .events-vertical-small .calendar:before {
    content: attr(data-day);
    top: 0.5rem;
    font-size: 1.6rem;
    font-weight: bold;
    color: #0F3286;
   color: var(--maincolor,yellow);
    border-radius: 0.3rem;
}

.calendar .events-vertical-small .calendar:after {
    content: attr(data-month);
    top: 2.3rem;
    font-size: 0.7rem;
    text-transform: uppercase;
}

.calendar .events-vertical-small .card-body {
    padding: 0rem 1rem;
    line-height: 0.1;
}

.calendar .events-vertical-small .card-title {
    font-size: 1rem;
}

.calendar .events-vertical-small .event-list-date {
    font-size: 1rem;
    line-height: 1.1;
    color: black;
    text-align: center;
}

.calendar .events-vertical-small .event-list-category {
    text-transform: uppercase;
}

.calendar .events-vertical-big .calendar:before {
    content: attr(data-day);
    top: 1.5rem;
    font-size: 1.3rem;
    font-weight: bold;
    color: #0F3286;
   color: var(--maincolor,yellow);
    background: #fff;
    border-radius: 0.3rem;
}

.calendar .events-vertical-big .calendar:after {
    content: attr(data-month);
    top: 3rem;
    font-size: 0.7rem;
    text-transform: uppercase;
}

.calendar .events-vertical-big .card-body {
    padding: 0rem 1rem;
}

@media screen and (max-width: 960px) {
   .calendar .events-vertical-big .card-body {
      padding: 0rem;
   }
}


.calendar .events-vertical-big .card-title {
    font-size: 1rem;
    margin: 0;
}

.calendar .events-vertical-big__item {
    padding: 1rem 0;
    border: none 0 !important;
    border-bottom: 1px solid #e1e1e1 !important;
}

.calendar .events-vertical-big__item:hover {
    background: #f8f8f8;
}

.calendar .events-vertical-big .event-list-date {
    font-size: 0.9rem;
    color: black;
}

.calendar .events-vertical-big .news-list-category {
    text-transform: uppercase;
}

.calendar .event-detail {
    position: relative;
}

.calendar .event-detail.booked-out::after {
    content: "Leider ausgebucht!";
    position: absolute;
    width: 80%;
    top: 20%;
    left: 10%;
    margin: 0 auto;
    padding: 1rem;
    color: white;
    background: rgba(255,0,0,0.5);
    font-size: 3rem;
    text-align: center;
    -moz-transform: rotate(30deg);
    -ms-transform: rotate(30deg);
    -o-transform: rotate(30deg);
    -webkit-transform: rotate(30deg);
}

.calendar .event-detail h1,.calendar .event-detail .h1 {
    margin: 0 0 1.5rem !important;
    max-width: 100% !important;
    color: #0F3286;
   color: var(--maincolor,yellow);
    text-align: left !important;
}

.calendar .event-detail .event-img-wrap {
    margin-top: 1rem;
    overflow: hidden;
}

.calendar .event-detail .teaser-text {
    margin-top: 2rem;
}

.calendar .event-detail .teaser-text > p {
    margin-bottom: 2rem;
    line-height: 1.6rem;
    font-weight: bold;
}

.calendar .event-detail .event-aside p {
    margin: 0;
}

.calendar .event-detail .event-back-link {
    display: inline-block;
    color: #0F3286;
   color:var(--maincolor,yellow);
}

.calendar .event-detail .event-back-link:before {
    content: "→ ";
    margin-right: 0.2rem;
}

.calendar .event-detail .event-speaker {
    list-style: none;
}

.calendar .event-detail .event-data-not-specified {
    font-style: italic;
}

.calendar .event-share {
    margin-bottom: 1.2rem;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
}

.calendar .event-share__item {
    display: inline-block;
    margin-right: 0.2rem;
}

.calendar .event-share svg {
    width: 2.2rem;
    height: 2.2rem;
    padding: 0.5rem;
    border-radius: 3px;
    text-align: center;
    fill: black;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.calendar .event-share svg:hover {
    fill: #0F3286;
   fill: var(--maincolor,yellow);
}


.calendar .row .col:first-child {
    margin-left: 0px;
    padding-left:0px;
}

@media screen and (max-width: 960px) {
   .row .col {
      padding:0px !important;
   }
   .row .col:last-child {
      margin-right: 0px !important;
   }

}

@media screen and (max-width:1024px) {
   a.btn {
      font-weight:400 !important;
   }
}


.calendar .col-sm-3 p {
    font-size: 1rem;
    line-height: 22px;
}

.btn {
    min-width: 8rem;
    min-width: 6rem;
    margin-right: 0.8rem;
    margin-bottom: 0.8rem;
    padding: 0.6rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0.4rem;
}

p.educationpoints {
   padding-top:0.5rem;
   font-size: 0.7rem;
   font-weight: 700;
   color: #ec753b;
   text-transform: uppercase;
}


/* 20240726 Hoefling */
.events-latest-title {
    display: flex;
    align-items: flex-end;
    height: 3.75rem !important;
    padding-top: 0 !important;
    padding-bottom: 0.25rem;
}
}

/* XXX
div.xevents-latest-title {
/*    padding-top: 10px;*/
}
/* */

.events-latest-title {
    display: flex;
    align-items: flex-end;
    height: 3.75rem;
}

.events.well.events-special {
    display: flex;
}

.events.well.events-special .article {
    flex: 1;
    box-sizing: border-box;
}

.events.well.events-special .article {
   padding-right: 0px;
   padding-left: 35px;
}


/* XXXX
.events.well.events-special .article:first-child {
   padding-left: 0px;
}
*/

.events .article {
    padding-bottom: 0px;
    margin-bottom: 0px;
}
.events .article {
    padding-bottom: 15px;
    margin-bottom: 15px;
}


.events.well.events-special .events-container {
   height: 100%;
/*   max-width:280px; */
}

@media screen and (max-width: 660px) {
   .events.well.events-special .events-container {
      height: 100%;
      max-width:100%;
   }
}



h2.eventtitle {
   border: 0 !important;
   font-size:1.2rem;
}

h3.eventtitle {
   border: 0 !important;
   font-size:1rem;
}

/* XXX
.xevents.well.events-special .article .events-img-wrap {
/*    border-bottom-color: #0F3286;*/
}
*/

/* XXX
.xevents.well.events-special .article .events-img-wrap {
    margin: 0;
    float: none;
    border-bottom: 3px solid var(--maincolor,yellow);
    display: block;
    height: auto;
    min-height: 1px;
    padding: 0;
    margin: 0;
}
*/

div.eventdate {
   margin-top:0.5rem;
   font-size:0.9rem;
}



.events.well.events-special {
    display: flex;
}

.events.well.events-special .article .events-img-wrap img {
    width: 100%;
}

.events.well.events-special .article {
    flex: 1;
    box-sizing: border-box;
    /* 20200609 Hg
        padding-right: 20px;
    */
}

.events.well.events-special .article a:hover {
    transform: scale(1.0);
}

.eventss.well.events-special .events-container {
    height: 100%;
}

.events.well.events-special .events-container a {
    display: flex;
    flex-flow: column;
    height: 100%;
    transition: 0.15s all ease-in-out;
}

.events.well.events-special .events-container a:hover h2 {
    text-decoration: underline;
}

h2.events-latest-title {
/* 20240724 Hoefling */
/*    font-size: 1.2rem;*/
    font-size: 1.25rem;
/* ################# */
    margin-top: 6px;
}

.events.well.events-special div.events-latest-title {
    background-color: white;
    /* 20200609 Hoefling
        padding: 10px;
    */
    box-sizing: border-box;
    /* 20210520 Hoefling
      height: 70px;
    */
    /* 20220121 Hoefling
       height:80px;
    */
    /* 20220125 Hoefling
       height:6rem;
    */
/* 20240822 Hoefling
    height: 6.5rem;
*/
/* XXX 20240918 Hoefling
   height: 5.25rem;
*/
}

.events.well.events-special div.teaser-text {
    background-color: white;
    /* 20200609 Hg
        padding: 10px;
    */
    /* 20200606 Hg
      height: 145px;
      overflow: hidden;
    */
    overflow: auto;
}

.events.well.events-special .article .events-img-wrap {
    margin: 0;
    float: none;
    border-bottom: 3px solid var(--maincolor,yellow);
    display: block;
    height: auto;
    min-height: 1px;
    padding: 0;
    margin: 0;
}

.events.well.events-special .events .teaser-text p {
    color: #5F5F5F;
    font-size: 0.95rem;
    line-height: 1.3rem;
}


.events .article:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
}

.events .article:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.events .article .events-img-wrap {
	float: left;
	margin: 3px 12px 5px 0;
	background: #fff;
}

.events .article {
    padding-bottom: 0px;
    margin-bottom: 0px;
}


.events.well.events-special .article {
    padding-right: 40px;
    padding-left:0;
}

.events .article h3 {
    margin-bottom: 0;
}

.events .article .events-img-wrap img {
    float: left;
    height: auto;
    width: auto;
}

.events-container a {
    display: flex;
    flex-flow: column;
    height: 100%;
    transition: 0.15s all ease-in-out;
    line-height: 0.85rem;
    font-weight: 400;
    color: var(--maincolor, yellow);
    text-decoration: none;
}

.events.well.events-special .article:last-of-type {
    padding-right: 0;
    margin-right: 0;
}

@media screen and (max-width: 1024px) {
    .events {
        clear: both;
        width: 100%;
    }

    .events.well.events-special {
        flex-flow: column;
    }

    .events.well.events-special .article {
        padding-right: 0;
        margin-right: 0;
    }
}

/* !!! */

.event-img-wrap {
/*   display:none; */
}

.col-md-2 .event-img-wrap {
   display:block;
}
