.fc{margin-top:2rem}.fc h2{color:inherit;font-weight:600}.fc table{margin:0}.fc table tbody,.fc table tfoot,.fc table thead,.fc table tr{background:transparent;border:none}.fc .fc-day-top{font-weight:400}.fc a{border:none}.fc .fc-event,.fc .fc-event-dot{background-color:#3a87ad;color:#000;font-size:.65rem;font-weight:400;padding:.25rem}.fc .fc-event,.fc .fc-event:hover{background-color:#3a87ad}.fc .fc-list-item-marker,.fc .fc-list-item-time{display:none}.fc.fc-unthemed .fc-list-view{border:none}.fc.fc-unthemed .fc-list-table td{border:0}.fc.fc-unthemed .fc-list-heading td{background:transparent;border-top:1px solid var(--medium-gray)}.fc.fc-unthemed .fc-list-item:hover td{background:transparent}.calendar .button{margin:0}.calendar .button.selected{background:#ceced0;box-shadow:inset 0 2px 4px rgba(0,0,0,.2),inset 0 -1px 1px rgba(0,0,0,.2)}.calendar__header{align-items:center;column-gap:1rem;display:grid;gap:1rem;grid-template:"actions  actions  actions" "filters  filters  filters" "date     nav      nav";position:relative}@media screen and (min-width:768px){.calendar__header{align-items:end;grid-template:"filters  actions" "date     nav"}}@media screen and (min-width:1280px){.calendar__header{grid-template:"date  nav  filters  actions"}}.calendar__date-and-nav{display:flex;gap:1rem}@media screen and (min-width:768px){.calendar__date-and-nav{gap:2rem}}.calendar__date{color:inherit;flex:0 0 180px;font-size:1.2rem;font-weight:300;grid-area:date;margin:0;white-space:nowrap}@media screen and (min-width:768px){.calendar__date{flex:0 0 220px;font-size:1.5rem}}@media screen and (min-width:1280px){.calendar__date{flex:0 0 260px;font-size:1.8rem}}.calendar__date-month{font-weight:600}.calendar__nav{grid-area:nav;white-space:nowrap}.calendar__filters{display:flex;grid-area:filters}.calendar__actions{grid-area:actions;text-align:center}@media screen and (min-width:768px){.calendar__actions{margin:0 0 0 auto;text-align:right}}.calendar__actions select{width:auto}.calendar__action a{white-space:nowrap}.calendar__body{margin-top:2rem;min-height:300px;position:relative}.calendar__body .loading{border-radius:12px;bottom:0;left:0;padding:4rem 1rem;position:absolute;right:0;text-align:center;top:0}.calendar__body.grid-mode .loading{background:hsla(0,0%,100%,.75);color:#666}table.calendar__grid{table-layout:fixed}@media print,screen and (max-width:767.8px){table.calendar__grid{margin-inline:calc(var(--app-gutter)*-1);width:calc(100% + var(--app-gutter)*2)}}table.calendar__grid tbody,table.calendar__grid tfoot,table.calendar__grid thead{border:1px solid var(--light-gray)}table.calendar__grid thead{background:transparent}table.calendar__grid thead th{border-right:1px solid var(--light-gray);padding:.1rem;text-align:center;width:14.2857142857%}table.calendar__grid tbody tr{border-bottom:1px solid var(--light-gray)}table.calendar__grid tbody td{border-right:1px solid var(--light-gray)}.calendar__grid-day{height:120px;padding:0 1px;vertical-align:top}@media screen and (min-width:768px){.calendar__grid-day{padding:0 6px}}.calendar__grid-day.outside-of-month{color:var(--medium-gray)}.calendar__grid-day.is-history{opacity:.3}.calendar__grid-day__header{font-size:.75rem;padding:.25rem;text-align:right}.calendar__grid-day__day-number{display:inline-block;line-height:1;position:relative;z-index:1}.calendar__grid-day__day-number:before{border-radius:50%;content:"";height:2em;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:2em;z-index:-1}.current-day .calendar__grid-day__day-number{color:var(--calendar-accent-text)}.current-day .calendar__grid-day__day-number:before{background:var(--calendar-accent-bg)}.calendar__grid-day__today-text{display:inline-block;font-weight:600;margin-right:.6rem}.calendar__grid-day__closed-text{color:var(--app-red);font-weight:700}.calendar__grid-day__event{color:#000;display:block;font-size:9px;line-height:1.1;margin:4px 0;padding:.25rem 1px;text-align:left;width:100%}@media screen and (min-width:768px){.calendar__grid-day__event{font-size:15px;padding:.25rem}}.calendar__grid-day__event.is-cancelled{text-decoration:line-through}button.calendar__grid-day__event{background:var(--light-gray);border-radius:3px}button.calendar__grid-day__event:active,button.calendar__grid-day__event:hover{background:var(--color-mustard);color:#000}.outside-of-month button.calendar__grid-day__event:active,.outside-of-month button.calendar__grid-day__event:hover{color:var(--dark-gray)}.calendar__grid-day__event svg *{fill:var(--dark-gray)}.calendar__grid-day__event.is-without-details+.calendar__grid-day__event{border-top:1px solid var(--light-gray)}.calendar__grid-day__event-info{column-gap:.3rem;display:grid;grid-template-columns:22px 1fr;min-width:0}@media print,screen and (max-width:767.8px){.calendar__grid-day__event-info{grid-template-columns:1fr}.calendar__grid-day__event-info .event-thumb{display:none}}.calendar__grid-day__event-info .event-org-title-and-time{min-width:0}.calendar__grid-day__event-info .event-organization{color:var(--dark-gray);font-size:9px;margin-bottom:3px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media screen and (min-width:1280px){.calendar__grid-day__event-info .event-organization{font-size:.8em;overflow:initial;white-space:normal}}.calendar__grid-day__event-info .event-time{display:none;font-size:.8em;margin-top:3px;white-space:nowrap}@media screen and (min-width:1280px){.calendar__grid-day__event-info .event-time{display:block}}.calendar__grid-day__event-info .event-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar__list__day{margin-bottom:1rem}.calendar__list__day__text{color:inherit;font-size:1.2rem;font-weight:400}.calendar__list{display:grid;grid-template-columns:1fr;row-gap:1.5rem}.calendar__list-event{background:#fff;box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);position:relative}.calendar__list-event:after{background:var(--light-gray);bottom:-.75rem;height:1px;left:0;position:absolute;width:100%}.calendar__list-event-header{align-items:center;display:flex;flex-wrap:wrap;min-height:100px;width:100%}@media screen and (min-width:768px){.calendar__list-event-header{flex-wrap:nowrap}}.calendar__list-event-header [class*=icon]{font-size:.8rem;vertical-align:middle}.calendar__list-event-header__date{align-items:center;align-self:stretch;background:var(--calendar-accent-bg);border:none;color:var(--calendar-accent-text);display:flex;flex:0 0 100%;flex-wrap:wrap;font-size:1.3rem;justify-content:center;padding:.8rem;text-align:center;white-space:nowrap}@media screen and (min-width:768px){.calendar__list-event-header__date{flex:0 0 160px;flex-wrap:nowrap;font-size:1rem;padding:0}}.calendar__list-event-header__date .date{align-items:center;display:inline-grid;gap:6px .25em;grid-template:"month day"/auto auto;line-height:1}@media screen and (min-width:768px){.calendar__list-event-header__date .date{grid-template:"month" "day"/1fr}}.calendar__list-event-header__date .date .day{font-weight:700;grid-area:day}@media screen and (min-width:768px){.calendar__list-event-header__date .date .day{font-size:1.3rem}}.calendar__list-event-header__date .date .month{grid-area:month;text-transform:uppercase}.calendar__list-event-header__date .end.date{margin-left:10px;padding-left:20px;position:relative}.calendar__list-event-header__date .end.date:after{color:#ccc;content:"–";left:0;position:absolute;top:50%;transform:translateY(-50%)}.is-cancelled .calendar__list-event-header__date{background:var(--light-gray);color:var(--medium-gray)}.calendar__list-event-header__info{align-items:center;display:grid;flex:1 1 100%;gap:.5rem 1rem;grid-template:"photo title" "photo categories"/35px 1fr;margin:0 0 .8rem;padding:0 1rem;text-align:left}@media screen and (min-width:768px){.calendar__list-event-header__info{grid-template:"photo title categories"/50px 1fr;margin-bottom:0}}@media screen and (min-width:1280px){.calendar__list-event-header__info{grid-template:"photo title categories"/75px 1fr}}.calendar__list-event-header__info>*{flex-basis:100%}.calendar__list-event-header__photo{grid-area:photo}.calendar__list-event-header__photo svg{max-height:35px;max-width:35px;width:100%}@media screen and (min-width:768px){.calendar__list-event-header__photo svg{max-height:50px;max-width:50px}}@media screen and (min-width:1280px){.calendar__list-event-header__photo svg{max-height:75px;max-width:75px}}.calendar__list-event-header__photo img{border-radius:4px}.calendar__list-event-header__title-and-details{display:grid;grid-area:title;grid-template-columns:1fr;padding:1rem 0}.calendar__list-event-header__organization{font-size:.8rem}.calendar__list-event-header__organization a{text-decoration:none}.calendar__list-event-header__organization a:active,.calendar__list-event-header__organization a:focus,.calendar__list-event-header__organization a:hover{text-decoration:underline}.calendar__list-event-header__title{font-size:1.2rem;font-weight:500;line-height:1.1;margin-bottom:.25rem}@media screen and (min-width:1280px){.calendar__list-event-header__title{font-size:1.3rem}}.calendar__list-event-header__cancelled{background:var(--app-red);border-radius:4px;color:#fff;display:inline-block;font-size:.75em;line-height:1;margin-left:1rem;padding:4px 8px}.calendar__list-event-header__details{display:grid;font-size:.85rem;gap:.25rem 1rem;grid-template-columns:min-content 1fr}.calendar__list-event-header__details>:nth-child(odd){font-weight:500;white-space:nowrap}.calendar__list-event-header__categories{display:flex;flex-basis:auto;flex-wrap:wrap;gap:2px;grid-area:categories}@media screen and (min-width:1280px){.calendar__list-event-header__categories{flex-wrap:nowrap;white-space:nowrap}}.calendar__list-event-header__category{background:var(--light-gray);border-radius:3px;display:inline-block;flex:0 0 auto;font-size:.8rem;padding:3px 4px}.calendar__list-event-header__details-button{border:1px solid var(--light-gray);border-radius:6px;display:inline-block;font-size:.75rem;justify-self:start;margin-top:.5rem;padding:.25rem 1rem}.calendar__list-event-header__details-button:active,.calendar__list-event-header__details-button:focus,.calendar__list-event-header__details-button:hover{background:var(--light-gray)}.calendar__list-event-details{background:#efefef;overflow:hidden;padding:1rem}@media screen and (min-width:768px){.calendar__list-event-details{padding:2rem}}