form#contactform {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /* background: red; */
    /* padding: 1.4em 2.6em 3em; */
    position: relative;
    margin-bottom: 1vw;
    border: 0;
    outline: 0;
}

form#contactform input,
form#contactform textarea,
form#contactform button {
    margin: 0.2em;
    background: rgb(0 0 0);
    border: 0;
    padding: 0.3em;
    color: rgb(255 255 255);
    outline-color: var(--mr-color-primary);
    z-index: 3;
    border: 3px solid transparent;
    border-width: 3px;
    border-style: solid;
    border-color: transparent;
    flex-grow: 1;
    outline: 0;
}

form#contactform input:hover,
form#contactform textarea:hover,
form#contactform button:hover {
    border: 3px solid var(--mr-color-primary);
}

form#contactform button {
    text-transform: uppercase;
    font-weight: 900;
    border: 3px solid var(--mr-color-primary);
    -webkit-transition: .3s all ease;
    transition: .3s all ease;
    width: 100%;
    background: var(--mr-color-primary);
    color: var(--mr-color-light);
    cursor: pointer;
    margin: 0;
    padding: 1.5rem;
}

form#contactform button:hover {
    background: var(--mr-color-primary-tint);
    color: var(--mr-color-light);
}

form#contactform *::-moz-placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform *:-ms-input-placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform *::-ms-input-placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform *::-webkit-input-placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform *::-moz-placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform *:-ms-input-placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform *::placeholder {
    color: var(--mr-color-light);
    opacity: .6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

form#contactform:after {
    /* content: ''; */
    position: absolute;
    bottom: -4vw;
    left: 0;
    width: 100%;
    background: var(--mr-color-primary);
    ;
    -webkit-transform: skewY(5.5deg);
    transform: skewY(5.5deg);
    height: 8vw;
    z-index: 2;
}

.contact_header {
    margin-bottom: 1.6em;
    color: var(--mr-color-light);
    font-size: .8em;
    text-align: center;
}

.contact_col {
    display: flex;
    padding: .5em;
}

.contact_col .g-recaptcha {
    margin: auto;
    padding-right: 1rem;
}

form#contactform .contact_col button:before {
    content: '\f1d8';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
    padding-right: 0.5em;
}

.contact_input_group {
    padding: 0;
    flex-wrap: wrap;
}

@media (max-width: 767px) {
    form#contactform .contact_col .g-recaptcha {
        margin: 1em auto;
    }

    form#contactform .contact_col {
        display: flex;
        flex-direction: column;
    }

    form#contactform .contact_col button {
        padding: 1em;
        margin-left: 0;
        margin-top: 0.8em;
    }
}
table.calendar td {
    max-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 14.2%;
    height: 130px;
    background: whitesmoke;
    padding: 0.2em;
    position: relative;
    vertical-align: initial;
    padding-top: 1.6rem;
}

table.calendar {
    border-collapse: separate;
    width: 100%;
    overflow: hidden;
}

a.calevent {
    display: block;
    background: var(--mr-color-primary);
    color: white;
    text-decoration: none !important;
    font-size: 0.7em;
    padding: .2em;
    border-radius: .2em;
    margin-bottom: 0.2em;
    overflow: hidden;
}

span.caleventname {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 0em;
}

span.caleventtime {
    font-size: 10px;
    line-height: 1.5;
    display: block;
}

.caldaynum {
    font-size: 0.7em;
    padding: 0.35em;
    position: absolute;
    top: 0;
    font-weight: 900;
}

td.calnodates {
    background: white !important;
}

table.calendar th {
    font-size: 0.7em;
    text-align: center;
}

.calendar-month {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    background: grey;
    margin-bottom: 2rem;
}

.monthdropdown_options_inner {
    display: flex;
    flex-direction: column;
    position: relative;
    text-align: center;
    background: white;
    overflow: hidden;
    border-radius: .5em;
}

.monthdropdown_options_inner a {
    padding: 0.4em 1.9em;
    font-size: 1rem;
    text-transform: uppercase;
    color: black;
    text-decoration: none !important;
    font-weight: 900;
}

.monthdropdown_options_inner a:hover {
    background: var(--mr-color-accent);
}

.monthdropdown_options:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #ffffff transparent;
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translate(-50%, 0);
}

.monthdropdown_options {
    position: absolute;
    box-shadow: 1px 1px 20px rgba(0, 0, 0, 0.2);
    display: flex;
    border-radius: .5em;
    height: auto;
    width: auto;
    top: calc(100% + 0px);
    visibility: hidden;
    z-index: 1;
    left: 50%;
    transform: translate(-50%, 0px);
}

