.hide-except-for-print {
	display: none;
}

@media print {
	.hide-except-for-print {
		display: unset !important;
	}

	body * {
		visibility: hidden;
	}

	#section-to-print, #section-to-print * {
		visibility: visible !important;
	}

	#section-to-print {
		position: absolute;
		left: 0;
		top: 0;
	}
}

.page-calendar {
	display:block;
    margin:10px 0px;
    padding: 0 20px;
}

.page-calendar .controls {
	display:block;
	padding-bottom: 10px;
	position: relative;
	text-align: center;
}
.page-calendar .controls .prev, .page-calendar .controls .next {
	position: absolute;
	top: 0;
}

.page-calendar .controls .prev {
	left: 0;
}

.page-calendar .controls .next {
	right: 0;
}

.page-calendar .controls .month {
	text-align: center;
	font-weight: bold;
	font-size: 0.8em;
}

.page-calendar .controls .month input {
	width:90px;
	height:15px;
	overflow:hidden;
	border:none;
	font-size:10px;
	color:#565656;
	font-weight:bold;
	padding:5px;
}

.page-calendar .grid {
	border-left:1px solid #aeaeae;
	width: 100%;
	overflow: hidden;
}

.page-calendar .day {
	width: 14.284%;
	overflow: hidden;
	box-sizing: border-box;
	height:22px;
	min-height: 22px;
	display:block;
	border-right:1px solid #aeaeae;
	border-bottom:1px solid #aeaeae;
	float:left;
	font-size:10px;
	text-align:center;
	padding: 4px 0;
}
.page-calendar .month h2 {
    font-size: 17px;
}

.page-calendar .day a {
	text-decoration:none;
}

.page-calendar .today {
	background:#ececec;
}

.page-calendar .name {
	color: inherit;
	font-size: 0.5em;
	line-height: 1;
	height: auto;
	padding: 3px 0;
	min-height: 0px;
	border-top:1px solid #aeaeae;
}

.activities .page-calendar .day {
	padding: 5px;
	min-height: 90px;
	text-align: left;
	overflow: hidden;
}

.activities .page-calendar .name {
	min-height: 0;
	text-align: center;
	font-size: 0.8em;
}

.filters .left, .postevent .left {
	float: left;
}

.filters .right, .postevent .right {
	float: right;
}

.activities .date {
    font-size: 16px;
    font-weight: bold;
    padding-bottom: 4px;
}

form.calendar_search {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-between;;
    -ms-flex-pack: space-between;;
    -webkit-justify-content: space-between;;
    -moz-justify-content: space-between;;
    justify-content: space-between;;
    width: 100%;
}

.calendar_search input, .calendar_search button, .calendar_search select {
    vertical-align: middle;
    height: 26px !important;
    padding: 2px 8px;
    box-sizing: border-box;
    width: 100%;
    margin-right: 10px;
    font-size: 14px;
    border: 1px solid #d2d2d2;
    color: #464646;
}

.calendar_search  input::-webkit-input-placeholder { /* Edge */
    color: #464646;
}

.calendar_search  input:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #464646;
}

.calendar_search  input::placeholder {
    color: #464646;
}

.calendar_search button.luna-btn.primary_color.btn {
    width: auto;
    margin: 0;
}

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

form.calendar_search {
    display: block;
}

}
