.ofc-calendar{--ofc-accent:var(--awb-color3, #ffaf00);--ofc-brown:var(--awb-color5, #ae895d);--ofc-text:var(--awb-color7, #333);--ofc-surface:var(--awb-color1, #fff);--ofc-line:rgba(0, 0, 0, 0.12);box-sizing:border-box;max-width:1000px;margin:0 auto}.ofc-calendar *,.ofc-calendar *::before,.ofc-calendar *::after{box-sizing:inherit}.ofc-calendar button{font:inherit;color:inherit;cursor:pointer}.ofc-calendar button:focus-visible{outline:2px solid var(--ofc-brown);outline-offset:2px}.ofc-badge{display:inline-block;padding:0 .4em;border-radius:3px;background:var(--ofc-text);color:var(--ofc-surface);font-size:.75em;font-weight:700;line-height:1.5;text-transform:uppercase;letter-spacing:.03em;vertical-align:.1em;white-space:nowrap}.ofc-calendar .ofc-upcoming__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1em;margin:0 0 1.5em;padding:0;list-style:none}.ofc-calendar .ofc-upcoming__item{margin:0;padding:0}.ofc-calendar .ofc-upcoming__card{display:flex;flex-direction:column;align-items:center;gap:.35em;width:100%;height:100%;margin:0;padding:1em;border:1px solid var(--ofc-line);border-radius:6px;background:var(--ofc-surface);text-align:center;line-height:1.3}.ofc-calendar .ofc-upcoming__card:hover{border-color:var(--ofc-accent);box-shadow:0 0 0 1px var(--ofc-accent)}.ofc-calendar .ofc-upcoming__card.is-closed{border-top:4px solid var(--ofc-text)}.ofc-calendar .ofc-upcoming__image{display:block;max-width:100%;height:auto;aspect-ratio:1;margin-bottom:.5em;border-radius:6px;object-fit:cover}.ofc-calendar .ofc-upcoming__image.is-placeholder{object-fit:contain}.ofc-upcoming__title{font-size:1.15em;font-weight:700;overflow-wrap:anywhere}.ofc-upcoming__date{opacity:.8}@media (max-width:600px){.ofc-calendar .ofc-upcoming__list{grid-template-columns:minmax(0,1fr)}}.ofc-month__header{display:flex;align-items:center;justify-content:space-between;gap:1em;margin-bottom:.5em}.ofc-calendar .ofc-month__label{margin:0;text-align:center}.ofc-calendar .ofc-month__nav{width:2.5em;height:2.5em;padding:0;border:1px solid var(--ofc-line);border-radius:50%;background:var(--ofc-surface);font-size:1.25em;line-height:1}.ofc-calendar .ofc-month__nav:hover{border-color:var(--ofc-accent);background:var(--ofc-accent)}.ofc-calendar .ofc-grid{width:100%;margin:0;border-collapse:collapse;table-layout:fixed;background:var(--ofc-surface)}.ofc-calendar .ofc-grid th{padding:.5em .25em;border:1px solid var(--ofc-line);background:var(--ofc-brown);color:var(--ofc-surface);font-size:.85em;text-align:center;text-transform:uppercase}.ofc-calendar .ofc-grid td{height:6.5em;padding:0;border:1px solid var(--ofc-line);vertical-align:top}.ofc-calendar .ofc-grid td.is-outside{background:rgb(0 0 0 / .03)}.ofc-calendar .ofc-grid td.is-today{box-shadow:inset 0 0 0 3px var(--ofc-accent)}.ofc-calendar .ofc-day{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;height:100%;min-height:6.5em;margin:0;padding:.35em;border:0;border-radius:0;background:none;text-align:left;line-height:1.25}.ofc-calendar button.ofc-day:hover{background:rgb(255 175 0 / .15)}.ofc-day__number{display:block;margin-bottom:.25em;font-weight:700}.ofc-calendar td.is-today .ofc-day__number{color:var(--ofc-brown)}.ofc-calendar .ofc-day__titles{margin:0;padding:0;list-style:none;font-size:.8em}.ofc-calendar .ofc-day__titles li{margin:0 0 .25em;padding:0;overflow-wrap:anywhere}.ofc-day__more{opacity:.75;font-style:italic}@media (max-width:600px){.ofc-calendar .ofc-grid th{font-size:.7em}.ofc-calendar .ofc-grid td,.ofc-calendar .ofc-day{height:4.5em;min-height:4.5em}.ofc-calendar .ofc-day{padding:.2em}.ofc-calendar .ofc-day__titles{font-size:.65em}}.ofc-slideout{position:fixed;inset:0;z-index:100000;visibility:hidden;transition:visibility 0s 0.25s}.ofc-slideout.is-open{visibility:visible;transition:none}.ofc-slideout__backdrop{position:absolute;inset:0;background:rgb(0 0 0 / .45);opacity:0;transition:opacity 0.25s}.ofc-slideout.is-open .ofc-slideout__backdrop{opacity:1}.ofc-slideout__panel{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:min(100%, max(50%, 550px));background:var(--ofc-surface);color:var(--ofc-text);box-shadow:-4px 0 16px rgb(0 0 0 / .25);transform:translateX(100%);transition:transform 0.25s ease}.ofc-slideout.is-open .ofc-slideout__panel{transform:none}.ofc-slideout__panel:focus{outline:none}@media (prefers-reduced-motion:reduce){.ofc-slideout,.ofc-slideout__backdrop,.ofc-slideout__panel{transition:none}}.ofc-slideout__header{display:flex;align-items:center;gap:1em;padding:calc(1.25em + env(safe-area-inset-top, 0px)) 1em .75em;border-bottom:3px solid var(--ofc-accent);background:var(--ofc-brown);color:var(--ofc-surface)}.ofc-calendar .ofc-slideout__heading{flex:1;margin:0;color:inherit;font-size:1.25em}.ofc-calendar .ofc-slideout__close{width:2em;height:2em;padding:0;border:0;border-radius:50%;background:none;color:inherit;font-size:1.5em;line-height:1}.ofc-calendar .ofc-slideout__close:hover{background:rgb(255 255 255 / .2)}.ofc-calendar .ofc-slideout__close:focus-visible{outline-color:var(--ofc-surface)}.ofc-slideout__body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:1em}.ofc-observance+.ofc-observance{margin-top:1.25em;padding-top:1.25em;border-top:1px solid var(--ofc-line)}.ofc-observance__header{display:flex;align-items:center;gap:1em;margin-bottom:.75em}.ofc-observance__summary{min-width:0}.ofc-calendar .ofc-observance__summary>:last-child{margin-bottom:0}.ofc-calendar .ofc-observance__image{display:block;flex:none;max-width:120px;height:auto;aspect-ratio:1;margin:0;border-radius:6px;object-fit:cover}.ofc-calendar .ofc-observance__image.is-placeholder{object-fit:contain}.ofc-calendar .ofc-observance__title{margin:0 0 .25em;font-size:1.2em;overflow-wrap:anywhere}.ofc-calendar .ofc-observance__date,.ofc-calendar .ofc-observance__closed,.ofc-calendar .ofc-observance__more{margin:0 0 .5em}.ofc-observance__date{opacity:.8}.ofc-observance__closed{font-weight:700;text-transform:uppercase}.ofc-calendar .ofc-observance__description>:first-child{margin-top:0}.ofc-calendar .ofc-observance__description>:last-child{margin-bottom:.5em}.ofc-calendar .ofc-observance__more a{font-weight:700}html.ofc-slideout-open{overflow:hidden}