.monthdropdown_selection,
.calendar-pager h1 {
    font-weight: 600;
    position: relative;
    text-transform: uppercase;
    font-size: 1.5rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.monthdropdown,
.calendar-pager {
    position: relative;
    margin-bottom: 1rem;
}

.monthdropdown:hover .monthdropdown_options {
    visibility: visible;
}

.event_pager a {
    border: 1px solid #A30201;
    text-decoration: none;
    padding: 0.2em 0.6em;
    border-radius: 5px;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
    white-space: nowrap;
    margin-bottom: 1em;
    display: inline-block;
    color: #A30201;
}

.event_pager .back:before,
.event_pager .prev:before {
    content: '\f0a8';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-right: .3em;
}

.event_pager .next:after {
    content: '\f0a9';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-left: .3em;
}

.event_content {
    padding: 3rem 1rem;
}

a.prevnext {
    font-size: 1.5em;
    color: var(--mr-color-primary);
}

@media (max-width: 767px) {

    table.calendar,
    table.calendar tbody,
    table.calendar tr {
        display: block
    }

    .monthdropdown {
        font-size: 20px
    }

    table.calendar td {
        display:
            block;
        width: 100%;
        max-width: none;
        margin-bottom: .5em;
        height: auto;
        padding: 0.6em;
        padding-top: 2em;
    }

    td.calnodates {
        display: none !important;
    }

    table.calendar th {
        display: none;
    }

    .caldaynum {
        font-size: .9em;
        padding-bottom: 1em;
    }

    a.caleventwrap {
        font-size: 18px;
        line-height: 1
    }

    span.caleventname {
        font-size: 1em;
        line-height: 1.2
    }

    span.caleventtime {
        font-size: .7em;
        line-height: 1.2
    }
}


/* Widget */



.events_item {
    border: 2px solid #20361e;
    display: flex;
    margin-top: 0.9em;
    border-radius: 5px;
    box-shadow: 0 5px 10px #00000024;
    color: black;
    text-decoration: none;
    position: relative;
    cursor: pointer;
    background: var(--mr-color-tertiary-shade);
}

.events_description {
    padding: 1.2em 1em;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    color: #20361e;
}

.events_date {
    width: 6em;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-right: 2px solid #20361e;
}

.events_date_month {
    display: block;
    text-transform: uppercase;
    line-height: 1;
    font-weight: 700;
    color: #20361e;
}

.events_date_day {
    font-size: 2em;
    line-height: 1;
    color: #20361e;
}

.events_details {
    display: flex;
    width: 100%;
    flex-grow: 1;
    font-size: .9em;
    flex-wrap: wrap;
}

.events_title {
    line-height: 1;
    margin-bottom: 0.6em;
    font-size: 1.1em;
}

.events_details_location:before,
.event_location:before {
    content: '\f3c5';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
    margin-right: 0.3em;
}

.result_events_date:before,
.event_date:before {
    content: '\f073';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
    margin-right: 0.3em;
}

.events_details>* {
    flex-grow: 1;
    /* width: 100%; */
}

.events_details_time:before,
.event_time:before {
    content: '\f017';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
    margin-right: 0.3em;
}


a.events_icon::before {
    content: '\f073';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
}

span.calhead_month {
    margin-right: 0.5rem;
}

.event_details {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    margin: 0 0.4rem;
}

.event_details>div {
    margin-right: 1.5rem;
}

.calendar-month .prevnext,
.calendar-pager .prevnext {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mr-color-accent);
    text-decoration: none;
}

