.cc-event-container {
  display: flex;

  margin-bottom: 10px;
  border: thin solid gray;
}
.cc-event-container > * {
  padding: 20px;
}
.cc-event-container .separator {
  line-height: 1;
}

/* Content container (parent container) */
.cc-event-container .content-container {
  /* Allows button child to use this as reference point for the absolute positioning */
  position: relative;

  padding-bottom: 30px;
  
  height: 200px;
  overflow: hidden;
}

/* Text container */
.cc-event-container .text-container {
  margin-bottom: 35px;
}

.cc-event-container .text-container .subject * {
  font-family: inherit !important;
  font-size: inherit !important;
}

/* Info container */
.cc-event-container .info-container {
  padding-top: 30px;
  padding-bottom: 40px;
  border-top: thin solid lightgray;

  display: flex;
  flex-direction: column;
  margin-bottom: 50px;
}
.cc-event-container .info-container > * {
  margin-left: -5px;
}
.cc-event-container .info-container .group {
  display: flex;
  flex-wrap: wrap;
}
.cc-event-container .info-container .group > * {
  padding: 5px;
  font-size: 0.95rem;
  word-break: break-word;
}
.cc-event-container .info-container .group strong {
  color: gray;
}

.cc-event-container .toggle-container {
  display: flex;
  /* justify-content: center; */

  position: absolute;
  height: 80px;
  margin: auto;
  bottom: 0px;
  right: 0px;
  left: 0px;
}
.cc-event-container .toggle-container::after {
  content: " ";
  background: rgba(0,0,0,0);
  background: linear-gradient(to bottom, rgba(255,255,255,0.3) 0%, rgba(255,255,255,1) 50%);
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
}
.cc-event-container .toggle-container .toggle {
  /* Show toggle button in front of linear-gradient */
  z-index: 1;

  background-color: transparent;
  color: #2e97b8;
  border: none;

  font-weight: 700;
  padding-left: 20px;
  padding-bottom: 20px;
  margin-top: auto;
}
.cc-event-container .toggle-container .toggle span {
  display: flex;
  align-items: center;
}
.cc-event-container .toggle-container .toggle svg {
  fill: #2e97b8;
  width: 12px;
  margin-bottom: -3px;
  margin-left: 5px;
}
.cc-event-container .toggle-container .toggle .shrink svg {
  transform: rotate(-90deg);
}

/* Display/hide different element based on parent expanded position */
.cc-event-container .toggle-container .toggle.expanded .expand {
  display: none;
}
.cc-event-container .toggle-container .toggle:not(.expanded) .shrink {
  display: none;
}


.cc-events-container .events-page-link a {
  color: #2e97b8;
}


@media (max-width: 768px) {
  .cc-event-container {
    flex-direction: column;
  }

  .cc-event-container .date-container {
    display: flex;
    justify-content: center;
  }
}


/* 
* Custom calendar icon
* https://cssdeck.com/labs/css3-calendar-icon-2
*/

.cc-event-container .date-container {
  background-color: #2e97b8;
}
.cc-event-container .dates {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  width: 160px;
  min-width: 160px;
  font-size: large;
}

.cc-event-container .dates {
	display: block;
  margin-top: 0px;
	margin: auto;
	background: #fff;
	text-align: center;
	font-family: 'Helvetica', sans-serif;
	position: relative;
}

.cc-event-container .dates .binds {
	position: absolute;
	height: 15px;
	width: 60px;
	background: transparent;
	border: 2px solid #999;
	border-width: 0 5px;
	top: -6px;
	left: 0;
	right: 0;
	margin: auto;
}

.cc-event-container .dates .month {
	background: #555;
	display: block;
	padding: 15px 0px 10px 0px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	border-bottom: 2px solid #333;
	box-shadow: inset 0 -1px 0 0 #666;

  text-transform: capitalize;
}

.cc-event-container .dates .day {
	display: block;
	margin: 0;
	padding: 10px 0;
	font-size: 48px;
	box-shadow: 0 0 3px #ccc;
	position: relative;
}

.cc-event-container .dates .day::after {
	content: '';
	display: block;
	height: 100%;
	width: 96%;
	position: absolute;
	top: 3px;
	left: 2%;
	z-index: -1;
	box-shadow: 0 0 3px #ccc;
}

.cc-event-container .dates .day::before {
	content: '';
	display: block;
	height: 100%;
	width: 90%;
	position: absolute;
	top: 6px;
	left: 5%;
	z-index: -1;
	box-shadow: 0 0 3px #ccc;
}



/* Pagination styling */

.cc-events-container .universal-pagination > ul {
  display: flex;
  justify-content: center;
}
.cc-events-container .universal-pagination ul {
  margin: 0;
  padding: 0;
}
.cc-events-container .universal-pagination ul a {
  display: inline;
  margin: 3px;
  padding: 4px 8px;
  background: #fff;
  color: #2e97b8;
}
.cc-events-container .universal-pagination ul a.active:hover {
  cursor: pointer;
  /*background: #21499f;*/
  color: black;
}

.cc-events-container  .universal-pagination ul a.selected {
  /*background: #21499f;*/
  color: black;
  font-weight: 700;
}

.cc-events-container .universal-pagination ul a.inactive {
  pointer-events: none;
  cursor: not-allowed;
  /*background: #21499f;*/
  color: gray;
}