.heading {
  background-color: var(--branch-background);
  color: var(--text-orange);
  font-family: "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
  font-size: 72pt;
  font-weight: 900;
  line-height: 1em;
  margin: 0;
  padding: 0 10px;
  text-transform: uppercase;
}
.events-listing {
  background-color: var(--card-background);
  padding: 0;
	min-height: 1010px;
}
.events-listing .branch {
  border-color: var(--events-border);
  display: block;
}
.events-listing .branch h1 {
  font-size: 30pt;
}
.events-listing .branch h2 {
  font-size: 18pt;
}

.events-listing .branch p {
  font-size: 18pt;
  font-weight: normal;
}
.events-listing .branch p:last-of-type {
  font-weight: bold;
}

.events-listing .info {
  margin: 15px;
  text-align: left;
  width: calc(100% - 30px);
}

/* === Sections in sidebar === */
.events-listing .sidebar section {
  border: 1px solid var(--events-calendar-border);
  margin: 15px 0;
  padding: 10px;
}
.events-listing .sidebar header {
  display: flex;
  justify-content: space-between;
  background-color: var(--header-background);
}

.sidebar .button,
.sidebar .button:visited,
.sidebar .button:active,
.sidebar .button:hover {
  color: var(--text-black);
}

/* ====== Calendar in sidebar. 
cf. https://css-tricks.com/how-to-make-a-monthly-calendar-with-real-data/ ====== */
.events-listing .calendar ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
.calendar-month {
  background-color: var(--card-background);
  border: solid 1px var(--events-calendar-border);
}

.day-of-week {
  color: var(--text-black);
  background-color: var(--card-background);
  padding-bottom: 5px;
  padding-top: 10px;
}

.day-of-week li {
	padding:0;
	margin:0;
}

.day-of-week,
.days-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

.days-grid {
  height: 100%;
  position: relative;
  grid-column-gap:2px;
  grid-row-gap: 2px;
}
.days-grid li {
  background-color: var(--card-background);
  color: var(--text-black);
  padding: 5px;
  margin-left: 1px;
}
.days-grid .active,
.days-grid a {
 /* background-color: var(--calendar-highlight-background); */
  color: var(--text-white);
}
.calendar-day {
  position: relative;
  min-height: 20px;
  background-color: var(--card-background);
  color: var(--text-black);
  padding: 5px;
  text-align: center;
}
/* === Events search form === */
.calendar-search .input-container {
  display: flex;
  justify-content: space-between;
  line-height: 1em;
}
.calendar-search .input-container button {
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
}
.input-container input {
  border: none;
  outline: 0;
}
.calendar-search .input-container {
  margin-bottom: 0;
}
.input-container input::placeholder {
  color: var(--text-black);
  opacity: 1;
}
.input-container input:focus::placeholder {
  color: transparent;
}
.input-container label::after {
  content: "";
}
/* === Event types filter === */
.event-types form div {
  display: flex;
  align-items: center;
}
.events-listing input[type="checkbox"] {
  border: 1px solid var(--events-checkbox-border);
  height: 1em;
  margin-right: 10px;
  opacity: 1;
  outline: none;
  width: 1em;
}

/* == remove browser styling on checkboxes == */
 @supports (-webkit-appearance: none) or (-moz-appearance: none) {
  .events-listing input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
 }
 .events-listing input[type="checkbox"]:checked {
  background: var(--calendar-highlight-background);
}
}
/* == Main content area == */
.events-main {
  margin: 15px 15px 15px 0;
}
/* == Mobile views == */
@media screen and (max-width: 767px) {
  .heading {
    font-size: 17vw;
  }
}
@media screen and (max-width: 1023px) {
  .events-listing .branch {
    width: 100%;
  }
}
/* == Tablet and laptop view == */
@media screen and (min-width: 1024px) {
  .events-listing .branch {
    border-width: 0;
  }
  .events-listing .img-holder {
    width: 100%;
  }
  .events-listing .info {
    flex: none;
    margin: 10px;
    width: calc(100% - 20px);
  }
  .events-listing .img-holder-inner {
    padding-top: 0;
  }
  .events-main {
    display: grid; 
    grid-template-columns: repeat(2, 1fr);
    grid-gap:15px;
  }
  .events-listing .sidebar .calendar {
    margin-top: 0;
  }
  .events-listing .sidebar {
    float: left;
    margin-right: 15px;
    width: 27%;
  }
  
}


.event-date {
		font-weight: bold;
		margin: 0 0 10px 0;
		text-transform: uppercase; 
		padding: 10px 0 10px 0;
		
	}
	.event-child-date {
		font-weight: normal;
		margin: 0 0 10px 0;
		text-transform: none; 
	}
	.child-event-box {
		margin: 0 3% 20px 3%;
	}
	

	.event_box {
		background-color: black;
		color: white;
		font-size: 1em;
	}

	.event_box .img-holder{
		display: block;
  width: 100%;
}
	.event_box .img-holder-inner {
    display: block;
    padding:40% 0 0 0;
	position:relative;
  }
	
	.event_box,
.event_box a {
 color: inherit; 
}

	.event_box h2 {
		font-family: "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
	font-size: 1.8em;
		font-weight: 700;
	text-transform: uppercase;
	padding: 0 0 20px 0;
	}
	
	.event_box h3 {
	font-size: 1.2em;
	font-style: italic;
		font-weight:500;
		line-height: 1.1;
		padding: 0 0 5px 0;
	}
	
	

.past_day {
	opacity: 0.25;
}