.monthdropdown_selection i,
.calendar-pager i {
    width: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.event_date {
    border: 1px solid var(--mr-color-primary);
    color: var(--mr-color-light);
    text-decoration: none;
    padding: 0.2em 0.6em;
    border-radius: 5px;
    box-shadow: 1px 1px 5px rgb(0 0 0 / 20%);
    white-space: nowrap;
    /* margin-bottom: 1em; */
    display: inline-block;
    color: var(--mr-color-primary);
}


.event_date a {
    background: transparent;
    color: var(--mr-color-light);
    text-decoration: none;
    border-radius: 5px;
    box-shadow: 1px 1px 5px rgb(0 0 0 / 20%);
    white-space: nowrap;
    /* margin-bottom: 1em; */
    display: inline-block;
    color: red;
}

.event_list .event,
.schedule_events .event {
    display: flex;
    flex-direction: row;
    text-decoration: none;
    background: #f0f0f0;
    box-shadow: 3px 3px 10px #00000029;
    padding: 0.5em;
    border: 3px solid transparent;
    position: relative;
    color: var(--mr-color-contrast);
    margin-bottom: 1rem;
}


.event_list .event:hover,
.schedule_events .event:hover {
    border: 3px solid var(--mr-color-accent);
}

.event_result_details {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.event_result_img {
    /* width: 7.4em; */
    /* height: 100%; */
    /* overflow: hidden; */
    position: relative;
    /* margin-right: 1rem; */
}

.event_result_img img {
    width: 7.4em;
    height: 4.5em;
    object-fit: cover;
    object-position: center center;
    display: block;
}

table.calendar td:hover {
    background: var(--mr-color-accent-tint);
    cursor: pointer;
}

.event_description {
    font-size: 1rem;
    margin-left: 0.4rem;
}

.events_day_timetable_hour {
    border-bottom: 1px solid #e3e3e3;
    position: relative;
    font-size: 1rem;
    height: 4rem;
    min-height: 1rem;
}

.events_day_timetable_hour .label {
    font-size: 0.9rem;
    position: absolute;
    right: calc(100% + 0.5rem);
    bottom: calc(100% - .6rem);
    color: #c7c7c7;
    white-space: nowrap;
}

.events_day_timetable {
    padding-left: 6rem;
}

.events_day_timetable_hour_inner {
    position: relative;
    height: 4rem;
    z-index: 999;
}

.day_event {
    background: var(--mr-color-accent-tint);
    display: flex;
    position: relative;
    width: calc(100% - 4px);
    border-radius: 1rem;
    overflow: hidden;
    text-decoration: none;
    color:
        var(--mr-color-contrast);
    height:
        calc(100% - 0rem);
    box-shadow: 0.3rem 0.3rem 0.6rem #0000001a;
    border: 3px solid transparent;
    cursor: pointer;
}

.events_day_timetable_hour .event_result_details {
    padding: 0rem;
    font-size: 1rem;
}

.events_day_timetable_hour .event_details {
    font-size: 0.9rem;
    line-height: 1;
}

.events_day_timetable_hour.active {
    border-bottom: 1px solid grey;
    height: 4rem;
}

.events_day_timetable_hour.active .label {
    color: #303030;
}

.day_event .event_result_img img {
    height: 100%;
}

.event_day_wrapper {
    padding: 1px 2px 4px 2px;
    position: absolute;
    width: 100%;
}

.events_day_timetable_hour.active::first-of-type {}



.fc-dayGridMonth-view .day_event:hover {
    border: 3px solid var(--mr-color-accent);
    width: fit-content;
    height: auto;
    position: absolute;
    background: var(--mr-color-accent);
    z-index: 9999999;
    top: 0;
    right: auto;
    max-width: none;
}

.day_event h3 {
    line-height: 1.3;
    margin: 0;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    /* margin-bottom: 0.3rem; */
    margin: 0 0.4rem;
}

.event_day_wrapper .event_result_details {
    height: 100%;
    /* flex-wrap: wrap; */
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    width: 100%;
    color: var(--mr-color-contrast);
}

.events_day_timetable_hour:first-of-type {
    border-top: 1px solid grey;
}

.calendar-pager {
    display: flex;
}

.calendar_viewoptions_dropdown {
    display: none;
    flex-direction: column;
    box-shadow: 0.2rem 0.2rem 0.6rem #00000054;
    border-radius: 0.5rem;
    padding: .2rem;
    position: absolute;
    z-index: 99999999;
    background: white;
    width: auto;
    min-width: 140px;
    top: calc(100% + .3rem);
}

a.calendar_viewoptions_current {
    height: 3rem;
    padding: 0 1rem;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    text-decoration: none;
    color: var(--mr-color-contrast);
    background: var(--mr-color-accent);
    cursor: pointer;
}

.calendar-pager h1 {
    flex-grow: 1;
    text-align: left;
    justify-content: flex-start;
    padding-left: 1rem;
    text-transform: none;
    margin: 0 !important;
}

a.calendar_viewoptions_current:after {
    content: '\f0d7';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
    margin-left: 1rem;
}

.calendar-pager h1:after {
    display: none;
}

.calendar_viewoptions_dropdown.show {
    display: flex;
}

.calendar_viewoptions_dropdown>a {
    text-decoration: none;
    padding: 0.3rem;
    color: var(--mr-color-contrast);
}

.calendar_viewoptions_dropdown hr {
    margin: 0.3rem;
}

.calendar_viewoptions_dropdown>a:hover {
    background: var(--mr-color-accent-tint);
}

.events_day_timetable_header {
    height: 5rem;
    border-bottom: 1px solid #e3e3e3;
    padding: .5rem;
}

.events_day_timetable_hour:first-of-type {
    border-top: 1px solid #e3e3e3;
}

.events_day_timetable_labels {
    position: absolute;
}

.events_day_timetable_labels .events_day_timetable_hour,
.events_day_timetable_labels .events_day_timetable_header {
    border: none;
}

.events_week_timetable {
    display: flex;
    flex-direction: row;
    padding-left: 6rem;
}

span.events_day_timetable_header_weekday {
    text-transform: uppercase;
    display: block;
}

span.events_day_timetable_header_date {
    font-size: 2rem;
    line-height: 1;
}

.events_week_timetable .events_day_timetable {
    width: 14.285%;
    padding-left: 0;
    border-left: 1px solid #e3e3e3;
}

.events_week_timetable .event_result_img {
    display: none;
}

.events_week_timetable .event_time {
    display: none;
}

.events_week_timetable .event_description {
    display: none;
}

.events_year_timetable {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}

.events_year_timetable .calendar,
.events_year_timetable .flex_holder {
    width: 16.6%;
    padding: 1rem;
    min-width: 254px;
}

.events_year_timetable .calendar td {
    height: 1rem;
}

.events_year_timetable .caleventwrap {
    display:
        flex;
    overflow: hidden;
    position: absolute;
    bottom: 0.15rem;
}

.events_year_timetable .calevent {
    max-width: 0.3rem;
    max-height: 0.3rem;
    min-width: 0.3rem;
    min-height: 0.3rem;
    margin: 0.03rem;
    border-radius: 50% !important;
    background: var(--mr-color-accent);
    padding: 0;
}

.events_year_timetable .calevent>* {
    display: none;
}

.events_year_timetable .flex_holder {
    padding-top: 0;
    padding-bottom: 0;
}

.events_year_timetable .caldaynum {
    width: 100%;
    text-align: center;
    left: 0;
}

.event_day_wrapper.small h3,
.event_day_wrapper.xsmall h3 {
    font-size: 1rem;
    margin: 0;
    width: auto;
    overflow: visible;
    margin-left: 1rem;
    line-height: 1.2;
}

.event_day_wrapper.small .event_result_details,
.event_day_wrapper.xsmall .event_result_details {
    padding: 0;
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.event_day_wrapper.small .event_description,
.event_day_wrapper.xsmall .event_description {
    display: none;
}

.event_day_wrapper:hover {
    min-height: 2rem;
}

.event_day_wrapper.xsmall a>* {
    opacity: 0;
}

.event_day_wrapper.xsmall:hover a>* {
    opacity: 1;
}

.event_day_wrapper.xsmall a:before {
    content: '...';
    opacity: 1;
    font-family: var(--mr-fontawesome);
    font-weight: 900;
    font-size: 1.5rem;
    color: black;
    line-height: 0;
    position: absolute;
    top: -5px;
    left: 0;
    height: calc(100% + 6px);
}

.event_day_wrapper.medium .event_description {
    display: none;
}

.overlap_1 {
    width: 50%;
}

.overlap_2 {
    width: 50%;
    margin-left: 50%;
}

.day_event.no_events {
    background: whitesmoke;
}

a.day_event.no_events:hover {
    border: 3px solid #dddddd;
}

.event_day_wrapper.xsmall:hover a:before {
    opacity: 0;
}

.events_week_timetable h3,
.events_week_timetable .event_details,
.events_week_timetable .event_description {
    margin-left: 0.3rem !important;
    width: calc(100% - .3rem) !important;
}

.event_day_wrapper.small .event_details,
.event_day_wrapper.xsmall .event_details {
    margin-bottom: 0;
    font-size: 0.8rem;
}


.event_list .event_result_details {
    flex-direction: column;
}

.event_list .event_details,
.event_list .event_description {
    margin-left: 0;
}

.monthdropdown {
    margin: 0;
}


/* NEW */

.fc-dayGridMonth-view .fc-day-other {
    visibility: collapse;
    /* visibility: hidden; */
    height: 0 !important;
}

.fc-dayGridMonth-view table.fc-scrollgrid {
    border: 0 !important;
}

.fc-dayGridMonth-view a.fc-col-header-cell-cushion {
    text-decoration: none;
    color: #939393;
}

.fc-dayGridMonth-view .fc-daygrid-day-frame.fc-scrollgrid-sync-inner {
    background: grey;
    white-space: nowrap;
    background: #2f2f2f;
    padding: 0.2em;
    position: relative;
    border: 2px solid transparent;
}

.fc-dayGridMonth-view td.fc-daygrid-day.fc-day {
    /* overflow: hidden; */
    text-overflow: ellipsis;
    white-space: nowrap;
    background: transparent;
    padding: 0.1em;
    position: relative;
    width: 14.7%;
    height: 145px;
}

.fc-dayGridMonth-view table.fc-scrollgrid-sync-table {
    border-collapse: separate;
    /* overflow: hidden; */
}

.fc-dayGridMonth-view .fc-daygrid-day-number {
    text-decoration: none;
    color: #757575;
    font-weight: 900;
}
td.fc-daygrid-day.fc-day.fc-day-today>div .fc-daygrid-day-number {color: red}
.fc-dayGridMonth-view td,
.fc-dayGridMonth-view th {
    border: 0;
}


.fc-dayGridMonth-view .fc-daygrid-day-top {
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
}

.fc-dayGridMonth-view .fc-day-other .fc-daygrid-day-frame {
    display: none;
}

h2.fc-toolbar-title {
    display: inline-block;
    padding-left: clamp(5px, 2.75vw, 1rem);
    border-bottom: none;
    padding-bottom: 0;
}

.fc-toolbar-chunk>div {
    display: flex;
    align-items: center;
}

/* scrollbar fix
.fc-scroller {
    position: relative !important;
}
 */

button.fc-button.fc-button-primary {
    /* width: 3rem; */
    min-height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #940000;
    text-decoration: none;
    border: 0;
    border-radius: 0;
    color: black;
    font-family: 'Bebas Neue';
}

.fc-toolbar-chunk button:first-of-type {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.fc-toolbar-chunk button:last-of-type {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

.fc .fc-button-primary:focus,
.fc .fc-button-primary:not(:disabled).fc-button-active:focus,
.fc .fc-button-primary:not(:disabled):active:focus {
    box-shadow: inset 0 0 0.9rem rgb(5 52 100 / 50%);
}

.fc-h-event {
    border: 1px solid var(--mr-color-accent);
    border: 1pxsolidvar(--fc-event-border-color, #3788d8);
    background-color: #3788d8;
    background-color: var(--mr-color-accent);
}

.fc .fc-list-event-dot {

    border: 5px solid --mr-color-accent;
    border: calc(var(--fc-list-event-dot-width, 10px)/ 2) solid var(--mr-color-accent, #3788d8);
}

td.fc-daygrid-day.fc-day.fc-day-today>div {
    background: #f091913d !important;
    border: 2px solid #ff0000;
    box-shadow: 0 0 3rem #ff00003d;
    position: relative;
    z-index: 9999;
}

.fc-h-event .fc-event-title {
    text-overflow: ellipsis;
}

.fc .fc-daygrid-day-number {
    padding: 2px;
}

@media (max-width: 767px) {
    .fc-header-toolbar.fc-toolbar {
        font-size: 2.75vw;
    }
}

.fc-dayGridMonth-view .event_description {
    display: none;
}

.fc-daygrid-dot-event.fc-event-mirror,
.fc-daygrid-dot-event:hover {
    background: rgba(0, 0, 0, .1);
    background: transparent;
    position: absolute;
    min-width: fit-content;
    width: calc(100% - 4px);
    background: #343434 !important;
    box-shadow: 2px 2px 6px #0000002b;
    padding: 2px 4px 2px 0;
}

.fc .fc-scroller-harness {
    overflow: visible;
}

.fc-dayGridMonth-view .day_event .event_details {
    display: none;
    font-size: .85rem;
}

.fc-dayGridMonth-view .day_event:hover .event_details {
    display: flex;
    margin-top: .3rem;
    margin-bottom: 0.3rem;
    color: black;
}

.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events {
    position: relative;
    min-height: 2.6em;
    margin-bottom: 0;
}

.fc .fc-daygrid-event-harness {
    height: 1.5rem;
    margin-bottom: 2px;
}

.day_event {
    max-width: 100%;
}

.fc .fc-daygrid-event {
    z-index: 999;
}

.fc .fc-daygrid-event-harness:hover {
    z-index: 9999999999;
    background: #2f2f2f;
}

.fc .fc-list-event:hover td {
    background: transparent;
}

.day_event:hover {
    border-color: var(--mr-color-accent);
}

.fc-direction-ltr .fc-list-table .fc-list-event-graphic {
    /* display: none; */
}

.fc-list .event_time {
    display: none;
}

.fc-list .event_details {
    order: 3;
    font-size: .85rem;
    margin-top: 0.25rem;
}

.fc-list .day_event {
    padding: 0.4rem 0.8rem;
}

.fc-list-day-text,
.fc-list-day-side-text {
    font-family: var(--mr-font-accent);
    position: relative;
    margin-top: 0;
    font-weight: 100;
    line-height: 1.2;
    color: #940000 !important;
    font-size: 2rem;
    text-decoration: none;
}

.fc-daygrid-more-link.fc-more-link {
    /* margin-left: 0.5rem; */
    padding: 0.2rem;
    display: block;
    line-height: 1;
    text-overflow: ellipsis;
    overflow: hidden;
    /* background: #940000; */
    font-weight: 900;
    color: #b70000;
    /* text-align: center; */
    border-radius: 1rem;
    text-decoration: none;
    text-transform: uppercase;
    /* box-shadow: inset 0 0 0px 1.5px #272727; */
    font-size: 0.9rem;
}

.google_event {
    background-color: salmon;
    border-color: salmon;
}

.fc-daygrid-dot-event.google_event .fc-daygrid-event-dot {
    border-color: salmon;
}

.fc-daygrid-dot-event.google_event {
    background: transparent;
    color: salmon;
}

.fc-daygrid-event-dot {
    border: 4px solid #ff0000;
}

.fc-list-event.google_event {
    background: transparent;
}

.fc .google_event .fc-list-event-dot {
    border-color: salmon;
}

.calendar_wrapper {
    position: relative;
}

.calendar_wrapper div#loading {
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
}

.fc-daygrid-event:hover {
    position: absolute;
    min-width: fit-content;
    width: calc(100% - 4px);
    box-shadow: 2px 2px 6px #0000002b;
    text-shadow: none;
}.google_event.holiday_events {
    background: #4cb577;
    border-color: #4cb577;
}

/* Events */
.mr_events.events .fc-daygrid-event-dot, .mr_events.events .fc-list-event-dot  {border: 4px solid #67a8c3 !important;}
.mr_events.events .fc-event-time {color:#67a8c3}
.mr_events.events .fc-event-title, .mr_events.events .fc-list-event-title {color:#5b8fa5}
.fc-daygrid-event.mr_events.events:hover {box-shadow: 0px 0px 0px 1px #67a8c3, 0px 0px 1.2rem #67a8c352;}
.mr_events.events:hover .fc-daygrid-event-dot {border: 4px solid #7ac9ea !important;}
.mr_events.events:hover .fc-event-time {color: #7ac9ea;}
.mr_events.events:hover .fc-event-title,.mr_events.events:hover .fc-list-event-title a {color: #67a8c3 !important;}


.mr_events.climbing .fc-daygrid-event-dot, .mr_events.climbing .fc-list-event-dot {border: 4px solid #c3c3c3 !important;}
.mr_events.climbing .fc-event-time {color:#c3c3c3}
.mr_events.climbing .fc-event-title, .mr_events.climbing .fc-list-event-title {color: #9d9d9d;}
.fc-daygrid-event.mr_events.climbing:hover{box-shadow: 0px 0px 0px 1px #c3c3c3, 0px 0px 1.2rem #c3c3c35c;}
.mr_events.climbing:hover .fc-daygrid-event-dot {border: 4px solid #dfdfdf !important;}
.mr_events.climbing:hover .fc-event-time {color: #dfdfdf;}
.mr_events.climbing:hover .fc-event-title, .mr_events.climbing:hover .fc-list-event-title a {color: #c3c3c3 !important;}



.mr_events.multipurpose .fc-daygrid-event-dot, .mr_events.multipurpose .fc-list-event-dot {border: 4px solid #55af3b !important;}
.mr_events.multipurpose .fc-event-time {color:#55af3b}
.mr_events.multipurpose .fc-event-title, .mr_events.multipurpose .fc-list-event-title {color:#499833}
.fc-daygrid-event.mr_events.multipurpose:hover {box-shadow: 0px 0px 0px 1px #55af3b, 0px 0px 1.2rem #55af3b5c;}
.mr_events.multipurpose:hover .fc-daygrid-event-dot {border: 4px solid #5cd639 !important;}
.mr_events.multipurpose:hover .fc-event-time {color: #5cd639;}
.mr_events.multipurpose:hover .fc-event-title, .mr_events.multipurpose:hover .fc-list-event-title a {color: #55af3b !important;}



.mr_events.parents .fc-daygrid-event-dot, .mr_events.parents .fc-list-event-dot {border: 4px solid #1fb7ab !important;}
.mr_events.parents .fc-event-time {color:#1fb7ab}
.mr_events.parents .fc-event-title,.mr_events.parents .fc-list-event-title {color:#1a9389}
.fc-daygrid-event.mr_events.parents:hover {box-shadow: 0px 0px 0px 1px #1fb7ab, 0px 0px 1.2rem #1fb7ab5c;}
.mr_events.parents:hover .fc-daygrid-event-dot {border: 4px solid #24dbcd !important;}
.mr_events.parents:hover .fc-event-time {color: #24dbcd;}
.mr_events.parents:hover .fc-event-title, .mr_events.parents:hover .fc-list-event-title a {color: #1fb7ab !important;}




.mr_events.recreation .fc-daygrid-event-dot, .mr_events.recreation .fc-list-event-dot {border: 4px solid #984cff !important;}
.mr_events.recreation .fc-event-time {color:#984cff}
.mr_events.recreation .fc-event-title,.mr_events.recreation .fc-list-event-title {color:#805eae}
.fc-daygrid-event.mr_events.recreation:hover {box-shadow: 0px 0px 0px 1px #984cff, 0px 0px 1.2rem #984cff5c;}
.mr_events.recreation:hover .fc-daygrid-event-dot {border: 4px solid #ad50ff !important;}
.mr_events.recreation:hover .fc-event-time {color: #ad50ff;}
.mr_events.recreation:hover .fc-event-title, .mr_events.recreation:hover .fc-list-event-title a {color: #984cff !important;}




.mr_events.teencentre .fc-daygrid-event-dot, .mr_events.teencentre .fc-list-event-dot {border: 4px solid #ff0000 !important;}
.mr_events.teencentre .fc-event-time {color:#ff0000}
.mr_events.teencentre .fc-event-title, .mr_events.teencentre .fc-list-event-title {color:#c40808}
.fc-daygrid-event.mr_events.teencentre:hover {box-shadow: 0px 0px 0px 1px #ff0000, 0px 0px 1.2rem #ff00005c;}
.mr_events.teencentre:hover .fc-daygrid-event-dot {border: 4px solid #ff0000 !important;}
.mr_events.teencentre:hover .fc-event-time {color:#ff0000}
.mr_events.teencentre:hover .fc-event-title, .mr_events.teencentre:hover .fc-list-event-title a {color: #d60a0a !important}


.event_details {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    margin: 0 0.4rem;
}

.event_details>div {
    margin-right: 1.5rem;
}

.filterbuttons_item label {
    padding: 0.7rem 1rem 0.7rem 3rem;
}

.filterbuttons_wrapper {
    display: flex;
    margin-bottom: 1rem;
    overflow: hidden;
}



.filterbuttons_item input {
    opacity: 0;
    position: absolute;
    inset: 0;
     cursor: pointer;
}

.filterbuttons_item {
    position: relative;
    color: #afafaf;
    margin-left: 1rem;
    white-space: nowrap;
}

.filterbuttons_item:first-of-type label {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.filterbuttons_item:last-of-type label {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}


.filterbuttons_item label:before {
    content: '';
    display:block;
    width:1rem;
    height:1rem;
    position:absolute;
    margin:1rem;
    left: 0;
    top: 0;
    background:#0000005e;
    cursor: pointer;
}
.item_events input + label:before {
 
       
}
.item_events input:checked + label:before {
    background: #5b8fa5;
        box-shadow: 0px 0px 1.2rem #67a8c35c;
}
.item_events:hover input:checked + label:before {
    background: #67a8c3;
}
.item_events:hover input + label:before {
    box-shadow: inset 0 0 0 1px #67a8c37d, 0px 0px 1.2rem #67a8c35c, inset 0px 0px 1.2rem #67a8c35c;
}
.item_climbing input:checked + label:before {
    background: #9d9d9d;
        box-shadow: 0px 0px 1.2rem #c3c3c35c;
}
.item_climbing:hover input:checked + label:before {
    background: #c3c3c3;
}
.item_climbing:hover input + label:before {
   box-shadow: inset 0 0 0 1px #c3c3c37d, 0px 0px 1.2rem #c3c3c35c, inset 0px 0px 1.2rem #c3c3c35c;
}
.item_multipurpose input:checked + label:before  {
    background: #499833;
        box-shadow: 0px 0px 1.2rem #55af3b5c;
}
.item_multipurpose:hover input:checked + label:before {
    background: #55af3b;
}
.item_multipurpose:hover input + label:before {
   box-shadow: inset 0 0 0 1px #55af3b7d, 0px 0px 1.2rem #55af3b5c, inset 0px 0px 1.2rem #55af3b5c;
}
.item_parents input:checked + label:before {
    background: #1a9389;
        box-shadow: 0px 0px 1.2rem #1fb7ab5c;
}
.item_parents:hover input:checked + label:before {
    background: #1fb7ab;
}
.item_parents:hover input + label:before {
   box-shadow: inset 0 0 0 1px #1fb7ab7d, 0px 0px 1.2rem #1fb7ab5c, inset 0px 0px 1.2rem #1fb7ab5c;
}
.item_recreation input:checked + label:before {
    background: #805eae;
    box-shadow: 0px 0px 1.2rem #984cff5c;
}
.item_recreation:hover input:checked + label:before {
    background: #984cff;
}
.item_recreation:hover input + label:before {
   box-shadow: inset 0 0 0 1px #984cff7d, 0px 0px 1.2rem #984cff5c, inset 0px 0px 1.2rem #984cff5c;
}
.item_teencentre input:checked + label:before {
    background: #940000;
        box-shadow: 0px 0px 1.2rem #ff00005c;
}
.item_teencentre:hover input:checked + label:before {
    background: #c40808;
}
.item_teencentre:hover input + label:before {
   box-shadow: inset 0 0 0 1px #c408087d, 0px 0px 1.2rem #c408085c, inset 0px 0px 1.2rem #c408085c;
}

.event_date:hover {
    border: 1px solid red;
    color: red;
}

.event_date:hover a {text-decoration: underline;}


.fc-daygrid-event.mr_events:before {
    content: attr(data-time);
    position: absolute;
    top: 100%;
    border-radius: 5px;
    margin-top: 0.5rem;
    background: #252525;
    transform: translateY(-1rem);
    color: #eeeeee;
    padding: 0.2rem .5rem;
    opacity: 0;
    visibility:hidden;
    transition: none;
    visibility:hidden;
    min-width: 3rem;
    min-height: 1rem;
    pointer-events: none;
}



.fc-daygrid-event.mr_events:after {
  content: "";
  position:absolute;
  
  /* position tooltip correctly */
  top: calc(100% + 2px);
  margin-left: 1rem;
 
  /* vertically center */
  transform: translateY(-1rem);
  opacity: 0;
  /* the arrow */
  z-index: 9;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0.4rem 0.4rem 0.4rem;
  border-color: transparent transparent #252525 transparent;
  transition: none;
  pointer-events: none;
}
.fc-daygrid-event.mr_events:hover:before, .mr_events:hover:after {
  visibility:visible;
  opacity: 1;
  transform: translateY(0%);
  transition: .2s all .2s ease-in;
}

.single_event_details .event_category {
    border: 1px solid red;
    background: transparent;
    color: var(--mr-color-light);
    text-decoration: none;
    border-radius: 5px;
    box-shadow: 1px 1px 5px rgb(0 0 0 / 20%);
    white-space: nowrap;
    /* margin-bottom: 1em; */
    display: inline-block;
    padding: 0.2em 0.6em;
}


.single_event_details .event_category.events a{
    color: #5b8fa5 !important;
}
.single_event_details .event_category.events {
    border:1px solid #67a8c3;
}

.single_event_details .event_category.climbing a{
    color: #c3c3c3 !important;
}
.single_event_details .event_category.climbing {
    border:1px solid #c3c3c3;
}

.single_event_details .event_category.multipurpose a{
    color: #55af3b !important;
}
.single_event_details .event_category.multipurpose {
    border:1px solid #55af3b;
}

.single_event_details .event_category.parents a{
    color: #1fb7ab !important;
}
.single_event_details .event_category.parents {
    border:1px solid #1fb7ab;
}

.single_event_details .event_category.recreation a{
    color: #984cff !important;
}
.single_event_details .event_category.recreation {
    border:1px solid #984cff;
}

.single_event_details .event_category.teencentre a{
    color: #c40808 !important;
}

.single_event_details .event_category.teencentre {
    border:1px solid #c40808;
}

/* ------------- 
 Section: News 
------------- */

section#news {
    /* background: rgb(71, 167, 183); */
    /* background: linear-gradient(318deg, rgba(71, 167, 183, 1) 0%, rgba(55, 156, 214, 1) 100%); */
    padding: 1rem 4vw 4vw;
    font-size: 16px;
}

.news_widget {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    color: var(--mr-color-light);
}

.news_widget .news_item.featured {
    width: 60%;
}

.news_more {
    width: calc(40% - 2em);
    min-width: 234px;
    flex-grow: 1;
    margin: 0 1em;
}

.news_widget .news_item.featured {
    display: flex;
    min-width: 280px;
    flex-grow: 1;
    flex-wrap: wrap;
}

.news_widget .news_item.featured .news_img {
    width: 10%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 0 1em 1em;
    min-width: 240px;
    flex-grow: 1;
    min-height: 200px;
}

.news_listings .news_item {
    position: relative;
    background: rgb(20 20 20);
    padding: 1em 1em 3rem 1em;
    margin-bottom: 1em;
}

.news_item h2 {
    margin-top: 0;
}

.news_details {
    width: 40%;
    margin: 0 1em;
    flex-grow: 1;
    min-width: 30%;
    margin-top: 1em;
}

.news_title {
    color: var(--mr-color-primary);
    font-family: 'Anton';
    text-decoration: none;
    font-weight: 400;
    font-size: 3.25em;
    line-height: 1.1;
    margin-bottom: 1.2rem;
    display: block;
}

.news_more .news_item .news_img,
.news_more .news_item .news_description {
    display: none;
}

.news_more .news_details {
    width: 100%;
    margin: 0;
}

.news_more .news_item {
    border-bottom: 3px solid var(--mr-color-primary);
    margin-bottom: 1em;
}

.news_more .news_title {
    font-size: 1.8em;
    margin-top: 1.2rem;
    color: #c9b3b3;
}

.news_title:hover {
    color: red;
    /* text-decoration: underline; */
}

.news_story {
    /* flex-direction: column; */
    background: #fff;
    display: flex;
    width: calc(100% - 14em);
    margin: auto;
    position: relative;
    padding: 0;
    text-align: left;
    color: #000000;
    box-shadow: 1px 1px 20px #00000085;
    width: calc(100% - 14em);
    height: 100%;
    border-radius: 1.6em;
    overflow: hidden;
    text-decoration: none;
}

.news_date {
    color: #bcbcbc;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: var(--mr-color-contrast);
    width: 100%;
    font-weight: 900;
    margin-bottom: 0;
    display: inline;
}

.news_content {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 2em;
    justify-content: center;
    width: 74%;
    position: relative;
    letter-spacing: .06em;
}

.news_photo {
    width: 26%;
    /* padding-bottom: 13%; */
    /* padding-bottom: 27%; */
    display: block;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-color: grey;
    margin-bottom: .7rem;
}

.news_summary {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    font-size: 1.2em;
}

.news_readmore {
    display: flex;
    align-items: center;
    justify-self: self-end;
    align-self: flex-end;
    /* background: black; */
    color: #830000;
    font-weight: 900;
    padding: 0;
    position: absolute;
    bottom: 0;
    right: 0;
    text-transform: uppercase;
    margin-bottom: 0;
    font-family: 'Anton';
    font-weight: 400;
    text-decoration: none;
    width: 100%;
    text-align: right;
    background: #101010;
}

.news_headline {
    font-size: 2em;
    font-weight: 900;
    text-decoration: none;
    margin-bottom: .25em;
}

.news_story:hover {
    color: black;
}

.news_readmore:after {
    content: '\f054';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: .5em;
    font-size: .9em;
    transition: .3s all ease;
    position: absolute;
    right: 1.5rem;
}

.single_news .news_date,
.news_item .news_date {
    border-bottom: none;
    margin-bottom: 0.7em;
    display: block;
}

.news_icon::before {
    content: '\f1ea';
    font-family: var(--mr-fontawesome);
    font-weight: 900;
}

.search_results_section.showall a:nth-of-type(n + 4) {
    display: flex;
}

.news_description {
    font-size: 1.5em;
    color: #a4a2a2;
}

.news_description p {
    display: inline;
}

.news_widget .news_item.featured .news_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.news_readmore a {
    text-decoration: none;
    width: 100%;
    display: block;
    padding: 0.65em 3rem 0.65em 1em;
}

.news_readmore:hover:after {
    color: red;
    transform: translateX(50%);
}
.news_widget .news_date {
    display: inline;
}.load_more {
    display: flex;
    align-items: center;
    width: 100%;
    background: transparent;
    border: 0;
}
.load_more span {
    cursor: pointer;
    background: var(--mr-color-primary);
    padding: 0 2em;
    color: #151515;
    font-family: 'Anton';
    border-radius: 2em;
}
.load_more::before, .load_more::after {
    content: '';
    display: block;
    height: 1px;
    background: var(--mr-color-primary);
    flex-grow: 1;
}

.load_more:hover span {
    background: red;
}
@media (max-width: 767px) {
    section#news {

        font-size: 10px;
    }

    .news_more {
        margin-top: 1rem;
        border-top: 3px solid var(--mr-color-primary);
    }

    .news_item h2 {

        font-size:1.6rem;

    }
}