.hfs-calendar-app{--hfs-calendar-accent:#ff6600;--hfs-calendar-text:#333;--hfs-calendar-secondary:#54595f;--hfs-calendar-gray-1:#f5f5f5;--hfs-calendar-gray-2:#eee;--hfs-calendar-gray-3:#d9d9d9;--hfs-calendar-gray-4:#bdbdbd;--hfs-calendar-radius:6px;font-family:inherit;color:var(--hfs-calendar-text);width:100%}.hfs-calendar-app *{box-sizing:border-box}.hfs-calendar-toolbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-bottom:14px}.hfs-calendar-nav,.hfs-calendar-views{display:flex;gap:6px;align-items:center}.hfs-calendar-title{font-size:24px;font-weight:700;text-align:center;line-height:1.2}.hfs-cal-btn{appearance:none;border:1px solid var(--hfs-calendar-gray-3);background:#fff;color:var(--hfs-calendar-text);border-radius:6px;padding:8px 10px;font:inherit;font-weight:600;line-height:1;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.hfs-cal-btn:hover,.hfs-cal-btn:focus-visible{border-color:var(--hfs-calendar-accent);outline:none}.hfs-cal-btn.is-active{background:var(--hfs-calendar-accent);border-color:var(--hfs-calendar-accent);color:#fff}.hfs-cal-icon-btn{font-size:20px;min-width:36px;padding:6px 10px}.hfs-calendar-filterbar{border:1px solid var(--hfs-calendar-gray-3);border-radius:6px;background:#fff;margin-bottom:16px}.hfs-calendar-filters{display:grid;grid-template-columns:minmax(170px,1.5fr) repeat(3,minmax(130px,.8fr)) auto auto;gap:8px;padding:10px;align-items:center}.hfs-calendar-filter-toggle{display:none}.hfs-calendar-control{width:100%;min-height:38px;border:1px solid var(--hfs-calendar-gray-3);border-radius:6px;background:#fff;color:var(--hfs-calendar-text);padding:8px 10px;font:inherit}.hfs-calendar-control:focus{outline:2px solid color-mix(in srgb,var(--hfs-calendar-accent) 22%,transparent);border-color:var(--hfs-calendar-accent)}.hfs-calendar-upcoming{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:14px}.hfs-calendar-upcoming input{accent-color:var(--hfs-calendar-accent)}.hfs-calendar-reset{white-space:nowrap}.hfs-calendar-loading,.hfs-calendar-error,.hfs-calendar-empty{padding:22px;border:1px solid var(--hfs-calendar-gray-3);border-radius:6px;background:#fff;text-align:center}.hfs-calendar-error{border-color:#d63638;color:#b32d2e}.hfs-calendar-region{width:100%}.hfs-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--hfs-calendar-gray-3);border-bottom:0;border-radius:6px 6px 0 0;overflow:hidden;background:var(--hfs-calendar-gray-1)}.hfs-calendar-weekday{padding:9px 8px;text-align:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-right:1px solid var(--hfs-calendar-gray-3)}.hfs-calendar-weekday:last-child{border-right:0}.hfs-calendar-month-grid{border-left:1px solid var(--hfs-calendar-gray-3);border-right:1px solid var(--hfs-calendar-gray-3);border-bottom:1px solid var(--hfs-calendar-gray-3);border-radius:0 0 6px 6px;overflow:hidden;background:#fff}.hfs-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:34px repeat(var(--hfs-rows,3),34px) 24px;min-height:calc(34px + (var(--hfs-rows,3) * 34px) + 24px);position:relative;border-top:1px solid var(--hfs-calendar-gray-3)}.hfs-calendar-week:first-child{border-top:0}.hfs-calendar-day{grid-row:1/-1;position:relative;border-right:1px solid var(--hfs-calendar-gray-3);min-width:0;background:#fff;padding:7px;z-index:0}.hfs-calendar-day:last-of-type{border-right:0}.hfs-calendar-day.is-outside{background:#fafafa;color:#999}.hfs-calendar-day.is-today{background:#fff7f1}.hfs-calendar-day-number{font-size:12px;font-weight:700;position:relative;z-index:1}.hfs-calendar-day.is-today .hfs-calendar-day-number{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 5px;border-radius:12px;background:var(--hfs-calendar-accent);color:#fff}.hfs-calendar-event{position:relative;z-index:2;margin:3px 4px 0;border:0;border-left:4px solid var(--hfs-event-accent);border-radius:6px;background:var(--hfs-event-bg);color:var(--hfs-calendar-text);padding:5px 7px;text-align:left;min-width:0;overflow:hidden;cursor:pointer;font:inherit;line-height:1.1;box-shadow:none}.hfs-calendar-event:hover,.hfs-calendar-event:focus-visible{outline:2px solid color-mix(in srgb,var(--hfs-event-accent) 35%,transparent);outline-offset:-1px}.hfs-calendar-event-title{display:block;font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hfs-calendar-event-location{display:block;margin-top:2px;font-size:10px;color:var(--hfs-calendar-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hfs-calendar-more{position:relative;z-index:3;align-self:center;justify-self:start;margin:2px 7px;border:0;background:transparent;color:var(--hfs-calendar-accent);font:inherit;font-size:11px;font-weight:700;cursor:pointer;padding:2px 0}.hfs-calendar-year-grid{display:grid;gap:14px}.hfs-calendar-year-cols-1 .hfs-calendar-year-grid{grid-template-columns:1fr}.hfs-calendar-year-cols-2 .hfs-calendar-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hfs-calendar-year-cols-3 .hfs-calendar-year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hfs-calendar-year-cols-4 .hfs-calendar-year-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hfs-year-month{border:1px solid var(--hfs-calendar-gray-3);border-radius:6px;background:#fff;overflow:hidden;min-width:0}.hfs-year-month-title{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--hfs-calendar-gray-1);border-bottom:1px solid var(--hfs-calendar-gray-3);font-weight:700}.hfs-year-month-title button{border:0;background:transparent;padding:0;font:inherit;font-weight:700;color:inherit;cursor:pointer}.hfs-year-month .hfs-calendar-weekdays{border:0;border-radius:0}.hfs-year-month .hfs-calendar-weekday{padding:5px 2px;font-size:9px}.hfs-year-month .hfs-calendar-month-grid{border:0;border-radius:0}.hfs-year-month .hfs-calendar-week{grid-template-rows:24px repeat(var(--hfs-rows,2),20px) 18px;min-height:calc(24px + (var(--hfs-rows,2) * 20px) + 18px)}.hfs-year-month .hfs-calendar-day{padding:4px}.hfs-year-month .hfs-calendar-day-number{font-size:9px}.hfs-year-month .hfs-calendar-day.is-today .hfs-calendar-day-number{min-width:18px;height:18px;border-radius:9px}.hfs-year-month .hfs-calendar-event{margin:2px 2px 0;padding:2px 4px;border-left-width:3px;border-radius:4px}.hfs-year-month .hfs-calendar-event-title{font-size:9px}.hfs-year-month .hfs-calendar-event-location{display:none}.hfs-year-month .hfs-calendar-more{font-size:8px;margin:0 3px}.hfs-calendar-list{display:flex;flex-direction:column;gap:16px}.hfs-calendar-list-month{display:flex;flex-direction:column;gap:8px}.hfs-calendar-list-month h3{margin:0;padding:8px 0;border-bottom:1px solid var(--hfs-calendar-gray-3);font-size:18px}.hfs-calendar-list-item{display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;border:1px solid var(--hfs-calendar-gray-3);border-left:6px solid var(--hfs-event-accent);border-radius:6px;background:var(--hfs-event-bg);padding:12px 14px;cursor:pointer}.hfs-calendar-list-date{font-weight:700;font-size:13px}.hfs-calendar-list-main{min-width:0}.hfs-calendar-list-title{font-weight:700}.hfs-calendar-list-location{margin-top:4px;color:var(--hfs-calendar-secondary);font-size:13px}.hfs-calendar-list-status{font-size:12px;font-weight:700;color:var(--hfs-event-accent);white-space:nowrap}.hfs-calendar-modal[hidden]{display:none}.hfs-calendar-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:18px}.hfs-calendar-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}.hfs-calendar-dialog{position:relative;z-index:1;width:min(680px,100%);max-height:min(88vh,760px);overflow:auto;background:#fff;border-radius:6px;box-shadow:0 18px 50px rgba(0,0,0,.2);padding:24px}.hfs-calendar-dialog-close{position:absolute;top:10px;right:10px;width:34px;height:34px;border:0;background:var(--hfs-calendar-gray-1);border-radius:6px;font-size:24px;line-height:1;cursor:pointer}.hfs-calendar-popup-image{width:100%;max-height:260px;object-fit:cover;border-radius:6px;margin-bottom:16px;background:var(--hfs-calendar-gray-1)}.hfs-calendar-popup-status{display:inline-block;border-left:4px solid var(--hfs-event-accent);background:var(--hfs-event-bg);border-radius:6px;padding:6px 9px;font-size:12px;font-weight:700;margin-bottom:10px}.hfs-calendar-popup-title{font-size:24px;line-height:1.15;margin:0 42px 12px 0}.hfs-calendar-popup-meta{display:grid;grid-template-columns:120px 1fr;gap:7px 12px;margin:14px 0;font-size:14px}.hfs-calendar-popup-meta dt{font-weight:700}.hfs-calendar-popup-meta dd{margin:0}.hfs-calendar-popup-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.hfs-calendar-popup-actions a,.hfs-calendar-popup-actions button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.hfs-calendar-popup-primary{background:var(--hfs-calendar-accent)!important;border-color:var(--hfs-calendar-accent)!important;color:#fff!important}.hfs-calendar-popup-videos{margin-top:18px;padding-top:14px;border-top:1px solid var(--hfs-calendar-gray-3)}.hfs-calendar-popup-videos h4{margin:0 0 8px}.hfs-calendar-popup-videos-links{display:flex;flex-wrap:wrap;gap:8px}.hfs-calendar-day-list{display:flex;flex-direction:column;gap:8px}.hfs-calendar-day-list-item{border:1px solid var(--hfs-calendar-gray-3);border-left:5px solid var(--hfs-event-accent);border-radius:6px;background:var(--hfs-event-bg);padding:10px 12px;cursor:pointer}.hfs-calendar-dependency{border:1px solid #d63638;border-radius:6px;padding:12px;color:#b32d2e;background:#fff}.hfs-calendar-filter-toggle{margin:8px}.hfs-calendar-app.is-modal-open{overflow:hidden}@media(max-width:1200px){.hfs-calendar-year-cols-4 .hfs-calendar-year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hfs-calendar-filters{grid-template-columns:minmax(180px,1.5fr) repeat(2,minmax(130px,1fr));}.hfs-calendar-upcoming,.hfs-calendar-reset{justify-self:start}}@media(max-width:900px){.hfs-calendar-year-cols-3 .hfs-calendar-year-grid,.hfs-calendar-year-cols-4 .hfs-calendar-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hfs-calendar-toolbar{grid-template-columns:1fr auto;grid-template-areas:"title views" "nav nav"}.hfs-calendar-title{grid-area:title;text-align:left}.hfs-calendar-views{grid-area:views;justify-content:flex-end}.hfs-calendar-nav{grid-area:nav}.hfs-calendar-event-location{display:none}.hfs-calendar-list-item{grid-template-columns:90px 1fr auto}}@media(max-width:767px){.hfs-calendar-toolbar{grid-template-columns:1fr;grid-template-areas:"title" "nav" "views";gap:10px}.hfs-calendar-title{text-align:center;font-size:21px}.hfs-calendar-nav,.hfs-calendar-views{justify-content:center;flex-wrap:wrap}.hfs-calendar-filter-toggle{display:inline-flex}.hfs-calendar-filters{display:none;grid-template-columns:1fr;padding-top:0}.hfs-calendar-filterbar.is-open .hfs-calendar-filters{display:grid}.hfs-calendar-year-grid{grid-template-columns:1fr!important}.hfs-calendar-weekdays,.hfs-calendar-month-grid{min-width:0}.hfs-calendar-region>.hfs-calendar-month-shell{overflow:visible}.hfs-calendar-month-shell .hfs-calendar-event{margin:2px 1px 0;padding:3px 3px;border-left-width:2px}.hfs-calendar-month-shell .hfs-calendar-event-title{font-size:9px}.hfs-year-month .hfs-calendar-weekdays,.hfs-year-month .hfs-calendar-month-grid{min-width:0}.hfs-calendar-week{min-height:calc(32px + (var(--hfs-rows,3) * 31px) + 22px);grid-template-rows:32px repeat(var(--hfs-rows,3),31px) 22px}.hfs-calendar-list-item{grid-template-columns:1fr;gap:6px}.hfs-calendar-list-status{justify-self:start}.hfs-calendar-dialog{padding:20px 16px}.hfs-calendar-popup-title{font-size:21px}.hfs-calendar-popup-meta{grid-template-columns:1fr;gap:3px}.hfs-calendar-popup-meta dt{margin-top:8px}}@media(prefers-reduced-motion:reduce){.hfs-cal-btn{transition:none}}

.hfs-calendar-app{--hfs-calendar-button-bg:#eeeeee;--hfs-calendar-button-border:#d5d8dc;--hfs-calendar-button-text:#54595f;width:100%!important;max-width:none!important;min-width:0}
.hfs-calendar-toolbar,.hfs-calendar-filterbar,.hfs-calendar-region,.hfs-calendar-month-shell,.hfs-calendar-year-grid,.hfs-calendar-list{width:100%;max-width:none;min-width:0}
.hfs-cal-btn{background:var(--hfs-calendar-button-bg);border-color:var(--hfs-calendar-button-border);color:var(--hfs-calendar-button-text)}
.hfs-cal-btn:hover,.hfs-cal-btn:focus-visible{background:var(--hfs-calendar-button-bg);color:var(--hfs-calendar-button-text);border-color:var(--hfs-calendar-accent)}
.hfs-cal-btn.is-active,.hfs-cal-btn.is-active:hover,.hfs-cal-btn.is-active:focus-visible{background:var(--hfs-calendar-accent);border-color:var(--hfs-calendar-accent);color:#fff}
.hfs-calendar-year-control{display:grid;grid-template-columns:auto minmax(70px,auto) auto;gap:6px;align-items:center;width:max-content;max-width:100%}
.hfs-calendar-year-value{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border:1px solid var(--hfs-calendar-button-border);border-radius:6px;background:var(--hfs-calendar-button-bg);color:var(--hfs-calendar-button-text);font-weight:700;line-height:1}
.hfs-calendar-list-controls{display:flex;justify-content:flex-end;align-items:center;gap:8px;width:100%;margin:0 0 12px}
.hfs-calendar-list-more{display:flex;justify-content:center;width:100%;margin-top:14px}
.hfs-calendar-list-item{width:100%;max-width:none}
@media(max-width:767px){.hfs-calendar-year-control{width:100%;grid-template-columns:auto 1fr auto}.hfs-calendar-list-controls{justify-content:stretch}.hfs-calendar-list-controls .hfs-cal-btn{width:100%}}
.elementor-widget-shortcode:has(.hfs-calendar-app),.elementor-widget-shortcode:has(.hfs-calendar-app) .elementor-widget-container,.elementor-widget-shortcode:has(.hfs-calendar-app) .elementor-shortcode{width:100%;max-width:none;min-width:0}

.hfs-calendar-app{
--hfs-calendar-button-bg:#f5f5f5;
--hfs-calendar-button-border:#d5d8dc;
--hfs-calendar-button-text:#54595f;
--hfs-calendar-button-hover-bg:#ff7111;
--hfs-calendar-button-hover-border:#ff7111;
--hfs-calendar-button-hover-text:#fff
}
.hfs-cal-btn{
background:var(--hfs-calendar-button-bg);
border:1px solid var(--hfs-calendar-button-border);
color:var(--hfs-calendar-button-text);
border-radius:6px;
padding:8px 10px;
font:inherit;
font-size:15px;
font-weight:400;
line-height:1.2;
text-transform:uppercase;
box-shadow:none;
transition:background-color .2s ease,color .2s ease,border-color .2s ease
}
.hfs-cal-btn:hover,.hfs-cal-btn:focus-visible,
.hfs-cal-btn.is-active,.hfs-cal-btn.is-active:hover,.hfs-cal-btn.is-active:focus-visible{
background:var(--hfs-calendar-button-hover-bg);
border-color:var(--hfs-calendar-button-hover-border);
color:var(--hfs-calendar-button-hover-text);
outline:none
}
.hfs-cal-icon-btn{min-width:36px;padding:6px 10px;font-size:20px;line-height:1}
.hfs-calendar-popup-primary,
.hfs-calendar-popup-primary:hover,
.hfs-calendar-popup-primary:focus-visible{
background:var(--hfs-calendar-button-bg)!important;
border-color:var(--hfs-calendar-button-border)!important;
color:var(--hfs-calendar-button-text)!important
}
.hfs-calendar-popup-primary:hover,.hfs-calendar-popup-primary:focus-visible{
background:var(--hfs-calendar-button-hover-bg)!important;
border-color:var(--hfs-calendar-button-hover-border)!important;
color:var(--hfs-calendar-button-hover-text)!important
}
.hfs-calendar-event,.hfs-calendar-list-item,.hfs-calendar-day-list-item{
transition:background-color .18s ease,color .18s ease,border-color .18s ease
}
.hfs-calendar-event:hover,.hfs-calendar-event:focus-visible,
.hfs-calendar-list-item:hover,.hfs-calendar-list-item:focus-visible,
.hfs-calendar-day-list-item:hover,.hfs-calendar-day-list-item:focus-visible{
background:var(--hfs-event-accent);
color:var(--hfs-event-hover-text,#fff);
outline:none
}
.hfs-calendar-event:hover .hfs-calendar-event-location,
.hfs-calendar-event:focus-visible .hfs-calendar-event-location,
.hfs-calendar-list-item:hover .hfs-calendar-list-location,
.hfs-calendar-list-item:focus-visible .hfs-calendar-list-location,
.hfs-calendar-list-item:hover .hfs-calendar-list-status,
.hfs-calendar-list-item:focus-visible .hfs-calendar-list-status{
color:inherit
}
.hfs-year-month .hfs-calendar-event{
background:var(--hfs-event-bg);
color:var(--hfs-calendar-text)
}
.hfs-year-month .hfs-calendar-event:hover,.hfs-year-month .hfs-calendar-event:focus-visible{
background:var(--hfs-event-accent);
color:var(--hfs-event-hover-text,#fff)
}
@media(max-width:1366px){.hfs-cal-btn{font-size:14px}}

.hfs-calendar-app .hfs-cal-btn,
.hfs-calendar-app a.hfs-cal-btn,
.hfs-calendar-app button.hfs-cal-btn{
background:var(--hfs-calendar-button-bg)!important;
border:1px solid var(--hfs-calendar-button-border)!important;
color:var(--hfs-calendar-button-text)!important;
border-radius:6px!important;
padding:8px 10px!important;
font:inherit!important;
font-size:15px!important;
font-weight:400!important;
line-height:1.2!important;
text-transform:uppercase!important;
text-decoration:none!important;
box-shadow:none!important;
transition:background-color .2s ease,color .2s ease,border-color .2s ease!important
}
.hfs-calendar-app .hfs-cal-btn:hover,
.hfs-calendar-app .hfs-cal-btn:focus-visible,
.hfs-calendar-app .hfs-cal-btn.is-active,
.hfs-calendar-app .hfs-cal-btn.is-active:hover,
.hfs-calendar-app .hfs-cal-btn.is-active:focus-visible{
background:var(--hfs-calendar-button-hover-bg)!important;
border-color:var(--hfs-calendar-button-hover-border)!important;
color:var(--hfs-calendar-button-hover-text)!important;
outline:none!important
}
.hfs-calendar-app .hfs-cal-icon-btn{
min-width:36px!important;
padding:6px 10px!important;
font-size:20px!important;
line-height:1!important
}
.hfs-calendar-nav-year{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:64px;
min-height:34px;
padding:6px 10px;
border:1px solid var(--hfs-calendar-button-border);
border-radius:6px;
background:var(--hfs-calendar-button-bg);
color:var(--hfs-calendar-button-text);
font-size:15px;
font-weight:600;
line-height:1
}
.hfs-calendar-filters{
grid-template-columns:minmax(170px,1.5fr) repeat(2,minmax(130px,.8fr)) auto auto
}
.hfs-calendar-year-more,
.hfs-calendar-list-more{
display:flex;
justify-content:center;
width:100%;
margin-top:14px
}
.hfs-calendar-app .hfs-calendar-more{
min-width:0!important;
padding:2px 5px!important;
margin:2px 4px!important;
font-size:9px!important;
line-height:1!important;
text-transform:none!important;
justify-self:start
}
.hfs-calendar-dialog-close.hfs-cal-btn{
position:absolute!important;
top:10px!important;
right:10px!important;
width:34px!important;
height:34px!important;
min-width:34px!important;
padding:0!important;
font-size:24px!important;
line-height:1!important
}
.hfs-calendar-app .hfs-calendar-event{
background:var(--hfs-event-bg)!important;
color:var(--hfs-calendar-text)!important;
border-left-color:var(--hfs-event-accent)!important
}
.hfs-calendar-app .hfs-calendar-event:hover,
.hfs-calendar-app .hfs-calendar-event:focus-visible{
background:var(--hfs-event-accent)!important;
color:var(--hfs-event-hover-text,#fff)!important;
outline:none!important
}
.hfs-calendar-app .hfs-calendar-list-item:hover,
.hfs-calendar-app .hfs-calendar-list-item:focus-visible,
.hfs-calendar-app .hfs-calendar-day-list-item:hover,
.hfs-calendar-app .hfs-calendar-day-list-item:focus-visible{
background:var(--hfs-event-accent)!important;
color:var(--hfs-event-hover-text,#fff)!important;
outline:none!important
}
.hfs-year-month-title button,
.hfs-year-month-title button:hover,
.hfs-year-month-title button:focus,
.hfs-year-month-title button:focus-visible{
background:transparent!important;
border:0!important;
color:inherit!important;
box-shadow:none!important;
outline:none!important;
transform:none!important
}
@media(max-width:767px){
.hfs-calendar-nav-year{flex:1;min-width:70px}
.hfs-calendar-nav{width:100%}
.hfs-calendar-nav .hfs-cal-btn[data-action="today"]{flex:1}
}

.hfs-calendar-app{
--hfs-calendar-text:var(--e-global-color-text,#333333);
--hfs-calendar-secondary:var(--e-global-color-text,#333333);
--hfs-calendar-weekend-bg:#f7f7f7;
--hfs-calendar-empty-fill:#fafafa;
color:var(--hfs-calendar-text)
}
.hfs-calendar-app [hidden]{display:none!important}
.hfs-calendar-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:14px}
.hfs-calendar-nav{justify-self:start}
.hfs-calendar-views{justify-self:end}
.hfs-calendar-nav-year{color:var(--hfs-calendar-text)}
.hfs-calendar-control,.hfs-calendar-upcoming,.hfs-calendar-loading,.hfs-calendar-empty,.hfs-calendar-weekday,.hfs-calendar-day,.hfs-calendar-event,.hfs-calendar-list,.hfs-calendar-list-location,.hfs-calendar-list-status,.hfs-calendar-popup-meta,.hfs-calendar-popup-status,.hfs-year-month-title{color:var(--hfs-calendar-text)}
.hfs-calendar-day.is-outside{color:var(--hfs-calendar-text);opacity:.52}
.hfs-calendar-weekday.is-weekend{background:var(--hfs-calendar-weekend-bg)}
.hfs-calendar-day.is-weekend:not(.is-today){background:var(--hfs-calendar-weekend-bg)}
.hfs-calendar-week{grid-template-rows:34px repeat(var(--hfs-rows,3),var(--hfs-event-row-height,34px)) var(--hfs-more-row-height,0px);min-height:calc(34px + (var(--hfs-rows,3) * var(--hfs-event-row-height,34px)) + var(--hfs-more-row-height,0px))}
.hfs-year-month .hfs-calendar-week{grid-template-rows:24px repeat(var(--hfs-rows,2),var(--hfs-event-row-height,20px)) var(--hfs-more-row-height,0px);min-height:calc(24px + (var(--hfs-rows,2) * var(--hfs-event-row-height,20px)) + var(--hfs-more-row-height,0px))}
.hfs-year-month{background:var(--hfs-calendar-empty-fill)}
.hfs-year-month-title button{color:var(--hfs-calendar-text)!important;transition:color .18s ease!important}
.hfs-year-month-title button:hover,.hfs-year-month-title button:focus-visible{background:transparent!important;color:var(--e-global-color-accent,var(--hfs-calendar-accent))!important;border:0!important;box-shadow:none!important;outline:none!important}
.hfs-calendar-app .hfs-calendar-event,.hfs-calendar-app .hfs-calendar-list-item,.hfs-calendar-app .hfs-calendar-day-list-item{color:var(--hfs-calendar-text)!important}
.hfs-calendar-app .hfs-calendar-event:hover,.hfs-calendar-app .hfs-calendar-event:focus-visible,.hfs-calendar-app .hfs-calendar-list-item:hover,.hfs-calendar-app .hfs-calendar-list-item:focus-visible,.hfs-calendar-app .hfs-calendar-day-list-item:hover,.hfs-calendar-app .hfs-calendar-day-list-item:focus-visible{color:var(--hfs-calendar-text)!important}
.hfs-calendar-app .hfs-calendar-event:hover .hfs-calendar-event-location,.hfs-calendar-app .hfs-calendar-event:focus-visible .hfs-calendar-event-location,.hfs-calendar-app .hfs-calendar-list-item:hover .hfs-calendar-list-location,.hfs-calendar-app .hfs-calendar-list-item:focus-visible .hfs-calendar-list-location,.hfs-calendar-app .hfs-calendar-list-item:hover .hfs-calendar-list-status,.hfs-calendar-app .hfs-calendar-list-item:focus-visible .hfs-calendar-list-status{color:var(--hfs-calendar-text)!important}
@media(max-width:900px){.hfs-calendar-toolbar{grid-template-columns:1fr auto;grid-template-areas:none}.hfs-calendar-nav{grid-area:auto}.hfs-calendar-views{grid-area:auto}.hfs-calendar-nav,.hfs-calendar-views{justify-content:initial}}
@media(max-width:767px){.hfs-calendar-toolbar{grid-template-columns:1fr;grid-template-areas:none}.hfs-calendar-nav,.hfs-calendar-views{justify-self:stretch;justify-content:center}.hfs-calendar-week{grid-template-rows:32px repeat(var(--hfs-rows,3),var(--hfs-event-row-height,31px)) var(--hfs-more-row-height,0px);min-height:calc(32px + (var(--hfs-rows,3) * var(--hfs-event-row-height,31px)) + var(--hfs-more-row-height,0px))}}

.hfs-calendar-nav-year{
font-size:20px!important;
font-weight:700!important;
letter-spacing:.01em
}
.hfs-calendar-year-controls{
display:flex;
justify-content:flex-end;
width:100%;
margin:0 0 16px
}
.hfs-calendar-hover-preview{
position:fixed;
z-index:100000;
max-width:calc(100vw - 24px);
background:#fff;
border:1px solid var(--hfs-calendar-button-border);
border-radius:6px;
box-shadow:0 12px 32px rgba(0,0,0,.14);
overflow:hidden
}
.hfs-calendar-hover-preview [data-role="hover-preview-content"]{
width:100%;
min-width:0
}
.hfs-calendar-hover-preview .elementor,
.hfs-calendar-hover-preview .e-con,
.hfs-calendar-hover-preview .elementor-element{
max-width:100%
}
@media(max-width:767px){
.hfs-calendar-nav-year{font-size:18px!important}
.hfs-calendar-hover-preview{display:none!important}
}
