.calendar-card__footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem 1.15rem;display:flex}.calendar-card__subscription{text-align:right;margin:0;padding:0}.calendar-card__subscription button{color:var(--blue);font:inherit;text-underline-offset:.22em;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;font-size:.8rem;font-weight:850;text-decoration:underline;display:inline-flex}.calendar-card__subscription button:hover{color:var(--blue-deep);background:0 0}.calendar-card__subscription button .icon--arrow{transition:transform .16s}.calendar-card__subscription button:hover .icon--arrow{transform:translate(3px)}.calendar-subscription-dialog{border-radius:var(--radius-lg);width:min(100% - 2rem,38rem);max-width:none;color:var(--ink);background:0 0;border:0;padding:0;box-shadow:0 30px 70px #10233547}.calendar-subscription-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10233594}.calendar-subscription-dialog__surface{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);max-height:calc(100dvh - 2rem);padding:clamp(1.75rem,5vw,2.75rem);position:relative;overflow:auto}.calendar-subscription-dialog__close{border:1px solid var(--line);width:2.35rem;height:2.35rem;color:var(--navy-950);background:var(--paper-card);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:.8rem;right:.8rem}.calendar-subscription-dialog__close:hover{border-color:var(--sky);background:var(--sky-soft)}.calendar-subscription-dialog__close:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.calendar-subscription-dialog .eyebrow{margin-bottom:.6rem}.calendar-subscription-dialog .eyebrow:before{display:none}.calendar-subscription-dialog h2{max-width:15ch;color:var(--navy-950);margin:0 3rem .7rem 0;font-size:clamp(2rem,5vw,3rem)}.calendar-subscription-dialog__intro{color:var(--ink-soft);margin-bottom:1.5rem;font-size:.95rem}.calendar-subscription__filters{border:0;margin:0;padding:0}.calendar-subscription__filters-wrap{opacity:0;pointer-events:none;grid-template-rows:0fr;margin-top:0;transition:grid-template-rows .26s,margin-top .26s,opacity .18s;display:grid;overflow:hidden}.calendar-subscription__filters-wrap[data-state=expanded]{opacity:1;pointer-events:auto;grid-template-rows:1fr;margin-top:1.15rem}.calendar-subscription__filters-wrap>.calendar-subscription__filters{min-height:0;overflow:hidden}.calendar-subscription__all-events{border:1px solid var(--line);min-height:2.75rem;color:var(--navy-950);background:var(--paper-card);cursor:pointer;border-radius:.6rem;align-items:center;gap:.55rem;padding:.65rem .75rem;font-size:.88rem;font-weight:800;display:flex}.calendar-subscription__all-events input{width:1rem;height:1rem;accent-color:var(--blue);margin:0}.calendar-subscription__filters legend,.calendar-subscription__link-field label{color:var(--navy-950);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.65rem;font-size:.74rem;font-weight:850;display:block}.calendar-subscription__checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.calendar-subscription__check{border:1px solid var(--line);min-width:0;color:var(--navy-950);background:var(--paper-card);cursor:pointer;border-radius:.55rem;align-items:center;gap:.45rem;padding:.58rem .65rem;font-size:.84rem;font-weight:750;transition:border-color .16s,background .16s;display:inline-flex}.calendar-subscription__check:has(input:checked){border-color:var(--blue);background:var(--sky-soft)}.calendar-subscription__check input{width:1rem;height:1rem;accent-color:var(--blue);margin:0}.calendar-subscription__check .category-dot{flex:none;width:.5rem;height:.5rem}.calendar-subscription__selection{min-height:1.4em;color:var(--ink-soft);margin:.75rem 0 0;font-size:.78rem}.calendar-subscription__actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;padding-top:1.1rem;display:flex}.calendar-subscription__actions .button{gap:.35rem;min-height:2.65rem;padding:.6rem .85rem;font-size:.79rem}.calendar-subscription__actions .button[aria-disabled=true]{opacity:.45;pointer-events:none}.button--outline{border-color:var(--blue);color:var(--white);background:var(--blue)}.button--outline:hover{border-color:var(--blue-deep);color:var(--white);background:var(--blue-deep)}.button--text{color:var(--blue);background:0 0;border-color:#0000}.button--text:hover{border-color:var(--sky-soft);color:var(--blue-deep);background:var(--sky-soft);box-shadow:none}.calendar-subscription__link-field{margin-top:1.2rem}.calendar-subscription__link-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.5rem;display:grid}.calendar-subscription__link-row input{border:1px solid var(--line);min-width:0;min-height:2.65rem;color:var(--ink-soft);background:var(--white);border-radius:.6rem;padding:.65rem .75rem;font-size:.75rem}.calendar-subscription__link-row input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 4px #2f66a424}.calendar-subscription__link-row .button--small{gap:.3rem;min-height:2.65rem;padding:.55rem .75rem;font-size:.78rem}.calendar-subscription__link-field p{color:var(--ink-soft);margin:.5rem 0 0;font-size:.74rem;line-height:1.35}@media (width<=560px){.calendar-card__subscription{padding-inline:0}.calendar-card__footer{padding-inline:1rem}.calendar-subscription-dialog{width:calc(100% - 1rem)}.calendar-subscription-dialog__surface{border-radius:var(--radius);padding:1.7rem 1.15rem 1.25rem}.calendar-subscription__link-row{grid-template-columns:1fr}.calendar-subscription__link-row .button--small{justify-self:start}}@media (prefers-reduced-motion:reduce){.calendar-card__subscription button .icon--arrow,.calendar-subscription__check,.calendar-subscription__filters-wrap{transition:none}}.event-dialog{border-radius:var(--radius-lg);width:min(100% - 2rem,36rem);max-width:none;color:var(--dialog-ink,var(--ink));background:0 0;border:0;padding:0;box-shadow:0 30px 70px #10233547}.event-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10233594}.event-dialog__surface{border:1px solid var(--dialog-border,#1023351a);border-radius:var(--radius-lg);background:linear-gradient(145deg, var(--dialog-surface,var(--paper)), var(--paper) 74%);padding:clamp(2rem,5vw,3.5rem);position:relative;overflow:hidden}.event-dialog__surface:before{background:var(--dialog-accent,var(--blue));content:"";height:.3rem;position:absolute;top:0;left:0;right:0}.event-dialog__close{border:1px solid var(--dialog-border,var(--line));width:2.5rem;height:2.5rem;color:var(--dialog-ink,var(--navy-950));background:var(--dialog-badge,var(--paper-card));cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:background .16s,border-color .16s;display:grid;position:absolute;top:1rem;right:1rem}.event-dialog__close:hover{border-color:var(--dialog-accent,var(--sky));background:var(--dialog-badge,var(--sky-soft))}.event-dialog__close:focus-visible{outline:3px solid var(--dialog-accent,var(--blue));outline-offset:3px}.event-dialog__category-row{align-items:center;gap:.6rem;margin:0 3rem 1rem 0;display:flex}.event-dialog__category{border:1px solid var(--chip-border,var(--sky));min-height:1.7rem;color:var(--chip-accent,var(--blue));background:var(--chip-background,var(--paper-card));letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;margin:0;padding:.28rem .62rem;font-size:.68rem;font-weight:850;display:inline-flex}.event-dialog__category--worship{--chip-accent:#6b4c8f;--chip-border:#d7c8e7;--chip-background:#f7f2fb}.event-dialog--worship{--dialog-accent:#6b4c8f;--dialog-border:#d7c8e7;--dialog-surface:#fbf8fd;--dialog-badge:#efe6f7;--dialog-ink:#352445;--dialog-muted:#655575}.event-dialog__category--music{--chip-accent:#1f7774;--chip-border:#b9deda;--chip-background:#eef9f7}.event-dialog--music{--dialog-accent:#1f7774;--dialog-border:#b9deda;--dialog-surface:#f7fcfb;--dialog-badge:#dff1ee;--dialog-ink:#164f4d;--dialog-muted:#356b69}.event-dialog__category--fellowship{--chip-accent:#b85f25;--chip-border:#f0c6a3;--chip-background:#fff7ef}.event-dialog--fellowship{--dialog-accent:#b85f25;--dialog-border:#f0c6a3;--dialog-surface:#fffaf6;--dialog-badge:#ffead9;--dialog-ink:#6c3218;--dialog-muted:#815331}.event-dialog__category--study{--chip-accent:#5f7d42;--chip-border:#cbdcb9;--chip-background:#f4f8ef}.event-dialog--study{--dialog-accent:#5f7d42;--dialog-border:#cbdcb9;--dialog-surface:#fbfcf8;--dialog-badge:#e7f0dc;--dialog-ink:#3f552c;--dialog-muted:#596e47}.event-dialog__category--leadership{--chip-accent:#5b6470;--chip-border:#c9d0d7;--chip-background:#f3f5f7}.event-dialog--leadership{--dialog-accent:#5b6470;--dialog-border:#c9d0d7;--dialog-surface:#fafbfc;--dialog-badge:#e6e9ed;--dialog-ink:#343a42;--dialog-muted:#525b65}.event-dialog__category--service{--chip-accent:#a56618;--chip-border:#e5c996;--chip-background:#fff8e9}.event-dialog--service{--dialog-accent:#a56618;--dialog-border:#e5c996;--dialog-surface:#fffdf7;--dialog-badge:#f9edca;--dialog-ink:#60400f;--dialog-muted:#775b25}.event-dialog__category--other{--chip-accent:#9b4f6a;--chip-border:#e4c1cc;--chip-background:#fff2f5}.event-dialog--other{--dialog-accent:#9b4f6a;--dialog-border:#e4c1cc;--dialog-surface:#fff9fa;--dialog-badge:#f9e1e8;--dialog-ink:#672f45;--dialog-muted:#754559}.event-dialog h2{max-width:14ch;color:var(--dialog-ink,var(--navy-950));margin-bottom:1rem;font-size:clamp(2rem,5vw,3.4rem);line-height:.98}.event-dialog__description{max-width:32rem;color:var(--dialog-muted,var(--ink-soft));margin-bottom:2rem;font-size:1rem}.event-dialog__media{background:var(--paper-soft);object-fit:contain;object-position:center;border-radius:.9rem;width:100%;height:auto;max-height:55vh;margin:0 0 1.5rem}.event-dialog__media-link{margin-bottom:0;display:block}.event-dialog__details{border-top:1px solid var(--dialog-border,var(--line));gap:1rem;margin:0;padding-top:1.2rem;display:grid}.event-dialog__details div{grid-template-columns:4rem minmax(0,1fr);gap:1rem;display:grid}.event-dialog__details dt{color:var(--dialog-accent,var(--blue));letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:850}.event-dialog__details dd{color:var(--dialog-ink,var(--ink));margin:0;font-size:.95rem;line-height:1.45}.event-dialog__actions{border-top:1px solid var(--dialog-border,var(--line));flex-wrap:wrap;gap:.75rem;margin-top:1.4rem;padding-top:1.2rem;display:flex}.event-dialog__calendar-button{border-color:var(--dialog-accent,var(--blue));min-height:2.7rem;color:var(--white);background:var(--dialog-accent,var(--blue));gap:.45rem;padding:.65rem 1rem;font-size:.82rem}.event-dialog__calendar-button:hover{border-color:var(--dialog-ink,var(--blue-deep));background:var(--dialog-ink,var(--blue-deep))}@media (width<=720px){.event-dialog__surface{border-radius:var(--radius);padding:2rem 1.35rem 1.5rem}.event-dialog h2{font-size:clamp(2rem,11vw,3.15rem)}}@media (width<=560px){.event-dialog{width:calc(100% - 1rem)}.event-dialog__details div{grid-template-columns:3.4rem minmax(0,1fr);gap:.7rem}}@media (prefers-reduced-motion:reduce){.event-dialog__close{transition:none}}.event-category-icon>svg{max-width:100%;height:auto;display:block}
