div#errormsg {
  color:#CC0000;
  font-weight:700;
}
#main #content table.calendar {
	width:100%;
	border:1px solid #dadada;
	border-collapse:none;
	border-left:0px;
	font-size:9px;
	margin:10px 0;
}
#main #content #meal-calendar-wrap h3 {
	text-align:center;
}
#main #content .block-block.donation .form-item.full input.form-text {
	width:546px;
}
#meal-calendar-wrap {
	position:relative;
}
#meal-calendar-wrap h3 {
  text-align:center;
}
#meal-calendar-wrap .ajax-loading {
	// background:#ffffff url(/wp-content/themes/hello-elementor/loading.gif) 50% 50% no-repeat;
	opacity:.5;
	filter:alpha(opacity=50);
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	top:0;
	z-index:10000;
}
#meal-calendar-wrap .content.content_top_margin {
  margin-top:0 !important;
}
#meal-calendar-wrap .container_inner,
#meal-calendar-wrap .container_inner {
  padding-top:0 !important;
}
#meal-calendar-wrap, #reserve-a-meal-form {
	font-family: Raleway, sans-serif;
}
#meal-form fieldset {
  border:none;
  padding:0;
}
#meal-form fieldset legend {
  font-size:1em;
  padding-bottom:3px;
  border-bottom:1px solid #b3b3b3;
  margin-bottom:10px;
  display:block;
  width:98%;
  float:left;
  margin-top:10px;
}
#meal-form ol li {
  list-style-type:decimal;
  list-style-position:outside;
  margin-left:30px;
  margin-bottom:10px;
  line-height:16px;
}
#meal-form ol {
  margin-top:50px;
  margin-bottom:10px;
  font-size:1em;
  color:#000;
  line-height:20px;
}
#meal-form p {
  margin:20px 0;
}
#reserve-a-meal-form {
  padding-top:20px;
}
#reserve-a-meal-form fieldset {
  margin-top:30px;
}
#reserve-a-meal-form p.caption {
  font-size: 0.85em;
  margin-top: 0.5em;
}
#reserve-a-meal-form span.required {
  font-size:28px;
  font-weight: bold;
  line-height:18px;
}
#submit_btn {
  border:none;
}
#selected-event {
}
#selected-event .description,
#selected-event .date {
	display:block;
}
#selected-event .description .selected-time {
	display:block;
}
#selected-event .description .calendar-time {
	display:none;
}
#selected-event .price {
	display:none;
}
.calendar th {
	width:14%;
	background:#f7f7f7;
	background:-moz-linear-gradient(top,#f7f7f7 0%,#e7e7e7 100%);
	background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#f7f7f7),color-stop(100%,#e7e7e7));
	background:-webkit-linear-gradient(top,#f7f7f7 0%,#e7e7e7 100%);
	background:-o-linear-gradient(top,#f7f7f7 0%,#e7e7e7 100%);
	background:-ms-linear-gradient(top,#f7f7f7 0%,#e7e7e7 100%);
	background:linear-gradient(top,#f7f7f7 0%,#e7e7e7 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#f7f7f7\',endColorstr=\'#e7e7e7\',GradientType=0 );
	border-left:1px solid #dadada;
	text-align:left;
	text-shadow:0 1px 0 #ffffff;
	padding:5px;
}
#main #content table.calendar td {
	border-left:1px solid #dadada;
	border-top:1px solid #dadada;
	text-align:right;
	vertical-align:top;
	padding:5px;
}
.calendar td .inner {
	min-height:50px;
}
.calendar td .inner .full-date {
	display:none;
}
.calendar td .inner .short-date {
	display:inline;
}
.calendar .weekend {
	background:#eaeaea;
}
.calendar .empty-cell {
	background:#808080;
}
.calendar .today {
	background:#ffe6e6;
}
.calendar ul {
	font-size:9px;
	list-style:none;
	margin:0;
	padding:0;
}
.calendar ul li {
	list-style:none;
	margin:0;
	padding:0;
}
.calendar a.event-link,
.calendar a.event,
.calendar span.event {
	background:rgba(0,0,0,.10);
	border-radius:4px;
	-webkit-border-radius:4px;
	color:#333333;
	display:block;
	text-align:left;
	text-decoration:none;
	padding:3px;
	margin:2px;
}
.calendar a.event-link .calendar-time {
	display:none;
}
.calendar td .inner a.reserved,
.calendar td .inner span.reserved {
	background:#b21c1c;
	color:#ffffff;
}
.calendar.non-form td .inner a.event,
.calendar.non-form td .inner span.event {
	background:#b21c1c;
	color:#ffffff;
}
.calendar.non-form td .inner a.reserved,
.calendar.non-form td .inner span.reserved {
	background:rgba(0,0,0,.10);
	color:#333333;
}
.calendar td .inner a.reserved {
	cursor:not-allowed;
}
.calendar td .inner a.selected {
	background:yellow;
	font-weight:bold;
}
.calendar td .inner .description {
	display:none;
	font-size:9px;
}
.calendar td .inner .description .selected-time {
	display:none;
}
.calendar td .date,
.calendar td .price {
	display:none;
}
.calendar a:hover {
	background:rgba(0,0,0,.20);
}
.calendar td {
  padding:5px;
  vertical-align:top;
  text-align:left;
}
.calendar-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.calendar-heading .prev-month {
  order:1;
  width:120px;
}
.calendar-heading .next-month {
  order:3;
  width:120px;
}
.calendar-heading h3 {
  order:2;
  font-weight:700;
}
.calendar-legend {
}
.calendar-legend .item {
	display:inline-block;
	font-size:12px;
	height:20px;
	line-height:20px;
	margin:0 15px 0 0;
}
.calendar-legend .item .box {
	background:rgba(0,0,0,.10);
	border-radius:4px;
	-webkit-border-radius:4px;
	display:inline-block;
	height:20px;
	vertical-align:middle;
	width:20px;
}
.calendar-legend .item .box.red {
	background:#b21c1c;
}
.calendar tr.empty-row {
	display:none;
}
.clearfix:after,
.clearfix:before {
  content:" ";
  display:table;
}
.clearfix:after {
  clear:both;
}
.form-item,
.form-actions {
  margin-top:1em;
  margin-bottom:1em;
}
.form-item {
  float:left;
  margin:0 4% 8px 0;
  width:45%;
}
.form-item label {
  color:#666666;
  line-height:28px;
  margin:6px 0 0 8px;
}
.form-item label {
  margin:6px 0 0 3px;
  color:#000;
}
.form-item input.form-text {
  width:100%;
}
.form-item input.form-text,
.form-item select.form-text {
  -moz-box-shadow:none;
  -webkit-box-shadow:none;
  box-shadow:none;
  border-radius:4px;
  -webkit-border-radius:4px;
  -moz-border-radius:4px;
  background-color:#ededed;
  border-bottom:none;
  border-left:1px solid #dddddd;
  border-right:1px solid #dddddd;
  border-top:1px solid #cdcdcd;
  color:#000;
  padding:6px 8px;
  width:95%;
  font-size:16px;
  line-height:24px;
}
.form-item input.form-text-small {
  font-size:16px;
  line-height:24px;
}
.form-item label {
  display:block;
  font-weight:bold;
}
.form-item.full input.form-text {
  width:97%;
}
.form-item.full {
  width:96%;
}
.form-item.qtr {
  width:21%;
}
.form-item span.required {
  font-size:28px;
  line-height:18px;
}
.form-item .error {
  font-size:12px;
  color:#CC0000;
  font-weight:600;
}
.form-item span.required.error {
  font-size:15px;
}
.form-item span.required.error img {
  filter:invert(21%) sepia(100%) saturate(1413%) hue-rotate(359deg) brightness(74%) contrast(117%);
}
.form-item.qtr {
  width:21%;
}
.lightlabel {
  font-weight:normal !important;
  display:inline !important;
}
.msg {
	display:block;
}
@media (max-width:680px) {
	#main #content .block-block.donation .form-item input.form-text,
	#main #content .block-block.donation .form-item.full input.form-text,
	.block-block.donation .form-item.full input.form-text,
	#main #content .block-block.donation .form-item.full input.form-text {
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		font-size:13px;
		width:95%;
	}
	#main #content .block-block.donation .form-item label,
	#main #content .block-block.donation .form-item.full label[for="address"] {
		font-size:13px;
		max-width:95%;
	}
	#main #content table.calendar {
		border:0;
	}
	#main #content .block-block.donation .form-item {
		margin-right:0;
	}
	#main #content #meal-calendar-wrap h3 {
		font-size:16px;
	}
	#meal-calendar-wrap {
		font-size:13px;
	}
	#meal-calendar-wrap .fr.button.month-link {
		margin-right:10px;
	}
	.calendar th {
		display:none;
	}
	.calendar td {
		border:1px solid #dadada;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		display:table;
		margin-bottom:15px;
		text-align:center;
		width:98%;
	}
	#meal-form .calendar td.no-events,
		.calendar td.empty-cell {
		display:none;
	}
	.calendar td .inner .full-date {
		display:block;
	}
	.calendar td .inner .full-date {
		background:#808080;
		color:#ffffff;
		display:block;
		font-weight:bold;
		margin-bottom:10px;
		padding:10px;
		text-align:left;
	}
	.calendar td .inner .short-date {
		display:none;
	}
}