.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cal-admin-only{display:none!important}html[data-fkca-mode=admin] .cal-admin-only{display:revert!important}html[data-fkca-mode=admin] section.cal-admin-only{display:block!important}html[data-fkca-mode=admin] a.cal-masthead__submit.cal-admin-only{display:inline-flex!important}.cal-band{--cal-cell-pad: .6rem;--cal-chip-gap: .3rem;--cal-band: 3.75rem}.cal-masthead{position:relative;width:100%;overflow:hidden;background:var(--surface);border-bottom:1px solid var(--line)}.cal-masthead__wash{position:absolute;inset:0;pointer-events:none;background:radial-gradient(125% 150% at 100% 0%,color-mix(in srgb,var(--accent) 22%,transparent) 0%,transparent 56%),radial-gradient(95% 130% at 0% 100%,color-mix(in srgb,var(--accent-strong) 13%,transparent) 0%,transparent 52%),linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,var(--surface)) 0%,var(--surface) 72%)}.cal-masthead__content{position:relative;z-index:1;display:flex;align-items:center;flex-wrap:wrap;gap:1rem 2.4rem;padding-block:1.7rem 2.4rem}.cal-masthead__brand{flex-shrink:0;display:inline-flex;align-items:center}a.cal-masthead__brand{border-radius:8px;transition:opacity .2s ease}a.cal-masthead__brand:hover{opacity:.82}a.cal-masthead__brand:focus-visible{outline:2px solid var(--accent-strong);outline-offset:6px}@media(prefers-reduced-motion:reduce){a.cal-masthead__brand{transition:none}}.cal-masthead__logo{display:block;width:auto;height:78px}.cal-masthead__logo--white,[data-theme=ocean] .cal-masthead__logo--color{display:none}[data-theme=ocean] .cal-masthead__logo--white{display:block}[data-theme=colorful] .site-header__logo--color,[data-theme=colorful] .site-header__logo--white{display:none}[data-theme=colorful] .site-header__logo--brush{display:block}[data-theme=colorful] .site-footer__logo--standard{display:none}[data-theme=colorful] .site-footer__logo--brush{display:block}.cal-masthead__text{flex:1 1 380px;min-width:0;max-width:60ch}.cal-masthead .kicker{color:var(--accent-strong)}.cal-masthead .kicker:before{background:var(--accent)}.cal-masthead__title{font-family:var(--font-serif);font-size:clamp(2rem,4.4vw,3.35rem);font-weight:600;color:var(--ink);margin:.35rem 0 .4rem;line-height:1.05;min-height:1.15em}@media(min-width:900px){.cal-masthead__title{white-space:nowrap}.cal-masthead__text{max-width:none}}.cal-masthead__accent{font-style:italic;font-weight:400;color:var(--accent-strong)}.cal-masthead__title .tw{white-space:pre}.cal-masthead__title .tw__caret{display:none;width:.06em;min-width:3px;height:.82em;background:var(--accent-strong);margin-left:.06em;transform:translateY(.08em);margin-right:-.12em;animation:tw-blink .9s steps(1) infinite}.cal-masthead__title.is-typing .tw__caret{display:inline-block}@keyframes tw-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}@media(prefers-reduced-motion:reduce){.cal-masthead__accent.it--reveal{opacity:1;filter:none;transform:none;transition:none}.cal-masthead__title .tw__caret{display:none}}.cal-masthead__sub{font-size:clamp(1rem,1.5vw,1.18rem);color:var(--ink-soft);margin:0;max-width:52ch;line-height:1.45}.cal-masthead__wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:30px;z-index:1;display:block}.cal-masthead__wave path{fill:none}.cal-masthead__wave-1{fill:color-mix(in srgb,var(--accent) 32%,transparent)}.cal-masthead__wave-2{fill:color-mix(in srgb,var(--accent) 19%,transparent)}.cal-masthead__wave-3{fill:color-mix(in srgb,var(--accent) 10%,transparent)}@media(max-width:719.98px){.cal-masthead__content{padding-block:1.25rem 1.5rem;gap:.6rem}.cal-masthead__brand{flex:0 0 100%}.cal-masthead__text{flex:1 1 100%}}@media(max-width:559.98px){.cal-masthead__content{padding-block:1rem 1.15rem;gap:.5rem}.cal-masthead__logo{height:44px}.cal-masthead .kicker{margin-bottom:.15rem}.cal-masthead__title{font-size:clamp(1.6rem,7.4vw,2.2rem);margin:.2rem 0 .3rem;min-height:0}.cal-masthead__sub{font-size:.95rem;line-height:1.35;max-width:none}.cal-masthead__wave{height:20px}.cal-masthead__submit{align-self:flex-start}}.cal-masthead__submit{display:inline-flex;align-items:center;min-height:44px;font-family:var(--font-sans);font-size:.9rem;font-weight:700;color:var(--action-fill-ink);background:var(--action-fill);border-radius:999px;padding:.55rem 1.2rem;text-decoration:none;white-space:nowrap;border:2px solid var(--action-fill);flex-shrink:0}.cal-masthead__submit:hover{opacity:.92}.cal-masthead__submit:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.cal-band,.cal-toolbar-wrap{--toolbar-h: 64px}.cal-toolbar-wrap,.cal-whatson,.cal-band{--ctl-font: var(--font-sans);--ctl-size: .92rem;--ctl-weight: 700;--ctl-tracking: .01em;--ctl-ink: var(--ink);--ctl-radius: 999px;--ctl-border: 1.5px solid var(--line);--ctl-pad-y: .5rem;--ctl-pad-x: 1.05rem;--ctl-bg: var(--paper);--ctl-hover-bg: color-mix(in srgb, var(--ink) 6%, var(--surface));--ctl-hover-border: var(--ink-soft);--ctl-on-bg: var(--accent-strong);--ctl-on-ink: var(--action-fill-ink)}.cal-viewbtn:focus-visible,.chip:focus-visible,.cal-filters-btn:focus-visible,.cal-whatson__btn:focus-visible,.cal-monthnav__btn:focus-visible,.cal-month__back:focus-visible,.cal-search-wrap:focus-within{outline:2px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ink)}.type-count,.cal-whatson__btn-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 .35rem;font-family:var(--ctl-font);font-size:.74rem;font-weight:800;line-height:1;letter-spacing:0;border-radius:999px;background:color-mix(in srgb,var(--ink) 10%,var(--surface));color:var(--ink);flex-shrink:0}.chip--on .type-count,.cal-whatson__btn[aria-pressed=true] .cal-whatson__btn-count{background:color-mix(in srgb,#ffffff 80%,transparent);color:var(--accent-strong)}.type-count:empty{display:none}.cal-toolbar-wrap{background:var(--surface);border-bottom:2px solid var(--line);z-index:20;position:sticky;top:0}.cal-toolbar-wrap--sticky{box-shadow:0 2px 14px #14233b1f}.cal-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .7rem;padding-block:.95rem}.cal-filters-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;margin-left:auto;font-family:var(--ctl-font);font-size:var(--ctl-size);font-weight:var(--ctl-weight);letter-spacing:var(--ctl-tracking);color:var(--ctl-ink);background:var(--ctl-bg);border:var(--ctl-border);border-radius:var(--ctl-radius);padding:var(--ctl-pad-y) var(--ctl-pad-x);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}@media(prefers-reduced-motion:reduce){.cal-filters-btn{transition:none}}.cal-filters-btn:hover{background:var(--ctl-hover-bg);border-color:var(--ctl-hover-border)}.cal-filters-btn[aria-expanded=true]{background:var(--ctl-on-bg);color:var(--ctl-on-ink);border-color:var(--ctl-on-bg)}.cal-filters-btn__badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 .35rem;font-family:var(--ctl-font);font-size:.74rem;font-weight:800;line-height:1;color:var(--ink);background:color-mix(in srgb,var(--ink) 10%,var(--surface));border-radius:999px}.cal-filters-btn[aria-expanded=true] .cal-filters-btn__badge{background:color-mix(in srgb,#ffffff 80%,transparent);color:var(--accent-strong)}.cal-count{font-family:var(--font-sans);font-size:.8rem;font-weight:500;color:var(--ink-soft);margin:0;white-space:nowrap}.cal-filters-panel{display:flex;flex-direction:column;gap:0;padding-block:.15rem .35rem;border-top:1px solid var(--line)}.cal-filtergroup{display:grid;grid-template-columns:var(--fg-gutter, 88px) minmax(0,1fr);column-gap:.85rem;row-gap:0;align-items:start;padding-block:.7rem;border-top:1px solid var(--line)}.cal-filtergroup:first-child{border-top:0}.cal-filtergroup__label{font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0;padding-top:.95rem}.cal-filtergroup__chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--fg-min, 288px),100%),1fr));gap:.5rem}.cal-filtergroup--search .cal-filtergroup__chips{grid-template-columns:minmax(0,1fr)}.cal-filtergroup__chips>.chip{justify-content:flex-start;text-align:left}.cal-filtergroup__chips>.chip .type-count{margin-left:auto}.cal-viewtoggle{display:inline-flex;gap:.4rem;flex-shrink:0}.cal-viewbtn{font-family:var(--ctl-font);font-size:var(--ctl-size);font-weight:var(--ctl-weight);letter-spacing:var(--ctl-tracking);padding:var(--ctl-pad-y) var(--ctl-pad-x);min-height:44px;min-width:72px;background:var(--ctl-bg);color:var(--ctl-ink);border:var(--ctl-border);border-radius:var(--ctl-radius);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-viewbtn{transition:none}}.cal-viewbtn:hover:not(.cal-viewbtn--active){background:var(--ctl-hover-bg);border-color:var(--ctl-hover-border)}.cal-viewbtn--active{background:var(--ctl-on-bg);color:var(--ctl-on-ink);border-color:var(--ctl-on-bg)}.cal-monthnav{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.cal-monthnav__btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--ctl-bg);border:var(--ctl-border);border-radius:var(--ctl-radius);cursor:pointer;color:var(--ctl-ink);transition:background-color .15s ease,border-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-monthnav__btn{transition:none}}.cal-monthnav__btn:hover{background:var(--ctl-hover-bg);border-color:var(--ctl-hover-border)}.cal-monthnav__btn--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.cal-monthnav__heading{font-family:var(--font-serif);font-size:clamp(1.3rem,2.4vw,1.7rem);font-weight:700;letter-spacing:-.01em;background:transparent;border:none;color:var(--ink);cursor:default;padding:.3rem .6rem;min-height:44px;white-space:nowrap;margin:0;display:inline-flex;align-items:center;min-width:9ch;justify-content:center}.cal-monthnav--view{justify-content:center;gap:.6rem;margin:0 0 1.25rem;padding:0 0 .9rem;border-bottom:1px solid var(--line)}.cal-monthnav--view[hidden]{display:none}.cal-jump{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1.25rem;padding:.9rem 1.1rem;background:color-mix(in srgb,var(--accent) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px}.cal-jump[hidden]{display:none}.cal-jump__text{margin:0;color:var(--ink);font-size:.98rem;line-height:1.45;max-width:62ch}.cal-jump__btn{flex-shrink:0}.cal-search-wrap{display:flex;align-items:center;flex:1 1 200px;min-width:0;max-width:360px;border:var(--ctl-border);border-radius:var(--ctl-radius);overflow:hidden;background:var(--ctl-bg);min-height:44px;transition:border-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-search-wrap{transition:none}}.cal-search-wrap:hover{border-color:var(--ctl-hover-border)}.cal-search__label{display:flex;align-items:center;padding:0 0 0 .85rem;color:var(--ink-soft);flex-shrink:0;cursor:pointer}.cal-search__input{flex:1;border:none;background:transparent;font-family:var(--ctl-font);font-size:var(--ctl-size);font-weight:500;letter-spacing:var(--ctl-tracking);color:var(--ink);padding:.55rem .85rem .55rem .4rem;outline:none;min-height:44px}.cal-search__input::placeholder{color:var(--ink-soft)}.cal-applied{padding-block:.4rem .6rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;font-family:var(--font-sans);font-size:.8rem;color:var(--ink-soft)}.cal-applied__label{font-weight:600}.cal-applied__pills{display:flex;flex-wrap:wrap;gap:.35rem}.applied-pill{background:color-mix(in srgb,var(--accent) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:999px;padding:.2rem .6rem;font-size:.78rem;color:var(--accent-strong);font-weight:600}.cal-applied__clear{background:none;border:none;color:var(--accent-strong);font-family:var(--font-sans);font-size:.82rem;font-weight:600;cursor:pointer;padding:.2rem .4rem;text-decoration:underline;text-underline-offset:2px;min-height:44px}.applied-pill--btn{display:inline-flex;align-items:center;gap:.3rem;cursor:pointer;font-family:var(--font-sans);line-height:1.2;min-height:44px;padding-block:.5rem;transition:background-color .15s ease,border-color .15s ease}@media(prefers-reduced-motion:reduce){.applied-pill--btn{transition:none}}.applied-pill--btn:hover{background:color-mix(in srgb,var(--accent) 24%,var(--surface))}.applied-pill--btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.applied-pill__x{font-size:1rem;font-weight:700;line-height:.8;opacity:.85}.cal-whatson{background:var(--surface);border-bottom:1px solid var(--line)}.cal-whatson__inner{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem;padding-block:.7rem}.cal-whatson__label{font-family:var(--font-sans);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);flex-shrink:0}.cal-whatson__row{display:flex;flex-wrap:wrap;gap:.5rem;flex:1 1 auto}.cal-whatson__btn{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;font-family:var(--ctl-font);font-size:var(--ctl-size);font-weight:var(--ctl-weight);letter-spacing:var(--ctl-tracking);color:var(--ctl-ink);background:var(--ctl-bg);border:var(--ctl-border);border-radius:var(--ctl-radius);padding:var(--ctl-pad-y) var(--ctl-pad-x);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}@media(prefers-reduced-motion:reduce){.cal-whatson__btn{transition:none}}.cal-whatson__btn:hover{background:var(--ctl-hover-bg);border-color:var(--ctl-hover-border)}.cal-whatson__btn--on,.cal-whatson__btn[aria-pressed=true]{background:var(--ctl-on-bg);color:var(--ctl-on-ink);border-color:var(--ctl-on-bg)}.cal-whatson__span{flex:0 0 100%;margin:0;font-family:var(--font-sans);font-size:.88rem;font-weight:500;line-height:1.35;color:var(--ink-soft)}.cal-whatson__span:empty{display:none}@media(max-width:559.98px){.cal-whatson__inner{padding-block:.6rem}.cal-whatson__row{width:100%}.cal-whatson__btn{flex:1 1 auto;justify-content:center;font-size:.86rem;padding:.5rem .7rem}.cal-whatson__span{font-size:.85rem}}.chip{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;font-family:var(--ctl-font);font-size:var(--ctl-size);font-weight:var(--ctl-weight);letter-spacing:var(--ctl-tracking);color:var(--ctl-ink);background:var(--ctl-bg);border:var(--ctl-border);border-radius:var(--ctl-radius);padding:var(--ctl-pad-y) var(--ctl-pad-x);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}@media(prefers-reduced-motion:reduce){.chip{transition:none}}.chip:hover:not(.chip--on){background:var(--ctl-hover-bg);border-color:var(--ctl-hover-border)}.chip--on{background:var(--ctl-on-bg);color:var(--ctl-on-ink);border-color:var(--ctl-on-bg)}.cal-filtergroup--types .chip .type-dot{outline-color:color-mix(in srgb,var(--ink) 45%,transparent)}.type-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0;outline:1px solid color-mix(in srgb,var(--ink) 35%,transparent);outline-offset:-1px}.type-dot--inline{width:9px;height:9px}.type-dot--art-exhibition{background:#0f766e}.type-dot--lecture{background:#1d4ed8}.type-dot--literary{background:#00618c}.type-dot--classes-workshops{background:#7e22ce}.type-dot--dance{background:#be185d}.type-dot--theatre{background:#7b3bb8}.type-dot--festivals-fundraisers{background:#116330}.type-dot--museums-more{background:#3f5b7d}.type-dot--music{background:#96430a}[data-theme=ocean] .type-dot--art-exhibition{background:#5cc5b4}[data-theme=ocean] .type-dot--classes-workshops{background:#bf8ce0}[data-theme=ocean] .type-dot--dance{background:#e884b0}[data-theme=ocean] .type-dot--theatre{background:#e88a8a}[data-theme=ocean] .type-dot--festivals-fundraisers{background:#64c583}[data-theme=ocean] .type-dot--museums-more{background:#8aa9cc}[data-theme=ocean] .type-dot--lecture{background:#7ba2ec}[data-theme=ocean] .type-dot--literary{background:#33c9f0}[data-theme=ocean] .type-dot--music{background:#e6a256}.cal-filtergroup--types{--sel-ink: #ffffff}[data-theme=ocean] .cal-filtergroup--types{--sel-ink: var(--paper)}.cal-filtergroup--types .chip[data-filter-type="Art Exhibition"]{--sel-fill: #0f766e}.cal-filtergroup--types .chip[data-filter-type="Classes & Workshops"]{--sel-fill: #7e22ce}.cal-filtergroup--types .chip[data-filter-type=Dance]{--sel-fill: #be185d}.cal-filtergroup--types .chip[data-filter-type="Festivals & Fundraisers"]{--sel-fill: #116330}.cal-filtergroup--types .chip[data-filter-type=Lecture]{--sel-fill: #1d4ed8}.cal-filtergroup--types .chip[data-filter-type=Literary]{--sel-fill: #00618c}.cal-filtergroup--types .chip[data-filter-type="Museums & More"]{--sel-fill: #3f5b7d}.cal-filtergroup--types .chip[data-filter-type=Music]{--sel-fill: #96430a}.cal-filtergroup--types .chip[data-filter-type=Theatre]{--sel-fill: #7B3BB8}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type="Art Exhibition"]{--sel-fill: #5cc5b4}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type="Classes & Workshops"]{--sel-fill: #bf8ce0}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type=Dance]{--sel-fill: #e884b0}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type="Festivals & Fundraisers"]{--sel-fill: #64c583}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type=Lecture]{--sel-fill: #7ba2ec}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type=Literary]{--sel-fill: #33c9f0}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type="Museums & More"]{--sel-fill: #8aa9cc}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type=Music]{--sel-fill: #e6a256}[data-theme=ocean] .cal-filtergroup--types .chip[data-filter-type=Theatre]{--sel-fill: #e88a8a}.cal-filtergroup--types .chip--on[data-filter-type]:not([data-filter-type=all]){background:var(--sel-fill);border-color:var(--sel-fill);color:var(--sel-ink)}.cal-filtergroup--types .chip--on[data-filter-type]:not([data-filter-type=all]) .type-dot{background:var(--sel-ink);outline-color:transparent}.cal-filtergroup--types .chip--on[data-filter-type]:not([data-filter-type=all]) .type-count{background:var(--sel-ink);color:var(--sel-fill)}.type-count{font-size:.78rem;opacity:.85}.cal-badge{position:absolute;top:.5rem;left:.5rem;z-index:4;display:inline-flex;align-items:center;gap:.3rem;max-width:calc(100% - 1rem);font-family:var(--font-sans);font-size:.6rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:6px;padding:.2rem .5rem;line-height:1.2;box-shadow:0 1px 4px #00000059;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-badge--added{color:#7c2d12;background:#fbbf24;border:1px solid #b45309}.cal-badge--placeholder{color:#1f2937;background:#e5e7eb;border:1px solid #9ca3af}.cal-dialog__badges .cal-badge{position:static;max-width:none;white-space:normal}.cal-imgbadge{position:absolute;left:.5rem;bottom:1.7rem;z-index:3;font-family:var(--font-sans);font-size:.6rem;font-weight:700;letter-spacing:.03em;color:#7c2d12;background:#fed7aa;border:1px solid #fb923c;border-radius:4px;padding:.14rem .45rem;line-height:1.2}.cal-band{background:var(--paper)}.cal-main-wrap{padding-top:1.6rem;padding-bottom:var(--cal-band, 3.75rem)}.cal-view{display:block}.cal-view[hidden]{display:none}.cal-view__caption{font-family:var(--font-sans);font-size:.82rem;color:var(--ink-soft);margin:0 0 1rem}.cal-year[hidden],.cal-month[hidden]{display:none}.cal-year{margin-bottom:1.6rem}.cal-year__grid{display:flex;gap:.6rem;overflow-x:auto;padding:.15rem .15rem .55rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 26px),rgba(0,0,0,.18) 100%);mask-image:linear-gradient(to right,#000 0 calc(100% - 26px),#0000002e)}@media(min-width:720px){.cal-year__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));overflow:visible;scroll-snap-type:none;-webkit-mask-image:none;mask-image:none}.cal-year__grid .cal-monthtile{min-width:0}}.cal-monthtile{flex:0 0 auto;min-width:118px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;position:relative;text-align:left;cursor:pointer;font-family:var(--font-sans);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:.75rem .85rem .8rem;min-height:86px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-monthtile{transition:none}}.cal-monthtile:hover{border-color:var(--accent);box-shadow:0 4px 14px #14233b1a}@media(prefers-reduced-motion:no-preference){.cal-monthtile:hover{transform:translateY(-2px)}}.cal-monthtile:focus-visible{outline:2px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}.cal-monthtile__name{font-family:var(--font-serif);font-size:1.15rem;font-weight:700;line-height:1.1}.cal-monthtile__year{font-size:.78rem;color:var(--ink-soft);font-weight:600}.cal-monthtile__count{margin-top:auto;font-size:.95rem;font-weight:800;color:var(--ink)}.cal-monthtile__count-noun{font-size:.76rem;font-weight:500;color:var(--ink-soft)}.cal-monthtile__nowtag{position:absolute;top:.5rem;right:.5rem;font-size:.56rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--action-fill-ink);background:var(--action-fill);border-radius:999px;padding:.14rem .4rem;line-height:1}.cal-monthtile--now{border-color:var(--accent)}.cal-monthtile--now .cal-monthtile__name{padding-right:2.5rem}.cal-monthtile--selected{background:color-mix(in srgb,var(--accent) 16%,var(--surface));border-color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-strong)}.cal-monthtile--selected .cal-monthtile__year{color:var(--accent-strong)}.cal-monthtile__density{display:block;width:100%;height:4px;border-radius:999px;margin-top:.45rem;background:var(--line)}.cal-monthtile--light .cal-monthtile__density{background:linear-gradient(to right,var(--accent-strong) 33%,var(--line) 33%)}.cal-monthtile--medium .cal-monthtile__density{background:linear-gradient(to right,var(--accent-strong) 66%,var(--line) 66%)}.cal-monthtile--busy .cal-monthtile__density{background:var(--accent-strong)}.cal-monthtile--none{opacity:.72}.cal-monthtile--none .cal-monthtile__count{color:var(--ink-soft)}.cal-month__bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap;margin-bottom:1rem}.cal-month__caption{margin:0}.cal-monthcards{margin-top:2rem}.cal-monthcards__h{font-family:var(--font-serif);font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;color:var(--ink);margin:0 0 1.1rem;padding-bottom:.5rem;border-bottom:2px solid var(--line)}.cal-monthcards__empty{font-family:var(--font-sans);font-size:.95rem;color:var(--ink-soft);background:color-mix(in srgb,var(--ink) 4%,var(--surface));border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem;margin:0}.cal-monthcards__surf .grid{padding-left:0;padding-right:0}.cal-monthcards__surf .cal-reveal{animation:none!important;opacity:1!important}.cal-monthcards__more{margin-top:1.4rem;display:flex;justify-content:center}.cal-monthcards__seeall{min-height:44px}.cal-alwayson{margin-top:2.4rem}.cal-alwayson[hidden]{display:none}.cal-alwayson__h{font-family:var(--font-serif);font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;color:var(--ink);margin:0 0 .3rem;padding-bottom:.5rem;border-bottom:2px solid var(--line)}.cal-alwayson__note{font-family:var(--font-sans);font-size:.9rem;color:var(--ink-soft);margin:.5rem 0 1.1rem}.cal-alwayson__grid{display:grid;grid-template-columns:1fr;gap:.6rem}@media(min-width:640px){.cal-alwayson__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.cal-alwayson__grid{grid-template-columns:repeat(3,1fr)}}.cal-ao{display:flex;align-items:flex-start;gap:.6rem;text-align:left;width:100%;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--ao-bar, var(--ink-soft));border-radius:10px;padding:.7rem .85rem;cursor:pointer;min-height:44px;font-family:var(--font-sans);color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}@media(prefers-reduced-motion:reduce){.cal-ao{transition:none}}.cal-ao:hover{border-color:var(--ao-bar, var(--accent));box-shadow:0 3px 12px #14233b1a}@media(prefers-reduced-motion:no-preference){.cal-ao:hover{transform:translateY(-1px)}}.cal-ao:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.cal-ao__cat{flex-shrink:0;margin-top:.1rem;font-size:.72rem;font-weight:800;letter-spacing:.05em;color:var(--chip-ink);background:var(--ao-bar, var(--ink-soft));border-radius:4px;padding:.16rem .32rem;line-height:1}.cal-ao__body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.cal-ao__title{font-size:.92rem;font-weight:700;line-height:1.25;color:var(--ink)}.cal-ao__meta{font-size:.8rem;color:var(--ink-soft);line-height:1.3}.cal-popups{margin-top:2.4rem}.cal-popups[hidden]{display:none}.cal-popups__h{font-family:var(--font-serif);font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;color:var(--ink);margin:0 0 .3rem;padding-bottom:.5rem;border-bottom:2px solid var(--line)}.cal-popups__note{font-family:var(--font-sans);font-size:.9rem;color:var(--ink-soft);margin:.5rem 0 1.1rem}.cal-popups__grid{display:grid;grid-template-columns:1fr;gap:.6rem}@media(min-width:640px){.cal-popups__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.cal-popups__grid{grid-template-columns:repeat(3,1fr)}}.cal-cards-tiers{display:block}.cal-tier{margin-bottom:2.5rem}.cal-tier:last-child{margin-bottom:0}.cal-tier__h{font-family:var(--font-serif);font-size:1.35rem;font-weight:700;color:var(--ink);margin:0 0 .2rem;padding-bottom:.4rem;border-bottom:2px solid var(--line)}.cal-tier__note{font-family:var(--font-sans);font-size:.85rem;color:var(--ink-soft);margin:0 0 1.1rem}.cal-tier__h+.cal-tier__cards{margin-top:1.1rem}.cal-cards{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:stretch}@media(min-width:640px){.cal-cards{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.cal-cards{grid-template-columns:repeat(3,1fr)}}.cal-reveal__in{display:contents}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.cal-reveal{animation:calCardReveal linear both;animation-timeline:view();animation-range:entry 2% entry 40%;animation-delay:calc(var(--reveal-i, 0) * .04s);will-change:opacity}}}@keyframes calCardReveal{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.cal-reveal{animation:none;opacity:1}}.cal-card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #14233b0d;transition:transform .18s ease,box-shadow .18s ease}@media(prefers-reduced-motion:no-preference){.cal-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px #14233b24}}@media(prefers-reduced-motion:reduce){.cal-card{transition:none}}@media(min-width:1024px){.cal-card--wide{grid-column:span 2}.cal-card--wide .cal-card__media{aspect-ratio:21 / 9}}.cal-card--feature{grid-column:1 / -1}@media(min-width:768px){.cal-card--feature{flex-direction:row;align-items:stretch;margin-bottom:1.75rem}}@media(min-width:1024px){.cal-card--feature{margin-bottom:2.25rem}}.cal-card__media{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:color-mix(in srgb,var(--ink) 8%,var(--surface));flex-shrink:0}@media(min-width:768px){.cal-card__media--feature{aspect-ratio:auto;width:52%;max-width:540px;min-height:340px}}.cal-card__img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block;transition:transform .4s ease}@media(prefers-reduced-motion:no-preference){.cal-card:hover .cal-card__img{transform:scale(1.03)}}@media(prefers-reduced-motion:reduce){.cal-card__img{transition:none}}.cal-img--fallback{object-fit:cover}.cal-card__media .cal-img--fallback{transform:none!important}.cal-fbtile{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;gap:.4rem;padding:1rem 1.1rem;text-align:left;box-sizing:border-box;background:color-mix(in srgb,var(--fb-hue, #1a2e4a) 14%,#ffffff);border-bottom:4px solid var(--fb-hue, #1a2e4a);color:#1a2e4a;transform:none!important}.cal-fbtile__cat{font-family:var(--font-sans);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fb-hue, #1a2e4a)}.cal-fbtile__title{font-family:var(--font-serif);font-size:1.15rem;font-weight:600;line-height:1.2;color:#1a2e4a;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cal-fbtile__lockup{font-family:var(--font-sans);font-size:.64rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,#1a2e4a 70%,#ffffff);margin-top:auto}.cal-card__media--feature .cal-fbtile__title{font-size:1.6rem}.cal-img--clickable{cursor:pointer}.cal-img--clickable:focus-visible{outline:3px solid var(--accent-strong, #0f766e);outline-offset:-3px}.cal-img--clickable.cal-noring:focus-visible,.card.cal-noring:focus-visible,.feature.cal-noring:focus-visible,.cal-card.cal-noring:focus-visible,[data-event-id].cal-noring:focus-visible{outline:none}.cal-pic{display:block;width:100%;height:100%}.cal-list__thumb .cal-pic{width:100%;height:100%}.cal-img--wide{object-fit:cover;background:none}.cal-card__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(16,28,47,.55) 0%,rgba(16,28,47,.12) 45%,transparent 70%)}.cal-card--feature .cal-card__datechip{z-index:3}.cal-card__datechip{position:absolute;top:.7rem;left:.7rem;z-index:3;font-family:var(--font-sans);font-size:.74rem;font-weight:700;letter-spacing:.04em;color:#fff;background:#14233bd1;border-radius:999px;padding:.26rem .7rem;line-height:1.1}.cal-card__datechip--lg{font-size:.85rem;padding:.34rem .9rem;top:auto;bottom:.85rem;left:.85rem;background:#101c2fe6}.cal-card__credit{position:absolute;right:.5rem;bottom:.5rem;z-index:3;font-family:var(--font-sans);font-size:.6rem;color:#fff;background:#14233b99;border-radius:4px;padding:.12rem .4rem;line-height:1.2;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.2rem;flex:1;min-width:0}.cal-card__dateblock{display:none}@media(min-width:768px){.cal-card--feature .cal-card__body{justify-content:center;padding:2rem 2.1rem;gap:.6rem}}.cal-card__feature-kicker{font-family:var(--font-sans);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-strong);margin:0;display:inline-flex;align-items:center;gap:.6rem}.cal-card__feature-kicker:before{content:"";width:1.75rem;height:2px;background:var(--accent);display:inline-block;flex-shrink:0}.cal-card__tags{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;min-width:0}.cal-card__type{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.cal-card__type-label{font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-card__feature-tag{font-family:var(--font-sans);font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--action-fill-ink);background:var(--action-fill);border-radius:999px;padding:.18rem .6rem;line-height:1.2}.cal-card__nextup{font-family:var(--font-sans);font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--action-fill-ink);background:var(--accent-strong);border-radius:999px;padding:.16rem .5rem;line-height:1.2}.cal-adm{display:inline-block;vertical-align:middle;line-height:1.2;white-space:nowrap;font-family:var(--font-sans);font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.16rem .5rem;border:1px solid transparent;max-width:14ch;overflow:hidden;text-overflow:ellipsis}.cal-adm--free{color:#065f46;background:color-mix(in srgb,#047857 14%,transparent);border-color:color-mix(in srgb,#047857 32%,transparent)}.cal-adm--paid{color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent);border-color:color-mix(in srgb,var(--ink) 24%,transparent)}[data-theme=ocean] .cal-adm--free{color:#6ee7b7;background:color-mix(in srgb,#34d399 16%,transparent);border-color:color-mix(in srgb,#34d399 38%,transparent)}.cal-card__title{font-family:var(--font-serif);font-size:1.15rem;font-weight:600;line-height:1.25;color:var(--ink);margin:0;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cal-card__title--feature{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.15;-webkit-line-clamp:3}.cal-card__meta{font-family:var(--font-sans);font-size:.85rem;color:var(--ink-soft);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-card__desc{font-family:var(--font-sans);font-size:.9rem;color:var(--ink-soft);line-height:1.5;margin:0;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cal-card__desc--feature{font-size:.98rem;-webkit-line-clamp:2;max-width:56ch}.cal-card__foot{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .75rem;padding-top:.6rem}.cal-card__btn{font-size:.85rem;padding:.55rem 1.1rem}@media(max-width:599.98px){.cal-main-wrap{padding-top:.75rem}.cal-cards{gap:.85rem}.cal-card:not(.cal-card--feature){flex-direction:row;align-items:stretch;border-radius:12px}.cal-card:not(.cal-card--feature) .cal-card__media{width:96px;min-width:96px;aspect-ratio:1 / 1;align-self:stretch;min-height:100%}.cal-card:not(.cal-card--feature) .cal-card__datechip{display:none}.cal-card:not(.cal-card--feature) .cal-card__credit{display:none}.cal-card:not(.cal-card--feature) .cal-card__body{padding:.7rem .85rem;gap:.3rem;justify-content:center}.cal-card:not(.cal-card--feature) .cal-card__dateblock{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1;font-family:var(--font-sans);color:var(--accent-strong);margin-bottom:.05rem}.cal-card__dateblock-mon{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.cal-card__dateblock-day{font-size:1.2rem;font-weight:800;color:var(--ink);line-height:1}.cal-card__dateblock--cadence .cal-card__dateblock-cad{font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-strong)}.cal-card--feature .cal-card__credit{font-size:.69rem}.cal-adm{font-size:.75rem}.cal-card__nextup{font-size:.7rem}.cal-card:not(.cal-card--feature) .cal-card__title{font-size:1.02rem;-webkit-line-clamp:2}.cal-card:not(.cal-card--feature) .cal-card__desc{display:none}.cal-card:not(.cal-card--feature) .cal-card__foot{padding-top:.35rem}.cal-card:not(.cal-card--feature) .cal-card__media .cal-ss-btn{display:none}.cal-card:not(.cal-card--feature) .cal-card__media .cal-fbtile{padding:.4rem .3rem;gap:0;justify-content:center;align-items:center;text-align:center}.cal-card:not(.cal-card--feature) .cal-card__media .cal-fbtile__title,.cal-card:not(.cal-card--feature) .cal-card__media .cal-fbtile__lockup{display:none}.cal-card:not(.cal-card--feature) .cal-card__media .cal-fbtile__cat{font-size:.6rem;line-height:1.15;text-align:center;padding:0 .2rem}.cal-card:not(.cal-card--feature) .cal-card__btn{font-size:.8rem;padding:.5rem .9rem}.cal-card--wide{grid-column:auto}.cal-card--feature .cal-card__media--feature{min-height:200px;aspect-ratio:16 / 10}}.cal-slideshow{position:absolute;inset:0}.cal-slide{position:absolute;inset:0;opacity:0;transition:opacity .5s ease;pointer-events:none}.cal-slide--active{opacity:1;pointer-events:auto}@media(prefers-reduced-motion:reduce){.cal-slide{transition:none}}.cal-slide__img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.cal-ss-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#14233bb3;color:#fff;border:none;border-radius:50%;cursor:pointer}.cal-ss-btn:hover{background:#14233be6}.cal-ss-btn:focus-visible{outline:3px solid #ffffff;outline-offset:2px}@media(pointer:coarse){.cal-ss-btn{width:44px;height:44px}}.cal-ss-btn--prev{left:.5rem}.cal-ss-btn--next{right:.5rem}.cal-ss-dots{position:absolute;left:0;right:0;bottom:.5rem;z-index:4;display:flex;justify-content:center;gap:.4rem}.cal-ss-dot{width:24px;height:24px;min-width:24px;padding:0;border:none;cursor:pointer;background:transparent;display:flex;align-items:center;justify-content:center}.cal-ss-dot:before{content:"";width:10px;height:10px;border-radius:50%;background:#ffffff80;border:1px solid rgba(20,35,59,.5)}.cal-ss-dot--active:before{background:#fff}.cal-ss-dot:focus-visible{outline:2px solid #ffffff;outline-offset:2px}@media(pointer:coarse){.cal-ss-dot{width:44px;height:44px}.cal-ss-dots{gap:.5rem}}:root{--chip-ink: #ffffff}[data-theme=ocean]{--chip-ink: var(--paper)}.cal-band{--chip-ink: #ffffff}[data-theme=ocean] .cal-band{--chip-ink: var(--paper)}.cal-grid{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:0 10px 30px #14233b0f}.cal-grid__head{display:grid;grid-template-columns:repeat(7,1fr);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-bottom:2px solid color-mix(in srgb,var(--accent) 30%,var(--line))}.cal-grid__weekday{font-family:var(--font-sans);font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-strong);text-align:center;padding:.8rem .25rem}.cal-grid__body{display:grid;grid-template-columns:repeat(7,1fr)}.cal-grid__hint{display:none;font-family:var(--font-sans);font-size:.82rem;color:var(--ink-soft);margin:.75rem 0 0}.cal-cell{min-height:132px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:.55rem .5rem .5rem;position:relative;overflow:hidden;background:var(--surface);display:flex;flex-direction:column;gap:.3rem;min-width:0;transition:background-color .15s ease}@media(min-width:768px){.cal-cell{min-height:150px}}@media(prefers-reduced-motion:reduce){.cal-cell{transition:none}}.cal-cell:nth-child(7n){border-right:none}.cal-cell--out{background:color-mix(in srgb,var(--line) 30%,var(--paper));opacity:.4}.cal-cell--past{background:color-mix(in srgb,var(--line) 16%,var(--surface))}.cal-cell--past .cal-cell__num{color:var(--ink-soft);opacity:.8}.cal-cell--empty{min-height:70px;border-color:color-mix(in srgb,var(--line) 55%,transparent)}.cal-cell--empty .cal-cell__num{font-size:.8rem;color:var(--ink-soft);opacity:.6}@media(min-width:768px){.cal-cell--empty{min-height:80px}}.cal-cell--today{background:color-mix(in srgb,var(--accent) 9%,var(--surface));box-shadow:inset 0 0 0 2px var(--accent-strong)}.cal-cell--nextup{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent-strong) 60%,var(--line))}.cal-cell--today.cal-cell--nextup{box-shadow:inset 0 0 0 2px var(--accent-strong)}.cal-cell__num{font-family:var(--font-sans);font-size:.9rem;font-weight:700;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;line-height:1;flex-shrink:0;align-self:flex-start}.cal-cell--today .cal-cell__num{background:var(--ink);color:var(--paper);border-radius:50%;font-weight:800}.cal-cell__mmeta,.cal-cell__countbadge{display:none}.cal-cell__num--btn{background:none;border:none;cursor:pointer;font:inherit;border-radius:50%}.cal-cell__num--btn:hover{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.cal-cell--today .cal-cell__num--btn:hover{background:var(--ink)}.cal-cell__num--btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ink)}.cal-cell--has{cursor:pointer}.cal-cell--has:hover{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.cal-cell--today.cal-cell--has:hover{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.cal-cell__events{display:flex;flex-direction:column;gap:.22rem;min-width:0}.cal-cell__chip{display:flex;align-items:center;gap:.3rem;width:100%;text-align:left;font-family:var(--font-sans);font-size:.76rem;color:var(--ink);background:color-mix(in srgb,var(--surface) 90%,var(--line));border:none;border-left:4px solid var(--chip-bar, var(--ink-soft));border-radius:4px;padding:.3rem .45rem;cursor:pointer;min-width:0;overflow:hidden;transition:filter .15s ease,background-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-cell__chip{transition:none}}.cal-cell__chip:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ink);z-index:2}.cal-cell__chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto}.cal-cell__chip--fill{background:var(--chip-fill, var(--ink-soft));color:var(--chip-ink);border:none;border-radius:5px;padding:.28rem .44rem;font-weight:600;line-height:1.2;box-shadow:0 1px 2px #14233b24}.cal-cell__chip--fill:hover{filter:brightness(.93)}[data-theme=ocean] .cal-cell__chip--fill:hover{filter:brightness(1.08)}.cal-cell__chip--fill:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--chip-ink),0 0 0 2px var(--ink);z-index:2}.cal-cell__chip--fill .cal-cell__chip-cat{color:var(--chip-ink)}.cal-cell__chip--fill .cal-cell__chip-time{color:var(--chip-ink);opacity:.95}.cal-cell__chip--fill .cal-cell__chip-text{color:var(--chip-ink)}.cal-cell__chip-time{font-variant-numeric:tabular-nums;font-weight:700;font-size:.68rem;flex-shrink:0;white-space:nowrap}.cal-cell__chip-cat{font-size:.6rem;font-weight:800;letter-spacing:.05em;color:var(--chip-bar, var(--ink-soft));flex-shrink:0;white-space:nowrap}.cal-cell__chip--ongoing{background:color-mix(in srgb,var(--ink) 5%,var(--surface));border-left:4px solid var(--ink-soft);color:var(--ink-soft);font-style:italic}.cal-cell__chip--ongoing:hover{background:color-mix(in srgb,var(--ink) 10%,var(--surface))}.cal-cell__more{align-self:flex-start;margin-top:.15rem;min-height:26px;display:inline-flex;align-items:center;font-family:var(--font-sans);font-size:.72rem;font-weight:700;color:var(--ink-soft);background:color-mix(in srgb,var(--ink) 8%,var(--surface));border:1px solid var(--line);border-radius:999px;padding:.12rem .55rem;cursor:pointer;transition:background-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-cell__more{transition:none}}.cal-cell__more:hover{background:color-mix(in srgb,var(--ink) 12%,var(--surface))}.cal-cell__more:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ink)}.cal-legend{margin-top:1rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .9rem}.cal-legend__label{font-family:var(--font-sans);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.cal-legend__list{display:flex;flex-wrap:wrap;gap:.4rem .7rem;list-style:none;margin:0;padding:0}.cal-legend__item{display:inline-flex;align-items:center;gap:.4rem}.cal-legend__swatch{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:20px;padding:0 .35rem;border-radius:5px;background:var(--chip-fill);color:var(--chip-ink);font-family:var(--font-sans);font-size:.6rem;font-weight:800;letter-spacing:.04em}.cal-legend__name{font-family:var(--font-sans);font-size:.8rem;color:var(--ink)}@media(max-width:599.98px){.cal-cell{width:100%;min-width:0;min-height:3.35rem;aspect-ratio:1 / 1;padding:.25rem;align-items:center;justify-content:flex-start;gap:.12rem}.cal-cell--empty{width:100%;min-width:0;min-height:3.35rem;aspect-ratio:1 / 1}.cal-cell__num{font-size:.82rem;width:24px;height:24px;align-self:center;margin-top:.05rem}.cal-cell__num--btn{min-height:0}.cal-cell__events{display:none!important}.cal-cell__mmeta{display:flex;align-items:center;justify-content:center;gap:.12rem;max-width:100%}.cal-cell__dots{display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;gap:2px;flex:0 1 auto;min-width:5px;max-height:5px;overflow:hidden}.cal-cell__dot{width:5px;height:5px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 0 .5px color-mix(in srgb,var(--ink) 24%,transparent)}.cal-cell__dot--more{display:inline-flex;align-items:center;justify-content:center;width:6px;height:5px;border-radius:0;box-shadow:none;overflow:hidden;font-family:var(--font-sans);font-size:.5rem;font-weight:800;line-height:1;color:var(--ink-soft)}.cal-cell__countbadge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;max-width:none;min-width:1.05rem;height:1.05rem;padding:0 .18rem;border-radius:999px;font-family:var(--font-sans);font-size:.7rem;font-weight:800;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--ink);background:color-mix(in srgb,var(--ink) 13%,var(--surface))}.cal-cell--today .cal-cell__countbadge{background:var(--ink);color:var(--paper)}.cal-cell--has{padding-bottom:.28rem}.cal-grid__weekday{padding:.55rem .1rem;font-size:.68rem;letter-spacing:.06em}.cal-legend{margin-top:.85rem}}.cal-popover-backdrop{position:fixed;inset:0;z-index:200;background:#14233b8c}.cal-popover-backdrop[hidden]{display:none}.cal-popover{position:fixed;z-index:201;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:none}.cal-popover[hidden]{display:none}.cal-popover__inner{position:relative;pointer-events:auto;width:100%;max-width:460px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 48px #14233b47}@media(prefers-reduced-motion:no-preference){.cal-popover:not([hidden]) .cal-popover__inner{animation:calDialogIn .18s ease-out both}}@media(prefers-reduced-motion:reduce){.cal-popover:not([hidden]) .cal-popover__inner{animation:none}}.cal-popover__header{flex-shrink:0;position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem .65rem .85rem 1.1rem;background:var(--surface);border-bottom:1px solid var(--line)}.cal-popover__date-label{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.2;min-width:0}.cal-popover__close{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer}.cal-popover__close:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.cal-popover__list{list-style:none;margin:0;padding:.4rem .6rem .6rem;overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:0}.cal-popover__item{border-bottom:1px solid var(--line)}.cal-popover__item:last-child{border-bottom:none}.cal-popover__btn{display:flex;flex-direction:column;gap:.25rem;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:.7rem .5rem;border-radius:8px;color:inherit;font:inherit}.cal-popover__btn:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.cal-popover__btn:focus-visible{outline:3px solid var(--ink);outline-offset:-2px}.cal-popover__type-tag{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-sans);font-size:.72rem;font-weight:600;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;padding-left:.4rem}.cal-popover__row-top{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.cal-popover__time{font-family:var(--font-sans);font-size:.72rem;font-weight:700;color:var(--ink);background:color-mix(in srgb,var(--accent) 14%,var(--surface));border-radius:999px;padding:.1rem .5rem;white-space:nowrap}.cal-popover__title{font-family:var(--font-serif);font-size:.98rem;font-weight:600;color:var(--ink);line-height:1.25}.cal-popover__meta{font-family:var(--font-sans);font-size:.8rem;color:var(--ink-soft)}.cal-popover__empty{font-family:var(--font-sans);font-size:.9rem;color:var(--ink-soft);padding:1.25rem .5rem;text-align:center}@media(max-width:559.98px){.cal-popover{padding:0;align-items:flex-end}.cal-popover__inner{max-width:none;max-height:92vh;border-radius:16px 16px 0 0;border-bottom:none}}.cal-jtt-pulse{outline:none;border-radius:12px}.cal-jtt-pulse:focus,.cal-jtt-pulse:focus-visible{outline:none}@media(prefers-reduced-motion:no-preference){.cal-jtt-pulse{animation:cal-jtt-pulse 1.5s ease-out 1}@keyframes cal-jtt-pulse{0%{background-color:color-mix(in srgb,var(--accent) 30%,transparent)}to{background-color:transparent}}}@media(prefers-reduced-motion:reduce){.cal-jtt-pulse{background-color:color-mix(in srgb,var(--accent) 18%,transparent);transition:none}}.cal-list{display:flex;flex-direction:column;gap:0}.cal-list__group{margin-bottom:1.5rem}.cal-list__date-h{font-family:var(--font-serif);font-size:1.1rem;font-weight:700;color:var(--ink);margin:0 0 .25rem;padding:.5rem 0;border-bottom:2px solid var(--accent);position:sticky;top:var(--toolbar-h, 64px);background:var(--paper);z-index:5;scroll-margin-top:var(--toolbar-h, 64px)}.cal-list__month-h{font-family:var(--font-serif);font-size:1.45rem;font-weight:700;letter-spacing:-.01em;color:var(--ink);margin:1.75rem 0 .5rem;padding:0 0 .35rem;border-bottom:1px solid var(--line)}.cal-list__month-h:first-child{margin-top:0}.cal-list__earlier{margin:0 0 1.5rem}.cal-list__earlier-sum{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.95rem;color:var(--ink-soft);padding:.5rem .1rem;list-style:none;border-bottom:1px solid var(--line);width:100%}.cal-list__earlier-sum::-webkit-details-marker{display:none}.cal-list__earlier-sum:before{content:"▸";display:inline-block;transition:transform .15s ease;font-size:.85em}.cal-list__earlier[open]>.cal-list__earlier-sum:before{transform:rotate(90deg)}.cal-list__earlier-sum:hover{color:var(--ink)}.cal-list__earlier-sum:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cal-list__earlier-body{padding-top:1rem;opacity:.9}@media(prefers-reduced-motion:reduce){.cal-list__earlier-sum:before{transition:none}}.cal-list__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem .75rem;border-bottom:1px solid var(--line);min-width:0;border-radius:10px;transition:background-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-list__row{transition:none}}.cal-list__row:hover{background:color-mix(in srgb,var(--ink) 4%,var(--surface))}.cal-list__thumb{width:72px;height:72px;border-radius:10px;overflow:hidden;flex-shrink:0;background:color-mix(in srgb,var(--ink) 8%,var(--surface));border:1px solid var(--line);position:relative}.cal-list__thumb-img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block;transition:transform .4s ease}@media(prefers-reduced-motion:no-preference){.cal-list__row:hover .cal-list__thumb-img{transform:scale(1.03)}}@media(prefers-reduced-motion:reduce){.cal-list__thumb-img{transition:none}}.cal-list__body{display:flex;flex-direction:column;gap:.25rem;min-width:0}.cal-list__tags{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;min-width:0}.cal-list__type{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.cal-list__type-label{font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-list__title{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;color:var(--ink);line-height:1.25;margin:0;min-width:0;overflow-wrap:anywhere}.cal-list__cadence{font-family:var(--font-sans);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong);margin:0}.cal-list__meta{font-family:var(--font-sans);font-size:.85rem;color:var(--ink-soft);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-list__btn{font-size:.85rem;padding:.55rem 1.1rem;flex-shrink:0;align-self:center}.cal-list__row--nextup .cal-list__thumb{box-shadow:inset 0 0 0 2px var(--accent-strong);border-color:var(--accent-strong)}@media(max-width:559.98px){.cal-list__row{grid-template-columns:auto minmax(0,1fr);gap:.85rem}.cal-list__btn{grid-column:1 / -1;justify-self:start}.cal-list__meta{white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}}.cal-empty{text-align:center;padding:4rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.cal-empty__icon{color:var(--ink-soft);opacity:.5}.cal-empty__h{font-size:1.5rem;margin:0}.cal-empty__p{font-size:.96rem;color:var(--ink-soft);max-width:44ch;margin:0 auto}.cal-empty__btn{margin-top:.5rem}.cal-empty__actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;align-items:center}.cal-submit{background:color-mix(in srgb,var(--ink) 5%,var(--paper));border-top:1px solid var(--line)}.cal-submit__inner{padding-block:3rem 3.5rem;max-width:860px}.cal-submit__intro{margin-bottom:1.5rem}.cal-submit__h{font-family:var(--font-serif);font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:600;color:var(--ink);margin:.4rem 0 .5rem}.cal-submit__p{font-family:var(--font-sans);font-size:.98rem;color:var(--ink-soft);line-height:1.6;margin:0;max-width:62ch}.cal-form{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.6rem}.cal-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.cal-form__grid{display:grid;grid-template-columns:1fr;gap:1.1rem}@media(min-width:640px){.cal-form__grid{grid-template-columns:1fr 1fr}}.cal-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.cal-field--full{grid-column:1 / -1}.cal-field__label{font-family:var(--font-sans);font-size:.85rem;font-weight:600;color:var(--ink)}.cal-field__req{font-size:.7rem;font-weight:600;color:var(--accent-strong);text-transform:uppercase;letter-spacing:.04em;margin-left:.3rem}.cal-field__input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:.6rem .85rem;font-family:var(--font-sans);font-size:.95rem;color:var(--ink);background:var(--paper)}.cal-field__input:focus-visible{outline:2px solid var(--accent-strong);outline-offset:1px;border-color:var(--accent-strong)}.cal-field__textarea{min-height:88px;resize:vertical;line-height:1.5}.cal-form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:1.4rem}.cal-form__submit{font-size:.95rem;padding:.7rem 1.5rem}.cal-form__fine{font-family:var(--font-sans);font-size:.82rem;color:var(--ink-soft);margin:0}.cal-form__success{background:var(--surface);border:1px solid var(--accent);border-radius:16px;padding:2rem 1.6rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.6rem;color:var(--ink)}.cal-form__success[hidden]{display:none}.cal-form__success svg{color:var(--accent-strong)}.cal-form__success-h{font-family:var(--font-serif);font-size:1.3rem;font-weight:600;margin:0}.cal-form__success-p{font-family:var(--font-sans);font-size:.95rem;color:var(--ink-soft);margin:0;max-width:50ch}.cal-dialog-backdrop{position:fixed;inset:0;z-index:200;background:#14233b8c}.cal-dialog-backdrop[hidden]{display:none}.cal-dialog{position:fixed;z-index:201;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:none}.cal-dialog[hidden]{display:none}.cal-dialog__inner{position:relative;pointer-events:auto;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 48px #14233b47}@media(prefers-reduced-motion:no-preference){.cal-dialog:not([hidden]) .cal-dialog__inner{animation:calDialogIn .18s ease-out both}}@keyframes calDialogIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.cal-dialog:not([hidden]) .cal-dialog__inner{animation:none}}.cal-dialog__close{position:absolute;top:.6rem;right:.6rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;z-index:6}.cal-dialog__close:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.cal-dialog__back{position:absolute;top:.6rem;left:.6rem;min-height:44px;display:inline-flex;align-items:center;gap:.35rem;padding:0 .85rem 0 .6rem;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--ink);font-family:var(--font-sans);font-size:.82rem;font-weight:600;cursor:pointer;z-index:6;max-width:calc(100% - 64px)}.cal-dialog__back[hidden]{display:none}.cal-dialog__back:hover{background:color-mix(in srgb,var(--ink) 6%,var(--surface));border-color:var(--ink)}.cal-dialog__back:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.cal-dialog__back span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-dialog__back svg{flex:0 0 auto}.cal-dialog__share{cursor:pointer}.cal-dialog__art{position:relative;height:224px;overflow:hidden;border-radius:16px 16px 0 0;background:color-mix(in srgb,var(--ink) 8%,var(--surface))}.cal-dialog__art[hidden]{display:none}.cal-dialog__art-img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.cal-dialog__art .cal-card__credit{left:.5rem;right:auto;max-width:calc(100% - 56px);text-align:left}.cal-dialog__art-seam{position:absolute;left:0;right:0;bottom:0;height:56px;z-index:2;pointer-events:none;background:linear-gradient(to top,rgba(16,28,47,.28),transparent)}.cal-dialog__body{padding:1.6rem 1.7rem 1.7rem;display:flex;flex-direction:column;gap:.75rem}@media(min-width:480px){.cal-dialog__body{padding:1.8rem 1.85rem 1.85rem}}.cal-dialog__badges{display:flex;flex-wrap:wrap;gap:.4rem}.cal-dialog__badges:empty{display:none}.cal-dialog__type{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-sans);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.cal-dialog__title{font-family:var(--font-serif);font-size:clamp(1.4rem,3vw,1.8rem);font-weight:600;color:var(--ink);line-height:1.2;margin:0;padding-right:2.5rem}.cal-dialog__facts{display:grid;grid-template-columns:1fr;gap:.85rem 2rem;margin:.3rem 0 0}@media(min-width:480px){.cal-dialog__facts{grid-template-columns:1fr 1fr}}.cal-dialog__fact--full{grid-column:1 / -1}.cal-dialog__fact dt{font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .15rem}.cal-dialog__fact dd{font-family:var(--font-sans);font-size:.92rem;color:var(--ink);margin:0;line-height:1.45}.cal-dialog__fact dd a{color:var(--accent-strong)}.cal-dialog__maplink{display:inline-flex;align-items:center;min-height:44px;padding:.4rem 0;margin-top:.35rem;font-size:.85rem}.cal-dialog__desc{font-family:var(--font-sans);font-size:.95rem;color:var(--ink-soft);line-height:1.6;margin:.2rem 0 0;max-width:none}.cal-dialog__freshness{font-family:var(--font-sans);font-size:.8rem;font-style:italic;color:var(--ink-faint, #6b7280);line-height:1.5;margin:.45rem 0 0}.cal-dialog__contacts{display:flex;flex-wrap:wrap;gap:.5rem}.cal-dialog__contacts:empty{display:none}.cal-contact,.cal-dialog__ghost{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-sans);font-size:.85rem;font-weight:600;color:var(--ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:.5rem .95rem;min-height:44px;background:transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-contact,.cal-dialog__ghost{transition:none}}.cal-contact:hover,.cal-dialog__ghost:hover{background:color-mix(in srgb,var(--ink) 5%,var(--surface));border-color:var(--ink);color:var(--ink)}.cal-contact:focus-visible,.cal-dialog__ghost:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.cal-contact-group{display:inline-flex;flex-direction:column;align-items:flex-start}.cal-contact-group__toggle{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-sans);font-size:.85rem;font-weight:600;color:var(--ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:.5rem .85rem .5rem .95rem;min-height:44px;background:transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}@media(prefers-reduced-motion:reduce){.cal-contact-group__toggle{transition:none}}.cal-contact-group__toggle:hover{background:color-mix(in srgb,var(--ink) 5%,var(--surface));border-color:var(--ink)}.cal-contact-group__toggle:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.cal-contact-group__count{font-family:var(--font-sans)}.cal-contact-group__chev{flex-shrink:0;transition:transform .24s cubic-bezier(.22,1,.36,1)}.cal-contact-group--open .cal-contact-group__chev{transform:rotate(180deg)}.cal-contact-group__panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .24s cubic-bezier(.22,1,.36,1),opacity .24s cubic-bezier(.22,1,.36,1)}.cal-contact-group--open .cal-contact-group__panel{grid-template-rows:1fr;opacity:1}.cal-contact-group__items{overflow:hidden;min-height:0;display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.5rem;visibility:hidden;transition:visibility 0s linear .24s}.cal-contact-group--open .cal-contact-group__items{visibility:visible;transition:visibility 0s}@media(prefers-reduced-motion:reduce){.cal-contact-group__chev,.cal-contact-group__panel,.cal-contact-group__items,.cal-contact-group--open .cal-contact-group__items{transition:none}}.cal-dialog__ghost[hidden]{display:none}.cal-dialog__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .75rem;margin-top:.7rem}.cal-dialog__addcal{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .75rem;margin-top:.9rem}.cal-dialog__addcal-primary{text-decoration:none}body.cal-dialog-open{overflow:hidden}@media(max-width:599.98px){.cal-viewbtn--locked{display:none!important}.cal-viewtoggle{gap:.35rem;flex-shrink:1;min-width:0}.cal-toolbar{padding-block:.6rem;flex-wrap:wrap;gap:.4rem}.cal-viewbtn{min-width:0;padding:.5rem .55rem;font-size:.85rem}.cal-filters-btn{padding:.5rem .65rem;font-size:.85rem}.cal-count{display:none}.cal-dialog__art{height:180px}}.cal-filters-panel__search{width:100%;min-height:44px}@media(max-width:900px){.cal-filters-panel{max-height:min(72vh,560px);overflow-y:auto;overscroll-behavior:contain;background:linear-gradient(var(--surface) 40%,rgba(255,255,255,0)) top / 100% 22px no-repeat local,linear-gradient(rgba(255,255,255,0),var(--surface) 60%) bottom / 100% 22px no-repeat local,radial-gradient(farthest-side at 50% 0,color-mix(in srgb,var(--ink) 18%,transparent),transparent) top / 100% 9px no-repeat scroll,radial-gradient(farthest-side at 50% 100%,color-mix(in srgb,var(--ink) 18%,transparent),transparent) bottom / 100% 9px no-repeat scroll;background-color:var(--surface)}}@media(max-width:760px){.cal-filtergroup{grid-template-columns:minmax(0,1fr);row-gap:.45rem}.cal-filtergroup__label{padding-top:0}.cal-filtergroup--regions .cal-filtergroup__chips{--fg-min: 158px}}@media print{.cal-masthead,.cal-toolbar-wrap,.cal-submit,.cal-grid__hint,.cal-popover,.cal-popover-backdrop,.cal-dialog,.cal-dialog-backdrop{display:none!important}:is(#view-cards,#cal-month-cards),#view-month{display:none!important}#view-list,#view-list[hidden]{display:block!important}.cal-band{background:#fff!important}.cal-main-wrap{padding-block:0!important}.cal-list__row{break-inside:avoid;border-color:#000!important;color:#000!important;grid-template-columns:minmax(0,1fr)!important}.cal-list__thumb{display:none!important}.cal-list__title,.cal-list__meta,.cal-list__type-label,.cal-list__date-h{color:#000!important}.cal-list__btn{display:none!important}.cal-list__date-h{border-color:#000!important}}:is(#view-cards,#cal-month-cards){--paper-2: color-mix(in srgb, var(--ink) 6%, var(--surface));--line-strong: color-mix(in srgb, var(--ink) 16%, var(--line));--shadow-sm: 0 2px 8px rgba(26, 46, 74, .06);--shadow-card: 0 8px 26px rgba(26, 46, 74, .09);--shadow-lift: 0 22px 50px rgba(26, 46, 74, .16);--ease: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1);--cat-art: #0f766e;--cat-class: #7e22ce;--cat-dance: #be185d;--cat-fest: #116330;--cat-lecture: #1d4ed8;--cat-literary: #00618c;--cat-museum: #3f5b7d;--cat-music: #96430a;--cat-theatre: #7B3BB8}[data-theme=ocean] :is(#view-cards,#cal-month-cards){--cat-art: #5cc5b4;--cat-class: #bf8ce0;--cat-dance: #e884b0;--cat-fest: #64c583;--cat-lecture: #7ba2ec;--cat-literary: #33c9f0;--cat-museum: #8aa9cc;--cat-music: #e6a256;--cat-theatre: #e88a8a}:is(#view-cards,#cal-month-cards) .tier{position:relative;padding-top:56px}:is(#view-cards,#cal-month-cards) .tier:first-of-type{padding-top:44px}:is(#view-cards,#cal-month-cards) .tier__head{position:relative;margin-bottom:26px}:is(#view-cards,#cal-month-cards) .tier__ghost{position:absolute;left:-2vw;top:-2.6rem;z-index:0;font-family:var(--font-serif);font-weight:700;font-style:italic;font-size:clamp(3.5rem,9vw,7rem);line-height:1;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--ink) 8%,transparent);pointer-events:none;user-select:none;white-space:nowrap}:is(#view-cards,#cal-month-cards) .tier__h{position:relative;z-index:1;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}:is(#view-cards,#cal-month-cards) .tier__h h2{font-size:clamp(1.8rem,3.4vw,2.6rem);letter-spacing:-.02em}:is(#view-cards,#cal-month-cards) .tier__h .n{font-family:var(--font-sans);font-size:13px;font-weight:700;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 14%,transparent);padding:3px 11px;border-radius:999px}:is(#view-cards,#cal-month-cards) .tier__note{position:relative;z-index:1;font-size:14px;color:var(--ink-soft);margin-top:6px;max-width:60ch}:is(#view-cards,#cal-month-cards) .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 26px;padding:0 14px}@media(max-width:980px){:is(#view-cards,#cal-month-cards) .grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){:is(#view-cards,#cal-month-cards) .grid{grid-template-columns:1fr;gap:26px}}:is(#view-cards,#cal-month-cards) .card{position:relative;display:flex;flex-direction:column;background:transparent;border:0;border-radius:0;padding:0;cursor:pointer;isolation:isolate}:is(#view-cards,#cal-month-cards) .card__media{position:relative;overflow:visible;border-radius:3px;aspect-ratio:4 / 3;margin-bottom:16px}:is(#view-cards,#cal-month-cards) .card__frame{position:absolute;inset:0;overflow:hidden;border-radius:3px;background:var(--paper-2);box-shadow:var(--shadow-card);transition:box-shadow .4s var(--ease),transform .4s var(--ease)}:is(#view-cards,#cal-month-cards) .card__img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block;transition:transform .7s var(--ease),filter .5s var(--ease)}:is(#view-cards,#cal-month-cards) .card__frame:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:3;background:var(--c, var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}:is(#view-cards,#cal-month-cards) .card:hover .card__frame{box-shadow:var(--shadow-lift);transform:translateY(-4px)}:is(#view-cards,#cal-month-cards) .card:hover .card__frame:before{transform:scaleX(1)}:is(#view-cards,#cal-month-cards) .card:hover .card__img{transform:scale(1.05);filter:grayscale(1) contrast(1.32) brightness(1.12)}:is(#view-cards,#cal-month-cards) .card__date{position:absolute;left:-8px;bottom:-12px;z-index:4;background:var(--surface);color:var(--ink);border-radius:3px;box-shadow:var(--shadow-card);padding:8px 12px;text-align:center;min-width:54px;transition:transform .4s var(--ease)}:is(#view-cards,#cal-month-cards) .card:hover .card__date{transform:translateY(-2px) translate(2px)}:is(#view-cards,#cal-month-cards) .card__date .mon{display:block;font-family:var(--font-sans);font-weight:800;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--action-fill)}:is(#view-cards,#cal-month-cards) .card__date .day{display:block;font-family:var(--font-serif);font-weight:700;font-size:24px;line-height:1;color:var(--ink)}:is(#view-cards,#cal-month-cards) .card__date--cadence .cad{font-family:var(--font-sans);font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);white-space:nowrap;display:block;padding:3px 2px}:is(#view-cards,#cal-month-cards) .card__motif{position:absolute;top:-10px;right:-8px;z-index:4;width:50px;height:50px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm);display:grid;place-items:center;color:var(--c, var(--accent));transform:scale(.86) rotate(-6deg);opacity:0;transition:transform .45s var(--ease),opacity .35s var(--ease)}:is(#view-cards,#cal-month-cards) .card:hover .card__motif{opacity:1;transform:scale(1) rotate(0)}:is(#view-cards,#cal-month-cards) .card__motif svg{width:32px;height:32px}:is(#view-cards,#cal-month-cards) .card__motif svg path,:is(#view-cards,#cal-month-cards) .card__motif svg line,:is(#view-cards,#cal-month-cards) .card__motif svg polyline,:is(#view-cards,#cal-month-cards) .card__motif svg circle,:is(#view-cards,#cal-month-cards) .card__motif svg rect,:is(#view-cards,#cal-month-cards) .card__motif svg ellipse{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}:is(#view-cards,#cal-month-cards) .card__motif .draw{stroke-dasharray:var(--len, 120);stroke-dashoffset:var(--len, 120)}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .draw{animation:motif-draw 2.6s var(--ease) infinite}@keyframes motif-draw{0%{stroke-dashoffset:var(--len, 120)}45%{stroke-dashoffset:0}75%{stroke-dashoffset:0}to{stroke-dashoffset:calc(var(--len, 120) * -1)}}:is(#view-cards,#cal-month-cards) .card__motif .bob{transform-box:fill-box;transform-origin:center}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .bob{animation:motif-bob 1.8s var(--ease-soft) infinite}@keyframes motif-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.6px)}}:is(#view-cards,#cal-month-cards) .card__motif .spin{transform-box:fill-box;transform-origin:center}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .spin{animation:motif-spin 4s linear infinite}@keyframes motif-spin{to{transform:rotate(360deg)}}:is(#view-cards,#cal-month-cards) .card__motif .rise,:is(#view-cards,#cal-month-cards) .card__motif .lift{transform-box:fill-box;transform-origin:center}:is(#view-cards,#cal-month-cards) .card__motif .page{transform-box:fill-box;transform-origin:left center}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .rise{animation:motif-rise 2.6s var(--ease-soft) infinite}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .rise2{animation:motif-rise2 3.4s var(--ease-soft) infinite}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .page{animation:motif-page 2.8s var(--ease) infinite}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .lift{animation:motif-lift 1.7s var(--ease-soft) infinite}:is(#view-cards,#cal-month-cards) .card__motif .flick{transform-box:fill-box;transform-origin:16px 14px}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .flick{animation:motif-flick 1.6s steps(1,end) infinite}:is(#view-cards,#cal-month-cards) .card__motif .glow{transform-box:fill-box;transform-origin:center}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .glow{animation:motif-glow 1.6s var(--ease-soft) infinite}:is(#view-cards,#cal-month-cards) .card__motif .sway{transform-box:fill-box;transform-origin:16px 24px}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .sway{animation:motif-sway 2.4s var(--ease-soft) infinite}:is(#view-cards,#cal-month-cards) .card__motif .swing{transform-box:fill-box;transform-origin:16px 7px}:is(#view-cards,#cal-month-cards) .card:hover .card__motif .swing{animation:motif-swing 2.6s var(--ease-soft) infinite}@keyframes motif-rise{0%{transform:translateY(3px)}50%{transform:translateY(-3px)}to{transform:translateY(3px)}}@keyframes motif-rise2{0%{transform:translateY(4px)}50%{transform:translateY(-4px)}to{transform:translateY(4px)}}@keyframes motif-page{0%{transform:scaleX(1)}48%{transform:scaleX(-1)}52%{transform:scaleX(-1)}to{transform:scaleX(1)}}@keyframes motif-lift{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}@keyframes motif-flick{0%,42%{opacity:.12}50%,to{opacity:1}}@keyframes motif-glow{0%,42%{opacity:.38}50%,to{opacity:1}}@keyframes motif-sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes motif-swing{0%,to{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}@media(prefers-reduced-motion:reduce){:is(#view-cards,#cal-month-cards) .card:hover .card__motif *{animation:none!important}}:is(#view-cards,#cal-month-cards) .card__body{display:flex;flex-direction:column;gap:7px}:is(#view-cards,#cal-month-cards) .card__tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap}:is(#view-cards,#cal-month-cards) .card__type{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c, var(--accent))}:is(#view-cards,#cal-month-cards) .card__type .d{width:7px;height:7px;border-radius:999px;background:currentColor}:is(#view-cards,#cal-month-cards) .adm{display:inline-block;vertical-align:middle;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;letter-spacing:.02em;max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(#view-cards,#cal-month-cards) .adm--free{background:color-mix(in srgb,var(--cat-fest) 14%,transparent);color:var(--cat-fest)}:is(#view-cards,#cal-month-cards) .adm--paid{background:var(--paper-2);color:var(--ink-soft)}:is(#view-cards,#cal-month-cards) .card__title{font-family:var(--font-serif);font-weight:600;font-size:21px;line-height:1.16;color:var(--ink);letter-spacing:-.01em;display:inline;background-image:linear-gradient(var(--action),var(--action));background-size:0% 2px;background-repeat:no-repeat;background-position:0 1.06em;transition:background-size .4s var(--ease);padding-bottom:2px}:is(#view-cards,#cal-month-cards) .card:hover .card__title{background-size:100% 2px}:is(#view-cards,#cal-month-cards) .card__meta{font-size:13px;color:var(--ink-soft);margin:2px 0 0}:is(#view-cards,#cal-month-cards) .card__meta b{color:var(--ink);font-weight:600}:is(#view-cards,#cal-month-cards) .card__sched{font-size:12.5px;color:var(--ink-soft);opacity:.85;line-height:1.45}:is(#view-cards,#cal-month-cards) .card__credit{position:absolute;right:8px;left:auto;bottom:8px;z-index:4;max-width:calc(100% - 16px);font-size:9.5px;line-height:1.2;color:#fff;background:#0c142299;padding:3px 7px;border-radius:3px;opacity:0;transform:translateY(4px);text-align:right;transition:opacity .3s var(--ease),transform .3s var(--ease);backdrop-filter:blur(2px)}:is(#view-cards,#cal-month-cards) .card:hover .card__credit{opacity:1;transform:translateY(0)}:is(#view-cards,#cal-month-cards) .card__nextup{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--action-fill);padding:3px 9px;border-radius:999px}:is(#view-cards,#cal-month-cards) .fbtile{position:absolute;inset:0;border-radius:3px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:16px;color:var(--ink);background:linear-gradient(160deg,color-mix(in srgb,var(--c, var(--accent)) 16%,var(--surface)) 0%,var(--surface) 70%);box-shadow:var(--shadow-card)}:is(#view-cards,#cal-month-cards) .fbtile__cat{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--c, var(--accent))}:is(#view-cards,#cal-month-cards) .fbtile__title{font-family:var(--font-serif);font-weight:600;font-size:22px;line-height:1.1;color:var(--ink);margin:0}:is(#view-cards,#cal-month-cards) .fbtile__lockup{font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);text-align:right;align-self:flex-end}:is(#view-cards,#cal-month-cards) .fbtile__glyph{position:absolute;right:-14px;bottom:-14px;width:130px;height:130px;color:var(--c, var(--accent));opacity:.14}:is(#view-cards,#cal-month-cards) .fbtile__glyph svg{width:100%;height:100%}:is(#view-cards,#cal-month-cards) .fbtile__glyph svg path,:is(#view-cards,#cal-month-cards) .fbtile__glyph svg line,:is(#view-cards,#cal-month-cards) .fbtile__glyph svg polyline,:is(#view-cards,#cal-month-cards) .fbtile__glyph svg circle,:is(#view-cards,#cal-month-cards) .fbtile__glyph svg rect,:is(#view-cards,#cal-month-cards) .fbtile__glyph svg ellipse{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}:is(#view-cards,#cal-month-cards) .feature{position:relative;grid-column:1 / -1;display:grid;grid-template-columns:1.15fr 1fr;gap:0;background:var(--surface);border-radius:4px;box-shadow:var(--shadow-card);overflow:visible;margin-bottom:8px;cursor:pointer;transition:box-shadow .4s var(--ease),transform .4s var(--ease)}:is(#view-cards,#cal-month-cards) .feature:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}@media(max-width:760px){:is(#view-cards,#cal-month-cards) .feature{grid-template-columns:1fr}}:is(#view-cards,#cal-month-cards) .feature__media{position:relative;overflow:hidden;border-radius:4px 0 0 4px;min-height:340px}@media(max-width:760px){:is(#view-cards,#cal-month-cards) .feature__media{border-radius:4px 4px 0 0;min-height:240px}}:is(#view-cards,#cal-month-cards) .feature__img{width:100%;height:100%;object-fit:cover;object-position:center 40%;position:absolute;inset:0;transition:transform .8s var(--ease),filter .6s var(--ease)}:is(#view-cards,#cal-month-cards) .feature:hover .feature__img{transform:scale(1.05);filter:grayscale(1) contrast(1.32) brightness(1.12)}:is(#view-cards,#cal-month-cards) .feature__kicker-tab{position:absolute;top:18px;left:0;z-index:3;background:var(--action-fill);color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:7px 16px 7px 14px}:is(#view-cards,#cal-month-cards) .feature__credit{position:absolute;left:10px;bottom:10px;z-index:3;font-size:10px;color:#fff;background:#0c142299;padding:3px 8px;border-radius:3px}:is(#view-cards,#cal-month-cards) .feature__body{padding:36px 38px;display:flex;flex-direction:column;justify-content:center}@media(max-width:760px){:is(#view-cards,#cal-month-cards) .feature__body{padding:26px}}:is(#view-cards,#cal-month-cards) .feature__tags{display:flex;align-items:center;gap:12px;margin-bottom:14px}:is(#view-cards,#cal-month-cards) .feature__title{font-family:var(--font-serif);font-weight:600;font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.04;letter-spacing:-.02em;color:var(--ink);margin-bottom:14px;position:relative}@media(min-width:761px)and (max-width:999.98px){:is(#view-cards,#cal-month-cards) .feature__title{margin-left:-40px;padding:10px 0 10px 16px;background:var(--surface);border-left:4px solid var(--action)}}@media(min-width:1000px){:is(#view-cards,#cal-month-cards) .feature__title{margin-left:-86px;padding:10px 0 10px 16px;background:var(--surface);border-left:4px solid var(--action)}}:is(#view-cards,#cal-month-cards) .feature__desc{font-family:var(--font-serif);font-size:16px;line-height:1.55;color:var(--ink-soft);max-width:48ch}:is(#view-cards,#cal-month-cards) .feature__meta{font-size:13.5px;color:var(--ink-soft);margin-top:14px}:is(#view-cards,#cal-month-cards) .feature__meta b{color:var(--ink)}:is(#view-cards,#cal-month-cards) .feature__cta{margin-top:22px}.cal-toolbar__search{flex:1 1 auto;min-width:0;max-width:26rem;margin-inline:.75rem}@media(max-width:720px){.cal-toolbar__search{order:3;flex:1 0 100%;max-width:none;margin-inline:0;margin-top:.5rem}}.shell{width:100%;max-width:75rem;margin-inline:auto;padding-inline:1.25rem}@media(min-width:768px){.shell{padding-inline:2.5rem}}@media(min-width:1200px){.shell{padding-inline:3.5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);font-weight:600;font-size:.95rem;line-height:1;padding:.85rem 1.4rem;border-radius:999px;border:2px solid transparent;cursor:pointer;text-decoration:none;min-height:44px;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}@media(prefers-reduced-motion:reduce){.btn{transition:none}}.btn-action{background:var(--action-fill);color:var(--action-fill-ink);border-color:var(--action-fill)}.btn-action:hover{filter:brightness(.94);color:var(--action-fill-ink)}.btn-action:focus-visible{outline:3px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 2px #fff,0 0 0 5px var(--ink)}@media(prefers-reduced-motion:reduce){.btn-action:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 5px var(--ink)}}.btn-secondary{background:transparent;color:var(--accent-strong);border-color:var(--accent)}.btn-secondary:hover{background:var(--accent-strong);color:var(--action-fill-ink);border-color:var(--accent-strong)}
