/** nav **/
.gragg_cal_sr-only {border:0; clip:rect(0, 0, 0, 0); height:1px; overflow:hidden; padding:0; position:absolute; white-space:nowrap; width:1px}
.gragg_cal_sr-only-focusable:active,.sr-only-focusable:focus {clip:auto; height:auto; overflow:visible; position:static; white-space:normal; width:auto}
.gragg_cal_button {background-color: transparent; border: 1px solid #404040; border-radius: 0.25rem; cursor: pointer; padding: 0.25rem 0.5rem; text-decoration: none}
.gragg_cal_plainselect {background-color: transparent; border: none; cursor: pointer; padding: 0.25rem}
.gragg_cal_search {align-items: center; border: 1px solid #a0a0a0; display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0; padding: 0.5rem}
.gragg_cal_seach_formwrap {align-items: center; display: flex; flex-grow: 1}
.gragg_cal_seach_formwrap form {align-items: center; display: flex; flex-grow: 1; flex-wrap: wrap; gap: 0.5rem;}
.gragg_cal_search_field {border: none; flex-grow: 1; height: 1.5rem; padding: 0}
.gragg_cal_view {text-align: right}
.gragg_cal_nav {margin: 1rem 0}
.gragg_cal_nav_contol {font-size: 200%; text-decoration: none; line-height: normal; padding: 0 0.125rem 0.5rem; vertical-align: middle}
.gragg_cal_thismonth {margin: 0 1rem; vertical-align: middle}
.gragg_cal_month_form {display: inline-block; vertical-align: middle}
.gragg_cal_month_select {font-size: 1.5rem; text-align: right}
.gragg_cal_month_select option {font-size: 1rem}

/** calendars **/
.gragg_cal_calendar_wrap {margin: 2rem 0}

/* list */
.gragg_cal_listmonth_heading_bar {border-collapse: collapse; border-style: hidden; display: table; margin: 2rem 0 1rem; width: 100%}
.gragg_cal_listmonth_heading, .gragg_cal_listmonth_hr {border: 1rem solid transparent; display: table-cell; vertical-align: middle}
.gragg_cal_listmonth_hr {width: 100%}
.gragg_cal_listmonth_heading {font-size: 1.125rem; font-weight: normal; white-space: nowrap}
.gragg_cal_listmonth_hr hr {border-color: #a0a0a0}
.gragg_cal_listmonth_date_datewrap {margin: 1rem 0}
.gragg_cal_listmonth_date_datewrap_wrap {display: inline-block; text-align: center}
.gragg_cal_listmonth_date_day {text-transform: uppercase}
.gragg_cal_listmonth_date_date {font-size: 1.5rem; font-weight: bold}
.gragg_cal_listmonth_date {margin: 2rem 0 3rem}
.gragg_cal_listmonth_event {margin: 1rem 0 2rem}
.gragg_cal_listmonth_event_name {font-size: 1.25rem}
.gragg_cal_listmonth_event_name a {text-decoration: none}
.gragg_cal_listmonth_event_excerpt {margin: 1rem 0}

/* calendar */
.gragg_cal_calendar {
border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}
.gragg_cal_weekday_long {border:0; clip:rect(0, 0, 0, 0); height:1px; overflow:hidden; padding:0; position:absolute; white-space:nowrap; width:1px}

.gragg_cal_calendar td {
  background-color: #ffffff;
  border: 1px solid #000000;
  vertical-align: top;
  width: calc(100% / 7);
  padding: 0;
}
.gragg_cal_calendar td.gragg_cal_not_this_month {
  background-color: #d0d0d0;
}

.gragg_cal_calendar_date {
  text-align: right;
  padding: 0 0.5rem 0 0;
  font-size: 1.125rem;
}
.gragg_cal_calendar_event, .gragg_cal_calendar_event_phantom {
	margin: 0.25rem 0;
  padding: 0.125rem 0.25rem;
	display: block;
}
.gragg_cal_calendar_event {
  z-index: 1;
  position: relative;
  background-color: rgba(232, 232, 232, 0.9);
	box-sizing: border-box; 
text-decoration: none;
 overflow-x: clip;
	text-overflow: ellipsis;
		white-space: nowrap;
		font-size: 0.5rem;
}
/*
.gragg_cal_calendar_event.gragg_cal_event_start {
  border-top-left-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}
.gragg_cal_calendar_event.gragg_cal_event_end {
  border-top-right-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
*/
.gragg_cal_calendar_event_name {
}
.gragg_cal_calendar_event .gragg_cal_calendar_event_name {
}

@media(min-width: 980px){
	/* list */
	.gragg_cal_listmonth_date {border-collapse: collapse; border-style: hidden; display: table; table-layout: fixed; width: 100%}
	.gragg_cal_listmonth_date_datewrap, .gragg_cal_listmonth_date_eventswrap {border: 2rem solid transparent; display: table-cell; vertical-align: top}
	.gragg_cal_listmonth_date_datewrap {text-align: center; width: 5rem	}
	.gragg_cal_listmonth_event {clear: both; margin: 0; padding: 1rem 0}
	.gragg_cal_listmonth_event::after {clear: both; content: ''; display: block}
	.gragg_cal_listmonth_event:first-child {padding-top: 0}
	.gragg_cal_listmonth_event_dates {margin-top: 0}
	.gragg_cal_listmonth_event_heading, .gragg_cal_listmonth_event_copy {float: left; width: 72%}
	.gragg_cal_listmonth_event_img_wrap {float: right; width: 25%}
	.gragg_cal_listmonth_event_img_wrap img {max-width: 100%}
	.gragg_cal_weekday_long {clip:auto; height:auto; overflow:visible; position:static; white-space:normal; width:auto}
	.gragg_cal_calendar_date {font-size: 2rem}
	.gragg_cal_calendar_event {font-size: 1rem}

}